diff --git a/.gitmodules b/.gitmodules
index bc251df0..e69de29b 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +0,0 @@
-[submodule "bids-examples"]
- path = legacy/bids-validator/tests/data/bids-examples
- url = https://github.com/bids-standard/bids-examples.git
diff --git a/legacy/Dockerfile b/legacy/Dockerfile
deleted file mode 100644
index 9a51c992..00000000
--- a/legacy/Dockerfile
+++ /dev/null
@@ -1,16 +0,0 @@
-FROM node:18-alpine as build
-RUN npm install -g npm
-
-COPY . /src
-WORKDIR /src
-
-RUN npm install
-RUN npm -w bids-validator run build
-RUN npm -w bids-validator pack
-
-FROM node:18-alpine
-
-COPY --from=build /src/bids-validator-*.tgz /tmp
-RUN npm install -g /tmp/bids-validator-*.tgz
-
-ENTRYPOINT ["/usr/local/bin/bids-validator"]
diff --git a/legacy/README.md b/legacy/README.md
deleted file mode 120000
index 3606784c..00000000
--- a/legacy/README.md
+++ /dev/null
@@ -1 +0,0 @@
-bids-validator/README.md
\ No newline at end of file
diff --git a/legacy/babel.config.js b/legacy/babel.config.js
deleted file mode 100644
index 7a59ca8d..00000000
--- a/legacy/babel.config.js
+++ /dev/null
@@ -1,18 +0,0 @@
-module.exports = {
- presets: [
- [
- '@babel/preset-env',
- {
- targets: {
- node: 'current',
- },
- },
- 'jest',
- ],
- ],
- env: {
- test: {
- plugins: ['@babel/plugin-transform-modules-commonjs'],
- },
- },
-}
diff --git a/legacy/bids-validator-web/.eslintrc b/legacy/bids-validator-web/.eslintrc
deleted file mode 100644
index 55903ff5..00000000
--- a/legacy/bids-validator-web/.eslintrc
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "extends": ["eslint:recommended", "prettier", "next"],
-}
diff --git a/legacy/bids-validator-web/components/App.jsx b/legacy/bids-validator-web/components/App.jsx
deleted file mode 100644
index 34ee002f..00000000
--- a/legacy/bids-validator-web/components/App.jsx
+++ /dev/null
@@ -1,116 +0,0 @@
-import React from 'react'
-import Issues from '../components/Issues'
-import Validate from '../components/Validate'
-import validate from '../../bids-validator'
-import validatorPackageJson from 'bids-validator/package.json' assert { type: 'json' }
-const version = validatorPackageJson.version
-
-// component setup -----------------------------------------------------------
-const initState = () => ({
- dirName: '',
- list: {},
- nameError: null,
- projectId: '',
- refs: {},
- errors: [],
- warnings: [],
- summary: null,
- status: '',
- uploadStatus: '',
- options: {
- ignoreWarnings: false,
- ignoreNiftiHeaders: false,
- ignoreSubjectConsistency: false,
- },
-})
-
-export default class App extends React.Component {
- constructor() {
- super()
- this.state = initState()
- this.validate = this._validate.bind(this)
- this.reset = this._reset.bind(this)
- }
-
- _validate(selectedFiles) {
- const dirName = selectedFiles.list[0].webkitRelativePath.split('/')[0]
- const defaultConfig = `${dirName}/.bids-validator-config.json`
- this.setState({
- status: 'validating',
- showIssues: true,
- activeKey: 3,
- dirName,
- })
- return validate.BIDS(
- selectedFiles.list,
- {
- verbose: true,
- ...this.state.options,
- config: defaultConfig,
- },
- (issues, summary) => {
- if (issues === 'Invalid') {
- return this.setState({
- errors: 'Invalid',
- summary,
- status: 'validated',
- })
- } else {
- return this.setState({
- errors: issues.errors ? issues.errors : [],
- warnings: issues.warnings ? issues.warnings : [],
- summary,
- status: 'validated',
- })
- }
- },
- )
- }
-
- _reset() {
- this.setState(initState())
- }
-
- handleOptionToggle = (e) => {
- const { name } = e.target
- this.setState((prevState) => ({
- ...prevState,
- options: {
- ...prevState.options,
- [name]: !prevState.options[name],
- },
- }))
- }
-
- render() {
- return (
-
-
-
-
-
-
-
-
- {this.state.status === 'validated' ? (
-
- ) : null}
-
-
- )
- }
-}
diff --git a/legacy/bids-validator-web/components/ErrorLink.jsx b/legacy/bids-validator-web/components/ErrorLink.jsx
deleted file mode 100644
index f63f6811..00000000
--- a/legacy/bids-validator-web/components/ErrorLink.jsx
+++ /dev/null
@@ -1,80 +0,0 @@
-import React from 'react'
-
-// component setup --------------------------------------------------------
-
-export default class ErrorLink extends React.Component {
- // life cycle events ------------------------------------------------------
-
- render() {
- let dataURL = this._generateErrorLog(this.props.errors, this.props.warnings)
- return (
-
- Download error log for {this.props.dirName}
-
- )
- }
-
- // custom methods ---------------------------------------------------------
-
- /**
- * Generate Error Log
- *
- * Takes an array of errors and an array of
- * warnings and returns text error log encoded
- * as a url.
- */
- _generateErrorLog(errors, warnings) {
- let issueString = this._generateIssueLog(errors, 'Error')
- issueString += this._generateIssueLog(warnings, 'Warning')
- let errorURL =
- 'data:application/octet-stream;charset=utf-8,' +
- encodeURIComponent(issueString)
- return errorURL
- }
-
- /**
- * Generate Issue Log
- *
- * Takes an array of issues and a string of the
- * issue type and return a human readable log
- * of the issues as a string.
- */
- _generateIssueLog(issues, type) {
- let issueString = ''
- let endLine = '======================================================'
- for (var i = 0; i < issues.length; i++) {
- issueString += 'File Path: ' + issues[i].reason + '\n\n'
- for (var j = 0; j < issues[i].files.length; j++) {
- var file = issues[i].files[j]
- issueString += '\tType:\t\t' + type + '\n'
- if (!file || !file.file) {
- continue
- }
- if (file.file.name) {
- issueString += '\tFile:\t\t' + file.file.name + '\n'
- }
- if (file.file.webkitRelativePath) {
- issueString += '\tLocation:\t\t' + file.file.webkitRelativePath + '\n'
- }
- if (file.reason) {
- issueString += '\tReason:\t\t' + file.reason + '\n'
- }
- if (file.line) {
- issueString += '\tLine:\t\t' + file.line + '\n'
- }
- if (file.character) {
- issueString += '\tCharacter:\t' + file.character + '\n'
- }
- if (file.evidence) {
- issueString += '\tEvidence:\t' + file.evidence + '\n\n'
- }
- }
- issueString += '\n' + endLine + '\n\n\n'
- }
- return issueString
- }
-}
diff --git a/legacy/bids-validator-web/components/Issues.jsx b/legacy/bids-validator-web/components/Issues.jsx
deleted file mode 100644
index 42c41e5e..00000000
--- a/legacy/bids-validator-web/components/Issues.jsx
+++ /dev/null
@@ -1,137 +0,0 @@
-// dependencies -------------------------------------------------------
-
-import React from 'react'
-import PropTypes from 'prop-types'
-import pluralize from 'pluralize'
-import Results from './results/Results'
-import Spinner from './Spinner.jsx'
-import ErrorLink from './ErrorLink.jsx'
-import Summary from '../components/Summary'
-
-class Issues extends React.Component {
- constructor(props) {
- super(props)
- this._reset = this.props.reset.bind(this)
- }
- // life cycle events --------------------------------------------------
-
- render() {
- // short references
- let errors = this.props.errors
- let warnings = this.props.warnings
- let dirName = this.props.dirName
-
- // counts
- // let totalErrors = 0
- let totalWarnings = 0
- let warningCount = 0
- // let errorCount = 0
- if (errors !== 'Invalid') {
- // totalErrors = errors.length
- totalWarnings = warnings.length
- warningCount = totalWarnings + ' ' + pluralize('Warning', totalWarnings)
- // errorCount = totalErrors + ' ' + pluralize('Error', totalErrors)
- }
- // messages
- let specLink = (
-
- )
- let notBIDSMessage = (
-
- This directory failed an initial Quick Test. This means the basic names
- and structure of the files and directories do not comply with BIDS
- specification. Select a new folder {' '}
- and try again.
-
- )
- let warningsMessage = We found {warningCount} in your dataset.
- let errorMessage = Your dataset is not a valid BIDS dataset.
- let noErrorMessage = This is a valid BIDS dataset!
- let neurostarsLink = (
-
- If you have any questions please post on{' '}
-
- Neurostars
-
-
- )
- let sourcecode = (
-
- The source code for the validator can be found{' '}
-
- here
-
-
- )
-
- // determine message
- let message
- if (errors === 'Invalid') {
- message = notBIDSMessage
- } else if (errors.length > 0) {
- message = errorMessage
- } else if (warnings.length > 0) {
- message = warningsMessage
- } else {
- message = noErrorMessage
- }
-
- // loading animation
- let loading = (
-
- )
-
- // results
- let results = (
-
-
- ×
-
-
- {message}
- {errors !== 'Invalid' ? (
-
- ) : null}
- {(errors.length > 0 && errors !== 'Invalid') || warnings.length > 0 ? (
-
- ) : null}
- {specLink}
- {neurostarsLink}
- {sourcecode}
-
- )
-
- return {this.props.status === 'validating' ? loading : results}
- }
-}
-
-Issues.propTypes = {
- reset: PropTypes.func,
- errors: PropTypes.array,
- warnings: PropTypes.array,
- dirName: PropTypes.string,
- status: PropTypes.string,
-}
-
-Issues.defaultProps = {
- reset: () => {},
- errors: [],
- warnings: [],
- dirName: '',
- status: '',
-}
-
-export default Issues
diff --git a/legacy/bids-validator-web/components/List.jsx b/legacy/bids-validator-web/components/List.jsx
deleted file mode 100644
index adc3332c..00000000
--- a/legacy/bids-validator-web/components/List.jsx
+++ /dev/null
@@ -1,19 +0,0 @@
-import React from 'react'
-import PropTypes from 'prop-types'
-
-export default class List extends React.Component {
- render() {
- if (this.props.items) {
- return this.props.items.map((item, index) => {
- return {item}
- })
- }
- }
-}
-
-List.propTypes = {
- items: PropTypes.array,
-}
-List.defaultProps = {
- items: [],
-}
diff --git a/legacy/bids-validator-web/components/Options.jsx b/legacy/bids-validator-web/components/Options.jsx
deleted file mode 100644
index 42521627..00000000
--- a/legacy/bids-validator-web/components/Options.jsx
+++ /dev/null
@@ -1,37 +0,0 @@
-import React from 'react'
-
-const Options = ({ setOption, options }) => (
- <>
-
-
- >
-)
-
-export default Options
diff --git a/legacy/bids-validator-web/components/Spinner.jsx b/legacy/bids-validator-web/components/Spinner.jsx
deleted file mode 100644
index 1108768c..00000000
--- a/legacy/bids-validator-web/components/Spinner.jsx
+++ /dev/null
@@ -1,30 +0,0 @@
-import React from 'react'
-import PropTypes from 'prop-types'
-
-// component setup ---------------------------------------------------------------------------
-
-export default class Spinner extends React.Component {
- // life cycle events -------------------------------------------------------------------------
-
- render() {
- let spinner = (
-
- )
- return this.props.active ? spinner : null
- }
-}
-
-Spinner.propTypes = {
- text: PropTypes.string,
- active: PropTypes.bool,
-}
-
-Spinner.defaultProps = {
- text: 'Loading',
- active: false,
-}
diff --git a/legacy/bids-validator-web/components/Summary.jsx b/legacy/bids-validator-web/components/Summary.jsx
deleted file mode 100644
index ecb65320..00000000
--- a/legacy/bids-validator-web/components/Summary.jsx
+++ /dev/null
@@ -1,59 +0,0 @@
-// dependencies -------------------------------------------------------
-
-import React from 'react'
-import pluralize from 'pluralize'
-import bytes from 'bytes'
-import List from './List'
-
-class Summary extends React.Component {
- // life cycle events --------------------------------------------------
-
- render() {
- let summary = this.props.summary
- if (summary) {
- var numSessions =
- summary.sessions.length > 0 ? summary.sessions.length : 1
- return (
-
-
{this.props.dirName}
-
-
-
-
Summary
-
-
- {summary.totalFiles} {pluralize('File', summary.totalFiles)}
- , {bytes(summary.size)}
-
-
- {summary.subjects.length} -{' '}
- {pluralize('Subject', summary.subjects.length)}
-
-
- {numSessions} - {pluralize('Session', numSessions)}
-
-
-
-
-
-
Available Modalities
-
-
-
-
-
- )
- } else {
- return null
- }
- }
-}
-
-export default Summary
diff --git a/legacy/bids-validator-web/components/Upload.jsx b/legacy/bids-validator-web/components/Upload.jsx
deleted file mode 100644
index 6a2eaf7c..00000000
--- a/legacy/bids-validator-web/components/Upload.jsx
+++ /dev/null
@@ -1,31 +0,0 @@
-// dependencies -------------------------------------------------------
-
-import React from 'react'
-
-class Upload extends React.Component {
- // life cycle events --------------------------------------------------
- render() {
- return (
-
- )
- }
-
- // custom methods -----------------------------------------------------
- _onFileSelect(e) {
- if (e.target && e.target.files.length > 0) {
- let files = e.target.files
- let results = { list: files }
- this.props.onChange(results)
- }
- }
-}
-
-export default Upload
diff --git a/legacy/bids-validator-web/components/Validate.jsx b/legacy/bids-validator-web/components/Validate.jsx
deleted file mode 100644
index d400fa24..00000000
--- a/legacy/bids-validator-web/components/Validate.jsx
+++ /dev/null
@@ -1,51 +0,0 @@
-import React from 'react'
-import Upload from './Upload.jsx'
-import Spinner from './Spinner.jsx'
-import Options from './Options.jsx'
-
-class Validate extends React.Component {
- constructor(props) {
- super(props)
- this.state = {
- loading: false,
- }
-
- this._clearInput = this.props.reset
- this._onChange = this.props.onChange
- this._setRefs = this.props.setRefs
- }
-
- // life cycle events --------------------------------------------------
-
- render() {
- let { options, handleOptionToggle } = this.props
- let loading =
-
- let select = (
-
-
- Select a{' '}
-
- BIDS dataset
- {' '}
- to validate
-
-
-
-
-
- Note: Selecting a dataset only performs validation. Files are never
- uploaded.
-
-
- )
-
- return {this.props.loading ? loading : select}
- }
-}
-
-export default Validate
diff --git a/legacy/bids-validator-web/components/results/Issue.jsx b/legacy/bids-validator-web/components/results/Issue.jsx
deleted file mode 100644
index b02de023..00000000
--- a/legacy/bids-validator-web/components/results/Issue.jsx
+++ /dev/null
@@ -1,55 +0,0 @@
-// dependencies -------------------------------------------------------
-
-import React from 'react'
-import PropTypes from 'prop-types'
-
-// component setup ----------------------------------------------------
-
-export default class Issue extends React.Component {
- // life cycle events --------------------------------------------------
-
- render() {
- let error = this.props.error
-
- // build error location string
- let errLocation = ''
- if (error.line) {
- errLocation += 'Line: ' + error.line + ' '
- }
- if (error.character) {
- errLocation += 'Character: ' + error.character + ''
- }
- if (errLocation === '' && error.evidence) {
- errLocation = 'Evidence: '
- }
-
- return (
-
-
- {error.file.name}
-
- {error.file.size / 1000} KB | {error.file.type}
-
-
-
- Location:
- {error.file.webkitRelativePath}
- Reason:
- {error.reason}
-
-
- {errLocation}
- {error.evidence}
-
-
- )
- }
-
- // custom methods -----------------------------------------------------
-}
-
-Issue.propTypes = {
- file: PropTypes.object,
- error: PropTypes.object,
- type: PropTypes.string.isRequired,
-}
diff --git a/legacy/bids-validator-web/components/results/Issues.jsx b/legacy/bids-validator-web/components/results/Issues.jsx
deleted file mode 100644
index 7d2c5cec..00000000
--- a/legacy/bids-validator-web/components/results/Issues.jsx
+++ /dev/null
@@ -1,147 +0,0 @@
-// dependencies -----------------------------------------------------------
-
-import React from 'react'
-import PropTypes from 'prop-types'
-import { Card, Collapse } from 'react-bootstrap'
-import pluralize from 'pluralize'
-import Issue from './Issue'
-
-// component setup --------------------------------------------------------
-
-class Issues extends React.Component {
- constructor() {
- super()
- this.state = {
- showMore: [],
- errorOpen: false,
- }
- }
-
- // life cycle events ------------------------------------------------------
-
- render() {
- let self = this
- let issueFiles = this.props.issues
- let issues = issueFiles.map((issue, index) => {
- let files = issue.files
- if (this.state.showMore.indexOf(index) === -1) {
- files = issue.files.slice(0, 10)
- }
-
- // issue sub-errors
- let hasErrorFiles = false
- let subErrors = files.map(function (error, index2) {
- if (error && error.file) {
- hasErrorFiles = true
- return (
-
- )
- }
- })
-
- // issue card
- if (hasErrorFiles) {
- return (
-
-
- this.setState({ errorOpen: !this.state.errorOpen })
- }>
- {this._header(issue, index, this.props.issueType, hasErrorFiles)}
-
-
-
- {subErrors}
- {this._viewMore(issue.files, index)}
-
-
-
- )
- } else {
- return (
-
-
- {this._header(issue, index, this.props.issueType, hasErrorFiles)}
-
-
- )
- }
- })
- return {issues}
- }
-
- // template methods -------------------------------------------------------
-
- _header(issue, index, type, hasErrorFiles) {
- let issueCount = pluralize('files', issue.files.length)
- let fileCount
- if (hasErrorFiles) {
- fileCount = (
-
- {issue.files.length} {issueCount}
-
- )
- }
- return (
-
-
-
- {type} {index + 1}: [Code {issue.code}] {issue.key}
-
-
- {this._issueLink(issue)}
- {issue.reason}
- {fileCount}
-
- )
- }
-
- _issueLink(issue) {
- if (issue && issue.helpUrl) {
- return (
-
-
- Click here for more information about this issue
-
-
- )
- } else {
- return null
- }
- }
-
- _viewMore(files, index) {
- if (this.state.showMore.indexOf(index) === -1 && files.length > 10) {
- return (
-
- View {files.length - 10} more files
-
- )
- }
- }
-
- // custom methods ---------------------------------------------------------
-
- _showMore(index) {
- let showMore = this.state.showMore
- showMore.push(index)
- this.setState({ showMore })
- }
-}
-
-Issues.propTypes = {
- issues: PropTypes.array.isRequired,
- issueType: PropTypes.string.isRequired,
-}
-
-export default Issues
diff --git a/legacy/bids-validator-web/components/results/Results.jsx b/legacy/bids-validator-web/components/results/Results.jsx
deleted file mode 100644
index 57067a97..00000000
--- a/legacy/bids-validator-web/components/results/Results.jsx
+++ /dev/null
@@ -1,129 +0,0 @@
-// dependencies -----------------------------------------------------------
-
-import React from 'react'
-import { Card, Collapse, Alert } from 'react-bootstrap'
-import PropTypes from 'prop-types'
-import pluralize from 'pluralize'
-import Issues from './Issues'
-
-// component setup --------------------------------------------------------
-
-export default class ValidationResults extends React.Component {
- constructor() {
- super()
- this.state = {
- warningsOpen: false,
- errorsOpen: false,
- }
- }
- // life cycle events ------------------------------------------------------
-
- render() {
- let errors = this.props.errors
- let warnings = this.props.warnings
-
- // errors
- let errorsWrap
- if (errors.length > 0) {
- let fileCount = this._countFiles(errors)
- let errorHeader = (
-
- view {errors.length} {pluralize('error', errors.length)}{' '}
- {this._countText(fileCount)}
-
- )
- errorsWrap = (
-
-
- this.setState({ errorsOpen: !this.state.errorsOpen })
- }
- aria-controls="errors-issues"
- aria-expanded={this.state.errorsOpen}
- variant="danger"
- className="mb-0">
- {errorHeader}
-
-
-
-
-
-
-
- )
- }
-
- //warnings
- let warningWrap
- if (warnings.length > 0) {
- let fileCount = this._countFiles(warnings)
- let warningHeader = (
-
- view {warnings.length} {pluralize('warning', warnings.length)}{' '}
- {this._countText(fileCount)}
-
- )
- warningWrap = (
-
-
- this.setState({ warningsOpen: !this.state.warningsOpen })
- }
- aria-controls="warning-issues"
- aria-expanded={this.state.warningsOpen}
- variant="warning"
- className="mb-0">
- {warningHeader}
-
-
-
-
-
-
-
- )
- }
-
- // validations errors and warning wraps
- return (
- //
-
- {errorsWrap}
- {warningWrap}
-
- //
- )
- }
-
- // custom methods ---------------------------------------------------------
-
- _countFiles(issues) {
- let numFiles = 0
- for (let issue of issues) {
- if (issue.files.length > 1 || !!issue.files[0].file) {
- numFiles += issue.files.length
- }
- }
- return numFiles
- }
-
- _countText(count) {
- if (count > 0) {
- return (
-
- in {count} {pluralize('files', count)}
-
- )
- }
- }
-}
-
-ValidationResults.propTypes = {
- errors: PropTypes.array,
- warnings: PropTypes.array,
-}
-
-ValidationResults.Props = {
- errors: [],
- warnings: [],
-}
diff --git a/legacy/bids-validator-web/index.scss b/legacy/bids-validator-web/index.scss
deleted file mode 100644
index af3f4f35..00000000
--- a/legacy/bids-validator-web/index.scss
+++ /dev/null
@@ -1,156 +0,0 @@
-body {
- font-size: 14px;
-}
-
-h4 {
- font-size: 18px;
-}
-
-label {
- font-weight: bold;
-}
-
-h5 {
- font-size: 14px;
-}
-
-.page-wrapper {
- padding-top: 80px;
-}
-
-form.options label {
- margin: 0;
- padding-right: 2rem;
- font-weight: normal;
-}
-form.options input {
- margin-right: 0.4rem;
-}
-
-.validation-error {
- position: relative;
-}
-.validation-error > .card-header > .file-header > .pull-right {
- position: absolute;
- top: 15px;
- right: 15px;
-}
-
-.validation-error > .card-body > .file-header,
-.pull-right {
- float: right;
- top: 15px;
- right: 15px;
-}
-
-.issues {
- .validation-messages {
- padding-top: 20px;
- }
- button > span {
- float: right;
- }
- .issue {
- border-bottom: 1px solid #ccc;
- .pull-right {
- font-size: 14px;
- }
- }
- .issue:last-child {
- border-bottom: none;
- }
- .issues-view-more {
- padding-top: 15px;
- button {
- border: none;
- background: none;
- color: #337ab7;
- font-size: 18px;
- }
- button:hover {
- text-decoration: underline;
- color: #23527c;
- }
- }
-}
-
-.upload-panel > .alert,
-.error-header {
- cursor: pointer;
-}
-
-.summary {
- font-size: 14px;
-}
-
-.error-log {
- margin-bottom: 10px;
-}
-
-.loading-wrap {
- padding: 20px 0 30px;
- text-align: center;
- position: relative;
- span {
- text-transform: uppercase;
- margin-top: 5px;
- display: block;
- font-size: 12px;
- color: #337ab7;
- }
- .spinner,
- .spinnerinner {
- position: relative;
- border: 4px solid #337ab7;
- border-color: transparent #337ab7;
- margin: auto;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- -webkit-border-radius: 50%;
- -moz-border-radius: 50%;
- border-radius: 50%;
- width: 45px;
- height: 45px;
- padding: 0;
- margin: 0;
- }
-
- .spinner {
- animation: spin 4s linear 0s infinite normal;
- margin: 0 auto;
- }
-
- .spinnerinner {
- border-width: 2px;
- margin: 21%;
- padding: 0;
- border-radius: 50%;
- position: absolute;
- top: 0;
- bottom: 0;
- left: 0;
- right: 0;
- display: block;
- width: 60%;
- height: 60%;
- animation: innerspin 1s linear 0s infinite normal;
- }
-}
-
-@keyframes spin {
- from {
- -webkit-transform: rotate(0);
- }
- to {
- -webkit-transform: rotate(360deg);
- }
-}
-@keyframes innerspin {
- from {
- -webkit-transform: rotate(0);
- }
- to {
- -webkit-transform: rotate(360deg);
- }
-}
diff --git a/legacy/bids-validator-web/next.config.js b/legacy/bids-validator-web/next.config.js
deleted file mode 100644
index 13965153..00000000
--- a/legacy/bids-validator-web/next.config.js
+++ /dev/null
@@ -1,11 +0,0 @@
-// next.config.js
-
-module.exports = {
- output: 'export',
- transpilePackages: ['bids-validator'],
- assetPrefix: './',
- webpack: (config, {}) => {
- config.watchOptions.ignored = '**/node_modules'
- return config
- },
-}
diff --git a/legacy/bids-validator-web/package.json b/legacy/bids-validator-web/package.json
deleted file mode 100644
index 9abd4978..00000000
--- a/legacy/bids-validator-web/package.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
- "name": "bids-validator-web",
- "version": "1.14.15-dev.0",
- "description": "web client for bids-validator",
- "main": "index.js",
- "license": "MIT",
- "dependencies": {
- "@babel/runtime": "^7.22.10",
- "bootstrap": "^5.3.3",
- "eslint-config-next": "^14.2.13",
- "next": "^14.0.0",
- "pluralize": "^8.0.0",
- "react": "^18.3.1",
- "react-bootstrap": "^2.10.5",
- "react-dom": "^18.3.1",
- "sass": "^1.79.4"
- },
- "scripts": {
- "dev": "next",
- "build": "next build",
- "start": "next start"
- },
- "devDependencies": {
- "@next/eslint-plugin-next": "^14.2.13"
- }
-}
diff --git a/legacy/bids-validator-web/pages/_app.js b/legacy/bids-validator-web/pages/_app.js
deleted file mode 100644
index e766d5e6..00000000
--- a/legacy/bids-validator-web/pages/_app.js
+++ /dev/null
@@ -1,8 +0,0 @@
-import '../../node_modules/bootstrap/dist/css/bootstrap.min.css'
-import '../index.scss'
-
-function MyApp({ Component, pageProps }) {
- return
-}
-
-export default MyApp
diff --git a/legacy/bids-validator-web/pages/index.js b/legacy/bids-validator-web/pages/index.js
deleted file mode 100644
index 35dc4231..00000000
--- a/legacy/bids-validator-web/pages/index.js
+++ /dev/null
@@ -1,6 +0,0 @@
-import React from 'react'
-import App from '../components/App'
-
-const AppComponent = () =>
-
-export default AppComponent
diff --git a/legacy/bids-validator/README.md b/legacy/bids-validator/README.md
deleted file mode 100644
index 6dcc67ee..00000000
--- a/legacy/bids-validator/README.md
+++ /dev/null
@@ -1,443 +0,0 @@
-[![Node Tests](https://github.com/bids-standard/bids-validator/actions/workflows/node_tests.yml/badge.svg)](https://github.com/bids-standard/bids-validator/actions/workflows/node_tests.yml)
-[![bids-examples tests](https://github.com/bids-standard/bids-validator/actions/workflows/test-bids-examples.yml/badge.svg)](https://github.com/bids-standard/bids-validator/actions/workflows/test-bids-examples.yml)
-[![CircleCI](https://circleci.com/gh/bids-standard/bids-validator.svg?style=shield&circle-token=:circle-token)](https://circleci.com/gh/bids-standard/bids-validator)
-[![Codecov](https://codecov.io/gh/bids-standard/bids-validator/branch/master/graph/badge.svg)](https://codecov.io/gh/bids-standard/bids-validator)
-[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3688707.svg)](https://doi.org/10.5281/zenodo.3688707)
-
-# BIDS-Validator
-
-- [BIDS-Validator](#bids-validator)
- - [Quickstart](#quickstart)
- - [Support](#support)
- - [Maintainers and Contributors](#maintainers-and-contributors)
- - [Use](#use)
- - [API](#api)
- - [.bidsignore](#bidsignore)
- - [Configuration](#configuration)
- - [In the Browser](#in-the-browser)
- - [On the Server](#on-the-server)
- - [Through Command Line](#through-command-line)
- - [Docker image](#docker-image)
- - [Development](#development)
- - [Running Locally in a Browser](#running-locally-in-a-browser)
- - [Testing](#testing)
- - [Publishing](#publishing)
- - [Acknowledgments](#acknowledgments)
-
-## Quickstart
-
-1. Web version:
- 1. Open [Google Chrome](https://www.google.com/chrome/) or
- [Mozilla Firefox](https://mozilla.org/firefox) (currently the only
- supported browsers)
- 1. Go to https://bids-standard.github.io/bids-validator/ and select a folder
- with your BIDS dataset. If the validator seems to be working longer than
- couple of minutes please open [developer tools ](https://developer.chrome.com/devtools)
- and report the error at [https://github.com/bids-standard/bids-validator/issues](https://github.com/bids-standard/bids-validator/issues).
-1. Command line version:
- 1. Install [Node.js](https://nodejs.org) (at least version 18.0.0)
- 1. Update `npm` to be at least version 7 (`npm install --global npm@^7`)
- 1. From a terminal run `npm install -g bids-validator`
- 1. Run `bids-validator` to start validating datasets.
-1. Docker
- 1. Install Docker
- 1. From a terminal run `docker run -ti --rm -v /path/to/data:/data:ro bids/validator /data`
- but replace the `/path/to/data` part of the command with your own path on your machine.
-
-## Support
-
-The BIDS Validator is designed to work in both the browser and in Node.js. We
-target support for the latest long term stable (LTS) release of Node.js and the
-latest version of Chrome.
-
-Please report any issues you experience while using these support targets via
-the [GitHub issue tracker](https://github.com/bids-standard/bids-validator/issues).
-If you experience issues outside of these supported environments and believe we
-should extend our targeted support feel free to open a new issue describing the
-issue, your support target and why you require extended support and we will
-address these issues on a case by case basis.
-
-## Maintainers and Contributors
-
-
-
-[![All Contributors](https://img.shields.io/badge/all_contributors-43-orange.svg?style=flat-square)](#contributors-)
-
-
-
-This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification.
-Contributions of any kind are welcome!
-
-The project is maintained by [@rwblair](https://github.com/rwblair/) with the help of many contributors listed below.
-(The [emoji key](https://allcontributors.org/docs/en/emoji-key) is indicating the kind of contribution)
-
-Please also see [Acknowledgments](#acknowledgments).
-
-
-
-
-
-
-
-
-
-
-
-## Use
-
-### API
-
-The BIDS Validator has one primary method that takes a directory as either a
-path to the directory (node) or the object given by selecting a directory with a
-file input (browser), an options object, and a callback.
-
-Available options include:
-
-- ignoreWarnings - (boolean - defaults to false)
-- ignoreNiftiHeaders - (boolean - defaults to false)
-
-For example:
-
-`validate.BIDS(directory, {ignoreWarnings: true}, function (issues, summary) {console.log(issues.errors, issues.warnings);});`
-
-If you would like to test individual files you can use the file specific checks
-that we expose.
-
-- validate.BIDS()
-- validate.JSON()
-- validate.TSV()
-- validate.NIFTI()
-
-Additionally you can reformat stored errors against a new config using `validate.reformat()`
-
-### .bidsignore
-
-Optionally one can include a `.bidsignore` file in the root of the dataset. This
-file lists patterns (compatible with the [.gitignore syntax](https://git-scm.com/docs/gitignore))
-defining files that should be ignored by the validator. This option is useful
-when the validated dataset includes file types not yet supported by BIDS
-specification.
-
-```Text
-*_not_bids.txt
-extra_data/
-```
-
-### Configuration
-
-You can configure the severity of errors by passing a json configuration file
-with a `-c` or `--config` flag to the command line interface or by defining a
-config object on the options object passed during javascript usage.
-
-If no path is specified a default path of `.bids-validator-config.json` will be used. You can add this file to your dataset to share dataset specific validation configuration. To disable this behavior use `--no-config` and the default configuration will be used.
-
-The basic configuration format is outlined below. All configuration is optional.
-
-```JSON
-{
- "ignore": [],
- "warn": [],
- "error": [],
- "ignoredFiles": []
-}
-```
-
-`ignoredFiles` takes a list of file paths or glob patterns you'd like to ignore.
-Lets say we want to ignore all files and sub-directory under `/derivatives/`.
-**This is not the same syntax as used in the .bidsignore file**
-
-```JSON
-{
- "ignoredFiles": ["/derivatives/**"]
-}
-```
-
-Note that adding two stars `**` in path makes validator recognize all files and
-sub-dir to be ignored.
-
-`ignore`, `warn`, and `error` take lists of issue codes or issue keys and change
-the severity of those issues so they are either ignored or reported as warnings
-or errors. You can find a list of all available issues at
-[utils/issues/list](https://github.com/bids-standard/bids-validator/blob/master/bids-validator/utils/issues/list.js).
-
-Some issues may be ignored by default, but can be elevated to warnings or errors.
-These provide a way to check for common things that are more specific than BIDS
-compatibility. An example is a check for the presence of a T1w modality. The
-following would raise an error if no T1W image was found in a dataset.
-
-```JSON
-{
- "error": ["NO_T1W"]
-}
-```
-
-In addition to issue codes and keys these lists can also contain objects with
-and "and" or "or" properties set to arrays of codes or keys. These allow some
-level of conditional logic when configuring issues. For example:
-
-```JSON
-{
- "ignore": [
- {
- "and": [
- "ECHO_TIME_GREATER_THAN",
- "ECHO_TIME_NOT_DEFINED"
- ]
- }
- ]
-}
-```
-
-In the above example the two issues will only be ignored if both of them are
-triggered during validation.
-
-```JSON
-{
- "ignore": [
- {
- "and": [
- "ECHO_TIME_GREATER_THAN",
- "ECHO_TIME_NOT_DEFINED"
- {
- "or": [
- "ECHO_TIME1-2_NOT_DEFINED",
- "ECHO_TIME_MUST_DEFINE"
- ]
- }
- ]
- }
- ]
-}
-```
-
-And in this example the listed issues will only be ignored if
-`ECHO_TIME_GREATER_THAN`, `ECHO_TIME_NOT_DEFINED` and either
-`ECHO_TIME1-2_NOT_DEFINED` or `ECHO_TIME_MUST_DEFINE` are triggered during
-validation.
-
-"or" arrays are not supported at the lowest level because it wouldn't add any
-functionality. For example the following is not supported.
-
-```JSON
-{
- "ignore": [
- {
- "or": [
- "ECHO_TIME_GREATER_THAN",
- "ECHO_TIME_NOT_DEFINED"
- ]
- }
- ]
-}
-```
-
-because it would be functionally the same as this:
-
-```JSON
-{
- "ignore": [
- "ECHO_TIME_GREATER_THAN",
- "ECHO_TIME_NOT_DEFINED"
- ]
-}
-```
-
-For passing a configuration while using the bids-validator on the command line,
-you can use the following style to for example ignore empty
-file errors (99) and files that cannot be read (44):
-
-```
-bids-validator --config.ignore=99 --config.ignore=44 path/to/bids/dir
-```
-
-This style of use puts limits on what configuration you can require, so for
-complex scenarios, we advise users to create a dedicated configuration file with
-contents as described above.
-
-### In the Browser
-
-The BIDS Validator currently works in the browser with [browserify](https://browserify.org/)
-or [webpack](https://webpack.js.org/). You can add it to a project by cloning
-the validator and requiring it with browserify syntax
-`const validate = require('bids-validator');` or an ES2015 webpack import
-`import validate from 'bids-validator'`.
-
-### On the Server
-
-The BIDS validator works like most npm packages. You can install it by running
-`npm install bids-validator`.
-
-### Through Command Line
-
-If you install the bids validator globally by using `npm install -g bids-validator`
-you will be able to use it as a command line tool. Once installed you should be
-able to run `bids-validator /path/to/your/bids/directory` and see any validation
-issues logged to the terminal. Run `bids-validator` without a directory path to
-see available options.
-
-## Docker image
-
-[![Docker Image Version (latest by date)](https://img.shields.io/docker/v/bids/validator?label=docker)](https://hub.docker.com/r/bids/validator)
-
-To use bids validator with [docker](https://www.docker.com/), you simply need to
-[install docker](https://docs.docker.com/install/) on your system.
-
-And then from a terminal run:
-
-- `docker run -ti --rm bids/validator --version` to print the version of the
- docker image
-- `docker run -ti --rm bids/validator --help` to print the help
-- `docker run -ti --rm -v /path/to/data:/data:ro bids/validator /data`
- to validate the dataset `/path/to/data` on your host machine
-
-See here for a brief explanation of the commands:
-
-- `docker run` is the command to tell docker to run a certain docker image,
- usually taking the form `docker run `
-- the `-ti` flag means the inputs are accepted and outputs are printed to the
- terminal
-- the `--rm` flag means that the state of the docker container is not saved
- after it has run
-- the `-v` flag is adding your local data to the docker container
- ([bind-mounts](https://docs.docker.com/storage/bind-mounts/)). Importantly,
- the input after the `-v` flag consists of three fields separated colons: `:`
- - the first field is the path to the directory on the host machine:
- `/path/to/data`
- - the second field is the path where the directory is mounted in the
- container
- - the third field is optional. In our case, we use `ro` to specify that the
- mounted data is _read only_
-
-## Development
-
-To develop locally, clone the project and run `npm install` from the project
-root. This will install external dependencies. If you wish to install
-`bids-validator` globally (so that you can run it in other folders), use the
-following command to install it globally: `cd bids-validator && npm install -g` (for windows users, if in a different drive add /d, e.g. `cd /d F:\bids-validator && npm install -g`)
-
-Please see the [CONTRIBUTING.md](../CONTRIBUTING.md)
-for additional details.
-
-### Bundling
-
-bids-validator is bundled with esbuild. While developing, the script `bids-validator/bin/bids-validator` will automatically bundle the project each time it is run. To test a build without publishing it `npm -w bids-validator run build`. This will generate a bids-validator/dist directory containing the local build and `bids-validator/bin/bids-validator` will use this build. To return to automatic bundling on each run, remove the dist directory.
-
-### Running Locally in a Browser
-
-A note about OS X, the dependencies for the browser require a npm package called
-node-gyp which needs xcode to be installed in order to be compiled.
-
-1. The browser version of `bids-validator` lives in the repo subdirectory
- `/bids-validator-web`. It is a [React.js](https://reactjs.org/) application
- that uses the [next.js](https://nextjs.org/) framework.
-2. To develop `bids-validator` and see how it will act in the browser, simply run
- `npm run web-dev` in the project root and navigate to `localhost:3000`.
-3. In development mode, changes to the codebase will trigger rebuilds of the application
- automatically.
-4. Changes to the `/bids-validator` in the codebase will also be reflected in the
- web application.
-5. Tests use the [Jest](https://jestjs.io/index.html) testing library and should be developed in `/bids-validator-web/tests`.
- We can always use more tests, so please feel free to contribute a test that reduces the chance
- of any bugs you fix!
-6. To ensure that the web application compiles successfully in production, run `npm run web-export`
-
-### Testing
-
-If it's your first time running tests, first use the command `git submodule update --init --depth 1` to pull the test example data. This repo contains the [bids-examples github repository](https://github.com/bids-standard/bids-examples) as a [submodule](https://git-scm.com/book/en/v2/Git-Tools-Submodules).
-
-To start the test suite run `npm run test` from the project root. `npm run test -- --watch`
-is useful to run tests while making changes. A coverage report is available with
-`npm run coverage`.
-
-To run the linter which checks code conventions run `npm run lint`.
-
-### Install globally from a development branch
-
-Global installs are not recommended for development because of the possibility of package conflicts with other Node.js projects. If you do need to test with a global install from a development tree, follow these steps to generate the NPM package without publishing it and install the package locally.
-
-1. `npm -w bids-validator run build`
-2. `npm -w bids-validator pack`
-3. `npm install -g bids-validator-*.tgz`
-
-### Publishing
-
-Publishing is done with [Lerna](https://github.com/lerna/lerna). Use the command `npx lerna publish` and follow instructions to set a new version.
-
-Using lerna publish will create a git commit with updated version information and create a version number tag for it, push the tag to GitHub, then publish to NPM. The GitHub release is manual following that.
-
-## Acknowledgments
-
-Many contributions to the `bids-validator` were done by members of the
-BIDS community. See the
-[list of contributors](https://bids-specification.readthedocs.io/en/stable/99-appendices/01-contributors.html).
-
-A large part of the development of `bids-validator` is currently done by
-[Squishymedia](https://squishymedia.com/), who are in turn financed through
-different grants offered for the general development of BIDS. See the list
-below.
-
-Development and contributions were supported through the following federally
-funded projects/grants:
-
-- [BIDS Derivatives (NIMH: R24MH114705, PI: Poldrack)](https://grantome.com/grant/NIH/R24-MH114705-01)
-- [OpenNeuro (NIMH: R24MH117179, PI: Poldrack)](https://grantome.com/grant/NIH/R24-MH117179-01)
-- [Spokes: MEDIUM: WEST (NSF: 1760950, PI: Poldrack & Gorgolewski)](https://grantome.com/grant/NSF/ACI-1760950)
-- [ReproNim](http://repronim.org) [(NIH-NIBIB P41 EB019936, PI: Kennedy)](https://projectreporter.nih.gov/project_info_description.cfm?aid=8999833)
diff --git a/legacy/bids-validator/bids_validator/rules/associated_data_rules.json b/legacy/bids-validator/bids_validator/rules/associated_data_rules.json
deleted file mode 100644
index 96de6a67..00000000
--- a/legacy/bids-validator/bids_validator/rules/associated_data_rules.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "associated_data": {
- "regexp": "^[\\/\\\\](?:@@@_associated_data_type_@@@)[\\/\\\\](?:.*)$",
- "tokens": {
- "@@@_associated_data_type_@@@": [
- "code",
- "derivatives",
- "sourcedata",
- "stimuli"
- ]
- }
- }
-}
diff --git a/legacy/bids-validator/bids_validator/rules/file_level_rules.json b/legacy/bids-validator/bids_validator/rules/file_level_rules.json
deleted file mode 100644
index 291c4c6c..00000000
--- a/legacy/bids-validator/bids_validator/rules/file_level_rules.json
+++ /dev/null
@@ -1,658 +0,0 @@
-{
- "anat_nonparametric": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?anat[\\/\\\\]\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_echo-[0-9]+)?(?:_part-(imag|mag|phase|real))?(?:_chunk-[0-9]+)?_(?:@@@_anat_suffixes_@@@)\\.(@@@_anat_ext_@@@)$",
- "tokens": {
- "@@@_anat_suffixes_@@@": [
- "T1w",
- "T2w",
- "PDw",
- "T2starw",
- "FLAIR",
- "inplaneT1",
- "inplaneT2",
- "PDT2",
- "angio",
- "T2star",
- "FLASH",
- "PD"
- ],
- "@@@_anat_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "anat_parametric": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?anat[\\/\\\\]\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?_(?:@@@_anat_suffixes_@@@)\\.(@@@_anat_ext_@@@)$",
- "tokens": {
- "@@@_anat_suffixes_@@@": [
- "T1map",
- "T2map",
- "T2starmap",
- "R1map",
- "R2map",
- "R2starmap",
- "PDmap",
- "MTRmap",
- "MTsat",
- "UNIT1",
- "T1rho",
- "MWFmap",
- "MTVmap",
- "PDT2map",
- "Chimap",
- "S0map",
- "M0map"
- ],
- "@@@_anat_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "anat_defacemask": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?anat[\\/\\\\]\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_mod-(?:@@@_anat_suffixes_@@@))?_defacemask\\.(@@@_anat_ext_@@@)$",
- "tokens": {
- "@@@_anat_suffixes_@@@": [
- "T1w",
- "T2w",
- "PDw",
- "T2starw",
- "FLAIR",
- "inplaneT1",
- "inplaneT2",
- "PDT2",
- "angio",
- "T1map",
- "T2map",
- "T2starmap",
- "R1map",
- "R2map",
- "R2starmap",
- "PDmap",
- "MTRmap",
- "MTsat",
- "UNIT1",
- "T1rho",
- "MWFmap",
- "MTVmap",
- "PDT2map",
- "Chimap",
- "TB1map",
- "RB1map",
- "S0map",
- "M0map",
- "MESE",
- "MEGRE",
- "VFA",
- "IRT1",
- "MP2RAGE",
- "MPM",
- "MTS",
- "MTR",
- "T2star",
- "FLASH",
- "PD"
- ],
- "@@@_anat_ext_@@@": ["nii.gz", "nii"]
- }
- },
-
- "anat_multiecho": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?anat[\\/\\\\]\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?_echo-[0-9]+?(_part-(imag|mag|phase|real))?_(?:@@@_anat_suffixes_@@@)\\.(@@@_anat_ext_@@@)$",
- "tokens": {
- "@@@_anat_suffixes_@@@": ["MESE", "MEGRE"],
- "@@@_anat_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "anat_multiflip": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?anat[\\/\\\\]\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?_flip-[0-9]+?(?:_part-(imag|mag|phase|real))?_(?:@@@_anat_suffixes_@@@)\\.(@@@_anat_ext_@@@)$",
- "tokens": {
- "@@@_anat_suffixes_@@@": ["VFA"],
- "@@@_anat_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "anat_multiinv": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?anat[\\/\\\\]\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?_inv-[0-9]+?(?:_part-(imag|mag|phase|real))?_(?:@@@_anat_suffixes_@@@)\\.(@@@_anat_ext_@@@)$",
- "tokens": {
- "@@@_anat_suffixes_@@@": ["IRT1"],
- "@@@_anat_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "anat_mp2rage": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?anat[\\/\\\\]\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_echo-[0-9]+)?(?:_flip-[0-9]+)?_inv-[0-9]+?(?:_part-(imag|mag|phase|real))?_(?:@@@_anat_suffixes_@@@)\\.(@@@_anat_ext_@@@)$",
- "tokens": {
- "@@@_anat_suffixes_@@@": ["MP2RAGE"],
- "@@@_anat_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "anat_vfa_mt": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?anat[\\/\\\\]\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_echo-[0-9]+)?_flip-[0-9]+?_mt-(on|off)?(?:_part-(imag|mag|phase|real))?_(?:@@@_anat_suffixes_@@@)\\.(@@@_anat_ext_@@@)$",
- "tokens": {
- "@@@_anat_suffixes_@@@": ["MPM", "MTS"],
- "@@@_anat_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "anat_mtr": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?anat[\\/\\\\]\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?_mt-(on|off)?(?:_part-(imag|mag|phase|real))?_(?:@@@_anat_suffixes_@@@)\\.(@@@_anat_ext_@@@)$",
- "tokens": {
- "@@@_anat_suffixes_@@@": ["MTR"],
- "@@@_anat_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
- "anat_cont": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?anat[\\/\\\\]\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_echo-[0-9]+)?(?:_part-(imag|mag|phase|real))?(?:_recording-[a-zA-Z0-9]+)?(?:_chunk-[0-9]+)?(?:@@@_cont_ext_@@@)$",
- "tokens": {
- "@@@_cont_ext_@@@": [
- "_physio\\.tsv\\.gz",
- "_stim\\.tsv\\.gz",
- "_physio\\.json",
- "_stim\\.json"
- ]
- }
- },
-
- "behavioral": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?beh[\\/\\\\]\\1(_\\2)?_task-[a-zA-Z0-9]+(?:_acq-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?((?:@@@_behavioral_ext_@@@)|(?:_recording-[a-zA-Z0-9]+)?(?:@@@_cont_ext_@@@))$",
- "tokens": {
- "@@@_behavioral_ext_@@@": [
- "_beh\\.json",
- "_beh\\.tsv",
- "_events\\.json",
- "_events\\.tsv"
- ],
- "@@@_cont_ext_@@@": [
- "_physio\\.tsv\\.gz",
- "_stim\\.tsv\\.gz",
- "_physio\\.json",
- "_stim\\.json"
- ]
- }
- },
-
- "dwi": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?dwi[\\/\\\\]\\1(_\\2)?(?:_acq-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_dir-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_part-(imag|mag|phase|real))?((?:@@@_dwi_ext_@@@)|(?:_recording-[a-zA-Z0-9]+)?(?:@@@_cont_ext_@@@))$",
- "tokens": {
- "@@@_dwi_ext_@@@": [
- "_dwi\\.nii\\.gz",
- "_dwi\\.nii",
- "_dwi\\.json",
- "_dwi\\.bvec",
- "_dwi\\.bval",
- "_sbref\\.nii\\.gz",
- "_sbref\\.nii",
- "_sbref\\.json"
- ],
- "@@@_cont_ext_@@@": [
- "_physio\\.tsv\\.gz",
- "_stim\\.tsv\\.gz",
- "_physio\\.json",
- "_stim\\.json"
- ]
- }
- },
-
- "fmap_gre": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?fmap[\\/\\\\]\\1(_\\2)?(?:_acq-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?_(?:@@@_field_map_type_@@@)\\.(@@@_field_map_ext_@@@)$",
- "tokens": {
- "@@@_field_map_type_@@@": [
- "phasediff",
- "phase1",
- "phase2",
- "magnitude1",
- "magnitude2",
- "magnitude",
- "fieldmap"
- ],
- "@@@_field_map_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "fmap_pepolar_asl": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?fmap[\\/\\\\]\\1(_\\2)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?_dir-[a-zA-Z0-9]+(?:_run-[0-9]+)?(?:_part-(mag|phase|real|imag))?(?:_chunk-[0-9]+)?_(?:@@@_field_map_type_@@@)\\.(@@@_field_map_ext_@@@)$",
- "tokens": {
- "@@@_field_map_type_@@@": ["m0scan", "epi"],
- "@@@_field_map_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "fmap_TB1DAM": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?fmap[\\/\\\\]\\1(_\\2)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?_flip-[0-9]+?(?:_part-(imag|mag|phase|real))?_(?:@@@_field_map_type_@@@)\\.(@@@_field_map_ext_@@@)$",
- "tokens": {
- "@@@_field_map_type_@@@": ["TB1DAM"],
- "@@@_field_map_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "fmap_TB1EPI": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?fmap[\\/\\\\]\\1(_\\2)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?_echo-[0-9]+?_flip-[0-9]+?(?:_inv-[0-9]+)?(?:_part-(imag|mag|phase|real))?_(?:@@@_field_map_type_@@@)\\.(@@@_field_map_ext_@@@)$",
- "tokens": {
- "@@@_field_map_type_@@@": ["TB1EPI"],
- "@@@_field_map_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "fmap_rf": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?fmap[\\/\\\\]\\1(_\\2)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_echo-[0-9]+)?(?:_flip-[0-9]+)?(?:_inv-[0-9]+)?(?:_part-(imag|mag|phase|real))?_(?:@@@_field_map_type_@@@)\\.(@@@_field_map_ext_@@@)$",
- "tokens": {
- "@@@_field_map_type_@@@": ["TB1AFI", "TB1TFL", "TB1RFM", "RB1COR"],
- "@@@_field_map_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "fmap_TB1SRGE": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?fmap[\\/\\\\]\\1(_\\2)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_echo-[0-9]+)?_flip-[0-9]+?_inv-[0-9]+?(?:_part-(imag|mag|phase|real))?_(?:@@@_field_map_type_@@@)\\.(@@@_field_map_ext_@@@)$",
- "tokens": {
- "@@@_field_map_type_@@@": ["TB1SRGE"],
- "@@@_field_map_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "fmap_parametric": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?fmap[\\/\\\\]\\1(_\\2)?(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?_(?:@@@_field_map_type_@@@)\\.(@@@_field_map_ext_@@@)$",
- "tokens": {
- "@@@_field_map_type_@@@": ["TB1map", "RB1map"],
- "@@@_field_map_ext_@@@": ["nii\\.gz", "nii", "json"]
- }
- },
-
- "func": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?func[\\/\\\\]\\1(_\\2)?_task-[a-zA-Z0-9]+(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_dir-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_echo-[0-9]+)?(?:_part-(imag|mag|phase|real))?(?:@@@_func_ext_@@@)$",
- "tokens": {
- "@@@_func_ext_@@@": [
- "_bold\\.nii\\.gz",
- "_bold\\.nii",
- "_bold\\.json",
- "_cbv\\.nii\\.gz",
- "_cbv\\.nii",
- "_cbv\\.json",
- "_sbref\\.nii\\.gz",
- "_sbref\\.nii",
- "_sbref\\.json"
- ]
- }
- },
-
- "func_phase_deprecated": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?func[\\/\\\\]\\1(_\\2)?_task-[a-zA-Z0-9]+(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_dir-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_echo-[0-9]+)?(?:@@@_func_ext_@@@)$",
- "tokens": {
- "@@@_func_ext_@@@": ["_phase\\.nii\\.gz", "_phase\\.nii", "_phase\\.json"]
- }
- },
-
- "func_events": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?func[\\/\\\\]\\1(_\\2)?_task-[a-zA-Z0-9]+(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_dir-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:@@@_func_ext_@@@)$",
- "tokens": {
- "@@@_func_ext_@@@": ["_events\\.tsv", "_events\\.json"]
- }
- },
-
- "func_timeseries": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?func[\\/\\\\]\\1(_\\2)?_task-[a-zA-Z0-9]+(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_dir-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_recording-[a-zA-Z0-9]+)?(?:@@@_cont_ext_@@@)$",
- "tokens": {
- "@@@_cont_ext_@@@": [
- "_physio\\.tsv\\.gz",
- "_stim\\.tsv\\.gz",
- "_physio\\.json",
- "_stim\\.json"
- ]
- }
- },
-
- "func_bold": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?func[\\/\\\\]\\1(_\\2)?_task-[a-zA-Z0-9]+(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_dir-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_echo-[0-9]+)?(?:_part-(imag|mag|phase|real))?(?:@@@_func_bold_ext_@@@)$",
- "tokens": {
- "@@@_func_bold_ext_@@@": [
- "_bold\\.nii\\.gz",
- "_bold\\.nii",
- "_sbref\\.nii\\.gz",
- "_sbref\\.nii"
- ]
- }
- },
-
- "asl": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?perf[\\/\\\\]\\1(_\\2)?(?:_acq-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_dir-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:(?:@@@_asl_type_@@@)|(?:_recording-[a-zA-Z0-9]+)?(?:@@@_cont_ext_@@@))$",
- "tokens": {
- "@@@_asl_type_@@@": [
- "_asl\\.nii\\.gz",
- "_asl\\.nii",
- "_asl\\.json",
- "_m0scan\\.nii\\.gz",
- "_m0scan\\.nii",
- "_m0scan\\.json",
- "_aslcontext\\.tsv",
- "_asllabeling\\.jpg"
- ],
- "@@@_cont_ext_@@@": [
- "_physio\\.tsv\\.gz",
- "_stim\\.tsv\\.gz",
- "_physio\\.json",
- "_stim\\.json"
- ]
- }
- },
-
- "eeg": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?eeg[\\/\\\\]\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_proc-[a-zA-Z0-9]+)?(?:_split-[0-9]+)?(?:_space-(@@@_eeg_space_@@@))?((_eeg\\.(@@@_eeg_type_@@@)|(@@@_eeg_ext_@@@))|(?:_recording-[a-zA-Z0-9]+)?(?:@@@_cont_ext_@@@))$",
- "tokens": {
- "@@@_eeg_space_@@@": [
- "Other",
- "CapTrak",
- "EEGLAB",
- "EEGLAB-HJ",
- "CTF",
- "ElektaNeuromag",
- "4DBti",
- "KitYokogawa",
- "ChietiItab",
- "ICBM452AirSpace",
- "ICBM452Warp5Space",
- "IXI549Space",
- "fsaverage",
- "fsaverageSym",
- "fsLR",
- "MNIColin27",
- "MNI152Lin",
- "MNI152NLin2009aSym",
- "MNI152NLin2009bSym",
- "MNI152NLin2009cSym",
- "MNI152NLin2009aAsym",
- "MNI152NLin2009bAsym",
- "MNI152NLin2009cAsym",
- "MNI152NLin6Sym",
- "MNI152NLin6ASym",
- "MNI305",
- "NIHPD",
- "OASIS30AntsOASISAnts",
- "OASIS30Atropos",
- "Talairach",
- "UNCInfant",
- "fsaverage3",
- "fsaverage4",
- "fsaverage5",
- "fsaverage6",
- "fsaveragesym",
- "UNCInfant0V21",
- "UNCInfant1V21",
- "UNCInfant2V21",
- "UNCInfant0V22",
- "UNCInfant1V22",
- "UNCInfant2V22",
- "UNCInfant0V23",
- "UNCInfant1V23",
- "UNCInfant2V23"
- ],
- "@@@_eeg_type_@@@": ["vhdr", "vmrk", "eeg", "edf", "bdf", "set", "fdt"],
- "@@@_eeg_ext_@@@": [
- "_events\\.json",
- "_events\\.tsv",
- "_electrodes\\.json",
- "_electrodes\\.tsv",
- "_channels\\.json",
- "_channels\\.tsv",
- "_eeg\\.json",
- "_coordsystem\\.json",
- "_photo\\.jpg",
- "_photo\\.png",
- "_photo\\.tif"
- ],
- "@@@_cont_ext_@@@": [
- "_physio\\.tsv\\.gz",
- "_stim\\.tsv\\.gz",
- "_physio\\.json",
- "_stim\\.json"
- ]
- }
- },
- "ieeg": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?ieeg[\\/\\\\]\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_proc-[a-zA-Z0-9]+)?(?:_split-[0-9]+)?(?:_space-(@@@_ieeg_space_@@@))?((_ieeg\\.(@@@_ieeg_type_@@@)|(@@@_ieeg_ext_@@@))|(?:_recording-[a-zA-Z0-9]+)?(?:@@@_cont_ext_@@@))$",
- "tokens": {
- "@@@_ieeg_space_@@@": [
- "Other",
- "Pixels",
- "ACPC",
- "ScanRAS",
- "ICBM452AirSpace",
- "ICBM452Warp5Space",
- "IXI549Space",
- "fsaverage",
- "fsaverageSym",
- "fsLR",
- "MNIColin27",
- "MNI152Lin",
- "MNI152NLin2009aSym",
- "MNI152NLin2009bSym",
- "MNI152NLin2009cSym",
- "MNI152NLin2009aAsym",
- "MNI152NLin2009bAsym",
- "MNI152NLin2009cAsym",
- "MNI152NLin6Sym",
- "MNI152NLin6ASym",
- "MNI305",
- "NIHPD",
- "OASIS30AntsOASISAnts",
- "OASIS30Atropos",
- "Talairach",
- "UNCInfant",
- "fsaverage3",
- "fsaverage4",
- "fsaverage5",
- "fsaverage6",
- "fsaveragesym",
- "UNCInfant0V21",
- "UNCInfant1V21",
- "UNCInfant2V21",
- "UNCInfant0V22",
- "UNCInfant1V22",
- "UNCInfant2V22",
- "UNCInfant0V23",
- "UNCInfant1V23",
- "UNCInfant2V23"
- ],
- "@@@_ieeg_type_@@@": [
- "edf",
- "vhdr",
- "vmrk",
- "eeg",
- "set",
- "fdt",
- "nwb",
- "mefd[\\/\\\\].*"
- ],
- "@@@_ieeg_ext_@@@": [
- "_events\\.json",
- "_events\\.tsv",
- "_electrodes\\.json",
- "_electrodes\\.tsv",
- "_channels\\.json",
- "_channels\\.tsv",
- "_ieeg\\.json",
- "_coordsystem\\.json",
- "_photo\\.jpg",
- "_photo\\.png",
- "_photo\\.tif"
- ],
- "@@@_cont_ext_@@@": [
- "_physio\\.tsv\\.gz",
- "_stim\\.tsv\\.gz",
- "_physio\\.json",
- "_stim\\.json"
- ]
- }
- },
-
- "meg": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?meg[\\/\\\\]\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_proc-[a-zA-Z0-9]+)?(?:_split-[0-9]+)?(_digitizer\\.txt|_meg(@@@_meg_type_@@@[\\/\\\\](.(?!\\.(sqd|con|fif|raw|raw\\.mhd|trg|kdf|chn)$))*|[\\/\\\\](.(?!\\.(sqd|con|fif|raw|raw\\.mhd|trg|kdf|chn)$))*)|(@@@_meg_ext_@@@)|(?:_recording-[a-zA-Z0-9]+)?(?:@@@_cont_ext_@@@))$",
- "tokens": {
- "@@@_meg_type_@@@": [
- "\\.ds[\\/\\\\].*",
- "\\.(?:chn|kdf|trg)",
- "\\.(?:raw|raw\\.mhd)",
- "\\.fif",
- "\\.(?:con|sqd)",
- "\\.(?:kdf|chn|trg)"
- ],
- "@@@_meg_ext_@@@": [
- "_events\\.json",
- "_events\\.tsv",
- "_channels\\.json",
- "_channels\\.tsv",
- "_electrodes\\.json",
- "_electrodes\\.tsv",
- "_meg\\.json",
- "_coordsystem\\.json",
- "_photo\\.jpg",
- "_photo\\.png",
- "_photo\\.tif",
- "_headshape\\.pos",
- "_markers\\.(?:mrk|sqd)"
- ],
- "@@@_cont_ext_@@@": [
- "_physio\\.tsv\\.gz",
- "_stim\\.tsv\\.gz",
- "_physio\\.json",
- "_stim\\.json"
- ]
- }
- },
-
- "meg_calbibration": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?meg[\\/]\\1(_\\2)?_acq-calibration_meg\\.dat$"
- },
-
- "meg_crosstalk": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?meg[\\/]\\1(_\\2)?_acq-crosstalk_meg\\.fif$"
- },
-
- "stimuli": {
- "regexp": "^[\\/\\\\](?:stimuli)[\\/\\\\](?:.*)$"
- },
-
- "nirs": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?nirs[\\/\\\\]\\1(_\\2)?(((?:_acq-[a-zA-Z0-9]+)?(@@@_nirs_optodes_@@@))|((?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_proc-[a-zA-Z0-9]+)?(?:_part-[0-9]+)?(_nirs\\.(@@@_nirs_type_@@@)|(@@@_nirs_ext_@@@))))$",
- "tokens": {
- "@@@_nirs_type_@@@": ["snirf"],
- "@@@_nirs_ext_@@@": [
- "_events\\.json",
- "_events\\.tsv",
- "_channels\\.json",
- "_channels\\.tsv",
- "_nirs\\.json",
- "_photo\\.jpg"
- ],
- "@@@_nirs_optodes_@@@": [
- "_optodes\\.tsv",
- "_optodes\\.json",
- "_coordsystem\\.json"
- ]
- }
- },
-
- "pet": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?pet[\\/\\\\](sub-[a-zA-Z0-9]+)(?:(_ses-[a-zA-Z0-9]+))?(?:_task-[a-zA-Z0-9]+)?(?:_trc-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:(?:@@@_pet_ext_@@@)|(?:_recording-[a-zA-Z0-9]+)?(?:@@@_cont_ext_@@@))$",
- "tokens": {
- "@@@_pet_ext_@@@": [
- "_pet\\.nii\\.gz",
- "_pet\\.nii",
- "_pet\\.json",
- "_events\\.json",
- "_events\\.tsv"
- ],
- "@@@_cont_ext_@@@": [
- "_physio\\.tsv\\.gz",
- "_stim\\.tsv\\.gz",
- "_physio\\.json",
- "_stim\\.json"
- ]
- }
- },
-
- "pet_blood": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?pet[\\/\\\\](sub-[a-zA-Z0-9]+)(?:(_ses-[a-zA-Z0-9]+))?(?:_task-[a-zA-Z0-9]+)?(?:_trc-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_recording-[a-zA-Z0-9]+)_(@@@_pet_ext_@@@)$",
- "tokens": {
- "@@@_pet_ext_@@@": ["blood\\.tsv\\.gz", "blood\\.tsv", "blood\\.json"]
- }
- },
- "motion": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?motion[\\/\\\\]\\1(_\\2)?_task-[a-zA-Z0-9]+(_tracksys-[a-zA-Z0-9]+(?:_acq-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?_(@@@_motion_ext_@@@))|((?:_tracksys-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?_(@@@_cont_ext_@@@))$",
- "tokens": {
- "@@@_motion_ext_@@@": [
- "channels\\.json",
- "channels\\.tsv",
- "motion\\.json",
- "motion\\.tsv"
- ],
- "@@@_cont_ext_@@@": ["events\\.json", "events\\.tsv"]
- }
- },
- "microscopy": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?micr[\\/\\\\](sub-[a-zA-Z0-9]+)(?:(_ses-[a-zA-Z0-9]+))?(?:_sample-[a-zA-Z0-9]+)(?:_acq-[a-zA-Z0-9]+)?(?:_stain-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_chunk-[0-9]+)?((@@@_microscopy_type_@@@)(@@@_microscopy_ext_@@@))$",
- "tokens": {
- "@@@_microscopy_type_@@@": [
- "_TEM",
- "_SEM",
- "_uCT",
- "_BF",
- "_DF",
- "_PC",
- "_DIC",
- "_FLUO",
- "_CONF",
- "_PLI",
- "_CARS",
- "_2PE",
- "_MPE",
- "_SR",
- "_NLO",
- "_OCT",
- "_SPIM",
- "_XPCT"
- ],
- "@@@_microscopy_ext_@@@": [
- "\\.ome\\.tif",
- "\\.ome\\.btf",
- "\\.ome\\.zarr[\\/\\\\].*",
- "\\.tif",
- "\\.png"
- ]
- }
- },
- "microscopy_photo": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?micr[\\/\\\\](sub-[a-zA-Z0-9]+)(?:(_ses-[a-zA-Z0-9]+))?(?:_sample-[a-zA-Z0-9]+)(?:_acq-[a-zA-Z0-9]+)?(@@@_photo_ext_@@@)$",
- "tokens": {
- "@@@_photo_ext_@@@": [
- "_photo\\.jpg",
- "_photo\\.png",
- "_photo\\.tif",
- "_photo\\.json"
- ]
- }
- },
- "microscopy_json": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?micr[\\/\\\\](sub-[a-zA-Z0-9]+)(?:(_ses-[a-zA-Z0-9]+))?(?:_sample-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_stain-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_chunk-[0-9]+)?(@@@_microscopy_type_@@@)\\.json$",
- "tokens": {
- "@@@_microscopy_type_@@@": [
- "_TEM",
- "_SEM",
- "_uCT",
- "_BF",
- "_DF",
- "_PC",
- "_DIC",
- "_FLUO",
- "_CONF",
- "_PLI",
- "_CARS",
- "_2PE",
- "_MPE",
- "_SR",
- "_NLO",
- "_OCT",
- "_SPIM",
- "_XPCT"
- ]
- }
- }
-}
diff --git a/legacy/bids-validator/bids_validator/rules/phenotypic_rules.json b/legacy/bids-validator/bids_validator/rules/phenotypic_rules.json
deleted file mode 100644
index b981c01a..00000000
--- a/legacy/bids-validator/bids_validator/rules/phenotypic_rules.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "phenotypic_data": {
- "regexp": "^[\\/\\\\](?:phenotype)[\\/\\\\](?:.*\\.tsv|.*\\.json)$"
- }
-}
diff --git a/legacy/bids-validator/bids_validator/rules/session_level_rules.json b/legacy/bids-validator/bids_validator/rules/session_level_rules.json
deleted file mode 100644
index 90ba9982..00000000
--- a/legacy/bids-validator/bids_validator/rules/session_level_rules.json
+++ /dev/null
@@ -1,267 +0,0 @@
-{
- "scans": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?\\1(_\\2)?(@@@_scat_ext_@@@)$",
- "tokens": {
- "@@@_scat_ext_@@@": ["_scans\\.tsv", "_scans\\.json"]
- }
- },
-
- "func_ses": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?\\1(_\\2)?_task-[a-zA-Z0-9]+(?:_acq-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_echo-[0-9]+)?(@@@_func_ses_ext_@@@)$",
- "tokens": {
- "@@@_func_ses_ext_@@@": [
- "_bold\\.json",
- "_sbref\\.json",
- "_events\\.json",
- "_events\\.tsv",
- "_physio\\.json",
- "_stim\\.json"
- ]
- }
- },
-
- "asl_ses": {
- "regexp": "^\\/(sub-[a-zA-Z0-9]+)\\/(?:(ses-[a-zA-Z0-9]+)\\/)?\\1(_\\2)?(?:_acq-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(@@@_asl_ses_ext_@@@)$",
- "tokens": {
- "@@@_asl_ses_ext_@@@": [
- "_asl\\.json",
- "_aslcontext\\.tsv",
- "_m0scan\\.json",
- "_asllabeling\\.jpg"
- ]
- }
- },
-
- "pet_ses": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_trc-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+_)?(@@@_pet_ses_type_@@@)$",
- "tokens": {
- "@@@_pet_ses_type_@@@": ["_pet\\.json", "_events\\.json", "_events\\.tsv"]
- }
- },
-
- "anat_ses": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+_)?(@@@_anat_ses_type_@@@)\\.json$",
- "tokens": {
- "@@@_anat_ses_type_@@@": [
- "T1w",
- "T2w",
- "T1map",
- "T2map",
- "T1rho",
- "FLAIR",
- "PD",
- "PDT2",
- "inplaneT1",
- "inplaneT2",
- "angio",
- "defacemask",
- "SWImagandphase"
- ]
- }
- },
-
- "dwi_ses": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?\\1(_\\2)?(?:_acq-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_)?dwi\\.(?:@@@_dwi_ses_ext_@@@)$",
- "tokens": {
- "@@@_dwi_ses_ext_@@@": ["json", "bval", "bvec"]
- }
- },
-
- "meg_ses": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_proc-[a-zA-Z0-9]+)?(@@@_meg_ses_type_@@@)$",
- "tokens": {
- "@@@_meg_ses_type_@@@": [
- "_events\\.tsv",
- "_channels\\.tsv",
- "_channels\\.json",
- "_meg\\.json",
- "_coordsystem\\.json",
- "_photo\\.jpg",
- "_photo\\.png",
- "_photo\\.tif",
- "_headshape\\.pos"
- ]
- }
- },
-
- "eeg_ses": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_proc-[a-zA-Z0-9]+)?(?:_space-(@@@_eeg_space_@@@))?(@@@_eeg_ses_type_@@@)$",
- "tokens": {
- "@@@_eeg_ses_type_@@@": [
- "_events\\.tsv",
- "_channels\\.tsv",
- "_channels\\.json",
- "_electrodes\\.tsv",
- "_electrodes\\.json",
- "_eeg\\.json",
- "_coordsystem\\.json",
- "_photo\\.jpg",
- "_photo\\.png",
- "_photo\\.tif"
- ],
- "@@@_eeg_space_@@@": [
- "Other",
- "CapTrak",
- "EEGLAB",
- "EEGLAB-HJ",
- "CTF",
- "ElektaNeuromag",
- "4DBti",
- "KitYokogawa",
- "ChietiItab",
- "ICBM452AirSpace",
- "ICBM452Warp5Space",
- "IXI549Space",
- "fsaverage",
- "fsaverageSym",
- "fsLR",
- "MNIColin27",
- "MNI152Lin",
- "MNI152NLin2009aSym",
- "MNI152NLin2009bSym",
- "MNI152NLin2009cSym",
- "MNI152NLin2009aAsym",
- "MNI152NLin2009bAsym",
- "MNI152NLin2009cAsym",
- "MNI152NLin6Sym",
- "MNI152NLin6ASym",
- "MNI305",
- "NIHPD",
- "OASIS30AntsOASISAnts",
- "OASIS30Atropos",
- "Talairach",
- "UNCInfant",
- "fsaverage3",
- "fsaverage4",
- "fsaverage5",
- "fsaverage6",
- "fsaveragesym",
- "UNCInfant0V21",
- "UNCInfant1V21",
- "UNCInfant2V21",
- "UNCInfant0V22",
- "UNCInfant1V22",
- "UNCInfant2V22",
- "UNCInfant0V23",
- "UNCInfant1V23",
- "UNCInfant2V23"
- ]
- }
- },
-
- "ieeg_ses": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_proc-[a-zA-Z0-9]+)?(?:_space-(@@@_ieeg_space_@@@))?(@@@_ieeg_ses_type_@@@)$",
- "tokens": {
- "@@@_ieeg_ses_type_@@@": [
- "_events\\.tsv",
- "_channels\\.tsv",
- "_channels\\.json",
- "_electrodes\\.tsv",
- "_electrodes\\.json",
- "_ieeg\\.json",
- "_coordsystem\\.json",
- "_photo\\.jpg",
- "_photo\\.png",
- "_photo\\.tif"
- ],
- "@@@_ieeg_space_@@@": [
- "Other",
- "Pixels",
- "ACPC",
- "ScanRAS",
- "ICBM452AirSpace",
- "ICBM452Warp5Space",
- "IXI549Space",
- "fsaverage",
- "fsaverageSym",
- "fsLR",
- "MNIColin27",
- "MNI152Lin",
- "MNI152NLin2009aSym",
- "MNI152NLin2009bSym",
- "MNI152NLin2009cSym",
- "MNI152NLin2009aAsym",
- "MNI152NLin2009bAsym",
- "MNI152NLin2009cAsym",
- "MNI152NLin6Sym",
- "MNI152NLin6ASym",
- "MNI305",
- "NIHPD",
- "OASIS30AntsOASISAnts",
- "OASIS30Atropos",
- "Talairach",
- "UNCInfant",
- "fsaverage3",
- "fsaverage4",
- "fsaverage5",
- "fsaverage6",
- "fsaveragesym",
- "UNCInfant0V21",
- "UNCInfant1V21",
- "UNCInfant2V21",
- "UNCInfant0V22",
- "UNCInfant1V22",
- "UNCInfant2V22",
- "UNCInfant0V23",
- "UNCInfant1V23",
- "UNCInfant2V23"
- ]
- }
- },
-
- "motion_ses": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?\\1(_\\2)?(?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(@@@_motion_ses_type_@@@)$",
- "tokens": {
- "@@@_motion_ses_type_@@@": [
- "_events.tsv",
- "_events.json",
- "_channels.tsv",
- "_channels.json",
- "_motion.json",
- "_coordsystem.json"
- ]
- }
- },
- "microscopy_ses": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?\\1(_\\2)?(?:_sample-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_stain-[a-zA-Z0-9]+)?(?:_run-[0-9]+_)?(?:_chunk-[0-9]+)?(@@@_microscopy_ses_type_@@@)$",
- "tokens": {
- "@@@_microscopy_ses_type_@@@": [
- "_TEM\\.json",
- "_SEM\\.json",
- "_uCT\\.json",
- "_BF\\.json",
- "_DF\\.json",
- "_PC\\.json",
- "_DIC\\.json",
- "_FLUO\\.json",
- "_CONF\\.json",
- "_PLI\\.json",
- "_CARS\\.json",
- "_2PE\\.json",
- "_MPE\\.json",
- "_SR\\.json",
- "_NLO\\.json",
- "_OCT\\.json",
- "_SPIM\\.json",
- "_XPCT\\.json"
- ]
- }
- },
-
- "nirs_ses": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\](?:(ses-[a-zA-Z0-9]+)[\\/\\\\])?\\1(_\\2)?(((?:_acq-[a-zA-Z0-9]+)?(@@@_nirs_optodes_@@@))|((?:_task-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_proc-[a-zA-Z0-9]+)?(@@@_nirs_ses_type_@@@)))$",
- "tokens": {
- "@@@_nirs_ses_type_@@@": [
- "_events\\.tsv",
- "_channels\\.tsv",
- "_nirs\\.json",
- "_photo\\.jpg"
- ],
- "@@@_nirs_optodes_@@@": [
- "_optodes\\.tsv",
- "_optodes\\.json",
- "_coordsystem\\.json"
- ]
- }
- }
-}
diff --git a/legacy/bids-validator/bids_validator/rules/subject_level_rules.json b/legacy/bids-validator/bids_validator/rules/subject_level_rules.json
deleted file mode 100644
index d2e80d92..00000000
--- a/legacy/bids-validator/bids_validator/rules/subject_level_rules.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "subject_level": {
- "regexp": "^[\\/\\\\](sub-[a-zA-Z0-9]+)[\\/\\\\]\\1(@@@_subject_level_ext_@@@)$",
- "tokens": {
- "@@@_subject_level_ext_@@@": ["_sessions\\.tsv", "_sessions\\.json"]
- }
- }
-}
diff --git a/legacy/bids-validator/bids_validator/rules/top_level_rules.json b/legacy/bids-validator/bids_validator/rules/top_level_rules.json
deleted file mode 100644
index 33e2a39d..00000000
--- a/legacy/bids-validator/bids_validator/rules/top_level_rules.json
+++ /dev/null
@@ -1,279 +0,0 @@
-{
- "root_top": {
- "regexp": "^[\\/\\\\]?(@@@_root_files_@@@)$",
- "tokens": {
- "@@@_root_files_@@@": [
- "README",
- "README\\.md",
- "README\\.rst",
- "README\\.txt",
- "CHANGES",
- "CITATION\\.cff",
- "LICENSE",
- "dataset_description\\.json",
- "genetic_info\\.json",
- "participants\\.tsv",
- "participants\\.json",
- "phasediff.json",
- "phase1\\.json",
- "phase2\\.json",
- "fieldmap\\.json",
- "TB1DAM\\.json",
- "TB1EPI\\.json",
- "TB1AFI\\.json",
- "TB1TFL\\.json",
- "TB1RFM\\.json",
- "TB1SRGE\\.json",
- "RB1COR\\.json",
- "events\\.json",
- "scans\\.json",
- "samples\\.json",
- "samples\\.tsv"
- ]
- }
- },
-
- "func_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?task-[a-zA-Z0-9]+(?:_acq-[a-zA-Z0-9]+)?(?:_ce-[a-zA-Z0-9]+)?(?:_dir-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_echo-[0-9]+)?((?:@@@_func_top_ext_@@@)|(?:_recording-[a-zA-Z0-9]+)?(?:@@@_cont_ext_@@@))$",
- "tokens": {
- "@@@_func_top_ext_@@@": [
- "_bold\\.json",
- "_sbref\\.json",
- "_events\\.json",
- "_events\\.tsv",
- "_beh\\.json"
- ],
- "@@@_cont_ext_@@@": ["_physio\\.json", "_stim\\.json"]
- }
- },
-
- "asl_top": {
- "regexp": "^\\/(?:ses-[a-zA-Z0-9]+_)?(?:_acq-[a-zA-Z0-9]+)?(?:_rec-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(@@@_asl_top_ext_@@@)$",
- "tokens": {
- "@@@_asl_top_ext_@@@": [
- "_asl\\.json",
- "_m0scan\\.json",
- "_aslcontext\\.tsv",
- "_labeling.jpg"
- ]
- }
- },
-
- "pet_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:task-[a-zA-Z0-9]+_)?(?:trc-[a-zA-Z0-9]+_)?(?:rec-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(@@@_pet_suffixes_@@@)\\.json$",
- "tokens": {
- "@@@_pet_suffixes_@@@": ["pet"]
- }
- },
-
- "anat_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:task-[a-zA-Z0-9]+_)?(?:acq-[a-zA-Z0-9]+_)?(?:rec-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(@@@_anat_suffixes_@@@)\\.json$",
- "tokens": {
- "@@@_anat_suffixes_@@@": [
- "T1w",
- "T2w",
- "T1map",
- "T2map",
- "T1rho",
- "FLAIR",
- "PD",
- "PDT2",
- "inplaneT1",
- "inplaneT2",
- "angio",
- "SWImagandphase",
- "T2star",
- "FLASH",
- "PDmap",
- "photo"
- ]
- }
- },
-
- "VFA_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:acq-[a-zA-Z0-9]+_)?(?:ce-[a-zA-Z0-9]+_)?(?:rec-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(?:echo-[0-9]+_)?(?:flip-[0-9]+_)?(?:part-(mag|phase|real|imag)_)?(@@@_mese_megre_suffixes_@@@)\\.json$",
- "tokens": {
- "@@@_mese_megre_suffixes_@@@": ["VFA"]
- }
- },
-
- "megre_mese_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:acq-[a-zA-Z0-9]+_)?(?:ce-[a-zA-Z0-9]+_)?(?:rec-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(?:echo-[0-9]+_)?(?:part-(mag|phase|real|imag)_)?(@@@_mese_megre_suffixes_@@@)\\.json$",
- "tokens": {
- "@@@_mese_megre_suffixes_@@@": ["MEGRE", "MESE"]
- }
- },
-
- "irt1_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:acq-[a-zA-Z0-9]+_)?(?:ce-[a-zA-Z0-9]+_)?(?:rec-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(?:inv-[0-9]+_)?(?:part-(mag|phase|real|imag)_)?(@@@_irt1_suffixes_@@@)\\.json$",
- "tokens": {
- "@@@_irt1_suffixes_@@@": ["IRT1"]
- }
- },
-
- "mpm_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:acq-[a-zA-Z0-9]+_)?(?:ce-[a-zA-Z0-9]+_)?(?:rec-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(?:echo-[0-9]+_)?(?:flip-[0-9]+_)?(?:mt-(on|off)_)(?:part-(mag|phase|real|imag)_)?(@@@_mpm_suffixes_@@@)\\.json$",
- "tokens": {
- "@@@_mpm_suffixes_@@@": ["MPM"]
- }
- },
-
- "mts_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:acq-[a-zA-Z0-9]+_)?(?:ce-[a-zA-Z0-9]+_)?(?:rec-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(?:echo-[0-9]+_)?(?:flip-[0-9]+_mt-(on|off)_)?(?:part-(mag|phase|real|imag)_)?(@@@_mts_suffixes_@@@)\\.json$",
- "tokens": {
- "@@@_mts_suffixes_@@@": ["MTS"]
- }
- },
-
- "mtr_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:acq-[a-zA-Z0-9]+_)?(?:ce-[a-zA-Z0-9]+_)?(?:rec-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(?:mt-(on|off)_)?(?:part-(mag|phase|real|imag)_)?(@@@_mtr_suffixes_@@@)\\.json$",
- "tokens": {
- "@@@_mtr_suffixes_@@@": ["MTR"]
- }
- },
-
- "mp2rage_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:acq-[a-zA-Z0-9]+_)?(?:ce-[a-zA-Z0-9]+_)?(?:rec-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(?:echo-[0-9]+_)?(?:flip-[0-9]+_)?(?:inv-[0-9]+_)?(?:part-(mag|phase|real|imag)_)?(@@@_mp2rage_suffixes_@@@)\\.json$",
- "tokens": {
- "@@@_mp2rage_suffixes_@@@": ["MP2RAGE"]
- }
- },
-
- "unit1_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:task-[a-zA-Z0-9]+_)?(?:acq-[a-zA-Z0-9]+_)?(?:ce-[a-zA-Z0-9]+_)?(?:rec-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(?:chunk-[0-9]+_)?(@@@_unit1_suffixes_@@@)\\.json$",
- "tokens": {
- "@@@_unit1_suffixes_@@@": ["UNIT1"]
- }
- },
-
- "dwi_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:acq-[a-zA-Z0-9]+_)?(?:rec-[a-zA-Z0-9]+_)?(?:dir-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(?:part-(mag|phase|real|imag)_)?(?:chunk-[0-9]+_)?(dwi\\.(?:@@@_dwi_top_ext_@@@)|sbref\\.json)$",
- "tokens": {
- "@@@_dwi_top_ext_@@@": ["json", "bval", "bvec"]
- }
- },
- "eeg_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?task-[a-zA-Z0-9]+(?:_acq-[a-zA-Z0-9]+)?(?:_proc-[a-zA-Z0-9]+)?(?:@@@_eeg_top_ext_@@@)$",
- "tokens": {
- "@@@_eeg_top_ext_@@@": [
- "_eeg\\.json",
- "_channels\\.tsv",
- "_channels\\.json",
- "_electrodes\\.tsv",
- "_electrodes\\.json",
- "_photo\\.jpg",
- "_photo\\.png",
- "_photo\\.tif",
- "_coordsystem\\.json"
- ]
- }
- },
- "ieeg_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?task-[a-zA-Z0-9]+(?:_acq-[a-zA-Z0-9]+)?(?:_proc-[a-zA-Z0-9]+)?(?:@@@_ieeg_top_ext_@@@)$",
- "tokens": {
- "@@@_ieeg_top_ext_@@@": [
- "_ieeg\\.json",
- "_channels\\.tsv",
- "_channels\\.json",
- "_electrodes\\.tsv",
- "_electrodes\\.json",
- "_photo\\.jpg",
- "_photo\\.png",
- "_photo\\.tif",
- "_coordsystem\\.json"
- ]
- }
- },
- "meg_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?task-[a-zA-Z0-9]+(?:_acq-[a-zA-Z0-9]+)?(?:_proc-[a-zA-Z0-9]+)?(?:@@@_meg_top_ext_@@@)$",
- "tokens": {
- "@@@_meg_top_ext_@@@": [
- "_meg\\.json",
- "_channels\\.tsv",
- "_channels\\.json",
- "_photo\\.jpg",
- "_photo\\.png",
- "_photo\\.tif",
- "_coordsystem\\.json"
- ]
- }
- },
- "motion_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?task-[a-zA-Z0-9]+(?:@@@_motion_top_ext_@@@)$",
- "tokens": {
- "@@@_motion_top_ext_@@@": [
- "_motion\\.json",
- "_channels\\.tsv",
- "_channels\\.json",
- "_coordsystem\\.json"
- ]
- }
- },
- "nirs_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(((?:_acq-[a-zA-Z0-9]+)?(@@@_nirs_optodes_@@@))|(task-[a-zA-Z0-9]+(?:_acq-[a-zA-Z0-9]+)?(?:_proc-[a-zA-Z0-9]+)?(?:@@@_nirs_top_ext_@@@)))$",
- "tokens": {
- "@@@_nirs_top_ext_@@@": [
- "_nirs\\.json",
- "_channels\\.tsv",
- "_photo\\.jpg"
- ],
- "@@@_nirs_optodes_@@@": [
- "_optodes\\.tsv",
- "_optodes\\.json",
- "_coordsystem\\.json"
- ]
- }
- },
- "fmap_epi_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:acq-[a-zA-Z0-9]+_)?(?:ce-[a-zA-Z0-9]+_)?(?:dir-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(?:part-(mag|phase|real|imag)_)?(?:chunk-[0-9]+_)?(?:@@@_field_map_type_@@@)\\.json$",
- "tokens": {
- "@@@_field_map_type_@@@": ["m0scan", "epi"]
- }
- },
- "fmap_gre_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:acq-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(?:chunk-[0-9]+_)?(@@@_fmap_gre_suffixes_@@@)\\.json$",
- "tokens": {
- "@@@_fmap_gre_suffixes_@@@": [
- "magnitude1",
- "magnitude2",
- "phasediff",
- "phase1",
- "phase2",
- "magnitude",
- "fieldmap"
- ]
- }
- },
- "other_top_files": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:task-[a-zA-Z0-9]+_)?(?:acq-[a-zA-Z0-9]+_)?(?:rec-[a-zA-Z0-9]+_)?(?:run-[0-9]+_)?(?:recording-[a-zA-Z0-9]+_)?(@@@_other_top_files_ext_@@@)$",
- "tokens": {
- "@@@_other_top_files_ext_@@@": ["physio\\.json", "stim\\.json"]
- }
- },
-
- "microscopy_top": {
- "regexp": "^[\\/\\\\](?:ses-[a-zA-Z0-9]+_)?(?:_sample-[a-zA-Z0-9]+)?(?:_acq-[a-zA-Z0-9]+)?(?:_stain-[a-zA-Z0-9]+)?(?:_run-[0-9]+)?(?:_chunk-[0-9]+)?(?:@@@_microscopy_top_ext_@@@)$",
- "tokens": {
- "@@@_microscopy_top_ext_@@@": [
- "_TEM\\.json",
- "_SEM\\.json",
- "_uCT\\.json",
- "_BF\\.json",
- "_DF\\.json",
- "_PC\\.json",
- "_DIC\\.json",
- "_FLUO\\.json",
- "_CONF\\.json",
- "_PLI\\.json",
- "_CARS\\.json",
- "_2PE\\.json",
- "_MPE\\.json",
- "_SR\\.json",
- "_NLO\\.json",
- "_OCT\\.json",
- "_SPIM\\.json",
- "_XPCT\\.json"
- ]
- }
- }
-}
diff --git a/legacy/bids-validator/bids_validator/tsv/non_custom_columns.json b/legacy/bids-validator/bids_validator/tsv/non_custom_columns.json
deleted file mode 100644
index 75dd3b61..00000000
--- a/legacy/bids-validator/bids_validator/tsv/non_custom_columns.json
+++ /dev/null
@@ -1,105 +0,0 @@
-{
- "channels": [
- "description",
- "high_cutoff",
- "low_cutoff",
- "name",
- "notch",
- "source",
- "detector",
- "wavelength_actual",
- "wavelength_nominal",
- "wavelength_emission_actual",
- "component",
- "short_channel",
- "sampling_frequency",
- "software_filters",
- "status",
- "status_description",
- "type",
- "units",
- "reference",
- "group",
- "tracking_system",
- "tracked_point",
- "component",
- "placement",
- "HED"
- ],
- "electrodes": [
- "name",
- "x",
- "y",
- "z",
- "size",
- "material",
- "manufacturer",
- "group",
- "hemisphere",
- "type",
- "impedance",
- "dimension",
- "HED"
- ],
- "optodes": [
- "name",
- "type",
- "x",
- "y",
- "z",
- "template_x",
- "template_y",
- "template_z",
- "source_type",
- "detector_type",
- "HED"
- ],
- "events": [
- "duration",
- "HED",
- "onset",
- "trial_type",
- "response_time",
- "stim_file",
- "HED"
- ],
- "misc": [],
- "participants": ["participant_id", "HED"],
- "phenotype": ["participant_id", "HED"],
- "scans": ["acq_time", "filename", "HED"],
- "samples": [
- "sample_id",
- "participant_id",
- "sample_type",
- "pathology",
- "derived_from",
- "HED"
- ],
- "sessions": ["acq_time", "session_id", "HED"],
- "aslcontext": ["volume_type", "HED"],
- "blood": [
- "time",
- "plasma_radioactivity",
- "whole_blood_radioactivity",
- "metabolite_parent_fraction",
- "hplc_recovery_fractions",
- "HED"
- ],
- "nirs": [
- "name",
- "type",
- "source",
- "detector",
- "wavelength_nominal",
- "units",
- "sampling_frequency",
- "component",
- "wavelength_actual",
- "description",
- "wavelength_emission_actual",
- "short_channel",
- "status",
- "status_description",
- "HED"
- ]
-}
diff --git a/legacy/bids-validator/bin/bids-validator b/legacy/bids-validator/bin/bids-validator
deleted file mode 100755
index c3490f04..00000000
--- a/legacy/bids-validator/bin/bids-validator
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/usr/bin/env node
-function entry(cli) {
- cli(process.argv.slice(2)).catch(code => {
- process.exit(code)
- })
-}
-
-try {
- // Test if there's a development tree to run
- require.resolve('../cli.js')
- process.env.ESBUILD_MAX_BUFFER = 64 * 1024 * 1024
- // For dev, use esbuild-runner
- require('esbuild-runner/register')
- const { default: cli } = require('../cli.js')
- entry(cli)
-} catch (err) {
- if (err.code === 'MODULE_NOT_FOUND') {
- const { default: cli } = require('bids-validator/cli')
- entry(cli)
- } else {
- console.log(err)
- process.exitCode = 1
- }
-}
diff --git a/legacy/bids-validator/bin/test-submodule-exists b/legacy/bids-validator/bin/test-submodule-exists
deleted file mode 100755
index f111f3c0..00000000
--- a/legacy/bids-validator/bin/test-submodule-exists
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/usr/bin/env node
-/* eslint-disable no-console */
-const fs = require('fs')
-
-/**
- * checks that submodule directory exists and is not empty
- * @param {string} path
- * @returns {boolean}
- */
-const checkTestData = path => {
- const submoduleDirExists = fs.existsSync(path) && fs.readdirSync(path).length
- return submoduleDirExists
-}
-
-/**
- * if submodule at current test version does not exist,
- * prompt user to update submodule
- */
-const main = () => {
- let testDataExists
- try {
- testDataExists = checkTestData('bids-validator/tests/data/bids-examples')
- } catch (err) {
- testDataExists = false
- console.error(err)
- }
- if (!testDataExists) {
- console.error(
- "\nError: It looks like you're missing the bids-examples test files. Please run `git submodule update --init --depth 1`.\n See project README for more information.\n",
- )
- process.exit(1)
- }
-}
-
-main()
diff --git a/legacy/bids-validator/cli.js b/legacy/bids-validator/cli.js
deleted file mode 100644
index 65be0ed1..00000000
--- a/legacy/bids-validator/cli.js
+++ /dev/null
@@ -1,90 +0,0 @@
-/*eslint no-console: ["error", {allow: ["log"]}] */
-
-import { parseOptions } from './validators/options'
-import validate from './index.js'
-
-const format = validate.consoleFormat
-import colors from 'colors/safe'
-import fs from 'fs'
-import { filenamesOnly } from './utils/filenamesOnly.js'
-
-const errorToString = (err) => {
- if (err instanceof Error) return err.stack
- else if (typeof err === 'object') return JSON.parse(err)
- else return err
-}
-
-/**
- * Write a large string or buffer to stdout and wait for the drain event
- *
- * This is needed to avoid truncating buffered output when piped
- * @param {string} data
- * @param {function} cb
- */
-const writeStdout = (data, cb) => {
- if (!process.stdout.write(data)) {
- process.stdout.once('drain', cb)
- } else {
- process.nextTick(cb)
- }
-}
-
-export function cli(argumentOverride) {
- return new Promise((resolve, reject) => {
- // Setup CLI state when called via Node.js
- if (process.env['NO_COLOR'] !== undefined) {
- colors.disable()
- }
- process.title = 'bids-validator'
- const argv = parseOptions(argumentOverride)
- const dir = argv._[0]
- const options = argv
- process.on('unhandledRejection', (err) => {
- console.log(
- format.unexpectedError(
- // eslint-disable-next-line
- `Unhandled rejection (\n reason: ${errorToString(err)}\n).\n`,
- ),
- )
- reject(3)
- })
-
- if (options.filenames) {
- return filenamesOnly()
- }
-
- try {
- // Test if we can access the dataset directory at all
- fs.opendirSync(dir)
- } catch (err) {
- console.log(colors.red(dir + ' does not exist or is inaccessible'))
- reject(2)
- }
-
- validate.BIDS(dir, options, function (issues, summary) {
- function resolveOrReject() {
- if (
- issues === 'Invalid' ||
- (issues.errors && issues.errors.length >= 1) ||
- (issues.config && issues.config.length >= 1)
- ) {
- reject(1)
- } else {
- resolve(0)
- }
- }
- if (options.json) {
- writeStdout(JSON.stringify({ issues, summary }), resolveOrReject)
- } else {
- writeStdout(
- format.issues(issues, options) +
- '\n' +
- format.summary(summary, options),
- resolveOrReject,
- )
- }
- })
- })
-}
-
-export default cli
diff --git a/legacy/bids-validator/docs/dev.md b/legacy/bids-validator/docs/dev.md
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/esbuild.mjs b/legacy/bids-validator/esbuild.mjs
deleted file mode 100644
index b0ec039f..00000000
--- a/legacy/bids-validator/esbuild.mjs
+++ /dev/null
@@ -1,50 +0,0 @@
-import path from 'path'
-import * as esbuild from 'esbuild'
-import GlobalsPlugin from 'esbuild-plugin-globals'
-
-// Node.js target build
-await esbuild.build({
- entryPoints: [
- path.join(process.cwd(), 'index.js'),
- path.join(process.cwd(), 'cli.js'),
- path.join(process.cwd(), 'utils', 'consoleFormat.js'),
- ],
- outdir: path.join(process.cwd(), 'dist', 'commonjs'),
- target: 'node18',
- bundle: true,
- sourcemap: true,
- platform: 'node',
-})
-
-// Browser target build
-await esbuild.build({
- entryPoints: [path.join(process.cwd(), 'index.js')],
- outdir: path.join(process.cwd(), 'dist', 'esm'),
- bundle: true,
- sourcemap: true,
- format: 'esm',
- define: {
- global: 'globalThis',
- window: 'globalThis',
- crypto: 'globalThis',
- os: 'globalThis',
- timers: 'globalThis',
- process: JSON.stringify({
- env: {},
- argv: [],
- stdout: '',
- stderr: '',
- stdin: '',
- version: 'v12.14.1',
- }),
- },
- external: ['pluralize'],
- plugins: [
- GlobalsPlugin({
- crypto: 'globalThis',
- os: 'globalThis',
- timers: 'globalThis',
- process: 'globalThis',
- }),
- ],
-})
diff --git a/legacy/bids-validator/index.js b/legacy/bids-validator/index.js
deleted file mode 100644
index 593103f0..00000000
--- a/legacy/bids-validator/index.js
+++ /dev/null
@@ -1,5 +0,0 @@
-// import validations
-import validate from './validators'
-
-// export validations for use in other applications
-export default validate
diff --git a/legacy/bids-validator/package.json b/legacy/bids-validator/package.json
deleted file mode 100644
index 3b330701..00000000
--- a/legacy/bids-validator/package.json
+++ /dev/null
@@ -1,92 +0,0 @@
-{
- "name": "bids-validator",
- "version": "1.14.15-dev.0",
- "description": "",
- "main": "./dist/commonjs/index.js",
- "exports": {
- ".": {
- "import": "./dist/esm/index.js",
- "require": "./dist/commonjs/index.js"
- },
- "./cli": {
- "require": "./dist/commonjs/cli.js"
- },
- "./utils/consoleFormat": {
- "require": "./dist/commonjs/consoleFormat.js"
- },
- "./package.json": "./package.json"
- },
- "scripts": {
- "build": "node ./esbuild.mjs",
- "prepublishOnly": "npm run build"
- },
- "repository": {
- "type": "git",
- "url": "https://github.com/bids-standard/bids-validator.git"
- },
- "engines": {
- "node": ">=18.0.0"
- },
- "bin": {
- "bids-validator": "bin/bids-validator"
- },
- "author": "Squishymedia",
- "license": "MIT",
- "bugs": {
- "url": "https://github.com/bids-standard/bids-validator/issues"
- },
- "homepage": "https://github.com/bids-standard/bids-validator",
- "dependencies": {
- "@aws-sdk/client-s3": "^3.637.0",
- "ajv": "^6.5.2",
- "bytes": "^3.1.2",
- "colors": "^1.4.0",
- "cross-fetch": "^4.0.0",
- "date-fns": "^4.1.0",
- "events": "^3.3.0",
- "exifreader": "^4.23.7",
- "hed-validator": "^3.15.4",
- "ignore": "^6.0.2",
- "is-utf8": "^0.2.1",
- "jest": "^29.7.0",
- "jshint": "^2.13.6",
- "lerna": "^8.1.8",
- "lodash": "^4.17.21",
- "minimatch": "3.0.5",
- "next": "14.2.13",
- "nifti-js": "^1.0.1",
- "p-limit": "^2.1.0",
- "pako": "^1.0.6",
- "path": "^0.12.7",
- "pluralize": "^8.0.0",
- "semver": "^7.6.3",
- "stream-browserify": "^3.0.0",
- "table": "^6.8.2",
- "util": "^0.12.5",
- "xml2js": "^0.6.2",
- "yaml": "^2.3.1",
- "yargs": "^17.7.2"
- },
- "devDependencies": {
- "adm-zip": "",
- "chai": "",
- "esbuild": "^0.24.0",
- "esbuild-plugin-globals": "^0.2.0",
- "esbuild-runner": "^2.2.2",
- "eslint": "^8.57.0",
- "eslint-config-prettier": "^9.1.0",
- "eslint-plugin-prettier": "^5.2.1",
- "husky": "^9.1.6",
- "lockfile": "^1.0.4",
- "sync-request": "6.1.0"
- },
- "browser": {
- "fs": false,
- "child_process": false,
- "stream": "stream-browserify"
- },
- "files": [
- "dist/*",
- "schema/*"
- ]
-}
diff --git a/legacy/bids-validator/tests/bids-web.spec.js b/legacy/bids-validator/tests/bids-web.spec.js
deleted file mode 100644
index a92deb1d..00000000
--- a/legacy/bids-validator/tests/bids-web.spec.js
+++ /dev/null
@@ -1,6 +0,0 @@
-/**
- * eslint no-console: ["error", { allow: ["log"] }]
- * @jest-environment jsdom
- */
-
-import './bids.spec.js'
diff --git a/legacy/bids-validator/tests/bids.spec.js b/legacy/bids-validator/tests/bids.spec.js
deleted file mode 100644
index 22c70020..00000000
--- a/legacy/bids-validator/tests/bids.spec.js
+++ /dev/null
@@ -1,357 +0,0 @@
-/**
- * eslint no-console: ["error", { allow: ["log"] }]
- */
-import { assert } from 'chai'
-
-import validate from '../index.js'
-import fs from 'fs'
-import path from 'path'
-import { createFileList } from './env/FileList.js'
-import isNode from '../utils/isNode.js'
-
-function getDirectories(srcpath) {
- return fs.readdirSync(srcpath).filter(function (file) {
- return (
- file !== '.git' && fs.statSync(path.join(srcpath, file)).isDirectory()
- )
- })
-}
-
-const missing_session_files = [
- '7t_trt',
- 'ds004332',
- 'ds006',
- 'ds007',
- 'ds008',
- 'ds051',
- 'ds052',
- 'ds105',
- 'ds109',
- 'ds113b',
- 'ds000117',
- 'ds000247',
- 'ieeg_motorMiller2007',
- 'ieeg_visual',
- 'eeg_ds003654s_hed_inheritance',
- 'eeg_ds003645s_hed_demo',
- 'motion_dualtask',
-]
-
-const dataDirectory = path.join('bids-validator', 'tests', 'data')
-
-// Generate validate.BIDS input for included minimal tests
-function createDatasetFileList(inputPath) {
- const testDatasetPath = path.join(dataDirectory, inputPath)
- if (!isNode) {
- return createFileList(testDatasetPath)
- } else {
- return testDatasetPath
- }
-}
-
-// Generate validate.BIDS input for bids-examples
-function createExampleFileList(inputPath) {
- return createDatasetFileList(path.join('bids-examples', inputPath))
-}
-
-function assertErrorCode(errors, expected_error_code) {
- const matchingErrors = errors.filter(function (error) {
- return error.code === expected_error_code
- })
- assert(matchingErrors.length > 0)
-}
-
-describe('BIDS example datasets ', function () {
- // Default validate.BIDS options
- const options = { ignoreNiftiHeaders: true, json: true }
- const enableNiftiHeaders = { json: true }
-
- describe('basic example dataset tests', () => {
- const bidsExamplePath = path.join(dataDirectory, 'bids-examples')
- getDirectories(bidsExamplePath).forEach(function testDataset(inputPath) {
- it(inputPath, (isdone) => {
- validate.BIDS(
- createExampleFileList(inputPath),
- options,
- function (issues) {
- let warnings = issues.warnings
- let session_flag = false
- for (const warning in warnings) {
- if (warnings[warning]['code'] === 38) {
- session_flag = true
- break
- }
- }
- if (missing_session_files.indexOf(inputPath) === -1) {
- assert.deepEqual(session_flag, false)
- } else {
- assert.deepEqual(session_flag, true)
- }
- isdone()
- },
- )
- })
- })
- })
-
- // we need to have at least one non-dynamic test
- it('validates path without trailing backslash', function (isdone) {
- validate.BIDS(
- createExampleFileList('ds001'),
- options,
- function (issues, summary) {
- const errors = issues.errors
- const warnings = issues.warnings
- assert(summary.sessions.length === 0)
- assert(summary.subjects.length === 16)
- assert.deepEqual(summary.tasks, ['balloon analog risk task'])
- expect(summary.modalities).toEqual(['MRI'])
- assert(summary.totalFiles === 135)
- assert.deepEqual(errors.length, 1)
- assert(warnings.length === 3)
- assert(
- warnings.findIndex((warning) => warning.code === 13) > -1,
- 'warnings do not contain a code 13',
- )
- isdone()
- },
- )
- })
-
- // we need to have at least one non-dynamic test
- it('validates dataset with valid nifti headers', function (isdone) {
- const options = { ignoreNiftiHeaders: false }
- validate.BIDS(
- createDatasetFileList('valid_headers'),
- options,
- function (issues, summary) {
- const errors = issues.errors
- const warnings = issues.warnings
- assert(summary.sessions.length === 0)
- assert(summary.subjects.length === 1)
- assert.deepEqual(summary.tasks, ['rhyme judgment'])
- assert.isFalse(summary.dataProcessed)
- expect(summary.modalities).toEqual(['MRI'])
- expect(summary.totalFiles).toEqual(8)
- assert(
- errors.findIndex((error) => error.code === 60) > -1,
- 'errors do not contain a code 60',
- )
- assert.deepEqual(warnings.length, 4)
- assert(
- warnings.findIndex((warning) => warning.code === 13) > -1,
- 'warnings do not contain a code 13',
- )
- assert.deepEqual(summary.subjectMetadata[0], {
- age: 25,
- participantId: '01',
- sex: 'M',
- })
- isdone()
- },
- )
- })
-
- // test for duplicate files present with both .nii and .nii.gz extension
- it('validates dataset for duplicate files present with both .nii and .nii.gz extension', function (isdone) {
- validate.BIDS(
- createDatasetFileList('valid_filenames'),
- enableNiftiHeaders,
- function (issues) {
- assertErrorCode(issues.errors, 74)
- isdone()
- },
- )
- })
-
- it('includes issue 53 NO_T1W for dataset without T1w files', function (isdone) {
- validate.BIDS(createDatasetFileList('no_t1w'), options, function (issues) {
- assertErrorCode(issues.ignored, 53)
- isdone()
- })
- })
-
- // test for illegal characters used in acq and task name
- it('validates dataset with illegal characters in task name', function (isdone) {
- validate.BIDS(
- createDatasetFileList('valid_filenames'),
- enableNiftiHeaders,
- function (issues) {
- assertErrorCode(issues.errors, 58)
- isdone()
- },
- )
- })
-
- // test for illegal characters used in sub name
- it('validates dataset with illegal characters in sub name', function (isdone) {
- validate.BIDS(
- createDatasetFileList('valid_filenames'),
- enableNiftiHeaders,
- function (issues) {
- assertErrorCode(issues.errors, 64)
- isdone()
- },
- )
- })
-
- it('checks for subjects with no valid data', function (isdone) {
- validate.BIDS(
- createDatasetFileList('no_valid_data'),
- options,
- function (issues) {
- assertErrorCode(issues.errors, 67)
- isdone()
- },
- )
- })
-
- it('validates MRI modalities', function (isdone) {
- validate.BIDS(
- createExampleFileList('ds001'),
- options,
- function (issues, summary) {
- var errors = issues.errors
- var warnings = issues.warnings
- assert(summary.sessions.length === 0)
- assert(summary.subjects.length === 16)
- assert.deepEqual(summary.tasks, ['balloon analog risk task'])
- assert(summary.modalities.includes('MRI'))
- assert(summary.totalFiles === 135)
- assert.deepEqual(errors.length, 1)
- assert(warnings.length === 3)
- assert(
- warnings.findIndex((warning) => warning.code === 13) > -1,
- 'warnings do not contain a code 13',
- )
- isdone()
- },
- )
- })
-
- it('blacklists modalities specified', function (isdone) {
- const _options = { ...options, blacklistModalities: ['MRI'] }
- validate.BIDS(
- createExampleFileList('ds001'),
- _options,
- function (issues, summary) {
- var errors = issues.errors
- var warnings = issues.warnings
- assert(summary.sessions.length === 0)
- assert(summary.subjects.length === 16)
- assert.deepEqual(summary.tasks, ['balloon analog risk task'])
- assert(summary.modalities.includes('MRI'))
- assert(summary.totalFiles === 135)
- assert.deepEqual(errors.length, 2)
- assert(warnings.length === 3)
- assert(
- warnings.findIndex((warning) => warning.code === 13) > -1,
- 'warnings do not contain a code 13',
- )
- assert(
- errors.findIndex((error) => error.code === 139) > -1,
- 'errors do contain a code 139',
- )
-
- isdone()
- },
- )
- })
-
- it('checks for data dictionaries without corresponding data files', function (isdone) {
- validate.BIDS(
- createDatasetFileList('unused_data_dict'),
- options,
- function (issues) {
- assert.notEqual(
- issues.errors.findIndex((issue) => issue.code === 90),
- -1,
- )
- isdone()
- },
- )
- })
-
- it('checks for fieldmaps with no _magnitude file', function (isdone) {
- validate.BIDS(
- createDatasetFileList('fieldmap_without_magnitude'),
- options,
- function (issues) {
- assert.notEqual(
- issues.errors.findIndex((issue) => issue.code === 91),
- -1,
- )
- isdone()
- },
- )
- })
-
- it('should not throw a warning if all _phasediff.nii are associated with _magnitude1.nii', function (isdone) {
- validate.BIDS(
- createExampleFileList('hcp_example_bids'),
- options,
- function (issues) {
- assert.deepEqual(issues.errors, [])
- isdone()
- },
- )
- })
-
- it('should throw a warning if there are _phasediff.nii without an associated _magnitude1.nii', function (isdone) {
- validate.BIDS(
- createDatasetFileList('phasediff_without_magnitude1'),
- options,
- function (issues) {
- assert.notEqual(issues.warnings.findIndex((issue) => issue.code === 92))
- isdone()
- },
- )
- })
-
- it('should not throw an error if it encounters no non-utf-8 files', function (isdone) {
- validate.BIDS(
- createDatasetFileList('valid_dataset'),
- options,
- function (issues) {
- assert.equal(
- issues.errors.findIndex((issue) => issue.code === 123),
- -1,
- )
- isdone()
- },
- )
- })
-
- it('should validate pet data', function (isdone) {
- validate.BIDS(
- createDatasetFileList('broken_pet_example_2-pet_mri'),
- options,
- function (issues) {
- assertErrorCode(issues.errors, 55)
- isdone()
- },
- )
- })
-
- it('should validate pet blood data', function (isdone) {
- validate.BIDS(
- createDatasetFileList('broken_pet_example_3-pet_blood'),
- options,
- function (issues) {
- assertErrorCode(issues.errors, 55)
- isdone()
- },
- )
- })
-
- it('should catch missing tsv columns', function (isdone) {
- validate.BIDS(
- createDatasetFileList('pet_blood_missing_tsv_column'),
- options,
- function (issues) {
- assertErrorCode(issues.errors, 211)
- isdone()
- },
- )
- })
-})
diff --git a/legacy/bids-validator/tests/bval.spec.js b/legacy/bids-validator/tests/bval.spec.js
deleted file mode 100644
index 584c6455..00000000
--- a/legacy/bids-validator/tests/bval.spec.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import assert from 'assert'
-import bval from '../validators/bval/bval'
-
-describe('bval', function () {
- it('should allow proper bval contents', function () {
- const val = '4 6 2 5 3 23 5'
- bval({}, val, function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should not allow more than one row', function () {
- const val = '0 4 3 6 1 6 2 4 1\n 4 3 5 2 4 2 4 5'
- bval({}, val, function (issues) {
- assert(issues.length == 1 && issues[0].code == 30)
- })
- })
-
- it('should catch doublespace separators', function () {
- const val = '4 6 2 5 3 23 5'
- bval({}, val, function (issues) {
- assert(issues.length == 1 && issues[0].code == 47)
- })
- })
-
- it('should not allow undefined bvals', function () {
- const val = undefined
- bval({}, val, function (issues) {
- assert(issues.length == 1 && issues[0].code == 89)
- })
- })
-
- it('should not allow bvals of types other than string', function () {
- const val = [0, 1, 2, 3]
- bval({}, val, function (issues) {
- assert(issues.length == 1 && issues[0].code == 89)
- })
- })
-
- it('should not allow bvecs to be submitted in place of bval', function () {
- const val = '4 6 7\n 2 3 4\n 4 5 6'
- bval({}, val, function (issues) {
- assert(issues.length == 1 && issues[0].code == 30)
- })
- })
-})
diff --git a/legacy/bids-validator/tests/bvec.spec.js b/legacy/bids-validator/tests/bvec.spec.js
deleted file mode 100644
index 9c815589..00000000
--- a/legacy/bids-validator/tests/bvec.spec.js
+++ /dev/null
@@ -1,59 +0,0 @@
-import assert from 'assert'
-import bvec from '../validators/bvec/bvec'
-
-describe('bvec', function () {
- it('should allow valid bvec contents', function () {
- const vec = '4 6 2 5\n3 2 3 5\n6 4 3 5'
- bvec({}, vec, function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should not allow more or less than 3 rows', function () {
- let vec = '0 4 3 6 1 6 2 4\n 4 3 5 2 4 2 4 5'
- bvec({}, vec, function (issues) {
- assert(issues.length == 1 && issues[0].code == 31)
- })
-
- vec =
- '0 4 3 6 1 6 2 4\n 4 3 5 2 4 2 4 5\n 4 3 5 2 4 2 4 5\n 4 3 5 2 4 2 4 5'
- bvec({}, vec, function (issues) {
- assert(issues.length == 1 && issues[0].code == 31)
- })
- })
-
- it('should not allow rows of inconsistent length', function () {
- const vec = '0 4 3 6 1 6 4\n 4 3 4 2 4 5\n 4 3 5 2 4 2 4 5'
- bvec({}, vec, function (issues) {
- assert(issues.length == 1 && issues[0].code == 46)
- })
- })
-
- it('should catch doublespace separators', function () {
- const vec = '4 6 2 5\n3 2 3 5\n6 4 3 5'
- bvec({}, vec, function (issues) {
- assert(issues.length == 1 && issues[0].code == 47)
- })
- })
-
- it('should not allow undefined bvecs', function () {
- const vec = undefined
- bvec({}, vec, function (issues) {
- assert(issues.length == 1 && issues[0].code == 88)
- })
- })
-
- it('should not allow bvecs of types other than string', function () {
- const vec = [0, 1, 2, 3]
- bvec({}, vec, function (issues) {
- assert(issues.length == 1 && issues[0].code == 88)
- })
- })
-
- it('should not allow bvals to be submitted in place of bvec', function () {
- const vec = '4 6 7'
- bvec({}, vec, function (issues) {
- assert(issues.length == 1 && issues[0].code == 31)
- })
- })
-})
diff --git a/legacy/bids-validator/tests/cli.spec.js b/legacy/bids-validator/tests/cli.spec.js
deleted file mode 100644
index ec0243e1..00000000
--- a/legacy/bids-validator/tests/cli.spec.js
+++ /dev/null
@@ -1,99 +0,0 @@
-import cli from '../cli'
-import path from 'path'
-
-const dir = process.cwd()
-const data_dir = path.join(dir, 'bids-validator', 'tests', 'data')
-const data_with_errors = path.join(data_dir, 'empty_files')
-const data_without_errors = path.join(data_dir, 'valid_dataset')
-
-const colorRegEx = new RegExp(
- // eslint-disable-next-line no-control-regex
- '[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]',
-)
-
-expect.extend({
- toBeJSON: function (received) {
- try {
- JSON.parse(received)
- return {
- pass: true,
- }
- } catch (err) {
- return {
- pass: false,
- }
- }
- },
-})
-
-let mockStdout
-let mockStderr
-let mockExit
-let mockConsoleError
-
-describe('CLI', () => {
- beforeEach(() => {
- // bids-validator uses these
- mockStdout = jest
- .spyOn(process.stdout, 'write')
- .mockImplementation(() => true)
- mockStderr = jest
- .spyOn(process.stderr, 'write')
- .mockImplementation(() => true)
- // Yargs uses these
- mockExit = jest.spyOn(process, 'exit').mockImplementation(() => true)
- mockConsoleError = jest
- .spyOn(console, 'error')
- .mockImplementation(() => true)
- })
- afterEach(() => {
- mockStdout.mockRestore()
- mockStderr.mockRestore()
- mockExit.mockRestore()
- mockConsoleError.mockRestore()
- })
- it('should display usage hints when no arguments / options are provided', async () => {
- try {
- await cli(' ')
- } catch (code) {
- expect(code).toEqual(2)
- // 'jest' is the process name here but usually it is 'bids-validator'
- expect(mockConsoleError.mock.calls[0][0]).toEqual(
- expect.stringContaining(' [options]'),
- )
- }
- })
-
- it('should accept a directory as the first argument without error', async () => {
- await expect(cli(data_without_errors)).resolves.toEqual(0)
- })
-
- it('without errors should exit with code 0', async () => {
- await expect(cli(`${data_without_errors} --json`)).resolves.toEqual(0)
- })
-
- it('with errors should not exit with code 0', async () => {
- await expect(cli(`${data_with_errors}`)).rejects.toEqual(1)
- })
-
- it('with errors should not exit with code 0 with --json argument', async () => {
- await expect(cli(`${data_with_errors} --json`)).rejects.toEqual(1)
- })
-
- it('should print valid json when the --json argument is provided', async () => {
- await expect(cli(`${data_without_errors} --json`)).resolves.toEqual(0)
- expect(mockStdout).toBeCalledWith(expect.toBeJSON())
- })
-
- it('should print with colors by default', async () => {
- await cli(`${data_without_errors}`)
- expect(mockStdout.mock.calls[0][0]).toMatch(colorRegEx)
- })
-
- it('should print without colors when NO_COLOR env set', async () => {
- process.env.NO_COLOR = 'any value'
- await cli(`${data_without_errors}`)
- expect(mockStdout.mock.calls[0][0]).not.toMatch(colorRegEx)
- delete process.env.NO_COLOR
- })
-})
diff --git a/legacy/bids-validator/tests/consoleFormat.spec.js b/legacy/bids-validator/tests/consoleFormat.spec.js
deleted file mode 100644
index e443eb1c..00000000
--- a/legacy/bids-validator/tests/consoleFormat.spec.js
+++ /dev/null
@@ -1,101 +0,0 @@
-import assert from 'assert'
-import Issue from '../utils/issues'
-import consoleFormat from '../utils/consoleFormat'
-
-describe('console format', () => {
- let issues
- beforeEach(() => {
- issues = {
- errors: [
- {
- key: 'TEST_ERROR',
- severity: 'error',
- reason: 'testing consoleFormat',
- files: [
- new Issue({
- key: 'TEST_ERROR',
- file: '/nonexistent/test/file.wut',
- code: 0,
- evidence: 'none',
- line: -1,
- character: -1,
- severity: 'error',
- reason: 'testing consoleFormat',
- }),
- ],
- additionalFileCount: 0,
- },
- ],
- warnings: [
- {
- key: 'TEST_WARNING',
- severity: 'warning',
- reason: 'testing consoleFormat',
- files: [
- new Issue({
- key: 'TEST_WARNING',
- file: '/nonexistent/test/file.wut',
- code: 2,
- evidence: 'none',
- line: -1,
- character: -1,
- severity: 'warning',
- reason: 'testing consoleFormat',
- }),
- ],
- additionalFileCount: 0,
- },
- ],
- summary: {
- sessions: [],
- subjects: [],
- tasks: [],
- modalities: [],
- totalFiles: 0,
- size: 0,
- },
- }
- })
-
- describe('logIssues', () => {
- it('takes an array of errors and returns them formatted as an array', () => {
- const output = consoleFormat.logIssues(issues.errors, 'red', {
- verbose: true,
- })
- assert(Array.isArray(output))
- assert.deepEqual(output, [
- '\t\u001b[31m1: [ERR] testing consoleFormat (code: undefined - TEST_ERROR)\u001b[39m',
- '\t\ttesting consoleFormat',
- '\t\t@ line: -1 character: -1',
- '\t\tEvidence: none',
- '',
- ])
- })
- it('takes an array of warnings and returns them formatted as an array', () => {
- const output = consoleFormat.logIssues(issues.warnings, 'yellow', {
- verbose: true,
- })
- assert.deepEqual(output, [
- '\t\u001b[33m1: [WARN] testing consoleFormat (code: undefined - TEST_WARNING)\u001b[39m',
- '\t\ttesting consoleFormat',
- '\t\t@ line: -1 character: -1',
- '\t\tEvidence: none',
- '',
- ])
- })
- })
-
- describe('issues', () => {
- it('formats issues as a string a given issues object', () => {
- const output = consoleFormat.issues(issues, {})
- assert.equal(typeof output, 'string')
- })
- })
-
- describe('summary', () => {
- it('formats summary as a string a given issues object', () => {
- const output = consoleFormat.summary(issues.summary, {})
- assert.equal(typeof output, 'string')
- })
- })
-})
diff --git a/legacy/bids-validator/tests/data/bids-examples b/legacy/bids-validator/tests/data/bids-examples
deleted file mode 160000
index 7c18d684..00000000
--- a/legacy/bids-validator/tests/data/bids-examples
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 7c18d6840982518a0251cfeb59fe5c4610099ea1
diff --git a/legacy/bids-validator/tests/data/broken_brainvision_data/dataset_description.json b/legacy/bids-validator/tests/data/broken_brainvision_data/dataset_description.json
deleted file mode 100644
index 4057e638..00000000
--- a/legacy/bids-validator/tests/data/broken_brainvision_data/dataset_description.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "Name": "broken_brainvision_data",
- "BIDSVersion": "1.1.1"
-}
diff --git a/legacy/bids-validator/tests/data/broken_brainvision_data/sub-01/eeg/sub-01_task-test_eeg.eeg b/legacy/bids-validator/tests/data/broken_brainvision_data/sub-01/eeg/sub-01_task-test_eeg.eeg
deleted file mode 100644
index ff56f1c8..00000000
--- a/legacy/bids-validator/tests/data/broken_brainvision_data/sub-01/eeg/sub-01_task-test_eeg.eeg
+++ /dev/null
@@ -1 +0,0 @@
-*binary data*
diff --git a/legacy/bids-validator/tests/data/broken_brainvision_data/sub-01/eeg/sub-01_task-test_eeg.vhdr b/legacy/bids-validator/tests/data/broken_brainvision_data/sub-01/eeg/sub-01_task-test_eeg.vhdr
deleted file mode 100644
index b440488e..00000000
--- a/legacy/bids-validator/tests/data/broken_brainvision_data/sub-01/eeg/sub-01_task-test_eeg.vhdr
+++ /dev/null
@@ -1,34 +0,0 @@
-Brain Vision Data Exchange Header File Version 1.0
-; manually created and inserted an error into DataFile field
-
-[Common Infos]
-Codepage=UTF-8
-DataFile=sub-01_task-ERROR-test_eeg.eeg
-MarkerFile=sub-01_task-test_eeg.vmrk
-DataFormat=BINARY
-Data orientation: MULTIPLEXED=ch1,pt1, ch2,pt1 ...
-DataOrientation=MULTIPLEXED
-NumberOfChannels=10
-; Sampling interval in microseconds
-SamplingInterval=200
-
-[Binary Infos]
-BinaryFormat=IEEE_FLOAT_32
-
-[Channel Infos]
-; Each entry: Ch=,,
-; ,=,,,
-; ,
-; Fields are delimited by commas, some fields might be omitted (empty).
-; Commas in type or description text are coded as "\1".
-Mk1=New Segment,,1,1,0,0
diff --git a/legacy/bids-validator/tests/data/broken_brainvision_data/sub-01/eeg/sub-01_task-test_events.tsv b/legacy/bids-validator/tests/data/broken_brainvision_data/sub-01/eeg/sub-01_task-test_events.tsv
deleted file mode 100644
index b898577e..00000000
--- a/legacy/bids-validator/tests/data/broken_brainvision_data/sub-01/eeg/sub-01_task-test_events.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-onset duration
-1 1
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/README b/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/README
deleted file mode 100644
index c2f7b970..00000000
--- a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/README
+++ /dev/null
@@ -1,7 +0,0 @@
-This dataset consists of a single PET measurement of a human brain using [11C]DASB to measure serotonin transporter availability. An anatomical T1-weighted MRI is also available. There are no arterial measurements available for this tracer.
-
-It has been broken for testing purposes. Changes made (in /sub-01/ses-01/pet/sub-01_ses-01_pet.json):
-
-- Manufacturer set to a number (expecting string).
-- InjectedMass removed (required).
-- TracerMolecularWeightUnit removed (required when TracerMolecularWeight is set).
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/dataset_description.json b/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/dataset_description.json
deleted file mode 100644
index 43bbd3d6..00000000
--- a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/dataset_description.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "BIDSVersion": "1.0.2",
- "License": "CCO license",
- "Name": "[11C]DASB PET Cimbi database example",
- "Authors": ["Melanie Ganz-Benjaminsen", "Martin Noergaard"],
- "Acknowledgements": "Knudsen GM, Jensen PS, Erritzoe D, BaarΓ© WFC, Ettrup A, Fisher PM, Gillings N, Hansen HD, Hansen LK, Hasselbalch SG, Henningsson S, Herth MM, Holst KK, Iversen P, Kessing LV, Macoveanu J, Madsen KS, Mortensen EL, Nielsen FΓ
, Paulson OB, Siebner HR, Stenbæk DS, Svarer C, Jernigan TL, Strother SC, Frokjaer VG. The Center for Integrated Molecular Brain Imaging (Cimbi) Database. NeuroImage. 2016 Jan 1;124(Pt B):1213-1219",
- "HowToAcknowledge": "This data was obtained from the Cimbi database.",
- "Funding": [
- "Lundbeck Foundation R90-A7722",
- "Danish Research Council 09-063598",
- "Rigshospitalet"
- ],
- "DatasetDOI": ""
-}
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/participants.json b/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/participants.json
deleted file mode 100644
index f089011a..00000000
--- a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/participants.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "participant_id": {
- "LongName": "Participant Id",
- "Description": "label identifying a particular subject"
- },
- "weight": {
- "LongName": "Weight",
- "Description": "Weight of the participant",
- "Units": "kg"
- },
- "sex": {
- "LongName": "Sex",
- "Description": "Sex of the participant",
- "Levels": {
- "M": "male",
- "F": "female"
- }
- }
-}
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/participants.tsv b/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/participants.tsv
deleted file mode 100644
index 1b65c895..00000000
--- a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/participants.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-participant_id weight sex
-sub-01 50 F
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/sub-01/ses-01/anat/sub-01_ses-01_T1w.json b/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/sub-01/ses-01/anat/sub-01_ses-01_T1w.json
deleted file mode 100644
index 16336219..00000000
--- a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/sub-01/ses-01/anat/sub-01_ses-01_T1w.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "Modality": "MR",
- "MagneticFieldStrength": 3,
- "Manufacturer": "Siemens",
- "ManufacturersModelName": "Trio",
- "InstitutionName": "DRCMR_HVIDOVRE",
- "InstitutionAddress": "30Kettegaard_Alle_Copenhagen_Hvidovre_DK-2650_DK",
- "DeviceSerialNumber": "20511",
- "StationName": "MRC20511",
- "ProcedureStepDescription": "Hjerne_projekter_Cimbi_SAD",
- "SoftwareVersions": "syngo_MR_A30_4VA30A",
- "SeriesDescription": "t1_mpr_ns_sag_1mm_noring",
- "ProtocolName": "t1_mpr_ns_sag_1mm_noring",
- "ScanningSequence": "IR_GR",
- "SequenceVariant": "SP_MP",
- "ScanOptions": "IR",
- "SequenceName": "_tfl3d1_ns",
- "ImageType": ["ORIGINAL", "PRIMARY", "M", "ND"],
- "AcquisitionTime": "10:24:59.860010",
- "AcquisitionNumber": 1,
- "ImageComments": "50524",
- "EchoTime": 0.00304,
- "RepetitionTime": 1.55,
- "InversionTime": 0.8,
- "FlipAngle": 9,
- "PartialFourier": 1,
- "BaseResolution": 256,
- "PhaseResolution": 1,
- "ReceiveCoilName": "8_Channel_Head",
- "PulseSequenceDetails": "%SiemensSeq%_tfl",
- "PercentPhaseFOV": 100,
- "PhaseEncodingSteps": 256,
- "AcquisitionMatrixPE": 256,
- "ReconMatrixPE": 256,
- "ConversionSoftware": "dcm2niix",
- "ConversionSoftwareVersion": "v1.0.20170923 (OpenJPEG build) GCC4.8.4"
-}
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii.gz b/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/sub-01/ses-01/pet/sub-01_ses-01_pet.json b/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/sub-01/ses-01/pet/sub-01_ses-01_pet.json
deleted file mode 100644
index 79dd0afd..00000000
--- a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/sub-01/ses-01/pet/sub-01_ses-01_pet.json
+++ /dev/null
@@ -1,43 +0,0 @@
-{
- "Modality": "PET",
- "Manufacturer": 1234,
- "ManufacturersModelName": "High-Resolution Research Tomograph (HRRT, CTI/Siemens)",
- "BodyPart": "Brain",
- "Units": "Bq/ml",
- "TracerName": "DASB",
- "TracerRadionuclide": "C11",
- "TracerMolecularWeight": 282.39,
- "InjectedRadioactivity": 598,
- "InjectedRadioactivityUnits": "MBq",
- "InjectedMassUnits": "ug",
- "SpecificRadioactivity": 842.25,
- "SpecificRadioactivityUnits": "MBq/ug",
- "MolarActivity": 238.23,
- "MolarActivityUnits": "GBq/umol",
- "TimeZero": "13:06:34",
- "ScanStart": 0,
- "InjectionStart": 0,
- "ModeOfAdministration": "bolus",
- "FrameTimesStart": [
- 0, 10, 20, 30, 40, 50, 60, 80, 100, 120, 150, 180, 210, 240, 270, 300, 360,
- 420, 480, 540, 600, 720, 840, 960, 1080, 1200, 1500, 1800, 2100, 4521, 4800,
- 5100
- ],
- "FrameDuration": [
- 10, 20, 30, 40, 50, 60, 80, 100, 120, 150, 180, 210, 240, 270, 300, 360,
- 420, 480, 540, 600, 720, 840, 960, 1080, 1200, 1500, 1800, 2100, 2337, 4800,
- 5100, 5400
- ],
- "AcquisitionMode": "list mode",
- "ImageDecayCorrected": true,
- "ImageDecayCorrectionTime": 0,
- "ReconMatrixSize": [256, 256, 207, 36],
- "ImageVoxelSize": [1.2188, 1.2188, 1.2188],
- "ReconMethodName": "3D-OSEM-PSF",
- "ReconMethodParameterLabels": ["subsets", "iterations"],
- "ReconMethodParameterUnits": ["none", "none"],
- "ReconMethodParameterValues": [16, 10],
- "ReconFilterType": "none",
- "ReconFilterSize": 0,
- "AttenuationCorrection": "[137Cs]transmission scan-based"
-}
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/sub-01/ses-01/pet/sub-01_ses-01_pet.nii.gz b/legacy/bids-validator/tests/data/broken_pet_example_2-pet_mri/sub-01/ses-01/pet/sub-01_ses-01_pet.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/README b/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/README
deleted file mode 100644
index 940a1d10..00000000
--- a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/README
+++ /dev/null
@@ -1,3 +0,0 @@
-This dataset consists of a single PET measurement of a human brain using [11C]DASB to measure serotonin transporter availability. An anatomical T1-weighted MRI is also available. There are arterial measurements available for this tracer. Note: all image files are empty for privacy reasons.
-
-IMPORTANT: The molar activity is fixed for all subjects (55 MBq/nmol) given Parsey et al. 2007.
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/dataset_description.json b/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/dataset_description.json
deleted file mode 100644
index 9b176b90..00000000
--- a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/dataset_description.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "BIDSVersion": "1.0.4",
- "License": "CCO license",
- "Name": "[11C]DASB data set",
- "Authors": ["Martin Norgaard", "Christine Delorenzo", "Ramin Parsey"],
- "Acknowledgements": "We thank the employees of the Brain Imaging Core of the NIMH-funded Conte Translational Neuroscience Center, the Kreitchman PET Center, and the Columbia University Radioligand Laboratory for expert help. This work was supported in part by an investigator-initiated grant from Pfizer Inc.",
- "HowToAcknowledge": "Ramin Parsey, Christine Delorenzo",
- "DatasetDOI": ""
-}
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/participants.json b/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/participants.json
deleted file mode 100644
index 5793a186..00000000
--- a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/participants.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "participant_id": {
- "LongName": "Participant Id",
- "Description": "label identifying a particular subject"
- },
- "sex": {
- "LongName": "Sex"
- }
-}
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/participants.tsv b/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/participants.tsv
deleted file mode 100644
index f84a6430..00000000
--- a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/participants.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-participant_id sex
-sub-01 F
\ No newline at end of file
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii b/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii
deleted file mode 100755
index 98a77e20..00000000
Binary files a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/pet/sub-01_ses-01_pet.json b/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/pet/sub-01_ses-01_pet.json
deleted file mode 100644
index 45dd6c23..00000000
--- a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/pet/sub-01_ses-01_pet.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "Manufacturer": "Siemens",
- "ManufacturersModelName": "Siemens HR+",
- "BodyPart": "Brain",
- "Units": "Bq/mL",
- "TracerName": "DASB",
- "TracerRadionuclide": "C11",
- "TracerMolecularWeight": 282.39,
- "TracerMolecularWeightUnits": "g/mol",
- "TracerInjectionType": "bolus",
- "InjectedRadioactivity": 694.86,
- "InjectedRadioactivityUnits": "MBq",
- "InjectedMass": 3.57,
- "InjectedMassUnits": "ug",
- "SpecificRadioactivity": 194.64,
- "SpecificRadioactivityUnits": "MBq/ug",
- "MolarActivity": 55,
- "MolarActivityUnits": "MBq/nmol",
- "ModeOfAdministration": "bolus",
- "ScanStart": 0,
- "InjectionStart": 0,
- "InjectionEnd": 30,
- "TimeZero": "12:24:37",
- "FrameTimesStart": [
- 0, 20, 40, 60, 120, 180, 240, 360, 480, 600, 900, 1200, 1800, 2400, 3000,
- 3600, 4200, 4800, 5400, 6000, 6600
- ],
- "FrameDuration": [
- 20, 40, 60, 120, 180, 240, 360, 480, 600, 900, 1200, 1800, 2400, 3000, 3600,
- 4200, 4800, 5400, 6000, 6600, 7200
- ],
- "AcquisitionMode": "list mode",
- "ImageDecayCorrected": true,
- "ImageDecayCorrectionTime": 0,
- "ReconMethodName": "Vendor",
- "ReconMethodParameterLabels": ["Zoom factor"],
- "ReconMethodParameterUnits": ["none"],
- "ReconMethodParameterValues": [4],
- "ReconFilterType": [
- "Image filter were Shepp 0.5",
- "the Z filter was all-pass 0.4"
- ],
- "ReconFilterSize": [2.5, 2.0],
- "AttenuationCorrection": "Transmission data, and scatter was corrected using a model-based method",
- "AttenuationCorrectionMethodReference": "Parsey et al. 2006, Metabolite considerations in the in vivo quantification of serotonin transporters using 11C-DASB and PET in humans, Journal of Nuclear Medicine"
-}
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/pet/sub-01_ses-01_pet.nii.gz b/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/pet/sub-01_ses-01_pet.nii.gz
deleted file mode 100644
index 688b287b..00000000
Binary files a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/pet/sub-01_ses-01_pet.nii.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/pet/sub-01_ses-01_recording-manual_blood.json b/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/pet/sub-01_ses-01_recording-manual_blood.json
deleted file mode 100644
index fb82e611..00000000
--- a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/pet/sub-01_ses-01_recording-manual_blood.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "PlasmaAvail": true,
- "MetaboliteAvail": true,
- "MetaboliteMethod": "Bioscan g-detector",
- "MetaboliteRecoveryCorrectionApplied": false,
- "DispersionCorrected": false,
- "time": {
- "Description": "Time in relation to time zero defined by the _pet.json",
- "Units": "s"
- },
- "plasma_radioactivity": {
- "Description": "Radioactivity in plasma samples",
- "Units": "Bq/ml"
- },
- "metabolite_parent_fraction": {
- "Description": "Parent fraction of the radiotracer. The metabolite and unmetabolized parent compound were collected in separate vials, and radioactivity was quantified using a Bioscan g-detector after correction for background radioactivity.",
- "Units": "unitless"
- }
-}
diff --git a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/pet/sub-01_ses-01_recording-manual_blood.tsv b/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/pet/sub-01_ses-01_recording-manual_blood.tsv
deleted file mode 100644
index 5a615ac5..00000000
--- a/legacy/bids-validator/tests/data/broken_pet_example_3-pet_blood/sub-01/ses-01/pet/sub-01_ses-01_recording-manual_blood.tsv
+++ /dev/null
@@ -1,33 +0,0 @@
-time plasma_radioactivity metabolite_parent_fraction
-0 0 n/a
-10.0000002 22.62883 n/a
-19.9999998 57.2612 n/a
-30 1836.01696 n/a
-40.002 14344.6921 n/a
-49.998 23636.8654 n/a
-60 31688.6211 n/a
-70.002 33226.4655 n/a
-79.998 26847.9352 n/a
-90 20327.9066 n/a
-100.002 17169.8248 n/a
-109.998 15198.5614 n/a
-120 14509.6888 0.50774032
-139.998 13080.8694 n/a
-160.002 11937.2848 n/a
-180 11422.8402 n/a
-199.998 10905.5509 n/a
-220.002 10870.4076 n/a
-240 16745.3205 n/a
-360 8193.32255 n/a
-480 9180.87697 n/a
-720 8957.52869 0.55283186
-960 8500.14505 n/a
-1200 8846.04732 0.35144152
-1800 8805.56451 n/a
-2400 8707.26365 n/a
-3000 9078.7899 0.1507185
-3600 8356.09036 n/a
-4800 8095.22519 0.10388412
-5400 7480.43763 n/a
-6000 7099.9559 0.09530672
-7200 6279.54565 n/a
\ No newline at end of file
diff --git a/legacy/bids-validator/tests/data/citation/bad.cff b/legacy/bids-validator/tests/data/citation/bad.cff
deleted file mode 100644
index 71e85ecf..00000000
--- a/legacy/bids-validator/tests/data/citation/bad.cff
+++ /dev/null
@@ -1,15 +0,0 @@
-cff-version: 1.2.0
-message: If you use this software, please cite it using these metadata.
-title: My Research Software
-abstract: This is my awesome research software. It does many things.
-version: 0.11.2
-date-released: "2021-07-18"
-identifiers:
- - description: This is the collection of archived snapshots of all versions of My Research Software
- type: doi
- value: "10.5281/zenodo.123456"
- - description: This is the archived snapshot of version 0.11.2 of My Research Software
- type: doi
- value: "10.5281/zenodo.123457"
-license: Apache-2.0
-repository-code: "https://github.com/citation-file-format/my-research-software"
diff --git a/legacy/bids-validator/tests/data/citation/good.cff b/legacy/bids-validator/tests/data/citation/good.cff
deleted file mode 100644
index f935b0fe..00000000
--- a/legacy/bids-validator/tests/data/citation/good.cff
+++ /dev/null
@@ -1,20 +0,0 @@
-cff-version: 1.2.0
-message: If you use this software, please cite it using these metadata.
-title: My Research Software
-abstract: This is my awesome research software. It does many things.
-authors:
- - family-names: Druskat
- given-names: Stephan
- orcid: "https://orcid.org/1234-5678-9101-1121"
- - name: "The Research Software project"
-version: 0.11.2
-date-released: "2021-07-18"
-identifiers:
- - description: This is the collection of archived snapshots of all versions of My Research Software
- type: doi
- value: "10.5281/zenodo.123456"
- - description: This is the archived snapshot of version 0.11.2 of My Research Software
- type: doi
- value: "10.5281/zenodo.123457"
-license: Apache-2.0
-repository-code: "https://github.com/citation-file-format/my-research-software"
diff --git a/legacy/bids-validator/tests/data/collectModalities-data.js b/legacy/bids-validator/tests/data/collectModalities-data.js
deleted file mode 100644
index 936ab536..00000000
--- a/legacy/bids-validator/tests/data/collectModalities-data.js
+++ /dev/null
@@ -1,2168 +0,0 @@
-// MEG
-export const ds000247 = [
- '/participants.json',
- '/participants.tsv',
- '/sub-0007/ses-01/anat/sub-0007_ses-01_T1w.nii.gz',
- '/sub-0007/ses-01/sub-0007_ses-01_scans.tsv',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.json',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_headshape.pos',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_channels.tsv',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/processing.cfg',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/params.dsc',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/sub-0007_ses-01_task-rest_run-01_meg.infods',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/ClassFile.cls.bak',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/sub-0007_ses-01_task-rest_run-01_meg.hc',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/sub-0007_ses-01_task-rest_run-01_meg.newds',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/bad.segments',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/BadChannels',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/sub-0007_ses-01_task-rest_run-01_meg.hist',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/sub-0007_ses-01_task-rest_run-01_meg.acq',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/sub-0007_ses-01_task-rest_run-01_meg.meg4',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/ClassFile.cls',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/default.de',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_task-rest_run-01_meg.ds/sub-0007_ses-01_task-rest_run-01_meg.res4',
- '/sub-0007/ses-01/meg/sub-0007_ses-01_coordsystem.json',
- '/sub-0002/ses-01/anat/sub-0002_ses-01_T1w.nii.gz',
- '/sub-0002/ses-01/sub-0002_ses-01_scans.tsv',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_coordsystem.json',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_meg.ds/sub-0002_ses-01_task-rest_run-01_meg.res4',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_meg.ds/sub-0002_ses-01_task-rest_run-01_meg.infods',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_meg.ds/processing.cfg',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_meg.ds/params.dsc',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_meg.ds/sub-0002_ses-01_task-rest_run-01_meg.hc',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_meg.ds/ClassFile.cls.bak',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_meg.ds/sub-0002_ses-01_task-rest_run-01_meg.hist',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_meg.ds/sub-0002_ses-01_task-rest_run-01_meg.meg4',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_meg.ds/sub-0002_ses-01_task-rest_run-01_meg.acq',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_meg.ds/sub-0002_ses-01_task-rest_run-01_meg.newds',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_meg.ds/ClassFile.cls',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_meg.ds/default.de',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_headshape.pos',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_meg.json',
- '/sub-0002/ses-01/meg/sub-0002_ses-01_task-rest_run-01_channels.tsv',
- '/sub-0004/ses-01/anat/sub-0004_ses-01_T1w.nii.gz',
- '/sub-0004/ses-01/sub-0004_ses-01_scans.tsv',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_coordsystem.json',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.ds/sub-0004_ses-01_task-rest_run-01_meg.hist',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.ds/sub-0004_ses-01_task-rest_run-01_meg.infods',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.ds/processing.cfg',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.ds/params.dsc',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.ds/sub-0004_ses-01_task-rest_run-01_meg.meg4',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.ds/ClassFile.cls.bak',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.ds/sub-0004_ses-01_task-rest_run-01_meg.hc',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.ds/bad.segments',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.ds/BadChannels',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.ds/ClassFile.cls',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.ds/sub-0004_ses-01_task-rest_run-01_meg.res4',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.ds/sub-0004_ses-01_task-rest_run-01_meg.acq',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.ds/sub-0004_ses-01_task-rest_run-01_meg.newds',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_headshape.pos',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_channels.tsv',
- '/sub-0004/ses-01/meg/sub-0004_ses-01_task-rest_run-01_meg.json',
- '/.datalad/.gitattributes',
- '/.datalad/config',
- '/dataset_description.json',
- '/README',
- '/sub-0003/ses-01/sub-0003_ses-01_scans.tsv',
- '/sub-0003/ses-01/anat/sub-0003_ses-01_T1w.nii.gz',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_headshape.pos',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_channels.tsv',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_coordsystem.json',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.json',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.ds/sub-0003_ses-01_task-rest_run-01_meg.newds',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.ds/sub-0003_ses-01_task-rest_run-01_meg.infods',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.ds/sub-0003_ses-01_task-rest_run-01_meg.acq',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.ds/processing.cfg',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.ds/params.dsc',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.ds/sub-0003_ses-01_task-rest_run-01_meg.res4',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.ds/ClassFile.cls.bak',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.ds/sub-0003_ses-01_task-rest_run-01_meg.meg4',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.ds/bad.segments',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.ds/sub-0003_ses-01_task-rest_run-01_meg.hist',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.ds/sub-0003_ses-01_task-rest_run-01_meg.hc',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.ds/BadChannels',
- '/sub-0003/ses-01/meg/sub-0003_ses-01_task-rest_run-01_meg.ds/ClassFile.cls',
-]
-
-// PET
-export const ds001421 = [
- '/sub-01/ses-02/pet/sub-01_ses-02_pet.json',
- '/sub-01/ses-02/pet/sub-01_ses-02_pet.nii.gz',
- '/sub-01/ses-02/anat/sub-01_ses-02_T1w.json',
- '/sub-01/ses-02/anat/sub-01_ses-02_T1w.nii',
- '/sub-01/ses-01/pet/sub-01_ses-01_pet.nii.gz',
- '/sub-01/ses-01/pet/sub-01_ses-01_pet.json',
- '/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii',
- '/sub-01/ses-01/anat/sub-01_ses-01_T1w.json',
-]
-
-// MRI and many files example
-export const ds001734 = [
- '/sub-116/fmap/sub-116_magnitude1.nii.gz',
- '/sub-116/fmap/sub-116_magnitude2.nii.gz',
- '/sub-116/fmap/sub-116_phasediff.nii.gz',
- '/sub-116/fmap/sub-116_phasediff.json',
- '/sub-116/anat/sub-116_T1w.nii.gz',
- '/sub-116/func/sub-116_task-MGT_run-02_sbref.nii.gz',
- '/sub-116/func/sub-116_task-MGT_run-01_sbref.nii.gz',
- '/sub-116/func/sub-116_task-MGT_run-03_bold.nii.gz',
- '/sub-116/func/sub-116_task-MGT_run-04_bold.nii.gz',
- '/sub-116/func/sub-116_task-MGT_run-04_events.tsv',
- '/sub-116/func/sub-116_task-MGT_run-02_events.tsv',
- '/sub-116/func/sub-116_task-MGT_run-03_events.tsv',
- '/sub-116/func/sub-116_task-MGT_run-01_events.tsv',
- '/sub-116/func/sub-116_task-MGT_run-04_sbref.nii.gz',
- '/sub-116/func/sub-116_task-MGT_run-03_sbref.nii.gz',
- '/sub-116/func/sub-116_task-MGT_run-01_bold.nii.gz',
- '/sub-116/func/sub-116_task-MGT_run-02_bold.nii.gz',
- '/sub-036/fmap/sub-036_magnitude2.nii.gz',
- '/sub-036/fmap/sub-036_magnitude1.nii.gz',
- '/sub-036/fmap/sub-036_phasediff.json',
- '/sub-036/fmap/sub-036_phasediff.nii.gz',
- '/sub-036/anat/sub-036_T1w.nii.gz',
- '/sub-036/func/sub-036_task-MGT_run-04_bold.nii.gz',
- '/sub-036/func/sub-036_task-MGT_run-01_events.tsv',
- '/sub-036/func/sub-036_task-MGT_run-02_sbref.nii.gz',
- '/sub-036/func/sub-036_task-MGT_run-01_sbref.nii.gz',
- '/sub-036/func/sub-036_task-MGT_run-02_events.tsv',
- '/sub-036/func/sub-036_task-MGT_run-01_bold.nii.gz',
- '/sub-036/func/sub-036_task-MGT_run-02_bold.nii.gz',
- '/sub-036/func/sub-036_task-MGT_run-03_bold.nii.gz',
- '/sub-036/func/sub-036_task-MGT_run-03_sbref.nii.gz',
- '/sub-036/func/sub-036_task-MGT_run-04_sbref.nii.gz',
- '/sub-036/func/sub-036_task-MGT_run-04_events.tsv',
- '/sub-036/func/sub-036_task-MGT_run-03_events.tsv',
- '/sub-027/fmap/sub-027_phasediff.json',
- '/sub-027/fmap/sub-027_magnitude2.nii.gz',
- '/sub-027/fmap/sub-027_magnitude1.nii.gz',
- '/sub-027/fmap/sub-027_phasediff.nii.gz',
- '/sub-027/anat/sub-027_T1w.nii.gz',
- '/sub-027/func/sub-027_task-MGT_run-01_sbref.nii.gz',
- '/sub-027/func/sub-027_task-MGT_run-02_events.tsv',
- '/sub-027/func/sub-027_task-MGT_run-02_bold.nii.gz',
- '/sub-027/func/sub-027_task-MGT_run-03_bold.nii.gz',
- '/sub-027/func/sub-027_task-MGT_run-04_sbref.nii.gz',
- '/sub-027/func/sub-027_task-MGT_run-02_sbref.nii.gz',
- '/sub-027/func/sub-027_task-MGT_run-04_events.tsv',
- '/sub-027/func/sub-027_task-MGT_run-01_bold.nii.gz',
- '/sub-027/func/sub-027_task-MGT_run-03_events.tsv',
- '/sub-027/func/sub-027_task-MGT_run-03_sbref.nii.gz',
- '/sub-027/func/sub-027_task-MGT_run-04_bold.nii.gz',
- '/sub-027/func/sub-027_task-MGT_run-01_events.tsv',
- '/sub-030/fmap/sub-030_magnitude1.nii.gz',
- '/sub-030/fmap/sub-030_phasediff.nii.gz',
- '/sub-030/fmap/sub-030_magnitude2.nii.gz',
- '/sub-030/fmap/sub-030_phasediff.json',
- '/sub-030/anat/sub-030_T1w.nii.gz',
- '/sub-030/func/sub-030_task-MGT_run-04_events.tsv',
- '/sub-030/func/sub-030_task-MGT_run-01_bold.nii.gz',
- '/sub-030/func/sub-030_task-MGT_run-02_events.tsv',
- '/sub-030/func/sub-030_task-MGT_run-02_sbref.nii.gz',
- '/sub-030/func/sub-030_task-MGT_run-03_events.tsv',
- '/sub-030/func/sub-030_task-MGT_run-01_events.tsv',
- '/sub-030/func/sub-030_task-MGT_run-02_bold.nii.gz',
- '/sub-030/func/sub-030_task-MGT_run-01_sbref.nii.gz',
- '/sub-030/func/sub-030_task-MGT_run-04_sbref.nii.gz',
- '/sub-030/func/sub-030_task-MGT_run-04_bold.nii.gz',
- '/sub-030/func/sub-030_task-MGT_run-03_sbref.nii.gz',
- '/sub-030/func/sub-030_task-MGT_run-03_bold.nii.gz',
- '/sub-061/fmap/sub-061_phasediff.json',
- '/sub-061/fmap/sub-061_magnitude1.nii.gz',
- '/sub-061/fmap/sub-061_magnitude2.nii.gz',
- '/sub-061/fmap/sub-061_phasediff.nii.gz',
- '/sub-061/anat/sub-061_T1w.nii.gz',
- '/sub-061/func/sub-061_task-MGT_run-02_events.tsv',
- '/sub-061/func/sub-061_task-MGT_run-01_sbref.nii.gz',
- '/sub-061/func/sub-061_task-MGT_run-04_bold.nii.gz',
- '/sub-061/func/sub-061_task-MGT_run-02_sbref.nii.gz',
- '/sub-061/func/sub-061_task-MGT_run-03_sbref.nii.gz',
- '/sub-061/func/sub-061_task-MGT_run-02_bold.nii.gz',
- '/sub-061/func/sub-061_task-MGT_run-03_bold.nii.gz',
- '/sub-061/func/sub-061_task-MGT_run-03_events.tsv',
- '/sub-061/func/sub-061_task-MGT_run-01_bold.nii.gz',
- '/sub-061/func/sub-061_task-MGT_run-01_events.tsv',
- '/sub-061/func/sub-061_task-MGT_run-04_sbref.nii.gz',
- '/sub-061/func/sub-061_task-MGT_run-04_events.tsv',
- '/sub-058/fmap/sub-058_phasediff.nii.gz',
- '/sub-058/fmap/sub-058_phasediff.json',
- '/sub-058/fmap/sub-058_magnitude2.nii.gz',
- '/sub-058/fmap/sub-058_magnitude1.nii.gz',
- '/sub-058/anat/sub-058_T1w.nii.gz',
- '/sub-058/func/sub-058_task-MGT_run-02_bold.nii.gz',
- '/sub-058/func/sub-058_task-MGT_run-04_sbref.nii.gz',
- '/sub-058/func/sub-058_task-MGT_run-02_sbref.nii.gz',
- '/sub-058/func/sub-058_task-MGT_run-01_bold.nii.gz',
- '/sub-058/func/sub-058_task-MGT_run-03_bold.nii.gz',
- '/sub-058/func/sub-058_task-MGT_run-01_sbref.nii.gz',
- '/sub-058/func/sub-058_task-MGT_run-03_events.tsv',
- '/sub-058/func/sub-058_task-MGT_run-01_events.tsv',
- '/sub-058/func/sub-058_task-MGT_run-04_bold.nii.gz',
- '/sub-058/func/sub-058_task-MGT_run-04_events.tsv',
- '/sub-058/func/sub-058_task-MGT_run-02_events.tsv',
- '/sub-058/func/sub-058_task-MGT_run-03_sbref.nii.gz',
- '/sub-008/fmap/sub-008_phasediff.nii.gz',
- '/sub-008/fmap/sub-008_magnitude1.nii.gz',
- '/sub-008/fmap/sub-008_magnitude2.nii.gz',
- '/sub-008/fmap/sub-008_phasediff.json',
- '/sub-008/anat/sub-008_T1w.nii.gz',
- '/sub-008/func/sub-008_task-MGT_run-03_sbref.nii.gz',
- '/sub-008/func/sub-008_task-MGT_run-04_bold.nii.gz',
- '/sub-008/func/sub-008_task-MGT_run-04_events.tsv',
- '/sub-008/func/sub-008_task-MGT_run-03_bold.nii.gz',
- '/sub-008/func/sub-008_task-MGT_run-02_bold.nii.gz',
- '/sub-008/func/sub-008_task-MGT_run-01_sbref.nii.gz',
- '/sub-008/func/sub-008_task-MGT_run-01_bold.nii.gz',
- '/sub-008/func/sub-008_task-MGT_run-01_events.tsv',
- '/sub-008/func/sub-008_task-MGT_run-03_events.tsv',
- '/sub-008/func/sub-008_task-MGT_run-02_sbref.nii.gz',
- '/sub-008/func/sub-008_task-MGT_run-04_sbref.nii.gz',
- '/sub-008/func/sub-008_task-MGT_run-02_events.tsv',
- '/sub-021/fmap/sub-021_phasediff.json',
- '/sub-021/fmap/sub-021_magnitude1.nii.gz',
- '/sub-021/fmap/sub-021_magnitude2.nii.gz',
- '/sub-021/fmap/sub-021_phasediff.nii.gz',
- '/sub-021/anat/sub-021_T1w.nii.gz',
- '/sub-021/func/sub-021_task-MGT_run-04_bold.nii.gz',
- '/sub-021/func/sub-021_task-MGT_run-03_events.tsv',
- '/sub-021/func/sub-021_task-MGT_run-02_sbref.nii.gz',
- '/sub-021/func/sub-021_task-MGT_run-03_bold.nii.gz',
- '/sub-021/func/sub-021_task-MGT_run-02_events.tsv',
- '/sub-021/func/sub-021_task-MGT_run-01_bold.nii.gz',
- '/sub-021/func/sub-021_task-MGT_run-01_sbref.nii.gz',
- '/sub-021/func/sub-021_task-MGT_run-04_events.tsv',
- '/sub-021/func/sub-021_task-MGT_run-01_events.tsv',
- '/sub-021/func/sub-021_task-MGT_run-02_bold.nii.gz',
- '/sub-021/func/sub-021_task-MGT_run-03_sbref.nii.gz',
- '/sub-021/func/sub-021_task-MGT_run-04_sbref.nii.gz',
- '/sub-102/fmap/sub-102_magnitude2.nii.gz',
- '/sub-102/fmap/sub-102_phasediff.nii.gz',
- '/sub-102/fmap/sub-102_magnitude1.nii.gz',
- '/sub-102/fmap/sub-102_phasediff.json',
- '/sub-102/anat/sub-102_T1w.nii.gz',
- '/sub-102/func/sub-102_task-MGT_run-02_bold.nii.gz',
- '/sub-102/func/sub-102_task-MGT_run-01_sbref.nii.gz',
- '/sub-102/func/sub-102_task-MGT_run-04_events.tsv',
- '/sub-102/func/sub-102_task-MGT_run-01_bold.nii.gz',
- '/sub-102/func/sub-102_task-MGT_run-03_sbref.nii.gz',
- '/sub-102/func/sub-102_task-MGT_run-03_events.tsv',
- '/sub-102/func/sub-102_task-MGT_run-01_events.tsv',
- '/sub-102/func/sub-102_task-MGT_run-04_bold.nii.gz',
- '/sub-102/func/sub-102_task-MGT_run-02_events.tsv',
- '/sub-102/func/sub-102_task-MGT_run-04_sbref.nii.gz',
- '/sub-102/func/sub-102_task-MGT_run-03_bold.nii.gz',
- '/sub-102/func/sub-102_task-MGT_run-02_sbref.nii.gz',
- '/sub-090/fmap/sub-090_phasediff.nii.gz',
- '/sub-090/fmap/sub-090_magnitude1.nii.gz',
- '/sub-090/fmap/sub-090_magnitude2.nii.gz',
- '/sub-090/fmap/sub-090_phasediff.json',
- '/sub-090/anat/sub-090_T1w.nii.gz',
- '/sub-090/func/sub-090_task-MGT_run-04_sbref.nii.gz',
- '/sub-090/func/sub-090_task-MGT_run-01_bold.nii.gz',
- '/sub-090/func/sub-090_task-MGT_run-03_sbref.nii.gz',
- '/sub-090/func/sub-090_task-MGT_run-04_events.tsv',
- '/sub-090/func/sub-090_task-MGT_run-02_bold.nii.gz',
- '/sub-090/func/sub-090_task-MGT_run-01_events.tsv',
- '/sub-090/func/sub-090_task-MGT_run-02_sbref.nii.gz',
- '/sub-090/func/sub-090_task-MGT_run-02_events.tsv',
- '/sub-090/func/sub-090_task-MGT_run-04_bold.nii.gz',
- '/sub-090/func/sub-090_task-MGT_run-03_events.tsv',
- '/sub-090/func/sub-090_task-MGT_run-01_sbref.nii.gz',
- '/sub-090/func/sub-090_task-MGT_run-03_bold.nii.gz',
- '/sub-001/fmap/sub-001_magnitude2.nii.gz',
- '/sub-001/fmap/sub-001_phasediff.nii.gz',
- '/sub-001/fmap/sub-001_phasediff.json',
- '/sub-001/fmap/sub-001_magnitude1.nii.gz',
- '/sub-001/anat/sub-001_T1w.nii.gz',
- '/sub-001/func/sub-001_task-MGT_run-04_events.tsv',
- '/sub-001/func/sub-001_task-MGT_run-03_sbref.nii.gz',
- '/sub-001/func/sub-001_task-MGT_run-01_bold.nii.gz',
- '/sub-001/func/sub-001_task-MGT_run-02_sbref.nii.gz',
- '/sub-001/func/sub-001_task-MGT_run-02_events.tsv',
- '/sub-001/func/sub-001_task-MGT_run-04_sbref.nii.gz',
- '/sub-001/func/sub-001_task-MGT_run-01_events.tsv',
- '/sub-001/func/sub-001_task-MGT_run-03_events.tsv',
- '/sub-001/func/sub-001_task-MGT_run-01_sbref.nii.gz',
- '/sub-001/func/sub-001_task-MGT_run-03_bold.nii.gz',
- '/sub-001/func/sub-001_task-MGT_run-04_bold.nii.gz',
- '/sub-001/func/sub-001_task-MGT_run-02_bold.nii.gz',
- '/participants.tsv',
- '/sub-015/fmap/sub-015_phasediff.json',
- '/sub-015/fmap/sub-015_magnitude2.nii.gz',
- '/sub-015/fmap/sub-015_phasediff.nii.gz',
- '/sub-015/fmap/sub-015_magnitude1.nii.gz',
- '/sub-015/anat/sub-015_T1w.nii.gz',
- '/sub-015/func/sub-015_task-MGT_run-01_sbref.nii.gz',
- '/sub-015/func/sub-015_task-MGT_run-03_sbref.nii.gz',
- '/sub-015/func/sub-015_task-MGT_run-01_bold.nii.gz',
- '/sub-015/func/sub-015_task-MGT_run-02_sbref.nii.gz',
- '/sub-015/func/sub-015_task-MGT_run-04_events.tsv',
- '/sub-015/func/sub-015_task-MGT_run-03_bold.nii.gz',
- '/sub-015/func/sub-015_task-MGT_run-04_sbref.nii.gz',
- '/sub-015/func/sub-015_task-MGT_run-01_events.tsv',
- '/sub-015/func/sub-015_task-MGT_run-02_bold.nii.gz',
- '/sub-015/func/sub-015_task-MGT_run-03_events.tsv',
- '/sub-015/func/sub-015_task-MGT_run-02_events.tsv',
- '/sub-015/func/sub-015_task-MGT_run-04_bold.nii.gz',
- '/sub-077/fmap/sub-077_phasediff.nii.gz',
- '/sub-077/fmap/sub-077_magnitude1.nii.gz',
- '/sub-077/fmap/sub-077_magnitude2.nii.gz',
- '/sub-077/fmap/sub-077_phasediff.json',
- '/sub-077/anat/sub-077_T1w.nii.gz',
- '/sub-077/func/sub-077_task-MGT_run-02_bold.nii.gz',
- '/sub-077/func/sub-077_task-MGT_run-02_events.tsv',
- '/sub-077/func/sub-077_task-MGT_run-04_events.tsv',
- '/sub-077/func/sub-077_task-MGT_run-01_bold.nii.gz',
- '/sub-077/func/sub-077_task-MGT_run-01_sbref.nii.gz',
- '/sub-077/func/sub-077_task-MGT_run-03_events.tsv',
- '/sub-077/func/sub-077_task-MGT_run-01_events.tsv',
- '/sub-077/func/sub-077_task-MGT_run-04_sbref.nii.gz',
- '/sub-077/func/sub-077_task-MGT_run-03_sbref.nii.gz',
- '/sub-077/func/sub-077_task-MGT_run-04_bold.nii.gz',
- '/sub-077/func/sub-077_task-MGT_run-03_bold.nii.gz',
- '/sub-077/func/sub-077_task-MGT_run-02_sbref.nii.gz',
- '/sub-094/fmap/sub-094_magnitude2.nii.gz',
- '/sub-094/fmap/sub-094_magnitude1.nii.gz',
- '/sub-094/fmap/sub-094_phasediff.nii.gz',
- '/sub-094/fmap/sub-094_phasediff.json',
- '/sub-094/anat/sub-094_T1w.nii.gz',
- '/sub-094/func/sub-094_task-MGT_run-04_sbref.nii.gz',
- '/sub-094/func/sub-094_task-MGT_run-04_bold.nii.gz',
- '/sub-094/func/sub-094_task-MGT_run-04_events.tsv',
- '/sub-094/func/sub-094_task-MGT_run-01_events.tsv',
- '/sub-094/func/sub-094_task-MGT_run-02_bold.nii.gz',
- '/sub-094/func/sub-094_task-MGT_run-02_events.tsv',
- '/sub-094/func/sub-094_task-MGT_run-03_events.tsv',
- '/sub-094/func/sub-094_task-MGT_run-01_sbref.nii.gz',
- '/sub-094/func/sub-094_task-MGT_run-03_sbref.nii.gz',
- '/sub-094/func/sub-094_task-MGT_run-02_sbref.nii.gz',
- '/sub-094/func/sub-094_task-MGT_run-03_bold.nii.gz',
- '/sub-094/func/sub-094_task-MGT_run-01_bold.nii.gz',
- '/sub-080/fmap/sub-080_phasediff.nii.gz',
- '/sub-080/fmap/sub-080_magnitude1.nii.gz',
- '/sub-080/fmap/sub-080_phasediff.json',
- '/sub-080/fmap/sub-080_magnitude2.nii.gz',
- '/sub-080/anat/sub-080_T1w.nii.gz',
- '/sub-080/func/sub-080_task-MGT_run-03_events.tsv',
- '/sub-080/func/sub-080_task-MGT_run-04_sbref.nii.gz',
- '/sub-080/func/sub-080_task-MGT_run-04_bold.nii.gz',
- '/sub-080/func/sub-080_task-MGT_run-03_bold.nii.gz',
- '/sub-080/func/sub-080_task-MGT_run-02_bold.nii.gz',
- '/sub-080/func/sub-080_task-MGT_run-03_sbref.nii.gz',
- '/sub-080/func/sub-080_task-MGT_run-02_sbref.nii.gz',
- '/sub-080/func/sub-080_task-MGT_run-02_events.tsv',
- '/sub-080/func/sub-080_task-MGT_run-01_events.tsv',
- '/sub-080/func/sub-080_task-MGT_run-04_events.tsv',
- '/sub-080/func/sub-080_task-MGT_run-01_sbref.nii.gz',
- '/sub-080/func/sub-080_task-MGT_run-01_bold.nii.gz',
- '/sub-069/fmap/sub-069_phasediff.nii.gz',
- '/sub-069/fmap/sub-069_phasediff.json',
- '/sub-069/fmap/sub-069_magnitude1.nii.gz',
- '/sub-069/fmap/sub-069_magnitude2.nii.gz',
- '/sub-069/anat/sub-069_T1w.nii.gz',
- '/sub-069/func/sub-069_task-MGT_run-04_sbref.nii.gz',
- '/sub-069/func/sub-069_task-MGT_run-03_sbref.nii.gz',
- '/sub-069/func/sub-069_task-MGT_run-02_events.tsv',
- '/sub-069/func/sub-069_task-MGT_run-03_events.tsv',
- '/sub-069/func/sub-069_task-MGT_run-01_events.tsv',
- '/sub-069/func/sub-069_task-MGT_run-02_sbref.nii.gz',
- '/sub-069/func/sub-069_task-MGT_run-04_bold.nii.gz',
- '/sub-069/func/sub-069_task-MGT_run-01_bold.nii.gz',
- '/sub-069/func/sub-069_task-MGT_run-02_bold.nii.gz',
- '/sub-069/func/sub-069_task-MGT_run-04_events.tsv',
- '/sub-069/func/sub-069_task-MGT_run-01_sbref.nii.gz',
- '/sub-069/func/sub-069_task-MGT_run-03_bold.nii.gz',
- '/task-MGT_bold.json',
- '/sub-016/fmap/sub-016_magnitude1.nii.gz',
- '/sub-016/fmap/sub-016_phasediff.json',
- '/sub-016/fmap/sub-016_magnitude2.nii.gz',
- '/sub-016/fmap/sub-016_phasediff.nii.gz',
- '/sub-016/anat/sub-016_T1w.nii.gz',
- '/sub-016/func/sub-016_task-MGT_run-02_sbref.nii.gz',
- '/sub-016/func/sub-016_task-MGT_run-04_bold.nii.gz',
- '/sub-016/func/sub-016_task-MGT_run-02_bold.nii.gz',
- '/sub-016/func/sub-016_task-MGT_run-03_sbref.nii.gz',
- '/sub-016/func/sub-016_task-MGT_run-01_bold.nii.gz',
- '/sub-016/func/sub-016_task-MGT_run-04_sbref.nii.gz',
- '/sub-016/func/sub-016_task-MGT_run-01_sbref.nii.gz',
- '/sub-016/func/sub-016_task-MGT_run-04_events.tsv',
- '/sub-016/func/sub-016_task-MGT_run-03_bold.nii.gz',
- '/sub-016/func/sub-016_task-MGT_run-01_events.tsv',
- '/sub-016/func/sub-016_task-MGT_run-02_events.tsv',
- '/sub-016/func/sub-016_task-MGT_run-03_events.tsv',
- '/sub-114/fmap/sub-114_magnitude2.nii.gz',
- '/sub-114/fmap/sub-114_magnitude1.nii.gz',
- '/sub-114/fmap/sub-114_phasediff.json',
- '/sub-114/fmap/sub-114_phasediff.nii.gz',
- '/sub-114/anat/sub-114_T1w.nii.gz',
- '/sub-114/func/sub-114_task-MGT_run-04_bold.nii.gz',
- '/sub-114/func/sub-114_task-MGT_run-04_events.tsv',
- '/sub-114/func/sub-114_task-MGT_run-01_sbref.nii.gz',
- '/sub-114/func/sub-114_task-MGT_run-02_sbref.nii.gz',
- '/sub-114/func/sub-114_task-MGT_run-03_bold.nii.gz',
- '/sub-114/func/sub-114_task-MGT_run-01_bold.nii.gz',
- '/sub-114/func/sub-114_task-MGT_run-01_events.tsv',
- '/sub-114/func/sub-114_task-MGT_run-02_events.tsv',
- '/sub-114/func/sub-114_task-MGT_run-03_events.tsv',
- '/sub-114/func/sub-114_task-MGT_run-04_sbref.nii.gz',
- '/sub-114/func/sub-114_task-MGT_run-02_bold.nii.gz',
- '/sub-114/func/sub-114_task-MGT_run-03_sbref.nii.gz',
- '/sub-115/fmap/sub-115_magnitude1.nii.gz',
- '/sub-115/fmap/sub-115_phasediff.nii.gz',
- '/sub-115/fmap/sub-115_magnitude2.nii.gz',
- '/sub-115/fmap/sub-115_phasediff.json',
- '/sub-115/anat/sub-115_T1w.nii.gz',
- '/sub-115/func/sub-115_task-MGT_run-02_bold.nii.gz',
- '/sub-115/func/sub-115_task-MGT_run-03_events.tsv',
- '/sub-115/func/sub-115_task-MGT_run-01_bold.nii.gz',
- '/sub-115/func/sub-115_task-MGT_run-02_events.tsv',
- '/sub-115/func/sub-115_task-MGT_run-04_sbref.nii.gz',
- '/sub-115/func/sub-115_task-MGT_run-03_sbref.nii.gz',
- '/sub-115/func/sub-115_task-MGT_run-01_sbref.nii.gz',
- '/sub-115/func/sub-115_task-MGT_run-01_events.tsv',
- '/sub-115/func/sub-115_task-MGT_run-04_bold.nii.gz',
- '/sub-115/func/sub-115_task-MGT_run-02_sbref.nii.gz',
- '/sub-115/func/sub-115_task-MGT_run-03_bold.nii.gz',
- '/sub-115/func/sub-115_task-MGT_run-04_events.tsv',
- '/sub-010/fmap/sub-010_phasediff.json',
- '/sub-010/fmap/sub-010_magnitude2.nii.gz',
- '/sub-010/fmap/sub-010_phasediff.nii.gz',
- '/sub-010/fmap/sub-010_magnitude1.nii.gz',
- '/sub-010/anat/sub-010_T1w.nii.gz',
- '/sub-010/func/sub-010_task-MGT_run-03_sbref.nii.gz',
- '/sub-010/func/sub-010_task-MGT_run-01_sbref.nii.gz',
- '/sub-010/func/sub-010_task-MGT_run-01_events.tsv',
- '/sub-010/func/sub-010_task-MGT_run-03_bold.nii.gz',
- '/sub-010/func/sub-010_task-MGT_run-02_events.tsv',
- '/sub-010/func/sub-010_task-MGT_run-04_bold.nii.gz',
- '/sub-010/func/sub-010_task-MGT_run-04_sbref.nii.gz',
- '/sub-010/func/sub-010_task-MGT_run-03_events.tsv',
- '/sub-010/func/sub-010_task-MGT_run-02_bold.nii.gz',
- '/sub-010/func/sub-010_task-MGT_run-02_sbref.nii.gz',
- '/sub-010/func/sub-010_task-MGT_run-01_bold.nii.gz',
- '/sub-010/func/sub-010_task-MGT_run-04_events.tsv',
- '/task-MGT_sbref.json',
- '/sub-026/fmap/sub-026_magnitude2.nii.gz',
- '/sub-026/fmap/sub-026_magnitude1.nii.gz',
- '/sub-026/fmap/sub-026_phasediff.json',
- '/sub-026/fmap/sub-026_phasediff.nii.gz',
- '/sub-026/anat/sub-026_T1w.nii.gz',
- '/sub-026/func/sub-026_task-MGT_run-02_events.tsv',
- '/sub-026/func/sub-026_task-MGT_run-04_sbref.nii.gz',
- '/sub-026/func/sub-026_task-MGT_run-01_events.tsv',
- '/sub-026/func/sub-026_task-MGT_run-03_events.tsv',
- '/sub-026/func/sub-026_task-MGT_run-04_bold.nii.gz',
- '/sub-026/func/sub-026_task-MGT_run-03_bold.nii.gz',
- '/sub-026/func/sub-026_task-MGT_run-02_sbref.nii.gz',
- '/sub-026/func/sub-026_task-MGT_run-04_events.tsv',
- '/sub-026/func/sub-026_task-MGT_run-01_bold.nii.gz',
- '/sub-026/func/sub-026_task-MGT_run-01_sbref.nii.gz',
- '/sub-026/func/sub-026_task-MGT_run-02_bold.nii.gz',
- '/sub-026/func/sub-026_task-MGT_run-03_sbref.nii.gz',
- '/sub-092/fmap/sub-092_phasediff.nii.gz',
- '/sub-092/fmap/sub-092_phasediff.json',
- '/sub-092/fmap/sub-092_magnitude2.nii.gz',
- '/sub-092/fmap/sub-092_magnitude1.nii.gz',
- '/sub-092/anat/sub-092_T1w.nii.gz',
- '/sub-092/func/sub-092_task-MGT_run-02_events.tsv',
- '/sub-092/func/sub-092_task-MGT_run-02_bold.nii.gz',
- '/sub-092/func/sub-092_task-MGT_run-02_sbref.nii.gz',
- '/sub-092/func/sub-092_task-MGT_run-03_bold.nii.gz',
- '/sub-092/func/sub-092_task-MGT_run-04_events.tsv',
- '/sub-092/func/sub-092_task-MGT_run-04_sbref.nii.gz',
- '/sub-092/func/sub-092_task-MGT_run-01_bold.nii.gz',
- '/sub-092/func/sub-092_task-MGT_run-04_bold.nii.gz',
- '/sub-092/func/sub-092_task-MGT_run-01_events.tsv',
- '/sub-092/func/sub-092_task-MGT_run-03_events.tsv',
- '/sub-092/func/sub-092_task-MGT_run-03_sbref.nii.gz',
- '/sub-092/func/sub-092_task-MGT_run-01_sbref.nii.gz',
- '/sub-099/fmap/sub-099_magnitude1.nii.gz',
- '/sub-099/fmap/sub-099_phasediff.json',
- '/sub-099/fmap/sub-099_phasediff.nii.gz',
- '/sub-099/fmap/sub-099_magnitude2.nii.gz',
- '/sub-099/anat/sub-099_T1w.nii.gz',
- '/sub-099/func/sub-099_task-MGT_run-04_events.tsv',
- '/sub-099/func/sub-099_task-MGT_run-02_events.tsv',
- '/sub-099/func/sub-099_task-MGT_run-01_sbref.nii.gz',
- '/sub-099/func/sub-099_task-MGT_run-03_events.tsv',
- '/sub-099/func/sub-099_task-MGT_run-04_sbref.nii.gz',
- '/sub-099/func/sub-099_task-MGT_run-01_events.tsv',
- '/sub-099/func/sub-099_task-MGT_run-02_bold.nii.gz',
- '/sub-099/func/sub-099_task-MGT_run-02_sbref.nii.gz',
- '/sub-099/func/sub-099_task-MGT_run-04_bold.nii.gz',
- '/sub-099/func/sub-099_task-MGT_run-03_bold.nii.gz',
- '/sub-099/func/sub-099_task-MGT_run-03_sbref.nii.gz',
- '/sub-099/func/sub-099_task-MGT_run-01_bold.nii.gz',
- '/sub-052/fmap/sub-052_phasediff.json',
- '/sub-052/fmap/sub-052_magnitude2.nii.gz',
- '/sub-052/fmap/sub-052_phasediff.nii.gz',
- '/sub-052/fmap/sub-052_magnitude1.nii.gz',
- '/sub-052/anat/sub-052_T1w.nii.gz',
- '/sub-052/func/sub-052_task-MGT_run-01_events.tsv',
- '/sub-052/func/sub-052_task-MGT_run-04_bold.nii.gz',
- '/sub-052/func/sub-052_task-MGT_run-02_bold.nii.gz',
- '/sub-052/func/sub-052_task-MGT_run-03_bold.nii.gz',
- '/sub-052/func/sub-052_task-MGT_run-01_bold.nii.gz',
- '/sub-052/func/sub-052_task-MGT_run-02_events.tsv',
- '/sub-052/func/sub-052_task-MGT_run-03_sbref.nii.gz',
- '/sub-052/func/sub-052_task-MGT_run-03_events.tsv',
- '/sub-052/func/sub-052_task-MGT_run-04_events.tsv',
- '/sub-052/func/sub-052_task-MGT_run-04_sbref.nii.gz',
- '/sub-052/func/sub-052_task-MGT_run-02_sbref.nii.gz',
- '/sub-052/func/sub-052_task-MGT_run-01_sbref.nii.gz',
- '/sub-014/fmap/sub-014_magnitude1.nii.gz',
- '/sub-014/fmap/sub-014_phasediff.json',
- '/sub-014/fmap/sub-014_phasediff.nii.gz',
- '/sub-014/fmap/sub-014_magnitude2.nii.gz',
- '/sub-014/anat/sub-014_T1w.nii.gz',
- '/sub-014/func/sub-014_task-MGT_run-04_bold.nii.gz',
- '/sub-014/func/sub-014_task-MGT_run-01_events.tsv',
- '/sub-014/func/sub-014_task-MGT_run-03_bold.nii.gz',
- '/sub-014/func/sub-014_task-MGT_run-02_sbref.nii.gz',
- '/sub-014/func/sub-014_task-MGT_run-04_events.tsv',
- '/sub-014/func/sub-014_task-MGT_run-01_bold.nii.gz',
- '/sub-014/func/sub-014_task-MGT_run-03_events.tsv',
- '/sub-014/func/sub-014_task-MGT_run-01_sbref.nii.gz',
- '/sub-014/func/sub-014_task-MGT_run-03_sbref.nii.gz',
- '/sub-014/func/sub-014_task-MGT_run-02_events.tsv',
- '/sub-014/func/sub-014_task-MGT_run-04_sbref.nii.gz',
- '/sub-014/func/sub-014_task-MGT_run-02_bold.nii.gz',
- '/sub-119/fmap/sub-119_phasediff.nii.gz',
- '/sub-119/fmap/sub-119_magnitude2.nii.gz',
- '/sub-119/fmap/sub-119_magnitude1.nii.gz',
- '/sub-119/fmap/sub-119_phasediff.json',
- '/sub-119/anat/sub-119_T1w.nii.gz',
- '/sub-119/func/sub-119_task-MGT_run-04_sbref.nii.gz',
- '/sub-119/func/sub-119_task-MGT_run-01_bold.nii.gz',
- '/sub-119/func/sub-119_task-MGT_run-03_events.tsv',
- '/sub-119/func/sub-119_task-MGT_run-03_bold.nii.gz',
- '/sub-119/func/sub-119_task-MGT_run-01_sbref.nii.gz',
- '/sub-119/func/sub-119_task-MGT_run-04_bold.nii.gz',
- '/sub-119/func/sub-119_task-MGT_run-01_events.tsv',
- '/sub-119/func/sub-119_task-MGT_run-02_events.tsv',
- '/sub-119/func/sub-119_task-MGT_run-03_sbref.nii.gz',
- '/sub-119/func/sub-119_task-MGT_run-02_bold.nii.gz',
- '/sub-119/func/sub-119_task-MGT_run-02_sbref.nii.gz',
- '/sub-119/func/sub-119_task-MGT_run-04_events.tsv',
- '/sub-040/fmap/sub-040_magnitude1.nii.gz',
- '/sub-040/fmap/sub-040_magnitude2.nii.gz',
- '/sub-040/fmap/sub-040_phasediff.nii.gz',
- '/sub-040/fmap/sub-040_phasediff.json',
- '/sub-040/anat/sub-040_T1w.nii.gz',
- '/sub-040/func/sub-040_task-MGT_run-01_bold.nii.gz',
- '/sub-040/func/sub-040_task-MGT_run-04_events.tsv',
- '/sub-040/func/sub-040_task-MGT_run-01_events.tsv',
- '/sub-040/func/sub-040_task-MGT_run-03_events.tsv',
- '/sub-040/func/sub-040_task-MGT_run-03_sbref.nii.gz',
- '/sub-040/func/sub-040_task-MGT_run-02_events.tsv',
- '/sub-040/func/sub-040_task-MGT_run-02_bold.nii.gz',
- '/sub-040/func/sub-040_task-MGT_run-02_sbref.nii.gz',
- '/sub-040/func/sub-040_task-MGT_run-03_bold.nii.gz',
- '/sub-040/func/sub-040_task-MGT_run-04_bold.nii.gz',
- '/sub-040/func/sub-040_task-MGT_run-01_sbref.nii.gz',
- '/sub-040/func/sub-040_task-MGT_run-04_sbref.nii.gz',
- '/sub-106/fmap/sub-106_magnitude1.nii.gz',
- '/sub-106/fmap/sub-106_phasediff.json',
- '/sub-106/fmap/sub-106_magnitude2.nii.gz',
- '/sub-106/fmap/sub-106_phasediff.nii.gz',
- '/sub-106/anat/sub-106_T1w.nii.gz',
- '/sub-106/func/sub-106_task-MGT_run-03_sbref.nii.gz',
- '/sub-106/func/sub-106_task-MGT_run-01_sbref.nii.gz',
- '/sub-106/func/sub-106_task-MGT_run-03_events.tsv',
- '/sub-106/func/sub-106_task-MGT_run-03_bold.nii.gz',
- '/sub-106/func/sub-106_task-MGT_run-02_events.tsv',
- '/sub-106/func/sub-106_task-MGT_run-01_bold.nii.gz',
- '/sub-106/func/sub-106_task-MGT_run-04_bold.nii.gz',
- '/sub-106/func/sub-106_task-MGT_run-04_sbref.nii.gz',
- '/sub-106/func/sub-106_task-MGT_run-02_bold.nii.gz',
- '/sub-106/func/sub-106_task-MGT_run-04_events.tsv',
- '/sub-106/func/sub-106_task-MGT_run-02_sbref.nii.gz',
- '/sub-106/func/sub-106_task-MGT_run-01_events.tsv',
- '/sub-006/fmap/sub-006_magnitude1.nii.gz',
- '/sub-006/fmap/sub-006_magnitude2.nii.gz',
- '/sub-006/fmap/sub-006_phasediff.json',
- '/sub-006/fmap/sub-006_phasediff.nii.gz',
- '/sub-006/anat/sub-006_T1w.nii.gz',
- '/sub-006/func/sub-006_task-MGT_run-01_events.tsv',
- '/sub-006/func/sub-006_task-MGT_run-03_sbref.nii.gz',
- '/sub-006/func/sub-006_task-MGT_run-02_bold.nii.gz',
- '/sub-006/func/sub-006_task-MGT_run-02_events.tsv',
- '/sub-006/func/sub-006_task-MGT_run-03_events.tsv',
- '/sub-006/func/sub-006_task-MGT_run-02_sbref.nii.gz',
- '/sub-006/func/sub-006_task-MGT_run-01_bold.nii.gz',
- '/sub-006/func/sub-006_task-MGT_run-04_bold.nii.gz',
- '/sub-006/func/sub-006_task-MGT_run-01_sbref.nii.gz',
- '/sub-006/func/sub-006_task-MGT_run-04_events.tsv',
- '/sub-006/func/sub-006_task-MGT_run-04_sbref.nii.gz',
- '/sub-006/func/sub-006_task-MGT_run-03_bold.nii.gz',
- '/sub-037/fmap/sub-037_phasediff.json',
- '/sub-037/fmap/sub-037_phasediff.nii.gz',
- '/sub-037/fmap/sub-037_magnitude2.nii.gz',
- '/sub-037/fmap/sub-037_magnitude1.nii.gz',
- '/sub-037/anat/sub-037_T1w.nii.gz',
- '/sub-037/func/sub-037_task-MGT_run-03_sbref.nii.gz',
- '/sub-037/func/sub-037_task-MGT_run-02_sbref.nii.gz',
- '/sub-037/func/sub-037_task-MGT_run-03_events.tsv',
- '/sub-037/func/sub-037_task-MGT_run-02_bold.nii.gz',
- '/sub-037/func/sub-037_task-MGT_run-01_sbref.nii.gz',
- '/sub-037/func/sub-037_task-MGT_run-04_sbref.nii.gz',
- '/sub-037/func/sub-037_task-MGT_run-01_events.tsv',
- '/sub-037/func/sub-037_task-MGT_run-04_bold.nii.gz',
- '/sub-037/func/sub-037_task-MGT_run-03_bold.nii.gz',
- '/sub-037/func/sub-037_task-MGT_run-01_bold.nii.gz',
- '/sub-037/func/sub-037_task-MGT_run-04_events.tsv',
- '/sub-037/func/sub-037_task-MGT_run-02_events.tsv',
- '/sub-076/fmap/sub-076_magnitude1.nii.gz',
- '/sub-076/fmap/sub-076_phasediff.nii.gz',
- '/sub-076/fmap/sub-076_magnitude2.nii.gz',
- '/sub-076/fmap/sub-076_phasediff.json',
- '/sub-076/anat/sub-076_T1w.nii.gz',
- '/sub-076/func/sub-076_task-MGT_run-01_events.tsv',
- '/sub-076/func/sub-076_task-MGT_run-01_sbref.nii.gz',
- '/sub-076/func/sub-076_task-MGT_run-03_bold.nii.gz',
- '/sub-076/func/sub-076_task-MGT_run-04_sbref.nii.gz',
- '/sub-076/func/sub-076_task-MGT_run-02_bold.nii.gz',
- '/sub-076/func/sub-076_task-MGT_run-04_events.tsv',
- '/sub-076/func/sub-076_task-MGT_run-02_sbref.nii.gz',
- '/sub-076/func/sub-076_task-MGT_run-03_events.tsv',
- '/sub-076/func/sub-076_task-MGT_run-01_bold.nii.gz',
- '/sub-076/func/sub-076_task-MGT_run-04_bold.nii.gz',
- '/sub-076/func/sub-076_task-MGT_run-03_sbref.nii.gz',
- '/sub-076/func/sub-076_task-MGT_run-02_events.tsv',
- '/sub-088/fmap/sub-088_phasediff.json',
- '/sub-088/fmap/sub-088_magnitude1.nii.gz',
- '/sub-088/fmap/sub-088_magnitude2.nii.gz',
- '/sub-088/fmap/sub-088_phasediff.nii.gz',
- '/sub-088/anat/sub-088_T1w.nii.gz',
- '/sub-088/func/sub-088_task-MGT_run-02_bold.nii.gz',
- '/sub-088/func/sub-088_task-MGT_run-01_sbref.nii.gz',
- '/sub-088/func/sub-088_task-MGT_run-04_events.tsv',
- '/sub-088/func/sub-088_task-MGT_run-03_sbref.nii.gz',
- '/sub-088/func/sub-088_task-MGT_run-02_sbref.nii.gz',
- '/sub-088/func/sub-088_task-MGT_run-04_bold.nii.gz',
- '/sub-088/func/sub-088_task-MGT_run-01_events.tsv',
- '/sub-088/func/sub-088_task-MGT_run-04_sbref.nii.gz',
- '/sub-088/func/sub-088_task-MGT_run-02_events.tsv',
- '/sub-088/func/sub-088_task-MGT_run-03_events.tsv',
- '/sub-088/func/sub-088_task-MGT_run-01_bold.nii.gz',
- '/sub-088/func/sub-088_task-MGT_run-03_bold.nii.gz',
- '/sub-064/fmap/sub-064_phasediff.json',
- '/sub-064/fmap/sub-064_magnitude1.nii.gz',
- '/sub-064/fmap/sub-064_phasediff.nii.gz',
- '/sub-064/fmap/sub-064_magnitude2.nii.gz',
- '/sub-064/anat/sub-064_T1w.nii.gz',
- '/sub-064/func/sub-064_task-MGT_run-03_events.tsv',
- '/sub-064/func/sub-064_task-MGT_run-04_bold.nii.gz',
- '/sub-064/func/sub-064_task-MGT_run-01_bold.nii.gz',
- '/sub-064/func/sub-064_task-MGT_run-04_events.tsv',
- '/sub-064/func/sub-064_task-MGT_run-02_bold.nii.gz',
- '/sub-064/func/sub-064_task-MGT_run-02_events.tsv',
- '/sub-064/func/sub-064_task-MGT_run-01_events.tsv',
- '/sub-064/func/sub-064_task-MGT_run-01_sbref.nii.gz',
- '/sub-064/func/sub-064_task-MGT_run-03_bold.nii.gz',
- '/sub-064/func/sub-064_task-MGT_run-03_sbref.nii.gz',
- '/sub-064/func/sub-064_task-MGT_run-02_sbref.nii.gz',
- '/sub-064/func/sub-064_task-MGT_run-04_sbref.nii.gz',
- '/sub-082/fmap/sub-082_magnitude2.nii.gz',
- '/sub-082/fmap/sub-082_phasediff.nii.gz',
- '/sub-082/fmap/sub-082_magnitude1.nii.gz',
- '/sub-082/fmap/sub-082_phasediff.json',
- '/sub-082/anat/sub-082_T1w.nii.gz',
- '/sub-082/func/sub-082_task-MGT_run-03_events.tsv',
- '/sub-082/func/sub-082_task-MGT_run-04_sbref.nii.gz',
- '/sub-082/func/sub-082_task-MGT_run-01_events.tsv',
- '/sub-082/func/sub-082_task-MGT_run-03_bold.nii.gz',
- '/sub-082/func/sub-082_task-MGT_run-01_bold.nii.gz',
- '/sub-082/func/sub-082_task-MGT_run-04_bold.nii.gz',
- '/sub-082/func/sub-082_task-MGT_run-02_sbref.nii.gz',
- '/sub-082/func/sub-082_task-MGT_run-02_events.tsv',
- '/sub-082/func/sub-082_task-MGT_run-02_bold.nii.gz',
- '/sub-082/func/sub-082_task-MGT_run-03_sbref.nii.gz',
- '/sub-082/func/sub-082_task-MGT_run-04_events.tsv',
- '/sub-082/func/sub-082_task-MGT_run-01_sbref.nii.gz',
- '/sub-074/fmap/sub-074_magnitude2.nii.gz',
- '/sub-074/fmap/sub-074_phasediff.json',
- '/sub-074/fmap/sub-074_magnitude1.nii.gz',
- '/sub-074/fmap/sub-074_phasediff.nii.gz',
- '/sub-074/anat/sub-074_T1w.nii.gz',
- '/sub-074/func/sub-074_task-MGT_run-03_sbref.nii.gz',
- '/sub-074/func/sub-074_task-MGT_run-04_bold.nii.gz',
- '/sub-074/func/sub-074_task-MGT_run-01_sbref.nii.gz',
- '/sub-074/func/sub-074_task-MGT_run-02_bold.nii.gz',
- '/sub-074/func/sub-074_task-MGT_run-04_events.tsv',
- '/sub-074/func/sub-074_task-MGT_run-03_events.tsv',
- '/sub-074/func/sub-074_task-MGT_run-01_events.tsv',
- '/sub-074/func/sub-074_task-MGT_run-04_sbref.nii.gz',
- '/sub-074/func/sub-074_task-MGT_run-03_bold.nii.gz',
- '/sub-074/func/sub-074_task-MGT_run-02_sbref.nii.gz',
- '/sub-074/func/sub-074_task-MGT_run-02_events.tsv',
- '/sub-074/func/sub-074_task-MGT_run-01_bold.nii.gz',
- '/T1w.json',
- '/sub-118/fmap/sub-118_magnitude2.nii.gz',
- '/sub-118/fmap/sub-118_phasediff.json',
- '/sub-118/fmap/sub-118_phasediff.nii.gz',
- '/sub-118/fmap/sub-118_magnitude1.nii.gz',
- '/sub-118/anat/sub-118_T1w.nii.gz',
- '/sub-118/func/sub-118_task-MGT_run-04_bold.nii.gz',
- '/sub-118/func/sub-118_task-MGT_run-04_sbref.nii.gz',
- '/sub-118/func/sub-118_task-MGT_run-03_bold.nii.gz',
- '/sub-118/func/sub-118_task-MGT_run-03_sbref.nii.gz',
- '/sub-118/func/sub-118_task-MGT_run-01_sbref.nii.gz',
- '/sub-118/func/sub-118_task-MGT_run-03_events.tsv',
- '/sub-118/func/sub-118_task-MGT_run-04_events.tsv',
- '/sub-118/func/sub-118_task-MGT_run-01_bold.nii.gz',
- '/sub-118/func/sub-118_task-MGT_run-01_events.tsv',
- '/sub-118/func/sub-118_task-MGT_run-02_events.tsv',
- '/sub-118/func/sub-118_task-MGT_run-02_sbref.nii.gz',
- '/sub-118/func/sub-118_task-MGT_run-02_bold.nii.gz',
- '/sub-043/fmap/sub-043_phasediff.nii.gz',
- '/sub-043/fmap/sub-043_phasediff.json',
- '/sub-043/fmap/sub-043_magnitude2.nii.gz',
- '/sub-043/fmap/sub-043_magnitude1.nii.gz',
- '/sub-043/anat/sub-043_T1w.nii.gz',
- '/sub-043/func/sub-043_task-MGT_run-02_sbref.nii.gz',
- '/sub-043/func/sub-043_task-MGT_run-03_bold.nii.gz',
- '/sub-043/func/sub-043_task-MGT_run-03_sbref.nii.gz',
- '/sub-043/func/sub-043_task-MGT_run-01_sbref.nii.gz',
- '/sub-043/func/sub-043_task-MGT_run-04_bold.nii.gz',
- '/sub-043/func/sub-043_task-MGT_run-02_events.tsv',
- '/sub-043/func/sub-043_task-MGT_run-04_sbref.nii.gz',
- '/sub-043/func/sub-043_task-MGT_run-03_events.tsv',
- '/sub-043/func/sub-043_task-MGT_run-02_bold.nii.gz',
- '/sub-043/func/sub-043_task-MGT_run-04_events.tsv',
- '/sub-043/func/sub-043_task-MGT_run-01_events.tsv',
- '/sub-043/func/sub-043_task-MGT_run-01_bold.nii.gz',
- '/sub-009/fmap/sub-009_phasediff.json',
- '/sub-009/fmap/sub-009_phasediff.nii.gz',
- '/sub-009/fmap/sub-009_magnitude2.nii.gz',
- '/sub-009/fmap/sub-009_magnitude1.nii.gz',
- '/sub-009/anat/sub-009_T1w.nii.gz',
- '/sub-009/func/sub-009_task-MGT_run-02_events.tsv',
- '/sub-009/func/sub-009_task-MGT_run-04_events.tsv',
- '/sub-009/func/sub-009_task-MGT_run-02_sbref.nii.gz',
- '/sub-009/func/sub-009_task-MGT_run-02_bold.nii.gz',
- '/sub-009/func/sub-009_task-MGT_run-03_events.tsv',
- '/sub-009/func/sub-009_task-MGT_run-03_sbref.nii.gz',
- '/sub-009/func/sub-009_task-MGT_run-03_bold.nii.gz',
- '/sub-009/func/sub-009_task-MGT_run-04_sbref.nii.gz',
- '/sub-009/func/sub-009_task-MGT_run-01_sbref.nii.gz',
- '/sub-009/func/sub-009_task-MGT_run-01_bold.nii.gz',
- '/sub-009/func/sub-009_task-MGT_run-01_events.tsv',
- '/sub-009/func/sub-009_task-MGT_run-04_bold.nii.gz',
- '/sub-035/fmap/sub-035_phasediff.json',
- '/sub-035/fmap/sub-035_phasediff.nii.gz',
- '/sub-035/fmap/sub-035_magnitude2.nii.gz',
- '/sub-035/fmap/sub-035_magnitude1.nii.gz',
- '/sub-035/anat/sub-035_T1w.nii.gz',
- '/sub-035/func/sub-035_task-MGT_run-04_events.tsv',
- '/sub-035/func/sub-035_task-MGT_run-03_bold.nii.gz',
- '/sub-035/func/sub-035_task-MGT_run-01_events.tsv',
- '/sub-035/func/sub-035_task-MGT_run-04_bold.nii.gz',
- '/sub-035/func/sub-035_task-MGT_run-02_bold.nii.gz',
- '/sub-035/func/sub-035_task-MGT_run-01_sbref.nii.gz',
- '/sub-035/func/sub-035_task-MGT_run-02_events.tsv',
- '/sub-035/func/sub-035_task-MGT_run-02_sbref.nii.gz',
- '/sub-035/func/sub-035_task-MGT_run-03_events.tsv',
- '/sub-035/func/sub-035_task-MGT_run-03_sbref.nii.gz',
- '/sub-035/func/sub-035_task-MGT_run-01_bold.nii.gz',
- '/sub-035/func/sub-035_task-MGT_run-04_sbref.nii.gz',
- '/sub-112/fmap/sub-112_magnitude2.nii.gz',
- '/sub-112/fmap/sub-112_magnitude1.nii.gz',
- '/sub-112/fmap/sub-112_phasediff.json',
- '/sub-112/fmap/sub-112_phasediff.nii.gz',
- '/sub-112/anat/sub-112_T1w.nii.gz',
- '/sub-112/func/sub-112_task-MGT_run-03_bold.nii.gz',
- '/sub-112/func/sub-112_task-MGT_run-01_sbref.nii.gz',
- '/sub-112/func/sub-112_task-MGT_run-02_sbref.nii.gz',
- '/sub-112/func/sub-112_task-MGT_run-03_sbref.nii.gz',
- '/sub-112/func/sub-112_task-MGT_run-04_bold.nii.gz',
- '/sub-112/func/sub-112_task-MGT_run-03_events.tsv',
- '/sub-112/func/sub-112_task-MGT_run-04_sbref.nii.gz',
- '/sub-112/func/sub-112_task-MGT_run-01_bold.nii.gz',
- '/sub-112/func/sub-112_task-MGT_run-02_events.tsv',
- '/sub-112/func/sub-112_task-MGT_run-04_events.tsv',
- '/sub-112/func/sub-112_task-MGT_run-01_events.tsv',
- '/sub-112/func/sub-112_task-MGT_run-02_bold.nii.gz',
- '/sub-089/fmap/sub-089_phasediff.nii.gz',
- '/sub-089/fmap/sub-089_phasediff.json',
- '/sub-089/fmap/sub-089_magnitude2.nii.gz',
- '/sub-089/fmap/sub-089_magnitude1.nii.gz',
- '/sub-089/anat/sub-089_T1w.nii.gz',
- '/sub-089/func/sub-089_task-MGT_run-03_sbref.nii.gz',
- '/sub-089/func/sub-089_task-MGT_run-03_events.tsv',
- '/sub-089/func/sub-089_task-MGT_run-03_bold.nii.gz',
- '/sub-089/func/sub-089_task-MGT_run-04_events.tsv',
- '/sub-089/func/sub-089_task-MGT_run-01_sbref.nii.gz',
- '/sub-089/func/sub-089_task-MGT_run-01_bold.nii.gz',
- '/sub-089/func/sub-089_task-MGT_run-02_bold.nii.gz',
- '/sub-089/func/sub-089_task-MGT_run-04_bold.nii.gz',
- '/sub-089/func/sub-089_task-MGT_run-04_sbref.nii.gz',
- '/sub-089/func/sub-089_task-MGT_run-01_events.tsv',
- '/sub-089/func/sub-089_task-MGT_run-02_events.tsv',
- '/sub-089/func/sub-089_task-MGT_run-02_sbref.nii.gz',
- '/sub-113/fmap/sub-113_phasediff.nii.gz',
- '/sub-113/fmap/sub-113_magnitude2.nii.gz',
- '/sub-113/fmap/sub-113_phasediff.json',
- '/sub-113/fmap/sub-113_magnitude1.nii.gz',
- '/sub-113/anat/sub-113_T1w.nii.gz',
- '/sub-113/func/sub-113_task-MGT_run-04_sbref.nii.gz',
- '/sub-113/func/sub-113_task-MGT_run-03_events.tsv',
- '/sub-113/func/sub-113_task-MGT_run-02_sbref.nii.gz',
- '/sub-113/func/sub-113_task-MGT_run-03_sbref.nii.gz',
- '/sub-113/func/sub-113_task-MGT_run-04_events.tsv',
- '/sub-113/func/sub-113_task-MGT_run-01_bold.nii.gz',
- '/sub-113/func/sub-113_task-MGT_run-04_bold.nii.gz',
- '/sub-113/func/sub-113_task-MGT_run-01_events.tsv',
- '/sub-113/func/sub-113_task-MGT_run-02_bold.nii.gz',
- '/sub-113/func/sub-113_task-MGT_run-02_events.tsv',
- '/sub-113/func/sub-113_task-MGT_run-01_sbref.nii.gz',
- '/sub-113/func/sub-113_task-MGT_run-03_bold.nii.gz',
- '/sub-109/fmap/sub-109_magnitude2.nii.gz',
- '/sub-109/fmap/sub-109_phasediff.json',
- '/sub-109/fmap/sub-109_magnitude1.nii.gz',
- '/sub-109/fmap/sub-109_phasediff.nii.gz',
- '/sub-109/anat/sub-109_T1w.nii.gz',
- '/sub-109/func/sub-109_task-MGT_run-03_bold.nii.gz',
- '/sub-109/func/sub-109_task-MGT_run-01_bold.nii.gz',
- '/sub-109/func/sub-109_task-MGT_run-04_bold.nii.gz',
- '/sub-109/func/sub-109_task-MGT_run-02_bold.nii.gz',
- '/sub-109/func/sub-109_task-MGT_run-02_sbref.nii.gz',
- '/sub-109/func/sub-109_task-MGT_run-01_events.tsv',
- '/sub-109/func/sub-109_task-MGT_run-02_events.tsv',
- '/sub-109/func/sub-109_task-MGT_run-03_events.tsv',
- '/sub-109/func/sub-109_task-MGT_run-04_events.tsv',
- '/sub-109/func/sub-109_task-MGT_run-04_sbref.nii.gz',
- '/sub-109/func/sub-109_task-MGT_run-03_sbref.nii.gz',
- '/sub-109/func/sub-109_task-MGT_run-01_sbref.nii.gz',
- '/dataset_description.json',
- '/sub-044/fmap/sub-044_phasediff.nii.gz',
- '/sub-044/fmap/sub-044_magnitude1.nii.gz',
- '/sub-044/fmap/sub-044_magnitude2.nii.gz',
- '/sub-044/fmap/sub-044_phasediff.json',
- '/sub-044/anat/sub-044_T1w.nii.gz',
- '/sub-044/func/sub-044_task-MGT_run-04_events.tsv',
- '/sub-044/func/sub-044_task-MGT_run-02_bold.nii.gz',
- '/sub-044/func/sub-044_task-MGT_run-03_bold.nii.gz',
- '/sub-044/func/sub-044_task-MGT_run-04_bold.nii.gz',
- '/sub-044/func/sub-044_task-MGT_run-01_bold.nii.gz',
- '/sub-044/func/sub-044_task-MGT_run-02_events.tsv',
- '/sub-044/func/sub-044_task-MGT_run-04_sbref.nii.gz',
- '/sub-044/func/sub-044_task-MGT_run-03_sbref.nii.gz',
- '/sub-044/func/sub-044_task-MGT_run-02_sbref.nii.gz',
- '/sub-044/func/sub-044_task-MGT_run-01_sbref.nii.gz',
- '/sub-044/func/sub-044_task-MGT_run-01_events.tsv',
- '/sub-044/func/sub-044_task-MGT_run-03_events.tsv',
- '/sub-002/fmap/sub-002_magnitude2.nii.gz',
- '/sub-002/fmap/sub-002_magnitude1.nii.gz',
- '/sub-002/fmap/sub-002_phasediff.json',
- '/sub-002/fmap/sub-002_phasediff.nii.gz',
- '/sub-002/anat/sub-002_T1w.nii.gz',
- '/sub-002/func/sub-002_task-MGT_run-02_bold.nii.gz',
- '/sub-002/func/sub-002_task-MGT_run-04_events.tsv',
- '/sub-002/func/sub-002_task-MGT_run-04_bold.nii.gz',
- '/sub-002/func/sub-002_task-MGT_run-03_bold.nii.gz',
- '/sub-002/func/sub-002_task-MGT_run-01_bold.nii.gz',
- '/sub-002/func/sub-002_task-MGT_run-03_sbref.nii.gz',
- '/sub-002/func/sub-002_task-MGT_run-01_sbref.nii.gz',
- '/sub-002/func/sub-002_task-MGT_run-04_sbref.nii.gz',
- '/sub-002/func/sub-002_task-MGT_run-01_events.tsv',
- '/sub-002/func/sub-002_task-MGT_run-02_events.tsv',
- '/sub-002/func/sub-002_task-MGT_run-03_events.tsv',
- '/sub-002/func/sub-002_task-MGT_run-02_sbref.nii.gz',
- '/sub-085/fmap/sub-085_magnitude1.nii.gz',
- '/sub-085/fmap/sub-085_magnitude2.nii.gz',
- '/sub-085/fmap/sub-085_phasediff.json',
- '/sub-085/fmap/sub-085_phasediff.nii.gz',
- '/sub-085/anat/sub-085_T1w.nii.gz',
- '/sub-085/func/sub-085_task-MGT_run-04_sbref.nii.gz',
- '/sub-085/func/sub-085_task-MGT_run-01_bold.nii.gz',
- '/sub-085/func/sub-085_task-MGT_run-02_events.tsv',
- '/sub-085/func/sub-085_task-MGT_run-02_bold.nii.gz',
- '/sub-085/func/sub-085_task-MGT_run-03_bold.nii.gz',
- '/sub-085/func/sub-085_task-MGT_run-03_sbref.nii.gz',
- '/sub-085/func/sub-085_task-MGT_run-03_events.tsv',
- '/sub-085/func/sub-085_task-MGT_run-01_events.tsv',
- '/sub-085/func/sub-085_task-MGT_run-04_bold.nii.gz',
- '/sub-085/func/sub-085_task-MGT_run-02_sbref.nii.gz',
- '/sub-085/func/sub-085_task-MGT_run-01_sbref.nii.gz',
- '/sub-085/func/sub-085_task-MGT_run-04_events.tsv',
- '/sub-022/fmap/sub-022_magnitude2.nii.gz',
- '/sub-022/fmap/sub-022_phasediff.nii.gz',
- '/sub-022/fmap/sub-022_magnitude1.nii.gz',
- '/sub-022/fmap/sub-022_phasediff.json',
- '/sub-022/anat/sub-022_T1w.nii.gz',
- '/sub-022/func/sub-022_task-MGT_run-04_sbref.nii.gz',
- '/sub-022/func/sub-022_task-MGT_run-04_bold.nii.gz',
- '/sub-022/func/sub-022_task-MGT_run-01_sbref.nii.gz',
- '/sub-022/func/sub-022_task-MGT_run-01_events.tsv',
- '/sub-022/func/sub-022_task-MGT_run-03_events.tsv',
- '/sub-022/func/sub-022_task-MGT_run-03_bold.nii.gz',
- '/sub-022/func/sub-022_task-MGT_run-03_sbref.nii.gz',
- '/sub-022/func/sub-022_task-MGT_run-01_bold.nii.gz',
- '/sub-022/func/sub-022_task-MGT_run-02_bold.nii.gz',
- '/sub-022/func/sub-022_task-MGT_run-04_events.tsv',
- '/sub-022/func/sub-022_task-MGT_run-02_sbref.nii.gz',
- '/sub-022/func/sub-022_task-MGT_run-02_events.tsv',
- '/sub-032/fmap/sub-032_magnitude1.nii.gz',
- '/sub-032/fmap/sub-032_phasediff.nii.gz',
- '/sub-032/fmap/sub-032_magnitude2.nii.gz',
- '/sub-032/fmap/sub-032_phasediff.json',
- '/sub-032/anat/sub-032_T1w.nii.gz',
- '/sub-032/func/sub-032_task-MGT_run-03_bold.nii.gz',
- '/sub-032/func/sub-032_task-MGT_run-04_bold.nii.gz',
- '/sub-032/func/sub-032_task-MGT_run-01_events.tsv',
- '/sub-032/func/sub-032_task-MGT_run-02_events.tsv',
- '/sub-032/func/sub-032_task-MGT_run-03_sbref.nii.gz',
- '/sub-032/func/sub-032_task-MGT_run-02_bold.nii.gz',
- '/sub-032/func/sub-032_task-MGT_run-04_sbref.nii.gz',
- '/sub-032/func/sub-032_task-MGT_run-01_bold.nii.gz',
- '/sub-032/func/sub-032_task-MGT_run-04_events.tsv',
- '/sub-032/func/sub-032_task-MGT_run-03_events.tsv',
- '/sub-032/func/sub-032_task-MGT_run-01_sbref.nii.gz',
- '/sub-032/func/sub-032_task-MGT_run-02_sbref.nii.gz',
- '/benchmark.py',
- '/sub-056/fmap/sub-056_phasediff.nii.gz',
- '/sub-056/fmap/sub-056_magnitude2.nii.gz',
- '/sub-056/fmap/sub-056_phasediff.json',
- '/sub-056/fmap/sub-056_magnitude1.nii.gz',
- '/sub-056/anat/sub-056_T1w.nii.gz',
- '/sub-056/func/sub-056_task-MGT_run-02_events.tsv',
- '/sub-056/func/sub-056_task-MGT_run-01_bold.nii.gz',
- '/sub-056/func/sub-056_task-MGT_run-03_events.tsv',
- '/sub-056/func/sub-056_task-MGT_run-03_sbref.nii.gz',
- '/sub-056/func/sub-056_task-MGT_run-03_bold.nii.gz',
- '/sub-056/func/sub-056_task-MGT_run-04_bold.nii.gz',
- '/sub-056/func/sub-056_task-MGT_run-01_sbref.nii.gz',
- '/sub-056/func/sub-056_task-MGT_run-01_events.tsv',
- '/sub-056/func/sub-056_task-MGT_run-02_bold.nii.gz',
- '/sub-056/func/sub-056_task-MGT_run-04_sbref.nii.gz',
- '/sub-056/func/sub-056_task-MGT_run-02_sbref.nii.gz',
- '/sub-056/func/sub-056_task-MGT_run-04_events.tsv',
- '/sub-049/fmap/sub-049_phasediff.nii.gz',
- '/sub-049/fmap/sub-049_magnitude1.nii.gz',
- '/sub-049/fmap/sub-049_phasediff.json',
- '/sub-049/fmap/sub-049_magnitude2.nii.gz',
- '/sub-049/anat/sub-049_T1w.nii.gz',
- '/sub-049/func/sub-049_task-MGT_run-02_events.tsv',
- '/sub-049/func/sub-049_task-MGT_run-01_events.tsv',
- '/sub-049/func/sub-049_task-MGT_run-03_events.tsv',
- '/sub-049/func/sub-049_task-MGT_run-01_sbref.nii.gz',
- '/sub-049/func/sub-049_task-MGT_run-03_sbref.nii.gz',
- '/sub-049/func/sub-049_task-MGT_run-01_bold.nii.gz',
- '/sub-049/func/sub-049_task-MGT_run-02_bold.nii.gz',
- '/sub-049/func/sub-049_task-MGT_run-02_sbref.nii.gz',
- '/sub-049/func/sub-049_task-MGT_run-04_sbref.nii.gz',
- '/sub-049/func/sub-049_task-MGT_run-04_events.tsv',
- '/sub-049/func/sub-049_task-MGT_run-04_bold.nii.gz',
- '/sub-049/func/sub-049_task-MGT_run-03_bold.nii.gz',
- '/sub-123/fmap/sub-123_magnitude1.nii.gz',
- '/sub-123/fmap/sub-123_phasediff.json',
- '/sub-123/fmap/sub-123_phasediff.nii.gz',
- '/sub-123/fmap/sub-123_magnitude2.nii.gz',
- '/sub-123/anat/sub-123_T1w.nii.gz',
- '/sub-123/func/sub-123_task-MGT_run-01_bold.nii.gz',
- '/sub-123/func/sub-123_task-MGT_run-04_events.tsv',
- '/sub-123/func/sub-123_task-MGT_run-04_sbref.nii.gz',
- '/sub-123/func/sub-123_task-MGT_run-02_sbref.nii.gz',
- '/sub-123/func/sub-123_task-MGT_run-02_events.tsv',
- '/sub-123/func/sub-123_task-MGT_run-03_events.tsv',
- '/sub-123/func/sub-123_task-MGT_run-02_bold.nii.gz',
- '/sub-123/func/sub-123_task-MGT_run-01_sbref.nii.gz',
- '/sub-123/func/sub-123_task-MGT_run-03_bold.nii.gz',
- '/sub-123/func/sub-123_task-MGT_run-04_bold.nii.gz',
- '/sub-123/func/sub-123_task-MGT_run-03_sbref.nii.gz',
- '/sub-123/func/sub-123_task-MGT_run-01_events.tsv',
- '/sub-066/fmap/sub-066_phasediff.nii.gz',
- '/sub-066/fmap/sub-066_phasediff.json',
- '/sub-066/fmap/sub-066_magnitude2.nii.gz',
- '/sub-066/fmap/sub-066_magnitude1.nii.gz',
- '/sub-066/anat/sub-066_T1w.nii.gz',
- '/sub-066/func/sub-066_task-MGT_run-04_sbref.nii.gz',
- '/sub-066/func/sub-066_task-MGT_run-01_bold.nii.gz',
- '/sub-066/func/sub-066_task-MGT_run-02_events.tsv',
- '/sub-066/func/sub-066_task-MGT_run-03_sbref.nii.gz',
- '/sub-066/func/sub-066_task-MGT_run-03_bold.nii.gz',
- '/sub-066/func/sub-066_task-MGT_run-02_sbref.nii.gz',
- '/sub-066/func/sub-066_task-MGT_run-01_sbref.nii.gz',
- '/sub-066/func/sub-066_task-MGT_run-01_events.tsv',
- '/sub-066/func/sub-066_task-MGT_run-02_bold.nii.gz',
- '/sub-066/func/sub-066_task-MGT_run-04_bold.nii.gz',
- '/sub-066/func/sub-066_task-MGT_run-03_events.tsv',
- '/sub-066/func/sub-066_task-MGT_run-04_events.tsv',
- '/sub-067/fmap/sub-067_phasediff.json',
- '/sub-067/fmap/sub-067_phasediff.nii.gz',
- '/sub-067/fmap/sub-067_magnitude2.nii.gz',
- '/sub-067/fmap/sub-067_magnitude1.nii.gz',
- '/sub-067/anat/sub-067_T1w.nii.gz',
- '/sub-067/func/sub-067_task-MGT_run-03_sbref.nii.gz',
- '/sub-067/func/sub-067_task-MGT_run-03_events.tsv',
- '/sub-067/func/sub-067_task-MGT_run-01_events.tsv',
- '/sub-067/func/sub-067_task-MGT_run-03_bold.nii.gz',
- '/sub-067/func/sub-067_task-MGT_run-04_events.tsv',
- '/sub-067/func/sub-067_task-MGT_run-01_sbref.nii.gz',
- '/sub-067/func/sub-067_task-MGT_run-01_bold.nii.gz',
- '/sub-067/func/sub-067_task-MGT_run-02_sbref.nii.gz',
- '/sub-067/func/sub-067_task-MGT_run-02_bold.nii.gz',
- '/sub-067/func/sub-067_task-MGT_run-04_bold.nii.gz',
- '/sub-067/func/sub-067_task-MGT_run-04_sbref.nii.gz',
- '/sub-067/func/sub-067_task-MGT_run-02_events.tsv',
- '/README',
- '/sub-003/fmap/sub-003_phasediff.json',
- '/sub-003/fmap/sub-003_magnitude2.nii.gz',
- '/sub-003/fmap/sub-003_magnitude1.nii.gz',
- '/sub-003/fmap/sub-003_phasediff.nii.gz',
- '/sub-003/anat/sub-003_T1w.nii.gz',
- '/sub-003/func/sub-003_task-MGT_run-03_events.tsv',
- '/sub-003/func/sub-003_task-MGT_run-04_sbref.nii.gz',
- '/sub-003/func/sub-003_task-MGT_run-03_bold.nii.gz',
- '/sub-003/func/sub-003_task-MGT_run-02_events.tsv',
- '/sub-003/func/sub-003_task-MGT_run-04_bold.nii.gz',
- '/sub-003/func/sub-003_task-MGT_run-01_bold.nii.gz',
- '/sub-003/func/sub-003_task-MGT_run-02_sbref.nii.gz',
- '/sub-003/func/sub-003_task-MGT_run-04_events.tsv',
- '/sub-003/func/sub-003_task-MGT_run-01_events.tsv',
- '/sub-003/func/sub-003_task-MGT_run-02_bold.nii.gz',
- '/sub-003/func/sub-003_task-MGT_run-01_sbref.nii.gz',
- '/sub-003/func/sub-003_task-MGT_run-03_sbref.nii.gz',
- '/sub-068/fmap/sub-068_magnitude1.nii.gz',
- '/sub-068/fmap/sub-068_phasediff.nii.gz',
- '/sub-068/fmap/sub-068_phasediff.json',
- '/sub-068/fmap/sub-068_magnitude2.nii.gz',
- '/sub-068/anat/sub-068_T1w.nii.gz',
- '/sub-068/func/sub-068_task-MGT_run-04_sbref.nii.gz',
- '/sub-068/func/sub-068_task-MGT_run-03_bold.nii.gz',
- '/sub-068/func/sub-068_task-MGT_run-01_sbref.nii.gz',
- '/sub-068/func/sub-068_task-MGT_run-02_bold.nii.gz',
- '/sub-068/func/sub-068_task-MGT_run-02_sbref.nii.gz',
- '/sub-068/func/sub-068_task-MGT_run-01_events.tsv',
- '/sub-068/func/sub-068_task-MGT_run-04_events.tsv',
- '/sub-068/func/sub-068_task-MGT_run-01_bold.nii.gz',
- '/sub-068/func/sub-068_task-MGT_run-03_sbref.nii.gz',
- '/sub-068/func/sub-068_task-MGT_run-04_bold.nii.gz',
- '/sub-068/func/sub-068_task-MGT_run-02_events.tsv',
- '/sub-068/func/sub-068_task-MGT_run-03_events.tsv',
- '/sub-011/fmap/sub-011_phasediff.nii.gz',
- '/sub-011/fmap/sub-011_magnitude1.nii.gz',
- '/sub-011/fmap/sub-011_magnitude2.nii.gz',
- '/sub-011/fmap/sub-011_phasediff.json',
- '/sub-011/anat/sub-011_T1w.nii.gz',
- '/sub-011/func/sub-011_task-MGT_run-04_sbref.nii.gz',
- '/sub-011/func/sub-011_task-MGT_run-03_sbref.nii.gz',
- '/sub-011/func/sub-011_task-MGT_run-02_events.tsv',
- '/sub-011/func/sub-011_task-MGT_run-01_sbref.nii.gz',
- '/sub-011/func/sub-011_task-MGT_run-02_bold.nii.gz',
- '/sub-011/func/sub-011_task-MGT_run-03_events.tsv',
- '/sub-011/func/sub-011_task-MGT_run-02_sbref.nii.gz',
- '/sub-011/func/sub-011_task-MGT_run-03_bold.nii.gz',
- '/sub-011/func/sub-011_task-MGT_run-04_bold.nii.gz',
- '/sub-011/func/sub-011_task-MGT_run-04_events.tsv',
- '/sub-011/func/sub-011_task-MGT_run-01_events.tsv',
- '/sub-011/func/sub-011_task-MGT_run-01_bold.nii.gz',
- '/sub-062/fmap/sub-062_phasediff.nii.gz',
- '/sub-062/fmap/sub-062_phasediff.json',
- '/sub-062/fmap/sub-062_magnitude2.nii.gz',
- '/sub-062/fmap/sub-062_magnitude1.nii.gz',
- '/sub-062/anat/sub-062_T1w.nii.gz',
- '/sub-062/func/sub-062_task-MGT_run-03_events.tsv',
- '/sub-062/func/sub-062_task-MGT_run-02_bold.nii.gz',
- '/sub-062/func/sub-062_task-MGT_run-01_bold.nii.gz',
- '/sub-062/func/sub-062_task-MGT_run-04_bold.nii.gz',
- '/sub-062/func/sub-062_task-MGT_run-02_events.tsv',
- '/sub-062/func/sub-062_task-MGT_run-04_sbref.nii.gz',
- '/sub-062/func/sub-062_task-MGT_run-02_sbref.nii.gz',
- '/sub-062/func/sub-062_task-MGT_run-04_events.tsv',
- '/sub-062/func/sub-062_task-MGT_run-03_sbref.nii.gz',
- '/sub-062/func/sub-062_task-MGT_run-01_sbref.nii.gz',
- '/sub-062/func/sub-062_task-MGT_run-01_events.tsv',
- '/sub-062/func/sub-062_task-MGT_run-03_bold.nii.gz',
- '/sub-041/fmap/sub-041_magnitude1.nii.gz',
- '/sub-041/fmap/sub-041_phasediff.nii.gz',
- '/sub-041/fmap/sub-041_magnitude2.nii.gz',
- '/sub-041/fmap/sub-041_phasediff.json',
- '/sub-041/anat/sub-041_T1w.nii.gz',
- '/sub-041/func/sub-041_task-MGT_run-04_bold.nii.gz',
- '/sub-041/func/sub-041_task-MGT_run-01_sbref.nii.gz',
- '/sub-041/func/sub-041_task-MGT_run-02_bold.nii.gz',
- '/sub-041/func/sub-041_task-MGT_run-02_events.tsv',
- '/sub-041/func/sub-041_task-MGT_run-04_events.tsv',
- '/sub-041/func/sub-041_task-MGT_run-01_events.tsv',
- '/sub-041/func/sub-041_task-MGT_run-03_events.tsv',
- '/sub-041/func/sub-041_task-MGT_run-04_sbref.nii.gz',
- '/sub-041/func/sub-041_task-MGT_run-03_sbref.nii.gz',
- '/sub-041/func/sub-041_task-MGT_run-01_bold.nii.gz',
- '/sub-041/func/sub-041_task-MGT_run-03_bold.nii.gz',
- '/sub-041/func/sub-041_task-MGT_run-02_sbref.nii.gz',
- '/sub-084/fmap/sub-084_phasediff.nii.gz',
- '/sub-084/fmap/sub-084_magnitude2.nii.gz',
- '/sub-084/fmap/sub-084_magnitude1.nii.gz',
- '/sub-084/fmap/sub-084_phasediff.json',
- '/sub-084/anat/sub-084_T1w.nii.gz',
- '/sub-084/func/sub-084_task-MGT_run-03_sbref.nii.gz',
- '/sub-084/func/sub-084_task-MGT_run-04_bold.nii.gz',
- '/sub-084/func/sub-084_task-MGT_run-02_events.tsv',
- '/sub-084/func/sub-084_task-MGT_run-03_events.tsv',
- '/sub-084/func/sub-084_task-MGT_run-03_bold.nii.gz',
- '/sub-084/func/sub-084_task-MGT_run-04_sbref.nii.gz',
- '/sub-084/func/sub-084_task-MGT_run-02_bold.nii.gz',
- '/sub-084/func/sub-084_task-MGT_run-01_sbref.nii.gz',
- '/sub-084/func/sub-084_task-MGT_run-02_sbref.nii.gz',
- '/sub-084/func/sub-084_task-MGT_run-01_events.tsv',
- '/sub-084/func/sub-084_task-MGT_run-04_events.tsv',
- '/sub-084/func/sub-084_task-MGT_run-01_bold.nii.gz',
- '/sub-095/fmap/sub-095_phasediff.json',
- '/sub-095/fmap/sub-095_magnitude1.nii.gz',
- '/sub-095/fmap/sub-095_phasediff.nii.gz',
- '/sub-095/fmap/sub-095_magnitude2.nii.gz',
- '/sub-095/anat/sub-095_T1w.nii.gz',
- '/sub-095/func/sub-095_task-MGT_run-02_sbref.nii.gz',
- '/sub-095/func/sub-095_task-MGT_run-03_events.tsv',
- '/sub-095/func/sub-095_task-MGT_run-04_bold.nii.gz',
- '/sub-095/func/sub-095_task-MGT_run-04_sbref.nii.gz',
- '/sub-095/func/sub-095_task-MGT_run-04_events.tsv',
- '/sub-095/func/sub-095_task-MGT_run-03_sbref.nii.gz',
- '/sub-095/func/sub-095_task-MGT_run-01_events.tsv',
- '/sub-095/func/sub-095_task-MGT_run-02_events.tsv',
- '/sub-095/func/sub-095_task-MGT_run-03_bold.nii.gz',
- '/sub-095/func/sub-095_task-MGT_run-01_sbref.nii.gz',
- '/sub-095/func/sub-095_task-MGT_run-02_bold.nii.gz',
- '/sub-095/func/sub-095_task-MGT_run-01_bold.nii.gz',
- '/sub-098/fmap/sub-098_magnitude2.nii.gz',
- '/sub-098/fmap/sub-098_phasediff.nii.gz',
- '/sub-098/fmap/sub-098_phasediff.json',
- '/sub-098/fmap/sub-098_magnitude1.nii.gz',
- '/sub-098/anat/sub-098_T1w.nii.gz',
- '/sub-098/func/sub-098_task-MGT_run-04_events.tsv',
- '/sub-098/func/sub-098_task-MGT_run-02_bold.nii.gz',
- '/sub-098/func/sub-098_task-MGT_run-04_sbref.nii.gz',
- '/sub-098/func/sub-098_task-MGT_run-03_events.tsv',
- '/sub-098/func/sub-098_task-MGT_run-01_sbref.nii.gz',
- '/sub-098/func/sub-098_task-MGT_run-02_sbref.nii.gz',
- '/sub-098/func/sub-098_task-MGT_run-02_events.tsv',
- '/sub-098/func/sub-098_task-MGT_run-03_bold.nii.gz',
- '/sub-098/func/sub-098_task-MGT_run-01_events.tsv',
- '/sub-098/func/sub-098_task-MGT_run-04_bold.nii.gz',
- '/sub-098/func/sub-098_task-MGT_run-03_sbref.nii.gz',
- '/sub-098/func/sub-098_task-MGT_run-01_bold.nii.gz',
- '/sub-096/fmap/sub-096_phasediff.nii.gz',
- '/sub-096/fmap/sub-096_magnitude1.nii.gz',
- '/sub-096/fmap/sub-096_magnitude2.nii.gz',
- '/sub-096/fmap/sub-096_phasediff.json',
- '/sub-096/anat/sub-096_T1w.nii.gz',
- '/sub-096/func/sub-096_task-MGT_run-03_sbref.nii.gz',
- '/sub-096/func/sub-096_task-MGT_run-04_events.tsv',
- '/sub-096/func/sub-096_task-MGT_run-02_bold.nii.gz',
- '/sub-096/func/sub-096_task-MGT_run-04_sbref.nii.gz',
- '/sub-096/func/sub-096_task-MGT_run-03_events.tsv',
- '/sub-096/func/sub-096_task-MGT_run-04_bold.nii.gz',
- '/sub-096/func/sub-096_task-MGT_run-03_bold.nii.gz',
- '/sub-096/func/sub-096_task-MGT_run-01_events.tsv',
- '/sub-096/func/sub-096_task-MGT_run-02_events.tsv',
- '/sub-096/func/sub-096_task-MGT_run-01_bold.nii.gz',
- '/sub-096/func/sub-096_task-MGT_run-02_sbref.nii.gz',
- '/sub-096/func/sub-096_task-MGT_run-01_sbref.nii.gz',
- '/sub-075/fmap/sub-075_magnitude1.nii.gz',
- '/sub-075/fmap/sub-075_phasediff.json',
- '/sub-075/fmap/sub-075_phasediff.nii.gz',
- '/sub-075/fmap/sub-075_magnitude2.nii.gz',
- '/sub-075/anat/sub-075_T1w.nii.gz',
- '/sub-075/func/sub-075_task-MGT_run-02_bold.nii.gz',
- '/sub-075/func/sub-075_task-MGT_run-04_events.tsv',
- '/sub-075/func/sub-075_task-MGT_run-04_sbref.nii.gz',
- '/sub-075/func/sub-075_task-MGT_run-03_events.tsv',
- '/sub-075/func/sub-075_task-MGT_run-01_events.tsv',
- '/sub-075/func/sub-075_task-MGT_run-03_bold.nii.gz',
- '/sub-075/func/sub-075_task-MGT_run-02_events.tsv',
- '/sub-075/func/sub-075_task-MGT_run-01_sbref.nii.gz',
- '/sub-075/func/sub-075_task-MGT_run-03_sbref.nii.gz',
- '/sub-075/func/sub-075_task-MGT_run-02_sbref.nii.gz',
- '/sub-075/func/sub-075_task-MGT_run-04_bold.nii.gz',
- '/sub-075/func/sub-075_task-MGT_run-01_bold.nii.gz',
- '/sub-033/fmap/sub-033_magnitude1.nii.gz',
- '/sub-033/fmap/sub-033_phasediff.json',
- '/sub-033/fmap/sub-033_magnitude2.nii.gz',
- '/sub-033/fmap/sub-033_phasediff.nii.gz',
- '/sub-033/anat/sub-033_T1w.nii.gz',
- '/sub-033/func/sub-033_task-MGT_run-01_sbref.nii.gz',
- '/sub-033/func/sub-033_task-MGT_run-03_bold.nii.gz',
- '/sub-033/func/sub-033_task-MGT_run-02_events.tsv',
- '/sub-033/func/sub-033_task-MGT_run-04_bold.nii.gz',
- '/sub-033/func/sub-033_task-MGT_run-04_sbref.nii.gz',
- '/sub-033/func/sub-033_task-MGT_run-01_events.tsv',
- '/sub-033/func/sub-033_task-MGT_run-03_sbref.nii.gz',
- '/sub-033/func/sub-033_task-MGT_run-02_bold.nii.gz',
- '/sub-033/func/sub-033_task-MGT_run-03_events.tsv',
- '/sub-033/func/sub-033_task-MGT_run-02_sbref.nii.gz',
- '/sub-033/func/sub-033_task-MGT_run-01_bold.nii.gz',
- '/sub-033/func/sub-033_task-MGT_run-04_events.tsv',
- '/sub-083/fmap/sub-083_phasediff.json',
- '/sub-083/fmap/sub-083_magnitude1.nii.gz',
- '/sub-083/fmap/sub-083_phasediff.nii.gz',
- '/sub-083/fmap/sub-083_magnitude2.nii.gz',
- '/sub-083/anat/sub-083_T1w.nii.gz',
- '/sub-083/func/sub-083_task-MGT_run-04_sbref.nii.gz',
- '/sub-083/func/sub-083_task-MGT_run-01_events.tsv',
- '/sub-083/func/sub-083_task-MGT_run-03_bold.nii.gz',
- '/sub-083/func/sub-083_task-MGT_run-04_events.tsv',
- '/sub-083/func/sub-083_task-MGT_run-02_bold.nii.gz',
- '/sub-083/func/sub-083_task-MGT_run-01_sbref.nii.gz',
- '/sub-083/func/sub-083_task-MGT_run-04_bold.nii.gz',
- '/sub-083/func/sub-083_task-MGT_run-03_sbref.nii.gz',
- '/sub-083/func/sub-083_task-MGT_run-01_bold.nii.gz',
- '/sub-083/func/sub-083_task-MGT_run-02_events.tsv',
- '/sub-083/func/sub-083_task-MGT_run-03_events.tsv',
- '/sub-083/func/sub-083_task-MGT_run-02_sbref.nii.gz',
- '/sub-019/fmap/sub-019_phasediff.nii.gz',
- '/sub-019/fmap/sub-019_phasediff.json',
- '/sub-019/fmap/sub-019_magnitude2.nii.gz',
- '/sub-019/fmap/sub-019_magnitude1.nii.gz',
- '/sub-019/anat/sub-019_T1w.nii.gz',
- '/sub-019/func/sub-019_task-MGT_run-02_bold.nii.gz',
- '/sub-019/func/sub-019_task-MGT_run-03_events.tsv',
- '/sub-019/func/sub-019_task-MGT_run-03_bold.nii.gz',
- '/sub-019/func/sub-019_task-MGT_run-01_bold.nii.gz',
- '/sub-019/func/sub-019_task-MGT_run-03_sbref.nii.gz',
- '/sub-019/func/sub-019_task-MGT_run-02_sbref.nii.gz',
- '/sub-019/func/sub-019_task-MGT_run-02_events.tsv',
- '/sub-019/func/sub-019_task-MGT_run-01_sbref.nii.gz',
- '/sub-019/func/sub-019_task-MGT_run-01_events.tsv',
- '/sub-019/func/sub-019_task-MGT_run-04_events.tsv',
- '/sub-019/func/sub-019_task-MGT_run-04_sbref.nii.gz',
- '/sub-019/func/sub-019_task-MGT_run-04_bold.nii.gz',
- '/sub-124/fmap/sub-124_magnitude2.nii.gz',
- '/sub-124/fmap/sub-124_phasediff.nii.gz',
- '/sub-124/fmap/sub-124_magnitude1.nii.gz',
- '/sub-124/fmap/sub-124_phasediff.json',
- '/sub-124/anat/sub-124_T1w.nii.gz',
- '/sub-124/func/sub-124_task-MGT_run-03_bold.nii.gz',
- '/sub-124/func/sub-124_task-MGT_run-04_bold.nii.gz',
- '/sub-124/func/sub-124_task-MGT_run-03_events.tsv',
- '/sub-124/func/sub-124_task-MGT_run-02_sbref.nii.gz',
- '/sub-124/func/sub-124_task-MGT_run-02_events.tsv',
- '/sub-124/func/sub-124_task-MGT_run-01_events.tsv',
- '/sub-124/func/sub-124_task-MGT_run-01_bold.nii.gz',
- '/sub-124/func/sub-124_task-MGT_run-04_events.tsv',
- '/sub-124/func/sub-124_task-MGT_run-02_bold.nii.gz',
- '/sub-124/func/sub-124_task-MGT_run-03_sbref.nii.gz',
- '/sub-124/func/sub-124_task-MGT_run-04_sbref.nii.gz',
- '/sub-124/func/sub-124_task-MGT_run-01_sbref.nii.gz',
- '/sub-055/fmap/sub-055_magnitude2.nii.gz',
- '/sub-055/fmap/sub-055_magnitude1.nii.gz',
- '/sub-055/fmap/sub-055_phasediff.json',
- '/sub-055/fmap/sub-055_phasediff.nii.gz',
- '/sub-055/anat/sub-055_T1w.nii.gz',
- '/sub-055/func/sub-055_task-MGT_run-01_sbref.nii.gz',
- '/sub-055/func/sub-055_task-MGT_run-03_bold.nii.gz',
- '/sub-055/func/sub-055_task-MGT_run-01_bold.nii.gz',
- '/sub-055/func/sub-055_task-MGT_run-04_bold.nii.gz',
- '/sub-055/func/sub-055_task-MGT_run-02_events.tsv',
- '/sub-055/func/sub-055_task-MGT_run-02_sbref.nii.gz',
- '/sub-055/func/sub-055_task-MGT_run-02_bold.nii.gz',
- '/sub-055/func/sub-055_task-MGT_run-04_sbref.nii.gz',
- '/sub-055/func/sub-055_task-MGT_run-03_sbref.nii.gz',
- '/sub-055/func/sub-055_task-MGT_run-01_events.tsv',
- '/sub-055/func/sub-055_task-MGT_run-04_events.tsv',
- '/sub-055/func/sub-055_task-MGT_run-03_events.tsv',
- '/sub-057/fmap/sub-057_phasediff.json',
- '/sub-057/fmap/sub-057_magnitude2.nii.gz',
- '/sub-057/fmap/sub-057_magnitude1.nii.gz',
- '/sub-057/fmap/sub-057_phasediff.nii.gz',
- '/sub-057/anat/sub-057_T1w.nii.gz',
- '/sub-057/func/sub-057_task-MGT_run-03_sbref.nii.gz',
- '/sub-057/func/sub-057_task-MGT_run-02_events.tsv',
- '/sub-057/func/sub-057_task-MGT_run-04_sbref.nii.gz',
- '/sub-057/func/sub-057_task-MGT_run-03_bold.nii.gz',
- '/sub-057/func/sub-057_task-MGT_run-02_bold.nii.gz',
- '/sub-057/func/sub-057_task-MGT_run-04_bold.nii.gz',
- '/sub-057/func/sub-057_task-MGT_run-04_events.tsv',
- '/sub-057/func/sub-057_task-MGT_run-01_events.tsv',
- '/sub-057/func/sub-057_task-MGT_run-02_sbref.nii.gz',
- '/sub-057/func/sub-057_task-MGT_run-01_sbref.nii.gz',
- '/sub-057/func/sub-057_task-MGT_run-01_bold.nii.gz',
- '/sub-057/func/sub-057_task-MGT_run-03_events.tsv',
- '/sub-071/fmap/sub-071_magnitude2.nii.gz',
- '/sub-071/fmap/sub-071_phasediff.json',
- '/sub-071/fmap/sub-071_phasediff.nii.gz',
- '/sub-071/fmap/sub-071_magnitude1.nii.gz',
- '/sub-071/anat/sub-071_T1w.nii.gz',
- '/sub-071/func/sub-071_task-MGT_run-04_bold.nii.gz',
- '/sub-071/func/sub-071_task-MGT_run-03_sbref.nii.gz',
- '/sub-071/func/sub-071_task-MGT_run-04_sbref.nii.gz',
- '/sub-071/func/sub-071_task-MGT_run-01_events.tsv',
- '/sub-071/func/sub-071_task-MGT_run-02_bold.nii.gz',
- '/sub-071/func/sub-071_task-MGT_run-03_bold.nii.gz',
- '/sub-071/func/sub-071_task-MGT_run-04_events.tsv',
- '/sub-071/func/sub-071_task-MGT_run-02_sbref.nii.gz',
- '/sub-071/func/sub-071_task-MGT_run-02_events.tsv',
- '/sub-071/func/sub-071_task-MGT_run-01_sbref.nii.gz',
- '/sub-071/func/sub-071_task-MGT_run-03_events.tsv',
- '/sub-071/func/sub-071_task-MGT_run-01_bold.nii.gz',
- '/sub-051/fmap/sub-051_magnitude1.nii.gz',
- '/sub-051/fmap/sub-051_magnitude2.nii.gz',
- '/sub-051/fmap/sub-051_phasediff.nii.gz',
- '/sub-051/fmap/sub-051_phasediff.json',
- '/sub-051/anat/sub-051_T1w.nii.gz',
- '/sub-051/func/sub-051_task-MGT_run-04_events.tsv',
- '/sub-051/func/sub-051_task-MGT_run-04_bold.nii.gz',
- '/sub-051/func/sub-051_task-MGT_run-04_sbref.nii.gz',
- '/sub-051/func/sub-051_task-MGT_run-02_sbref.nii.gz',
- '/sub-051/func/sub-051_task-MGT_run-01_sbref.nii.gz',
- '/sub-051/func/sub-051_task-MGT_run-01_bold.nii.gz',
- '/sub-051/func/sub-051_task-MGT_run-01_events.tsv',
- '/sub-051/func/sub-051_task-MGT_run-03_bold.nii.gz',
- '/sub-051/func/sub-051_task-MGT_run-02_bold.nii.gz',
- '/sub-051/func/sub-051_task-MGT_run-03_events.tsv',
- '/sub-051/func/sub-051_task-MGT_run-03_sbref.nii.gz',
- '/sub-051/func/sub-051_task-MGT_run-02_events.tsv',
- '/sub-072/fmap/sub-072_phasediff.nii.gz',
- '/sub-072/fmap/sub-072_magnitude1.nii.gz',
- '/sub-072/fmap/sub-072_magnitude2.nii.gz',
- '/sub-072/fmap/sub-072_phasediff.json',
- '/sub-072/anat/sub-072_T1w.nii.gz',
- '/sub-072/func/sub-072_task-MGT_run-03_sbref.nii.gz',
- '/sub-072/func/sub-072_task-MGT_run-04_events.tsv',
- '/sub-072/func/sub-072_task-MGT_run-04_bold.nii.gz',
- '/sub-072/func/sub-072_task-MGT_run-01_sbref.nii.gz',
- '/sub-072/func/sub-072_task-MGT_run-04_sbref.nii.gz',
- '/sub-072/func/sub-072_task-MGT_run-02_events.tsv',
- '/sub-072/func/sub-072_task-MGT_run-03_bold.nii.gz',
- '/sub-072/func/sub-072_task-MGT_run-01_bold.nii.gz',
- '/sub-072/func/sub-072_task-MGT_run-03_events.tsv',
- '/sub-072/func/sub-072_task-MGT_run-01_events.tsv',
- '/sub-072/func/sub-072_task-MGT_run-02_sbref.nii.gz',
- '/sub-072/func/sub-072_task-MGT_run-02_bold.nii.gz',
- '/sub-004/fmap/sub-004_phasediff.nii.gz',
- '/sub-004/fmap/sub-004_magnitude1.nii.gz',
- '/sub-004/fmap/sub-004_phasediff.json',
- '/sub-004/fmap/sub-004_magnitude2.nii.gz',
- '/sub-004/anat/sub-004_T1w.nii.gz',
- '/sub-004/func/sub-004_task-MGT_run-02_sbref.nii.gz',
- '/sub-004/func/sub-004_task-MGT_run-04_sbref.nii.gz',
- '/sub-004/func/sub-004_task-MGT_run-03_bold.nii.gz',
- '/sub-004/func/sub-004_task-MGT_run-02_bold.nii.gz',
- '/sub-004/func/sub-004_task-MGT_run-04_events.tsv',
- '/sub-004/func/sub-004_task-MGT_run-01_events.tsv',
- '/sub-004/func/sub-004_task-MGT_run-03_sbref.nii.gz',
- '/sub-004/func/sub-004_task-MGT_run-04_bold.nii.gz',
- '/sub-004/func/sub-004_task-MGT_run-01_bold.nii.gz',
- '/sub-004/func/sub-004_task-MGT_run-03_events.tsv',
- '/sub-004/func/sub-004_task-MGT_run-02_events.tsv',
- '/sub-004/func/sub-004_task-MGT_run-01_sbref.nii.gz',
- '/sub-046/fmap/sub-046_magnitude2.nii.gz',
- '/sub-046/fmap/sub-046_phasediff.json',
- '/sub-046/fmap/sub-046_phasediff.nii.gz',
- '/sub-046/fmap/sub-046_magnitude1.nii.gz',
- '/sub-046/anat/sub-046_T1w.nii.gz',
- '/sub-046/func/sub-046_task-MGT_run-01_sbref.nii.gz',
- '/sub-046/func/sub-046_task-MGT_run-02_sbref.nii.gz',
- '/sub-046/func/sub-046_task-MGT_run-02_bold.nii.gz',
- '/sub-046/func/sub-046_task-MGT_run-02_events.tsv',
- '/sub-046/func/sub-046_task-MGT_run-03_events.tsv',
- '/sub-046/func/sub-046_task-MGT_run-04_bold.nii.gz',
- '/sub-046/func/sub-046_task-MGT_run-04_sbref.nii.gz',
- '/sub-046/func/sub-046_task-MGT_run-01_events.tsv',
- '/sub-046/func/sub-046_task-MGT_run-03_bold.nii.gz',
- '/sub-046/func/sub-046_task-MGT_run-04_events.tsv',
- '/sub-046/func/sub-046_task-MGT_run-01_bold.nii.gz',
- '/sub-046/func/sub-046_task-MGT_run-03_sbref.nii.gz',
- '/sub-104/fmap/sub-104_magnitude1.nii.gz',
- '/sub-104/fmap/sub-104_phasediff.json',
- '/sub-104/fmap/sub-104_phasediff.nii.gz',
- '/sub-104/fmap/sub-104_magnitude2.nii.gz',
- '/sub-104/anat/sub-104_T1w.nii.gz',
- '/sub-104/func/sub-104_task-MGT_run-04_bold.nii.gz',
- '/sub-104/func/sub-104_task-MGT_run-04_sbref.nii.gz',
- '/sub-104/func/sub-104_task-MGT_run-01_bold.nii.gz',
- '/sub-104/func/sub-104_task-MGT_run-02_events.tsv',
- '/sub-104/func/sub-104_task-MGT_run-02_sbref.nii.gz',
- '/sub-104/func/sub-104_task-MGT_run-04_events.tsv',
- '/sub-104/func/sub-104_task-MGT_run-01_sbref.nii.gz',
- '/sub-104/func/sub-104_task-MGT_run-03_events.tsv',
- '/sub-104/func/sub-104_task-MGT_run-03_sbref.nii.gz',
- '/sub-104/func/sub-104_task-MGT_run-02_bold.nii.gz',
- '/sub-104/func/sub-104_task-MGT_run-03_bold.nii.gz',
- '/sub-104/func/sub-104_task-MGT_run-01_events.tsv',
- '/sub-024/fmap/sub-024_magnitude2.nii.gz',
- '/sub-024/fmap/sub-024_phasediff.nii.gz',
- '/sub-024/fmap/sub-024_magnitude1.nii.gz',
- '/sub-024/fmap/sub-024_phasediff.json',
- '/sub-024/anat/sub-024_T1w.nii.gz',
- '/sub-024/func/sub-024_task-MGT_run-02_bold.nii.gz',
- '/sub-024/func/sub-024_task-MGT_run-04_events.tsv',
- '/sub-024/func/sub-024_task-MGT_run-04_sbref.nii.gz',
- '/sub-024/func/sub-024_task-MGT_run-02_sbref.nii.gz',
- '/sub-024/func/sub-024_task-MGT_run-03_bold.nii.gz',
- '/sub-024/func/sub-024_task-MGT_run-03_events.tsv',
- '/sub-024/func/sub-024_task-MGT_run-04_bold.nii.gz',
- '/sub-024/func/sub-024_task-MGT_run-01_sbref.nii.gz',
- '/sub-024/func/sub-024_task-MGT_run-01_bold.nii.gz',
- '/sub-024/func/sub-024_task-MGT_run-02_events.tsv',
- '/sub-024/func/sub-024_task-MGT_run-03_sbref.nii.gz',
- '/sub-024/func/sub-024_task-MGT_run-01_events.tsv',
- '/sub-029/fmap/sub-029_phasediff.json',
- '/sub-029/fmap/sub-029_magnitude2.nii.gz',
- '/sub-029/fmap/sub-029_phasediff.nii.gz',
- '/sub-029/fmap/sub-029_magnitude1.nii.gz',
- '/sub-029/anat/sub-029_T1w.nii.gz',
- '/sub-029/func/sub-029_task-MGT_run-03_bold.nii.gz',
- '/sub-029/func/sub-029_task-MGT_run-04_sbref.nii.gz',
- '/sub-029/func/sub-029_task-MGT_run-02_bold.nii.gz',
- '/sub-029/func/sub-029_task-MGT_run-03_sbref.nii.gz',
- '/sub-029/func/sub-029_task-MGT_run-04_events.tsv',
- '/sub-029/func/sub-029_task-MGT_run-04_bold.nii.gz',
- '/sub-029/func/sub-029_task-MGT_run-01_bold.nii.gz',
- '/sub-029/func/sub-029_task-MGT_run-01_events.tsv',
- '/sub-029/func/sub-029_task-MGT_run-02_sbref.nii.gz',
- '/sub-029/func/sub-029_task-MGT_run-01_sbref.nii.gz',
- '/sub-029/func/sub-029_task-MGT_run-02_events.tsv',
- '/sub-029/func/sub-029_task-MGT_run-03_events.tsv',
- '/sub-100/fmap/sub-100_magnitude2.nii.gz',
- '/sub-100/fmap/sub-100_phasediff.nii.gz',
- '/sub-100/fmap/sub-100_magnitude1.nii.gz',
- '/sub-100/fmap/sub-100_phasediff.json',
- '/sub-100/anat/sub-100_T1w.nii.gz',
- '/sub-100/func/sub-100_task-MGT_run-02_bold.nii.gz',
- '/sub-100/func/sub-100_task-MGT_run-03_sbref.nii.gz',
- '/sub-100/func/sub-100_task-MGT_run-04_sbref.nii.gz',
- '/sub-100/func/sub-100_task-MGT_run-02_events.tsv',
- '/sub-100/func/sub-100_task-MGT_run-01_bold.nii.gz',
- '/sub-100/func/sub-100_task-MGT_run-03_bold.nii.gz',
- '/sub-100/func/sub-100_task-MGT_run-02_sbref.nii.gz',
- '/sub-100/func/sub-100_task-MGT_run-04_bold.nii.gz',
- '/sub-100/func/sub-100_task-MGT_run-01_sbref.nii.gz',
- '/sub-100/func/sub-100_task-MGT_run-04_events.tsv',
- '/sub-100/func/sub-100_task-MGT_run-03_events.tsv',
- '/sub-100/func/sub-100_task-MGT_run-01_events.tsv',
- '/sub-017/fmap/sub-017_magnitude2.nii.gz',
- '/sub-017/fmap/sub-017_magnitude1.nii.gz',
- '/sub-017/fmap/sub-017_phasediff.json',
- '/sub-017/fmap/sub-017_phasediff.nii.gz',
- '/sub-017/anat/sub-017_T1w.nii.gz',
- '/sub-017/func/sub-017_task-MGT_run-04_events.tsv',
- '/sub-017/func/sub-017_task-MGT_run-04_bold.nii.gz',
- '/sub-017/func/sub-017_task-MGT_run-03_bold.nii.gz',
- '/sub-017/func/sub-017_task-MGT_run-02_bold.nii.gz',
- '/sub-017/func/sub-017_task-MGT_run-02_sbref.nii.gz',
- '/sub-017/func/sub-017_task-MGT_run-02_events.tsv',
- '/sub-017/func/sub-017_task-MGT_run-01_events.tsv',
- '/sub-017/func/sub-017_task-MGT_run-03_events.tsv',
- '/sub-017/func/sub-017_task-MGT_run-01_sbref.nii.gz',
- '/sub-017/func/sub-017_task-MGT_run-03_sbref.nii.gz',
- '/sub-017/func/sub-017_task-MGT_run-04_sbref.nii.gz',
- '/sub-017/func/sub-017_task-MGT_run-01_bold.nii.gz',
- '/sub-108/fmap/sub-108_phasediff.nii.gz',
- '/sub-108/fmap/sub-108_magnitude1.nii.gz',
- '/sub-108/fmap/sub-108_phasediff.json',
- '/sub-108/fmap/sub-108_magnitude2.nii.gz',
- '/sub-108/anat/sub-108_T1w.nii.gz',
- '/sub-108/func/sub-108_task-MGT_run-03_bold.nii.gz',
- '/sub-108/func/sub-108_task-MGT_run-03_events.tsv',
- '/sub-108/func/sub-108_task-MGT_run-04_events.tsv',
- '/sub-108/func/sub-108_task-MGT_run-03_sbref.nii.gz',
- '/sub-108/func/sub-108_task-MGT_run-02_events.tsv',
- '/sub-108/func/sub-108_task-MGT_run-04_sbref.nii.gz',
- '/sub-108/func/sub-108_task-MGT_run-01_events.tsv',
- '/sub-108/func/sub-108_task-MGT_run-04_bold.nii.gz',
- '/sub-108/func/sub-108_task-MGT_run-01_bold.nii.gz',
- '/sub-108/func/sub-108_task-MGT_run-02_sbref.nii.gz',
- '/sub-108/func/sub-108_task-MGT_run-01_sbref.nii.gz',
- '/sub-108/func/sub-108_task-MGT_run-02_bold.nii.gz',
- '/sub-120/fmap/sub-120_magnitude1.nii.gz',
- '/sub-120/fmap/sub-120_phasediff.json',
- '/sub-120/fmap/sub-120_magnitude2.nii.gz',
- '/sub-120/fmap/sub-120_phasediff.nii.gz',
- '/sub-120/anat/sub-120_T1w.nii.gz',
- '/sub-120/func/sub-120_task-MGT_run-01_sbref.nii.gz',
- '/sub-120/func/sub-120_task-MGT_run-01_bold.nii.gz',
- '/sub-120/func/sub-120_task-MGT_run-04_bold.nii.gz',
- '/sub-120/func/sub-120_task-MGT_run-02_sbref.nii.gz',
- '/sub-120/func/sub-120_task-MGT_run-03_bold.nii.gz',
- '/sub-120/func/sub-120_task-MGT_run-01_events.tsv',
- '/sub-120/func/sub-120_task-MGT_run-02_bold.nii.gz',
- '/sub-120/func/sub-120_task-MGT_run-04_events.tsv',
- '/sub-120/func/sub-120_task-MGT_run-04_sbref.nii.gz',
- '/sub-120/func/sub-120_task-MGT_run-02_events.tsv',
- '/sub-120/func/sub-120_task-MGT_run-03_sbref.nii.gz',
- '/sub-120/func/sub-120_task-MGT_run-03_events.tsv',
- '/sub-045/fmap/sub-045_phasediff.nii.gz',
- '/sub-045/fmap/sub-045_phasediff.json',
- '/sub-045/fmap/sub-045_magnitude1.nii.gz',
- '/sub-045/fmap/sub-045_magnitude2.nii.gz',
- '/sub-045/anat/sub-045_T1w.nii.gz',
- '/sub-045/func/sub-045_task-MGT_run-03_sbref.nii.gz',
- '/sub-045/func/sub-045_task-MGT_run-04_events.tsv',
- '/sub-045/func/sub-045_task-MGT_run-04_sbref.nii.gz',
- '/sub-045/func/sub-045_task-MGT_run-02_events.tsv',
- '/sub-045/func/sub-045_task-MGT_run-04_bold.nii.gz',
- '/sub-045/func/sub-045_task-MGT_run-02_sbref.nii.gz',
- '/sub-045/func/sub-045_task-MGT_run-03_bold.nii.gz',
- '/sub-045/func/sub-045_task-MGT_run-01_bold.nii.gz',
- '/sub-045/func/sub-045_task-MGT_run-01_events.tsv',
- '/sub-045/func/sub-045_task-MGT_run-02_bold.nii.gz',
- '/sub-045/func/sub-045_task-MGT_run-01_sbref.nii.gz',
- '/sub-045/func/sub-045_task-MGT_run-03_events.tsv',
- '/sub-060/fmap/sub-060_phasediff.json',
- '/sub-060/fmap/sub-060_magnitude2.nii.gz',
- '/sub-060/fmap/sub-060_magnitude1.nii.gz',
- '/sub-060/fmap/sub-060_phasediff.nii.gz',
- '/sub-060/anat/sub-060_T1w.nii.gz',
- '/sub-060/func/sub-060_task-MGT_run-03_events.tsv',
- '/sub-060/func/sub-060_task-MGT_run-04_events.tsv',
- '/sub-060/func/sub-060_task-MGT_run-01_bold.nii.gz',
- '/sub-060/func/sub-060_task-MGT_run-04_sbref.nii.gz',
- '/sub-060/func/sub-060_task-MGT_run-02_bold.nii.gz',
- '/sub-060/func/sub-060_task-MGT_run-01_sbref.nii.gz',
- '/sub-060/func/sub-060_task-MGT_run-02_events.tsv',
- '/sub-060/func/sub-060_task-MGT_run-03_bold.nii.gz',
- '/sub-060/func/sub-060_task-MGT_run-03_sbref.nii.gz',
- '/sub-060/func/sub-060_task-MGT_run-02_sbref.nii.gz',
- '/sub-060/func/sub-060_task-MGT_run-04_bold.nii.gz',
- '/sub-060/func/sub-060_task-MGT_run-01_events.tsv',
- '/sub-050/fmap/sub-050_phasediff.nii.gz',
- '/sub-050/fmap/sub-050_phasediff.json',
- '/sub-050/fmap/sub-050_magnitude1.nii.gz',
- '/sub-050/fmap/sub-050_magnitude2.nii.gz',
- '/sub-050/anat/sub-050_T1w.nii.gz',
- '/sub-050/func/sub-050_task-MGT_run-03_sbref.nii.gz',
- '/sub-050/func/sub-050_task-MGT_run-02_events.tsv',
- '/sub-050/func/sub-050_task-MGT_run-01_bold.nii.gz',
- '/sub-050/func/sub-050_task-MGT_run-04_sbref.nii.gz',
- '/sub-050/func/sub-050_task-MGT_run-04_bold.nii.gz',
- '/sub-050/func/sub-050_task-MGT_run-03_events.tsv',
- '/sub-050/func/sub-050_task-MGT_run-01_sbref.nii.gz',
- '/sub-050/func/sub-050_task-MGT_run-01_events.tsv',
- '/sub-050/func/sub-050_task-MGT_run-02_sbref.nii.gz',
- '/sub-050/func/sub-050_task-MGT_run-02_bold.nii.gz',
- '/sub-050/func/sub-050_task-MGT_run-04_events.tsv',
- '/sub-050/func/sub-050_task-MGT_run-03_bold.nii.gz',
- '/sub-107/fmap/sub-107_magnitude2.nii.gz',
- '/sub-107/fmap/sub-107_magnitude1.nii.gz',
- '/sub-107/fmap/sub-107_phasediff.json',
- '/sub-107/fmap/sub-107_phasediff.nii.gz',
- '/sub-107/anat/sub-107_T1w.nii.gz',
- '/sub-107/func/sub-107_task-MGT_run-03_events.tsv',
- '/sub-107/func/sub-107_task-MGT_run-04_sbref.nii.gz',
- '/sub-107/func/sub-107_task-MGT_run-04_events.tsv',
- '/sub-107/func/sub-107_task-MGT_run-01_bold.nii.gz',
- '/sub-107/func/sub-107_task-MGT_run-04_bold.nii.gz',
- '/sub-107/func/sub-107_task-MGT_run-02_bold.nii.gz',
- '/sub-107/func/sub-107_task-MGT_run-01_sbref.nii.gz',
- '/sub-107/func/sub-107_task-MGT_run-03_sbref.nii.gz',
- '/sub-107/func/sub-107_task-MGT_run-02_sbref.nii.gz',
- '/sub-107/func/sub-107_task-MGT_run-01_events.tsv',
- '/sub-107/func/sub-107_task-MGT_run-03_bold.nii.gz',
- '/sub-107/func/sub-107_task-MGT_run-02_events.tsv',
-]
-
-// EEG
-export const ds002718 = [
- '/sub-005/eeg/sub-005_task-FaceRecognition_events.json',
- '/sub-005/eeg/sub-005_task-FaceRecognition_channels.tsv',
- '/sub-005/eeg/sub-005_task-FaceRecognition_electrodes.tsv',
- '/sub-005/eeg/sub-005_task-FaceRecognition_eeg.set',
- '/sub-005/eeg/sub-005_task-FaceRecognition_events.tsv',
- '/sub-005/eeg/sub-005_task-FaceRecognition_coordsystem.json',
- '/sub-005/eeg/sub-005_task-FaceRecognition_eeg.json',
- '/sub-005/anat/sub-005_mod-T1w_defacemask.nii.gz',
- '/CHANGES',
- '/sub-008/eeg/sub-008_task-FaceRecognition_electrodes.tsv',
- '/sub-008/eeg/sub-008_task-FaceRecognition_eeg.set',
- '/sub-008/eeg/sub-008_task-FaceRecognition_coordsystem.json',
- '/sub-008/eeg/sub-008_task-FaceRecognition_eeg.json',
- '/sub-008/eeg/sub-008_task-FaceRecognition_events.json',
- '/sub-008/eeg/sub-008_task-FaceRecognition_channels.tsv',
- '/sub-008/eeg/sub-008_task-FaceRecognition_events.tsv',
- '/sub-008/anat/sub-008_mod-T1w_defacemask.nii.gz',
- '/participants.json',
- '/participants.tsv',
- '/sub-015/eeg/sub-015_task-FaceRecognition_events.json',
- '/sub-015/eeg/sub-015_task-FaceRecognition_electrodes.tsv',
- '/sub-015/eeg/sub-015_task-FaceRecognition_coordsystem.json',
- '/sub-015/eeg/sub-015_task-FaceRecognition_eeg.set',
- '/sub-015/eeg/sub-015_task-FaceRecognition_channels.tsv',
- '/sub-015/eeg/sub-015_task-FaceRecognition_eeg.json',
- '/sub-015/eeg/sub-015_task-FaceRecognition_events.tsv',
- '/sub-015/anat/sub-015_mod-T1w_defacemask.nii.gz',
- '/sub-007/eeg/sub-007_task-FaceRecognition_eeg.json',
- '/sub-007/eeg/sub-007_task-FaceRecognition_coordsystem.json',
- '/sub-007/eeg/sub-007_task-FaceRecognition_channels.tsv',
- '/sub-007/eeg/sub-007_task-FaceRecognition_electrodes.tsv',
- '/sub-007/eeg/sub-007_task-FaceRecognition_eeg.set',
- '/sub-007/eeg/sub-007_task-FaceRecognition_events.json',
- '/sub-007/eeg/sub-007_task-FaceRecognition_events.tsv',
- '/sub-007/anat/sub-007_mod-T1w_defacemask.nii.gz',
- '/sub-016/eeg/sub-016_task-FaceRecognition_coordsystem.json',
- '/sub-016/eeg/sub-016_task-FaceRecognition_channels.tsv',
- '/sub-016/eeg/sub-016_task-FaceRecognition_eeg.json',
- '/sub-016/eeg/sub-016_task-FaceRecognition_events.json',
- '/sub-016/eeg/sub-016_task-FaceRecognition_events.tsv',
- '/sub-016/eeg/sub-016_task-FaceRecognition_electrodes.tsv',
- '/sub-016/eeg/sub-016_task-FaceRecognition_eeg.set',
- '/sub-016/anat/sub-016_mod-T1w_defacemask.nii.gz',
- '/sub-012/eeg/sub-012_task-FaceRecognition_events.json',
- '/sub-012/eeg/sub-012_task-FaceRecognition_eeg.set',
- '/sub-012/eeg/sub-012_task-FaceRecognition_eeg.json',
- '/sub-012/eeg/sub-012_task-FaceRecognition_events.tsv',
- '/sub-012/eeg/sub-012_task-FaceRecognition_coordsystem.json',
- '/sub-012/eeg/sub-012_task-FaceRecognition_electrodes.tsv',
- '/sub-012/eeg/sub-012_task-FaceRecognition_channels.tsv',
- '/sub-012/anat/sub-012_mod-T1w_defacemask.nii.gz',
- '/sub-010/eeg/sub-010_task-FaceRecognition_eeg.set',
- '/sub-010/eeg/sub-010_task-FaceRecognition_eeg.json',
- '/sub-010/eeg/sub-010_task-FaceRecognition_events.json',
- '/sub-010/eeg/sub-010_task-FaceRecognition_coordsystem.json',
- '/sub-010/eeg/sub-010_task-FaceRecognition_events.tsv',
- '/sub-010/eeg/sub-010_task-FaceRecognition_electrodes.tsv',
- '/sub-010/eeg/sub-010_task-FaceRecognition_channels.tsv',
- '/sub-010/anat/sub-010_mod-T1w_defacemask.nii.gz',
- '/sub-014/eeg/sub-014_task-FaceRecognition_events.json',
- '/sub-014/eeg/sub-014_task-FaceRecognition_eeg.set',
- '/sub-014/eeg/sub-014_task-FaceRecognition_coordsystem.json',
- '/sub-014/eeg/sub-014_task-FaceRecognition_events.tsv',
- '/sub-014/eeg/sub-014_task-FaceRecognition_electrodes.tsv',
- '/sub-014/eeg/sub-014_task-FaceRecognition_eeg.json',
- '/sub-014/eeg/sub-014_task-FaceRecognition_channels.tsv',
- '/sub-014/anat/sub-014_mod-T1w_defacemask.nii.gz',
- '/sub-006/eeg/sub-006_task-FaceRecognition_eeg.json',
- '/sub-006/eeg/sub-006_task-FaceRecognition_coordsystem.json',
- '/sub-006/eeg/sub-006_task-FaceRecognition_electrodes.tsv',
- '/sub-006/eeg/sub-006_task-FaceRecognition_eeg.set',
- '/sub-006/eeg/sub-006_task-FaceRecognition_channels.tsv',
- '/sub-006/eeg/sub-006_task-FaceRecognition_events.tsv',
- '/sub-006/eeg/sub-006_task-FaceRecognition_events.json',
- '/sub-006/anat/sub-006_mod-T1w_defacemask.nii.gz',
- '/sub-009/eeg/sub-009_task-FaceRecognition_channels.tsv',
- '/sub-009/eeg/sub-009_task-FaceRecognition_coordsystem.json',
- '/sub-009/eeg/sub-009_task-FaceRecognition_eeg.json',
- '/sub-009/eeg/sub-009_task-FaceRecognition_events.json',
- '/sub-009/eeg/sub-009_task-FaceRecognition_events.tsv',
- '/sub-009/eeg/sub-009_task-FaceRecognition_eeg.set',
- '/sub-009/eeg/sub-009_task-FaceRecognition_electrodes.tsv',
- '/sub-009/anat/sub-009_mod-T1w_defacemask.nii.gz',
- '/dataset_description.json',
- '/sub-002/eeg/sub-002_task-FaceRecognition_coordsystem.json',
- '/sub-002/eeg/sub-002_task-FaceRecognition_events.json',
- '/sub-002/eeg/sub-002_task-FaceRecognition_electrodes.tsv',
- '/sub-002/eeg/sub-002_task-FaceRecognition_eeg.json',
- '/sub-002/eeg/sub-002_task-FaceRecognition_eeg.set',
- '/sub-002/eeg/sub-002_task-FaceRecognition_events.tsv',
- '/sub-002/eeg/sub-002_task-FaceRecognition_channels.tsv',
- '/sub-002/anat/sub-002_mod-T1w_defacemask.nii.gz',
- '/README',
- '/sub-003/eeg/sub-003_task-FaceRecognition_eeg.set',
- '/sub-003/eeg/sub-003_task-FaceRecognition_events.tsv',
- '/sub-003/eeg/sub-003_task-FaceRecognition_electrodes.tsv',
- '/sub-003/eeg/sub-003_task-FaceRecognition_channels.tsv',
- '/sub-003/eeg/sub-003_task-FaceRecognition_eeg.json',
- '/sub-003/eeg/sub-003_task-FaceRecognition_events.json',
- '/sub-003/eeg/sub-003_task-FaceRecognition_coordsystem.json',
- '/sub-003/anat/sub-003_mod-T1w_defacemask.nii.gz',
- '/sub-011/eeg/sub-011_task-FaceRecognition_electrodes.tsv',
- '/sub-011/eeg/sub-011_task-FaceRecognition_eeg.set',
- '/sub-011/eeg/sub-011_task-FaceRecognition_events.json',
- '/sub-011/eeg/sub-011_task-FaceRecognition_eeg.json',
- '/sub-011/eeg/sub-011_task-FaceRecognition_channels.tsv',
- '/sub-011/eeg/sub-011_task-FaceRecognition_events.tsv',
- '/sub-011/eeg/sub-011_task-FaceRecognition_coordsystem.json',
- '/sub-011/anat/sub-011_mod-T1w_defacemask.nii.gz',
- '/sub-019/eeg/sub-019_task-FaceRecognition_channels.tsv',
- '/sub-019/eeg/sub-019_task-FaceRecognition_eeg.json',
- '/sub-019/eeg/sub-019_task-FaceRecognition_eeg.set',
- '/sub-019/eeg/sub-019_task-FaceRecognition_events.json',
- '/sub-019/eeg/sub-019_task-FaceRecognition_coordsystem.json',
- '/sub-019/eeg/sub-019_task-FaceRecognition_events.tsv',
- '/sub-019/eeg/sub-019_task-FaceRecognition_electrodes.tsv',
- '/sub-019/anat/sub-019_mod-T1w_defacemask.nii.gz',
- '/sub-004/eeg/sub-004_task-FaceRecognition_events.json',
- '/sub-004/eeg/sub-004_task-FaceRecognition_coordsystem.json',
- '/sub-004/eeg/sub-004_task-FaceRecognition_events.tsv',
- '/sub-004/eeg/sub-004_task-FaceRecognition_electrodes.tsv',
- '/sub-004/eeg/sub-004_task-FaceRecognition_eeg.set',
- '/sub-004/eeg/sub-004_task-FaceRecognition_eeg.json',
- '/sub-004/eeg/sub-004_task-FaceRecognition_channels.tsv',
- '/sub-004/anat/sub-004_mod-T1w_defacemask.nii.gz',
- '/sub-017/eeg/sub-017_task-FaceRecognition_channels.tsv',
- '/sub-017/eeg/sub-017_task-FaceRecognition_eeg.json',
- '/sub-017/eeg/sub-017_task-FaceRecognition_events.tsv',
- '/sub-017/eeg/sub-017_task-FaceRecognition_coordsystem.json',
- '/sub-017/eeg/sub-017_task-FaceRecognition_electrodes.tsv',
- '/sub-017/eeg/sub-017_task-FaceRecognition_events.json',
- '/sub-017/eeg/sub-017_task-FaceRecognition_eeg.set',
- '/sub-017/anat/sub-017_mod-T1w_defacemask.nii.gz',
-]
-
-// iEEG
-export const ds003400 = [
- '/sub-RESP0059/sub-RESP0059_scans.json',
- '/sub-RESP0059/ses-SITUATION3A/ieeg/sub-RESP0059_ses-SITUATION3A_task-acute_channels.tsv',
- '/sub-RESP0059/ses-SITUATION3A/ieeg/sub-RESP0059_ses-SITUATION3A_task-acute_ieeg.vmrk',
- '/sub-RESP0059/ses-SITUATION3A/ieeg/sub-RESP0059_ses-SITUATION3A_task-acute_ieeg.eeg',
- '/sub-RESP0059/ses-SITUATION3A/ieeg/sub-RESP0059_ses-SITUATION3A_coordsystem.json',
- '/sub-RESP0059/ses-SITUATION3A/ieeg/sub-RESP0059_ses-SITUATION3A_events.json',
- '/sub-RESP0059/ses-SITUATION3A/ieeg/sub-RESP0059_ses-SITUATION3A_electrodes.json',
- '/sub-RESP0059/ses-SITUATION3A/ieeg/sub-RESP0059_ses-SITUATION3A_electrodes.tsv',
- '/sub-RESP0059/ses-SITUATION3A/ieeg/sub-RESP0059_ses-SITUATION3A_task-acute_events.tsv',
- '/sub-RESP0059/ses-SITUATION3A/ieeg/sub-RESP0059_ses-SITUATION3A_task-acute_ieeg.vhdr',
- '/sub-RESP0059/ses-SITUATION3A/ieeg/sub-RESP0059_ses-SITUATION3A_photo.jpg',
- '/sub-RESP0059/ses-SITUATION3A/ieeg/sub-RESP0059_ses-SITUATION3A_task-acute_ieeg.json',
- '/sub-RESP0059/ses-SITUATION4A/ieeg/sub-RESP0059_ses-SITUATION4A_task-acute_ieeg.vmrk',
- '/sub-RESP0059/ses-SITUATION4A/ieeg/sub-RESP0059_ses-SITUATION4A_task-acute_channels.tsv',
- '/sub-RESP0059/ses-SITUATION4A/ieeg/sub-RESP0059_ses-SITUATION4A_electrodes.json',
- '/sub-RESP0059/ses-SITUATION4A/ieeg/sub-RESP0059_ses-SITUATION4A_coordsystem.json',
- '/sub-RESP0059/ses-SITUATION4A/ieeg/sub-RESP0059_ses-SITUATION4A_photo.jpg',
- '/sub-RESP0059/ses-SITUATION4A/ieeg/sub-RESP0059_ses-SITUATION4A_task-acute_ieeg.vhdr',
- '/sub-RESP0059/ses-SITUATION4A/ieeg/sub-RESP0059_ses-SITUATION4A_electrodes.tsv',
- '/sub-RESP0059/ses-SITUATION4A/ieeg/sub-RESP0059_ses-SITUATION4A_task-acute_ieeg.json',
- '/sub-RESP0059/ses-SITUATION4A/ieeg/sub-RESP0059_ses-SITUATION4A_events.json',
- '/sub-RESP0059/ses-SITUATION4A/ieeg/sub-RESP0059_ses-SITUATION4A_task-acute_ieeg.eeg',
- '/sub-RESP0059/ses-SITUATION4A/ieeg/sub-RESP0059_ses-SITUATION4A_task-acute_events.tsv',
- '/sub-RESP0059/ses-SITUATION2A/ieeg/sub-RESP0059_ses-SITUATION2A_task-acute_ieeg.json',
- '/sub-RESP0059/ses-SITUATION2A/ieeg/sub-RESP0059_ses-SITUATION2A_photo.jpg',
- '/sub-RESP0059/ses-SITUATION2A/ieeg/sub-RESP0059_ses-SITUATION2A_task-acute_channels.tsv',
- '/sub-RESP0059/ses-SITUATION2A/ieeg/sub-RESP0059_ses-SITUATION2A_events.json',
- '/sub-RESP0059/ses-SITUATION2A/ieeg/sub-RESP0059_ses-SITUATION2A_task-acute_ieeg.eeg',
- '/sub-RESP0059/ses-SITUATION2A/ieeg/sub-RESP0059_ses-SITUATION2A_electrodes.tsv',
- '/sub-RESP0059/ses-SITUATION2A/ieeg/sub-RESP0059_ses-SITUATION2A_task-acute_ieeg.vhdr',
- '/sub-RESP0059/ses-SITUATION2A/ieeg/sub-RESP0059_ses-SITUATION2A_coordsystem.json',
- '/sub-RESP0059/ses-SITUATION2A/ieeg/sub-RESP0059_ses-SITUATION2A_electrodes.json',
- '/sub-RESP0059/ses-SITUATION2A/ieeg/sub-RESP0059_ses-SITUATION2A_task-acute_ieeg.vmrk',
- '/sub-RESP0059/ses-SITUATION2A/ieeg/sub-RESP0059_ses-SITUATION2A_task-acute_events.tsv',
- '/sub-RESP0059/sub-RESP0059_scans.tsv',
- '/sub-RESP0059/ses-SITUATION1B/ieeg/sub-RESP0059_ses-SITUATION1B_task-acute_channels.tsv',
- '/sub-RESP0059/ses-SITUATION1B/ieeg/sub-RESP0059_ses-SITUATION1B_electrodes.json',
- '/sub-RESP0059/ses-SITUATION1B/ieeg/sub-RESP0059_ses-SITUATION1B_events.json',
- '/sub-RESP0059/ses-SITUATION1B/ieeg/sub-RESP0059_ses-SITUATION1B_task-acute_ieeg.eeg',
- '/sub-RESP0059/ses-SITUATION1B/ieeg/sub-RESP0059_ses-SITUATION1B_coordsystem.json',
- '/sub-RESP0059/ses-SITUATION1B/ieeg/sub-RESP0059_ses-SITUATION1B_electrodes.tsv',
- '/sub-RESP0059/ses-SITUATION1B/ieeg/sub-RESP0059_ses-SITUATION1B_task-acute_ieeg.vhdr',
- '/sub-RESP0059/ses-SITUATION1B/ieeg/sub-RESP0059_ses-SITUATION1B_task-acute_ieeg.json',
- '/sub-RESP0059/ses-SITUATION1B/ieeg/sub-RESP0059_ses-SITUATION1B_task-acute_ieeg.vmrk',
- '/sub-RESP0059/ses-SITUATION1B/ieeg/sub-RESP0059_ses-SITUATION1B_photo.jpg',
- '/sub-RESP0059/ses-SITUATION1B/ieeg/sub-RESP0059_ses-SITUATION1B_task-acute_events.tsv',
- '/sub-RESP0059/ses-SITUATION1A/ieeg/sub-RESP0059_ses-SITUATION1A_photo.jpg',
- '/sub-RESP0059/ses-SITUATION1A/ieeg/sub-RESP0059_ses-SITUATION1A_task-acute_ieeg.vhdr',
- '/sub-RESP0059/ses-SITUATION1A/ieeg/sub-RESP0059_ses-SITUATION1A_task-acute_ieeg.vmrk',
- '/sub-RESP0059/ses-SITUATION1A/ieeg/sub-RESP0059_ses-SITUATION1A_electrodes.tsv',
- '/sub-RESP0059/ses-SITUATION1A/ieeg/sub-RESP0059_ses-SITUATION1A_electrodes.json',
- '/sub-RESP0059/ses-SITUATION1A/ieeg/sub-RESP0059_ses-SITUATION1A_task-acute_ieeg.json',
- '/sub-RESP0059/ses-SITUATION1A/ieeg/sub-RESP0059_ses-SITUATION1A_coordsystem.json',
- '/sub-RESP0059/ses-SITUATION1A/ieeg/sub-RESP0059_ses-SITUATION1A_task-acute_ieeg.eeg',
- '/sub-RESP0059/ses-SITUATION1A/ieeg/sub-RESP0059_ses-SITUATION1A_task-acute_events.tsv',
- '/sub-RESP0059/ses-SITUATION1A/ieeg/sub-RESP0059_ses-SITUATION1A_task-acute_channels.tsv',
- '/sub-RESP0059/ses-SITUATION1A/ieeg/sub-RESP0059_ses-SITUATION1A_events.json',
- '/.gitattributes',
- '/CHANGES',
- '/participants.json',
- '/participants.tsv',
- '/sub-RESP0280/sub-RESP0280_scans.json',
- '/sub-RESP0280/ses-SITUATION3A/ieeg/sub-RESP0280_ses-SITUATION3A_task-acute_ieeg.json',
- '/sub-RESP0280/ses-SITUATION3A/ieeg/sub-RESP0280_ses-SITUATION3A_photo.jpg',
- '/sub-RESP0280/ses-SITUATION3A/ieeg/sub-RESP0280_ses-SITUATION3A_events.json',
- '/sub-RESP0280/ses-SITUATION3A/ieeg/sub-RESP0280_ses-SITUATION3A_task-acute_channels.tsv',
- '/sub-RESP0280/ses-SITUATION3A/ieeg/sub-RESP0280_ses-SITUATION3A_electrodes.tsv',
- '/sub-RESP0280/ses-SITUATION3A/ieeg/sub-RESP0280_ses-SITUATION3A_electrodes.json',
- '/sub-RESP0280/ses-SITUATION3A/ieeg/sub-RESP0280_ses-SITUATION3A_coordsystem.json',
- '/sub-RESP0280/ses-SITUATION3A/ieeg/sub-RESP0280_ses-SITUATION3A_task-acute_events.tsv',
- '/sub-RESP0280/ses-SITUATION3A/ieeg/sub-RESP0280_ses-SITUATION3A_task-acute_ieeg.vhdr',
- '/sub-RESP0280/ses-SITUATION3A/ieeg/sub-RESP0280_ses-SITUATION3A_task-acute_ieeg.eeg',
- '/sub-RESP0280/ses-SITUATION3A/ieeg/sub-RESP0280_ses-SITUATION3A_task-acute_ieeg.vmrk',
- '/sub-RESP0280/sub-RESP0280_scans.tsv',
- '/sub-RESP0280/ses-SITUATION2A/ieeg/sub-RESP0280_ses-SITUATION2A_events.json',
- '/sub-RESP0280/ses-SITUATION2A/ieeg/sub-RESP0280_ses-SITUATION2A_electrodes.json',
- '/sub-RESP0280/ses-SITUATION2A/ieeg/sub-RESP0280_ses-SITUATION2A_electrodes.tsv',
- '/sub-RESP0280/ses-SITUATION2A/ieeg/sub-RESP0280_ses-SITUATION2A_task-acute_ieeg.vhdr',
- '/sub-RESP0280/ses-SITUATION2A/ieeg/sub-RESP0280_ses-SITUATION2A_task-acute_ieeg.vmrk',
- '/sub-RESP0280/ses-SITUATION2A/ieeg/sub-RESP0280_ses-SITUATION2A_coordsystem.json',
- '/sub-RESP0280/ses-SITUATION2A/ieeg/sub-RESP0280_ses-SITUATION2A_photo.jpg',
- '/sub-RESP0280/ses-SITUATION2A/ieeg/sub-RESP0280_ses-SITUATION2A_task-acute_ieeg.eeg',
- '/sub-RESP0280/ses-SITUATION2A/ieeg/sub-RESP0280_ses-SITUATION2A_task-acute_channels.tsv',
- '/sub-RESP0280/ses-SITUATION2A/ieeg/sub-RESP0280_ses-SITUATION2A_task-acute_events.tsv',
- '/sub-RESP0280/ses-SITUATION2A/ieeg/sub-RESP0280_ses-SITUATION2A_task-acute_ieeg.json',
- '/sub-RESP0280/ses-SITUATION1B/ieeg/sub-RESP0280_ses-SITUATION1B_events.json',
- '/sub-RESP0280/ses-SITUATION1B/ieeg/sub-RESP0280_ses-SITUATION1B_task-acute_ieeg.json',
- '/sub-RESP0280/ses-SITUATION1B/ieeg/sub-RESP0280_ses-SITUATION1B_task-acute_channels.tsv',
- '/sub-RESP0280/ses-SITUATION1B/ieeg/sub-RESP0280_ses-SITUATION1B_task-acute_ieeg.vhdr',
- '/sub-RESP0280/ses-SITUATION1B/ieeg/sub-RESP0280_ses-SITUATION1B_task-acute_ieeg.vmrk',
- '/sub-RESP0280/ses-SITUATION1B/ieeg/sub-RESP0280_ses-SITUATION1B_photo.jpg',
- '/sub-RESP0280/ses-SITUATION1B/ieeg/sub-RESP0280_ses-SITUATION1B_task-acute_events.tsv',
- '/sub-RESP0280/ses-SITUATION1B/ieeg/sub-RESP0280_ses-SITUATION1B_electrodes.tsv',
- '/sub-RESP0280/ses-SITUATION1B/ieeg/sub-RESP0280_ses-SITUATION1B_coordsystem.json',
- '/sub-RESP0280/ses-SITUATION1B/ieeg/sub-RESP0280_ses-SITUATION1B_task-acute_ieeg.eeg',
- '/sub-RESP0280/ses-SITUATION1B/ieeg/sub-RESP0280_ses-SITUATION1B_electrodes.json',
- '/sub-RESP0280/ses-SITUATION1A/ieeg/sub-RESP0280_ses-SITUATION1A_task-acute_channels.tsv',
- '/sub-RESP0280/ses-SITUATION1A/ieeg/sub-RESP0280_ses-SITUATION1A_task-acute_ieeg.json',
- '/sub-RESP0280/ses-SITUATION1A/ieeg/sub-RESP0280_ses-SITUATION1A_electrodes.json',
- '/sub-RESP0280/ses-SITUATION1A/ieeg/sub-RESP0280_ses-SITUATION1A_coordsystem.json',
- '/sub-RESP0280/ses-SITUATION1A/ieeg/sub-RESP0280_ses-SITUATION1A_photo.jpg',
- '/sub-RESP0280/ses-SITUATION1A/ieeg/sub-RESP0280_ses-SITUATION1A_events.json',
- '/sub-RESP0280/ses-SITUATION1A/ieeg/sub-RESP0280_ses-SITUATION1A_task-acute_events.tsv',
- '/sub-RESP0280/ses-SITUATION1A/ieeg/sub-RESP0280_ses-SITUATION1A_task-acute_ieeg.vmrk',
- '/sub-RESP0280/ses-SITUATION1A/ieeg/sub-RESP0280_ses-SITUATION1A_electrodes.tsv',
- '/sub-RESP0280/ses-SITUATION1A/ieeg/sub-RESP0280_ses-SITUATION1A_task-acute_ieeg.vhdr',
- '/sub-RESP0280/ses-SITUATION1A/ieeg/sub-RESP0280_ses-SITUATION1A_task-acute_ieeg.eeg',
- '/sub-RESP0465/ses-SITUATION3G/ieeg/sub-RESP0465_ses-SITUATION3G_electrodes.tsv',
- '/sub-RESP0465/ses-SITUATION3G/ieeg/sub-RESP0465_ses-SITUATION3G_events.json',
- '/sub-RESP0465/ses-SITUATION3G/ieeg/sub-RESP0465_ses-SITUATION3G_electrodes.json',
- '/sub-RESP0465/ses-SITUATION3G/ieeg/sub-RESP0465_ses-SITUATION3G_task-acute_ieeg.vhdr',
- '/sub-RESP0465/ses-SITUATION3G/ieeg/sub-RESP0465_ses-SITUATION3G_task-acute_ieeg.json',
- '/sub-RESP0465/ses-SITUATION3G/ieeg/sub-RESP0465_ses-SITUATION3G_photo.jpg',
- '/sub-RESP0465/ses-SITUATION3G/ieeg/sub-RESP0465_ses-SITUATION3G_task-acute_events.tsv',
- '/sub-RESP0465/ses-SITUATION3G/ieeg/sub-RESP0465_ses-SITUATION3G_task-acute_ieeg.eeg',
- '/sub-RESP0465/ses-SITUATION3G/ieeg/sub-RESP0465_ses-SITUATION3G_task-acute_channels.tsv',
- '/sub-RESP0465/ses-SITUATION3G/ieeg/sub-RESP0465_ses-SITUATION3G_coordsystem.json',
- '/sub-RESP0465/ses-SITUATION3G/ieeg/sub-RESP0465_ses-SITUATION3G_task-acute_ieeg.vmrk',
- '/sub-RESP0465/sub-RESP0465_scans.tsv',
- '/sub-RESP0465/sub-RESP0465_scans.json',
- '/sub-RESP0465/ses-SITUATION3C/ieeg/sub-RESP0465_ses-SITUATION3C_task-acute_ieeg.eeg',
- '/sub-RESP0465/ses-SITUATION3C/ieeg/sub-RESP0465_ses-SITUATION3C_task-acute_events.tsv',
- '/sub-RESP0465/ses-SITUATION3C/ieeg/sub-RESP0465_ses-SITUATION3C_task-acute_ieeg.json',
- '/sub-RESP0465/ses-SITUATION3C/ieeg/sub-RESP0465_ses-SITUATION3C_task-acute_channels.tsv',
- '/sub-RESP0465/ses-SITUATION3C/ieeg/sub-RESP0465_ses-SITUATION3C_electrodes.json',
- '/sub-RESP0465/ses-SITUATION3C/ieeg/sub-RESP0465_ses-SITUATION3C_events.json',
- '/sub-RESP0465/ses-SITUATION3C/ieeg/sub-RESP0465_ses-SITUATION3C_coordsystem.json',
- '/sub-RESP0465/ses-SITUATION3C/ieeg/sub-RESP0465_ses-SITUATION3C_task-acute_ieeg.vhdr',
- '/sub-RESP0465/ses-SITUATION3C/ieeg/sub-RESP0465_ses-SITUATION3C_task-acute_ieeg.vmrk',
- '/sub-RESP0465/ses-SITUATION3C/ieeg/sub-RESP0465_ses-SITUATION3C_electrodes.tsv',
- '/sub-RESP0465/ses-SITUATION3C/ieeg/sub-RESP0465_ses-SITUATION3C_photo.jpg',
- '/sub-RESP0465/ses-SITUATION3E/ieeg/sub-RESP0465_ses-SITUATION3E_events.json',
- '/sub-RESP0465/ses-SITUATION3E/ieeg/sub-RESP0465_ses-SITUATION3E_photo.jpg',
- '/sub-RESP0465/ses-SITUATION3E/ieeg/sub-RESP0465_ses-SITUATION3E_task-acute_channels.tsv',
- '/sub-RESP0465/ses-SITUATION3E/ieeg/sub-RESP0465_ses-SITUATION3E_task-acute_events.tsv',
- '/sub-RESP0465/ses-SITUATION3E/ieeg/sub-RESP0465_ses-SITUATION3E_task-acute_ieeg.vhdr',
- '/sub-RESP0465/ses-SITUATION3E/ieeg/sub-RESP0465_ses-SITUATION3E_coordsystem.json',
- '/sub-RESP0465/ses-SITUATION3E/ieeg/sub-RESP0465_ses-SITUATION3E_task-acute_ieeg.eeg',
- '/sub-RESP0465/ses-SITUATION3E/ieeg/sub-RESP0465_ses-SITUATION3E_task-acute_ieeg.vmrk',
- '/sub-RESP0465/ses-SITUATION3E/ieeg/sub-RESP0465_ses-SITUATION3E_electrodes.json',
- '/sub-RESP0465/ses-SITUATION3E/ieeg/sub-RESP0465_ses-SITUATION3E_task-acute_ieeg.json',
- '/sub-RESP0465/ses-SITUATION3E/ieeg/sub-RESP0465_ses-SITUATION3E_electrodes.tsv',
- '/sub-RESP0465/ses-SITUATION3A/ieeg/sub-RESP0465_ses-SITUATION3A_task-acute_events.tsv',
- '/sub-RESP0465/ses-SITUATION3A/ieeg/sub-RESP0465_ses-SITUATION3A_events.json',
- '/sub-RESP0465/ses-SITUATION3A/ieeg/sub-RESP0465_ses-SITUATION3A_task-acute_ieeg.vmrk',
- '/sub-RESP0465/ses-SITUATION3A/ieeg/sub-RESP0465_ses-SITUATION3A_electrodes.json',
- '/sub-RESP0465/ses-SITUATION3A/ieeg/sub-RESP0465_ses-SITUATION3A_coordsystem.json',
- '/sub-RESP0465/ses-SITUATION3A/ieeg/sub-RESP0465_ses-SITUATION3A_task-acute_channels.tsv',
- '/sub-RESP0465/ses-SITUATION3A/ieeg/sub-RESP0465_ses-SITUATION3A_photo.jpg',
- '/sub-RESP0465/ses-SITUATION3A/ieeg/sub-RESP0465_ses-SITUATION3A_task-acute_ieeg.eeg',
- '/sub-RESP0465/ses-SITUATION3A/ieeg/sub-RESP0465_ses-SITUATION3A_task-acute_ieeg.json',
- '/sub-RESP0465/ses-SITUATION3A/ieeg/sub-RESP0465_ses-SITUATION3A_task-acute_ieeg.vhdr',
- '/sub-RESP0465/ses-SITUATION3A/ieeg/sub-RESP0465_ses-SITUATION3A_electrodes.tsv',
- '/sub-RESP0465/ses-SITUATION3F/ieeg/sub-RESP0465_ses-SITUATION3F_electrodes.tsv',
- '/sub-RESP0465/ses-SITUATION3F/ieeg/sub-RESP0465_ses-SITUATION3F_task-acute_ieeg.eeg',
- '/sub-RESP0465/ses-SITUATION3F/ieeg/sub-RESP0465_ses-SITUATION3F_task-acute_ieeg.vmrk',
- '/sub-RESP0465/ses-SITUATION3F/ieeg/sub-RESP0465_ses-SITUATION3F_photo.jpg',
- '/sub-RESP0465/ses-SITUATION3F/ieeg/sub-RESP0465_ses-SITUATION3F_task-acute_ieeg.vhdr',
- '/sub-RESP0465/ses-SITUATION3F/ieeg/sub-RESP0465_ses-SITUATION3F_coordsystem.json',
- '/sub-RESP0465/ses-SITUATION3F/ieeg/sub-RESP0465_ses-SITUATION3F_task-acute_ieeg.json',
- '/sub-RESP0465/ses-SITUATION3F/ieeg/sub-RESP0465_ses-SITUATION3F_events.json',
- '/sub-RESP0465/ses-SITUATION3F/ieeg/sub-RESP0465_ses-SITUATION3F_task-acute_channels.tsv',
- '/sub-RESP0465/ses-SITUATION3F/ieeg/sub-RESP0465_ses-SITUATION3F_task-acute_events.tsv',
- '/sub-RESP0465/ses-SITUATION3F/ieeg/sub-RESP0465_ses-SITUATION3F_electrodes.json',
- '/sub-RESP0465/ses-SITUATION2A/ieeg/sub-RESP0465_ses-SITUATION2A_coordsystem.json',
- '/sub-RESP0465/ses-SITUATION2A/ieeg/sub-RESP0465_ses-SITUATION2A_photo.jpg',
- '/sub-RESP0465/ses-SITUATION2A/ieeg/sub-RESP0465_ses-SITUATION2A_electrodes.json',
- '/sub-RESP0465/ses-SITUATION2A/ieeg/sub-RESP0465_ses-SITUATION2A_task-acute_ieeg.vhdr',
- '/sub-RESP0465/ses-SITUATION2A/ieeg/sub-RESP0465_ses-SITUATION2A_task-acute_ieeg.eeg',
- '/sub-RESP0465/ses-SITUATION2A/ieeg/sub-RESP0465_ses-SITUATION2A_task-acute_channels.tsv',
- '/sub-RESP0465/ses-SITUATION2A/ieeg/sub-RESP0465_ses-SITUATION2A_task-acute_ieeg.vmrk',
- '/sub-RESP0465/ses-SITUATION2A/ieeg/sub-RESP0465_ses-SITUATION2A_events.json',
- '/sub-RESP0465/ses-SITUATION2A/ieeg/sub-RESP0465_ses-SITUATION2A_task-acute_events.tsv',
- '/sub-RESP0465/ses-SITUATION2A/ieeg/sub-RESP0465_ses-SITUATION2A_task-acute_ieeg.json',
- '/sub-RESP0465/ses-SITUATION2A/ieeg/sub-RESP0465_ses-SITUATION2A_electrodes.tsv',
- '/sub-RESP0465/ses-SITUATION2B/ieeg/sub-RESP0465_ses-SITUATION2B_task-acute_ieeg.vmrk',
- '/sub-RESP0465/ses-SITUATION2B/ieeg/sub-RESP0465_ses-SITUATION2B_task-acute_ieeg.eeg',
- '/sub-RESP0465/ses-SITUATION2B/ieeg/sub-RESP0465_ses-SITUATION2B_task-acute_ieeg.vhdr',
- '/sub-RESP0465/ses-SITUATION2B/ieeg/sub-RESP0465_ses-SITUATION2B_electrodes.tsv',
- '/sub-RESP0465/ses-SITUATION2B/ieeg/sub-RESP0465_ses-SITUATION2B_electrodes.json',
- '/sub-RESP0465/ses-SITUATION2B/ieeg/sub-RESP0465_ses-SITUATION2B_coordsystem.json',
- '/sub-RESP0465/ses-SITUATION2B/ieeg/sub-RESP0465_ses-SITUATION2B_task-acute_ieeg.json',
- '/sub-RESP0465/ses-SITUATION2B/ieeg/sub-RESP0465_ses-SITUATION2B_photo.jpg',
- '/sub-RESP0465/ses-SITUATION2B/ieeg/sub-RESP0465_ses-SITUATION2B_task-acute_channels.tsv',
- '/sub-RESP0465/ses-SITUATION2B/ieeg/sub-RESP0465_ses-SITUATION2B_events.json',
- '/sub-RESP0465/ses-SITUATION2B/ieeg/sub-RESP0465_ses-SITUATION2B_task-acute_events.tsv',
- '/sub-RESP0465/ses-SITUATION3D/ieeg/sub-RESP0465_ses-SITUATION3D_electrodes.json',
- '/sub-RESP0465/ses-SITUATION3D/ieeg/sub-RESP0465_ses-SITUATION3D_photo.jpg',
- '/sub-RESP0465/ses-SITUATION3D/ieeg/sub-RESP0465_ses-SITUATION3D_task-acute_ieeg.eeg',
- '/sub-RESP0465/ses-SITUATION3D/ieeg/sub-RESP0465_ses-SITUATION3D_task-acute_events.tsv',
- '/sub-RESP0465/ses-SITUATION3D/ieeg/sub-RESP0465_ses-SITUATION3D_task-acute_ieeg.json',
- '/sub-RESP0465/ses-SITUATION3D/ieeg/sub-RESP0465_ses-SITUATION3D_task-acute_ieeg.vhdr',
- '/sub-RESP0465/ses-SITUATION3D/ieeg/sub-RESP0465_ses-SITUATION3D_coordsystem.json',
- '/sub-RESP0465/ses-SITUATION3D/ieeg/sub-RESP0465_ses-SITUATION3D_events.json',
- '/sub-RESP0465/ses-SITUATION3D/ieeg/sub-RESP0465_ses-SITUATION3D_electrodes.tsv',
- '/sub-RESP0465/ses-SITUATION3D/ieeg/sub-RESP0465_ses-SITUATION3D_task-acute_channels.tsv',
- '/sub-RESP0465/ses-SITUATION3D/ieeg/sub-RESP0465_ses-SITUATION3D_task-acute_ieeg.vmrk',
- '/sub-RESP0465/ses-SITUATION3B/ieeg/sub-RESP0465_ses-SITUATION3B_task-acute_ieeg.eeg',
- '/sub-RESP0465/ses-SITUATION3B/ieeg/sub-RESP0465_ses-SITUATION3B_events.json',
- '/sub-RESP0465/ses-SITUATION3B/ieeg/sub-RESP0465_ses-SITUATION3B_task-acute_events.tsv',
- '/sub-RESP0465/ses-SITUATION3B/ieeg/sub-RESP0465_ses-SITUATION3B_coordsystem.json',
- '/sub-RESP0465/ses-SITUATION3B/ieeg/sub-RESP0465_ses-SITUATION3B_task-acute_ieeg.vhdr',
- '/sub-RESP0465/ses-SITUATION3B/ieeg/sub-RESP0465_ses-SITUATION3B_photo.jpg',
- '/sub-RESP0465/ses-SITUATION3B/ieeg/sub-RESP0465_ses-SITUATION3B_task-acute_channels.tsv',
- '/sub-RESP0465/ses-SITUATION3B/ieeg/sub-RESP0465_ses-SITUATION3B_electrodes.tsv',
- '/sub-RESP0465/ses-SITUATION3B/ieeg/sub-RESP0465_ses-SITUATION3B_task-acute_ieeg.json',
- '/sub-RESP0465/ses-SITUATION3B/ieeg/sub-RESP0465_ses-SITUATION3B_electrodes.json',
- '/sub-RESP0465/ses-SITUATION3B/ieeg/sub-RESP0465_ses-SITUATION3B_task-acute_ieeg.vmrk',
- '/sub-RESP0465/ses-SITUATION1A/ieeg/sub-RESP0465_ses-SITUATION1A_task-acute_channels.tsv',
- '/sub-RESP0465/ses-SITUATION1A/ieeg/sub-RESP0465_ses-SITUATION1A_task-acute_ieeg.vmrk',
- '/sub-RESP0465/ses-SITUATION1A/ieeg/sub-RESP0465_ses-SITUATION1A_events.json',
- '/sub-RESP0465/ses-SITUATION1A/ieeg/sub-RESP0465_ses-SITUATION1A_task-acute_ieeg.vhdr',
- '/sub-RESP0465/ses-SITUATION1A/ieeg/sub-RESP0465_ses-SITUATION1A_task-acute_events.tsv',
- '/sub-RESP0465/ses-SITUATION1A/ieeg/sub-RESP0465_ses-SITUATION1A_task-acute_ieeg.eeg',
- '/sub-RESP0465/ses-SITUATION1A/ieeg/sub-RESP0465_ses-SITUATION1A_electrodes.json',
- '/sub-RESP0465/ses-SITUATION1A/ieeg/sub-RESP0465_ses-SITUATION1A_electrodes.tsv',
- '/sub-RESP0465/ses-SITUATION1A/ieeg/sub-RESP0465_ses-SITUATION1A_task-acute_ieeg.json',
- '/sub-RESP0465/ses-SITUATION1A/ieeg/sub-RESP0465_ses-SITUATION1A_coordsystem.json',
- '/sub-RESP0465/ses-SITUATION1A/ieeg/sub-RESP0465_ses-SITUATION1A_photo.jpg',
- '/sub-RESP0301/sub-RESP0301_scans.json',
- '/sub-RESP0301/sub-RESP0301_scans.tsv',
- '/sub-RESP0301/ses-SITUATION2A/ieeg/sub-RESP0301_ses-SITUATION2A_electrodes.tsv',
- '/sub-RESP0301/ses-SITUATION2A/ieeg/sub-RESP0301_ses-SITUATION2A_events.json',
- '/sub-RESP0301/ses-SITUATION2A/ieeg/sub-RESP0301_ses-SITUATION2A_coordsystem.json',
- '/sub-RESP0301/ses-SITUATION2A/ieeg/sub-RESP0301_ses-SITUATION2A_task-acute_ieeg.vmrk',
- '/sub-RESP0301/ses-SITUATION2A/ieeg/sub-RESP0301_ses-SITUATION2A_task-acute_ieeg.vhdr',
- '/sub-RESP0301/ses-SITUATION2A/ieeg/sub-RESP0301_ses-SITUATION2A_photo.jpg',
- '/sub-RESP0301/ses-SITUATION2A/ieeg/sub-RESP0301_ses-SITUATION2A_task-acute_events.tsv',
- '/sub-RESP0301/ses-SITUATION2A/ieeg/sub-RESP0301_ses-SITUATION2A_task-acute_ieeg.json',
- '/sub-RESP0301/ses-SITUATION2A/ieeg/sub-RESP0301_ses-SITUATION2A_task-acute_ieeg.eeg',
- '/sub-RESP0301/ses-SITUATION2A/ieeg/sub-RESP0301_ses-SITUATION2A_electrodes.json',
- '/sub-RESP0301/ses-SITUATION2A/ieeg/sub-RESP0301_ses-SITUATION2A_task-acute_channels.tsv',
- '/sub-RESP0301/ses-SITUATION2B/ieeg/sub-RESP0301_ses-SITUATION2B_electrodes.tsv',
- '/sub-RESP0301/ses-SITUATION2B/ieeg/sub-RESP0301_ses-SITUATION2B_electrodes.json',
- '/sub-RESP0301/ses-SITUATION2B/ieeg/sub-RESP0301_ses-SITUATION2B_task-acute_channels.tsv',
- '/sub-RESP0301/ses-SITUATION2B/ieeg/sub-RESP0301_ses-SITUATION2B_photo.jpg',
- '/sub-RESP0301/ses-SITUATION2B/ieeg/sub-RESP0301_ses-SITUATION2B_task-acute_events.tsv',
- '/sub-RESP0301/ses-SITUATION2B/ieeg/sub-RESP0301_ses-SITUATION2B_events.json',
- '/sub-RESP0301/ses-SITUATION2B/ieeg/sub-RESP0301_ses-SITUATION2B_task-acute_ieeg.vhdr',
- '/sub-RESP0301/ses-SITUATION2B/ieeg/sub-RESP0301_ses-SITUATION2B_task-acute_ieeg.json',
- '/sub-RESP0301/ses-SITUATION2B/ieeg/sub-RESP0301_ses-SITUATION2B_task-acute_ieeg.eeg',
- '/sub-RESP0301/ses-SITUATION2B/ieeg/sub-RESP0301_ses-SITUATION2B_task-acute_ieeg.vmrk',
- '/sub-RESP0301/ses-SITUATION2B/ieeg/sub-RESP0301_ses-SITUATION2B_coordsystem.json',
- '/sub-RESP0301/ses-SITUATION2C/ieeg/sub-RESP0301_ses-SITUATION2C_task-acute_ieeg.vmrk',
- '/sub-RESP0301/ses-SITUATION2C/ieeg/sub-RESP0301_ses-SITUATION2C_coordsystem.json',
- '/sub-RESP0301/ses-SITUATION2C/ieeg/sub-RESP0301_ses-SITUATION2C_photo.jpg',
- '/sub-RESP0301/ses-SITUATION2C/ieeg/sub-RESP0301_ses-SITUATION2C_events.json',
- '/sub-RESP0301/ses-SITUATION2C/ieeg/sub-RESP0301_ses-SITUATION2C_task-acute_channels.tsv',
- '/sub-RESP0301/ses-SITUATION2C/ieeg/sub-RESP0301_ses-SITUATION2C_task-acute_ieeg.json',
- '/sub-RESP0301/ses-SITUATION2C/ieeg/sub-RESP0301_ses-SITUATION2C_task-acute_ieeg.vhdr',
- '/sub-RESP0301/ses-SITUATION2C/ieeg/sub-RESP0301_ses-SITUATION2C_electrodes.tsv',
- '/sub-RESP0301/ses-SITUATION2C/ieeg/sub-RESP0301_ses-SITUATION2C_task-acute_ieeg.eeg',
- '/sub-RESP0301/ses-SITUATION2C/ieeg/sub-RESP0301_ses-SITUATION2C_electrodes.json',
- '/sub-RESP0301/ses-SITUATION2C/ieeg/sub-RESP0301_ses-SITUATION2C_task-acute_events.tsv',
- '/sub-RESP0301/ses-SITUATION1B/ieeg/sub-RESP0301_ses-SITUATION1B_electrodes.tsv',
- '/sub-RESP0301/ses-SITUATION1B/ieeg/sub-RESP0301_ses-SITUATION1B_task-acute_channels.tsv',
- '/sub-RESP0301/ses-SITUATION1B/ieeg/sub-RESP0301_ses-SITUATION1B_task-acute_events.tsv',
- '/sub-RESP0301/ses-SITUATION1B/ieeg/sub-RESP0301_ses-SITUATION1B_events.json',
- '/sub-RESP0301/ses-SITUATION1B/ieeg/sub-RESP0301_ses-SITUATION1B_coordsystem.json',
- '/sub-RESP0301/ses-SITUATION1B/ieeg/sub-RESP0301_ses-SITUATION1B_task-acute_ieeg.json',
- '/sub-RESP0301/ses-SITUATION1B/ieeg/sub-RESP0301_ses-SITUATION1B_task-acute_ieeg.vmrk',
- '/sub-RESP0301/ses-SITUATION1B/ieeg/sub-RESP0301_ses-SITUATION1B_task-acute_ieeg.vhdr',
- '/sub-RESP0301/ses-SITUATION1B/ieeg/sub-RESP0301_ses-SITUATION1B_electrodes.json',
- '/sub-RESP0301/ses-SITUATION1B/ieeg/sub-RESP0301_ses-SITUATION1B_task-acute_ieeg.eeg',
- '/sub-RESP0301/ses-SITUATION1A/ieeg/sub-RESP0301_ses-SITUATION1A_task-acute_ieeg.eeg',
- '/sub-RESP0301/ses-SITUATION1A/ieeg/sub-RESP0301_ses-SITUATION1A_photo.jpg',
- '/sub-RESP0301/ses-SITUATION1A/ieeg/sub-RESP0301_ses-SITUATION1A_electrodes.json',
- '/sub-RESP0301/ses-SITUATION1A/ieeg/sub-RESP0301_ses-SITUATION1A_events.json',
- '/sub-RESP0301/ses-SITUATION1A/ieeg/sub-RESP0301_ses-SITUATION1A_task-acute_ieeg.json',
- '/sub-RESP0301/ses-SITUATION1A/ieeg/sub-RESP0301_ses-SITUATION1A_task-acute_ieeg.vhdr',
- '/sub-RESP0301/ses-SITUATION1A/ieeg/sub-RESP0301_ses-SITUATION1A_electrodes.tsv',
- '/sub-RESP0301/ses-SITUATION1A/ieeg/sub-RESP0301_ses-SITUATION1A_coordsystem.json',
- '/sub-RESP0301/ses-SITUATION1A/ieeg/sub-RESP0301_ses-SITUATION1A_task-acute_channels.tsv',
- '/sub-RESP0301/ses-SITUATION1A/ieeg/sub-RESP0301_ses-SITUATION1A_task-acute_events.tsv',
- '/sub-RESP0301/ses-SITUATION1A/ieeg/sub-RESP0301_ses-SITUATION1A_task-acute_ieeg.vmrk',
- '/.datalad/.gitattributes',
- '/.datalad/config',
- '/dataset_description.json',
- '/README',
- '/sub-RESP0384/ses-SITUATION2D/ieeg/sub-RESP0384_ses-SITUATION2D_photo.jpg',
- '/sub-RESP0384/ses-SITUATION2D/ieeg/sub-RESP0384_ses-SITUATION2D_task-acute_channels.tsv',
- '/sub-RESP0384/ses-SITUATION2D/ieeg/sub-RESP0384_ses-SITUATION2D_task-acute_ieeg.vmrk',
- '/sub-RESP0384/ses-SITUATION2D/ieeg/sub-RESP0384_ses-SITUATION2D_task-acute_events.tsv',
- '/sub-RESP0384/ses-SITUATION2D/ieeg/sub-RESP0384_ses-SITUATION2D_electrodes.json',
- '/sub-RESP0384/ses-SITUATION2D/ieeg/sub-RESP0384_ses-SITUATION2D_events.json',
- '/sub-RESP0384/ses-SITUATION2D/ieeg/sub-RESP0384_ses-SITUATION2D_electrodes.tsv',
- '/sub-RESP0384/ses-SITUATION2D/ieeg/sub-RESP0384_ses-SITUATION2D_task-acute_ieeg.eeg',
- '/sub-RESP0384/ses-SITUATION2D/ieeg/sub-RESP0384_ses-SITUATION2D_coordsystem.json',
- '/sub-RESP0384/ses-SITUATION2D/ieeg/sub-RESP0384_ses-SITUATION2D_task-acute_ieeg.json',
- '/sub-RESP0384/ses-SITUATION2D/ieeg/sub-RESP0384_ses-SITUATION2D_task-acute_ieeg.vhdr',
- '/sub-RESP0384/ses-SITUATION1D/ieeg/sub-RESP0384_ses-SITUATION1D_task-acute_ieeg.vmrk',
- '/sub-RESP0384/ses-SITUATION1D/ieeg/sub-RESP0384_ses-SITUATION1D_task-acute_ieeg.json',
- '/sub-RESP0384/ses-SITUATION1D/ieeg/sub-RESP0384_ses-SITUATION1D_task-acute_events.tsv',
- '/sub-RESP0384/ses-SITUATION1D/ieeg/sub-RESP0384_ses-SITUATION1D_task-acute_ieeg.eeg',
- '/sub-RESP0384/ses-SITUATION1D/ieeg/sub-RESP0384_ses-SITUATION1D_coordsystem.json',
- '/sub-RESP0384/ses-SITUATION1D/ieeg/sub-RESP0384_ses-SITUATION1D_photo.jpg',
- '/sub-RESP0384/ses-SITUATION1D/ieeg/sub-RESP0384_ses-SITUATION1D_events.json',
- '/sub-RESP0384/ses-SITUATION1D/ieeg/sub-RESP0384_ses-SITUATION1D_electrodes.tsv',
- '/sub-RESP0384/ses-SITUATION1D/ieeg/sub-RESP0384_ses-SITUATION1D_task-acute_ieeg.vhdr',
- '/sub-RESP0384/ses-SITUATION1D/ieeg/sub-RESP0384_ses-SITUATION1D_task-acute_channels.tsv',
- '/sub-RESP0384/ses-SITUATION1D/ieeg/sub-RESP0384_ses-SITUATION1D_electrodes.json',
- '/sub-RESP0384/ses-SITUATION3A/ieeg/sub-RESP0384_ses-SITUATION3A_task-acute_channels.tsv',
- '/sub-RESP0384/ses-SITUATION3A/ieeg/sub-RESP0384_ses-SITUATION3A_electrodes.json',
- '/sub-RESP0384/ses-SITUATION3A/ieeg/sub-RESP0384_ses-SITUATION3A_coordsystem.json',
- '/sub-RESP0384/ses-SITUATION3A/ieeg/sub-RESP0384_ses-SITUATION3A_electrodes.tsv',
- '/sub-RESP0384/ses-SITUATION3A/ieeg/sub-RESP0384_ses-SITUATION3A_photo.jpg',
- '/sub-RESP0384/ses-SITUATION3A/ieeg/sub-RESP0384_ses-SITUATION3A_task-acute_ieeg.vhdr',
- '/sub-RESP0384/ses-SITUATION3A/ieeg/sub-RESP0384_ses-SITUATION3A_task-acute_ieeg.vmrk',
- '/sub-RESP0384/ses-SITUATION3A/ieeg/sub-RESP0384_ses-SITUATION3A_task-acute_ieeg.eeg',
- '/sub-RESP0384/ses-SITUATION3A/ieeg/sub-RESP0384_ses-SITUATION3A_events.json',
- '/sub-RESP0384/ses-SITUATION3A/ieeg/sub-RESP0384_ses-SITUATION3A_task-acute_ieeg.json',
- '/sub-RESP0384/ses-SITUATION3A/ieeg/sub-RESP0384_ses-SITUATION3A_task-acute_events.tsv',
- '/sub-RESP0384/sub-RESP0384_scans.json',
- '/sub-RESP0384/sub-RESP0384_scans.tsv',
- '/sub-RESP0384/ses-SITUATION2A/ieeg/sub-RESP0384_ses-SITUATION2A_electrodes.tsv',
- '/sub-RESP0384/ses-SITUATION2A/ieeg/sub-RESP0384_ses-SITUATION2A_task-acute_ieeg.vhdr',
- '/sub-RESP0384/ses-SITUATION2A/ieeg/sub-RESP0384_ses-SITUATION2A_events.json',
- '/sub-RESP0384/ses-SITUATION2A/ieeg/sub-RESP0384_ses-SITUATION2A_electrodes.json',
- '/sub-RESP0384/ses-SITUATION2A/ieeg/sub-RESP0384_ses-SITUATION2A_coordsystem.json',
- '/sub-RESP0384/ses-SITUATION2A/ieeg/sub-RESP0384_ses-SITUATION2A_task-acute_ieeg.eeg',
- '/sub-RESP0384/ses-SITUATION2A/ieeg/sub-RESP0384_ses-SITUATION2A_photo.jpg',
- '/sub-RESP0384/ses-SITUATION2A/ieeg/sub-RESP0384_ses-SITUATION2A_task-acute_ieeg.vmrk',
- '/sub-RESP0384/ses-SITUATION2A/ieeg/sub-RESP0384_ses-SITUATION2A_task-acute_channels.tsv',
- '/sub-RESP0384/ses-SITUATION2A/ieeg/sub-RESP0384_ses-SITUATION2A_task-acute_events.tsv',
- '/sub-RESP0384/ses-SITUATION2A/ieeg/sub-RESP0384_ses-SITUATION2A_task-acute_ieeg.json',
- '/sub-RESP0384/ses-SITUATION2B/ieeg/sub-RESP0384_ses-SITUATION2B_electrodes.tsv',
- '/sub-RESP0384/ses-SITUATION2B/ieeg/sub-RESP0384_ses-SITUATION2B_electrodes.json',
- '/sub-RESP0384/ses-SITUATION2B/ieeg/sub-RESP0384_ses-SITUATION2B_task-acute_ieeg.vmrk',
- '/sub-RESP0384/ses-SITUATION2B/ieeg/sub-RESP0384_ses-SITUATION2B_task-acute_ieeg.json',
- '/sub-RESP0384/ses-SITUATION2B/ieeg/sub-RESP0384_ses-SITUATION2B_task-acute_ieeg.vhdr',
- '/sub-RESP0384/ses-SITUATION2B/ieeg/sub-RESP0384_ses-SITUATION2B_photo.jpg',
- '/sub-RESP0384/ses-SITUATION2B/ieeg/sub-RESP0384_ses-SITUATION2B_events.json',
- '/sub-RESP0384/ses-SITUATION2B/ieeg/sub-RESP0384_ses-SITUATION2B_task-acute_channels.tsv',
- '/sub-RESP0384/ses-SITUATION2B/ieeg/sub-RESP0384_ses-SITUATION2B_task-acute_events.tsv',
- '/sub-RESP0384/ses-SITUATION2B/ieeg/sub-RESP0384_ses-SITUATION2B_coordsystem.json',
- '/sub-RESP0384/ses-SITUATION2B/ieeg/sub-RESP0384_ses-SITUATION2B_task-acute_ieeg.eeg',
- '/sub-RESP0384/ses-SITUATION1C/ieeg/sub-RESP0384_ses-SITUATION1C_task-acute_ieeg.json',
- '/sub-RESP0384/ses-SITUATION1C/ieeg/sub-RESP0384_ses-SITUATION1C_task-acute_ieeg.eeg',
- '/sub-RESP0384/ses-SITUATION1C/ieeg/sub-RESP0384_ses-SITUATION1C_events.json',
- '/sub-RESP0384/ses-SITUATION1C/ieeg/sub-RESP0384_ses-SITUATION1C_task-acute_events.tsv',
- '/sub-RESP0384/ses-SITUATION1C/ieeg/sub-RESP0384_ses-SITUATION1C_electrodes.json',
- '/sub-RESP0384/ses-SITUATION1C/ieeg/sub-RESP0384_ses-SITUATION1C_photo.jpg',
- '/sub-RESP0384/ses-SITUATION1C/ieeg/sub-RESP0384_ses-SITUATION1C_task-acute_ieeg.vhdr',
- '/sub-RESP0384/ses-SITUATION1C/ieeg/sub-RESP0384_ses-SITUATION1C_task-acute_ieeg.vmrk',
- '/sub-RESP0384/ses-SITUATION1C/ieeg/sub-RESP0384_ses-SITUATION1C_coordsystem.json',
- '/sub-RESP0384/ses-SITUATION1C/ieeg/sub-RESP0384_ses-SITUATION1C_task-acute_channels.tsv',
- '/sub-RESP0384/ses-SITUATION1C/ieeg/sub-RESP0384_ses-SITUATION1C_electrodes.tsv',
- '/sub-RESP0384/ses-SITUATION2C/ieeg/sub-RESP0384_ses-SITUATION2C_task-acute_channels.tsv',
- '/sub-RESP0384/ses-SITUATION2C/ieeg/sub-RESP0384_ses-SITUATION2C_task-acute_ieeg.eeg',
- '/sub-RESP0384/ses-SITUATION2C/ieeg/sub-RESP0384_ses-SITUATION2C_electrodes.tsv',
- '/sub-RESP0384/ses-SITUATION2C/ieeg/sub-RESP0384_ses-SITUATION2C_task-acute_ieeg.vmrk',
- '/sub-RESP0384/ses-SITUATION2C/ieeg/sub-RESP0384_ses-SITUATION2C_electrodes.json',
- '/sub-RESP0384/ses-SITUATION2C/ieeg/sub-RESP0384_ses-SITUATION2C_events.json',
- '/sub-RESP0384/ses-SITUATION2C/ieeg/sub-RESP0384_ses-SITUATION2C_coordsystem.json',
- '/sub-RESP0384/ses-SITUATION2C/ieeg/sub-RESP0384_ses-SITUATION2C_task-acute_ieeg.vhdr',
- '/sub-RESP0384/ses-SITUATION2C/ieeg/sub-RESP0384_ses-SITUATION2C_photo.jpg',
- '/sub-RESP0384/ses-SITUATION2C/ieeg/sub-RESP0384_ses-SITUATION2C_task-acute_ieeg.json',
- '/sub-RESP0384/ses-SITUATION2C/ieeg/sub-RESP0384_ses-SITUATION2C_task-acute_events.tsv',
- '/sub-RESP0384/ses-SITUATION1B/ieeg/sub-RESP0384_ses-SITUATION1B_coordsystem.json',
- '/sub-RESP0384/ses-SITUATION1B/ieeg/sub-RESP0384_ses-SITUATION1B_electrodes.tsv',
- '/sub-RESP0384/ses-SITUATION1B/ieeg/sub-RESP0384_ses-SITUATION1B_task-acute_channels.tsv',
- '/sub-RESP0384/ses-SITUATION1B/ieeg/sub-RESP0384_ses-SITUATION1B_task-acute_ieeg.vmrk',
- '/sub-RESP0384/ses-SITUATION1B/ieeg/sub-RESP0384_ses-SITUATION1B_task-acute_ieeg.json',
- '/sub-RESP0384/ses-SITUATION1B/ieeg/sub-RESP0384_ses-SITUATION1B_electrodes.json',
- '/sub-RESP0384/ses-SITUATION1B/ieeg/sub-RESP0384_ses-SITUATION1B_events.json',
- '/sub-RESP0384/ses-SITUATION1B/ieeg/sub-RESP0384_ses-SITUATION1B_task-acute_events.tsv',
- '/sub-RESP0384/ses-SITUATION1B/ieeg/sub-RESP0384_ses-SITUATION1B_task-acute_ieeg.eeg',
- '/sub-RESP0384/ses-SITUATION1B/ieeg/sub-RESP0384_ses-SITUATION1B_photo.jpg',
- '/sub-RESP0384/ses-SITUATION1B/ieeg/sub-RESP0384_ses-SITUATION1B_task-acute_ieeg.vhdr',
- '/sub-RESP0384/ses-SITUATION1A/ieeg/sub-RESP0384_ses-SITUATION1A_task-acute_channels.tsv',
- '/sub-RESP0384/ses-SITUATION1A/ieeg/sub-RESP0384_ses-SITUATION1A_electrodes.tsv',
- '/sub-RESP0384/ses-SITUATION1A/ieeg/sub-RESP0384_ses-SITUATION1A_task-acute_ieeg.vhdr',
- '/sub-RESP0384/ses-SITUATION1A/ieeg/sub-RESP0384_ses-SITUATION1A_task-acute_ieeg.json',
- '/sub-RESP0384/ses-SITUATION1A/ieeg/sub-RESP0384_ses-SITUATION1A_electrodes.json',
- '/sub-RESP0384/ses-SITUATION1A/ieeg/sub-RESP0384_ses-SITUATION1A_task-acute_ieeg.vmrk',
- '/sub-RESP0384/ses-SITUATION1A/ieeg/sub-RESP0384_ses-SITUATION1A_photo.jpg',
- '/sub-RESP0384/ses-SITUATION1A/ieeg/sub-RESP0384_ses-SITUATION1A_events.json',
- '/sub-RESP0384/ses-SITUATION1A/ieeg/sub-RESP0384_ses-SITUATION1A_task-acute_events.tsv',
- '/sub-RESP0384/ses-SITUATION1A/ieeg/sub-RESP0384_ses-SITUATION1A_task-acute_ieeg.eeg',
- '/sub-RESP0384/ses-SITUATION1A/ieeg/sub-RESP0384_ses-SITUATION1A_coordsystem.json',
- '/sub-RESP0356/sub-RESP0356_scans.json',
- '/sub-RESP0356/sub-RESP0356_scans.tsv',
- '/sub-RESP0356/ses-SITUATION3A/ieeg/sub-RESP0356_ses-SITUATION3A_task-acute_ieeg.json',
- '/sub-RESP0356/ses-SITUATION3A/ieeg/sub-RESP0356_ses-SITUATION3A_task-acute_ieeg.vhdr',
- '/sub-RESP0356/ses-SITUATION3A/ieeg/sub-RESP0356_ses-SITUATION3A_task-acute_ieeg.vmrk',
- '/sub-RESP0356/ses-SITUATION3A/ieeg/sub-RESP0356_ses-SITUATION3A_task-acute_events.tsv',
- '/sub-RESP0356/ses-SITUATION3A/ieeg/sub-RESP0356_ses-SITUATION3A_coordsystem.json',
- '/sub-RESP0356/ses-SITUATION3A/ieeg/sub-RESP0356_ses-SITUATION3A_electrodes.json',
- '/sub-RESP0356/ses-SITUATION3A/ieeg/sub-RESP0356_ses-SITUATION3A_task-acute_ieeg.eeg',
- '/sub-RESP0356/ses-SITUATION3A/ieeg/sub-RESP0356_ses-SITUATION3A_events.json',
- '/sub-RESP0356/ses-SITUATION3A/ieeg/sub-RESP0356_ses-SITUATION3A_photo.jpg',
- '/sub-RESP0356/ses-SITUATION3A/ieeg/sub-RESP0356_ses-SITUATION3A_electrodes.tsv',
- '/sub-RESP0356/ses-SITUATION3A/ieeg/sub-RESP0356_ses-SITUATION3A_task-acute_channels.tsv',
- '/sub-RESP0356/ses-SITUATION2APART2/ieeg/sub-RESP0356_ses-SITUATION2APART2_task-acute_ieeg.vmrk',
- '/sub-RESP0356/ses-SITUATION2APART2/ieeg/sub-RESP0356_ses-SITUATION2APART2_events.json',
- '/sub-RESP0356/ses-SITUATION2APART2/ieeg/sub-RESP0356_ses-SITUATION2APART2_task-acute_channels.tsv',
- '/sub-RESP0356/ses-SITUATION2APART2/ieeg/sub-RESP0356_ses-SITUATION2APART2_electrodes.json',
- '/sub-RESP0356/ses-SITUATION2APART2/ieeg/sub-RESP0356_ses-SITUATION2APART2_task-acute_ieeg.vhdr',
- '/sub-RESP0356/ses-SITUATION2APART2/ieeg/sub-RESP0356_ses-SITUATION2APART2_task-acute_ieeg.eeg',
- '/sub-RESP0356/ses-SITUATION2APART2/ieeg/sub-RESP0356_ses-SITUATION2APART2_task-acute_ieeg.json',
- '/sub-RESP0356/ses-SITUATION2APART2/ieeg/sub-RESP0356_ses-SITUATION2APART2_electrodes.tsv',
- '/sub-RESP0356/ses-SITUATION2APART2/ieeg/sub-RESP0356_ses-SITUATION2APART2_coordsystem.json',
- '/sub-RESP0356/ses-SITUATION2APART2/ieeg/sub-RESP0356_ses-SITUATION2APART2_task-acute_events.tsv',
- '/sub-RESP0356/ses-SITUATION2APART1/ieeg/sub-RESP0356_ses-SITUATION2APART1_electrodes.tsv',
- '/sub-RESP0356/ses-SITUATION2APART1/ieeg/sub-RESP0356_ses-SITUATION2APART1_photo.jpg',
- '/sub-RESP0356/ses-SITUATION2APART1/ieeg/sub-RESP0356_ses-SITUATION2APART1_task-acute_ieeg.vhdr',
- '/sub-RESP0356/ses-SITUATION2APART1/ieeg/sub-RESP0356_ses-SITUATION2APART1_task-acute_channels.tsv',
- '/sub-RESP0356/ses-SITUATION2APART1/ieeg/sub-RESP0356_ses-SITUATION2APART1_task-acute_events.tsv',
- '/sub-RESP0356/ses-SITUATION2APART1/ieeg/sub-RESP0356_ses-SITUATION2APART1_electrodes.json',
- '/sub-RESP0356/ses-SITUATION2APART1/ieeg/sub-RESP0356_ses-SITUATION2APART1_events.json',
- '/sub-RESP0356/ses-SITUATION2APART1/ieeg/sub-RESP0356_ses-SITUATION2APART1_coordsystem.json',
- '/sub-RESP0356/ses-SITUATION2APART1/ieeg/sub-RESP0356_ses-SITUATION2APART1_task-acute_ieeg.json',
- '/sub-RESP0356/ses-SITUATION2APART1/ieeg/sub-RESP0356_ses-SITUATION2APART1_task-acute_ieeg.vmrk',
- '/sub-RESP0356/ses-SITUATION2APART1/ieeg/sub-RESP0356_ses-SITUATION2APART1_task-acute_ieeg.eeg',
- '/sub-RESP0356/ses-SITUATION1B/ieeg/sub-RESP0356_ses-SITUATION1B_task-acute_ieeg.json',
- '/sub-RESP0356/ses-SITUATION1B/ieeg/sub-RESP0356_ses-SITUATION1B_electrodes.tsv',
- '/sub-RESP0356/ses-SITUATION1B/ieeg/sub-RESP0356_ses-SITUATION1B_electrodes.json',
- '/sub-RESP0356/ses-SITUATION1B/ieeg/sub-RESP0356_ses-SITUATION1B_task-acute_ieeg.vhdr',
- '/sub-RESP0356/ses-SITUATION1B/ieeg/sub-RESP0356_ses-SITUATION1B_task-acute_ieeg.vmrk',
- '/sub-RESP0356/ses-SITUATION1B/ieeg/sub-RESP0356_ses-SITUATION1B_coordsystem.json',
- '/sub-RESP0356/ses-SITUATION1B/ieeg/sub-RESP0356_ses-SITUATION1B_photo.jpg',
- '/sub-RESP0356/ses-SITUATION1B/ieeg/sub-RESP0356_ses-SITUATION1B_events.json',
- '/sub-RESP0356/ses-SITUATION1B/ieeg/sub-RESP0356_ses-SITUATION1B_task-acute_channels.tsv',
- '/sub-RESP0356/ses-SITUATION1B/ieeg/sub-RESP0356_ses-SITUATION1B_task-acute_ieeg.eeg',
- '/sub-RESP0356/ses-SITUATION1B/ieeg/sub-RESP0356_ses-SITUATION1B_task-acute_events.tsv',
- '/sub-RESP0356/ses-SITUATION1A/ieeg/sub-RESP0356_ses-SITUATION1A_task-acute_channels.tsv',
- '/sub-RESP0356/ses-SITUATION1A/ieeg/sub-RESP0356_ses-SITUATION1A_photo.jpg',
- '/sub-RESP0356/ses-SITUATION1A/ieeg/sub-RESP0356_ses-SITUATION1A_coordsystem.json',
- '/sub-RESP0356/ses-SITUATION1A/ieeg/sub-RESP0356_ses-SITUATION1A_task-acute_ieeg.eeg',
- '/sub-RESP0356/ses-SITUATION1A/ieeg/sub-RESP0356_ses-SITUATION1A_task-acute_ieeg.vmrk',
- '/sub-RESP0356/ses-SITUATION1A/ieeg/sub-RESP0356_ses-SITUATION1A_task-acute_events.tsv',
- '/sub-RESP0356/ses-SITUATION1A/ieeg/sub-RESP0356_ses-SITUATION1A_events.json',
- '/sub-RESP0356/ses-SITUATION1A/ieeg/sub-RESP0356_ses-SITUATION1A_electrodes.json',
- '/sub-RESP0356/ses-SITUATION1A/ieeg/sub-RESP0356_ses-SITUATION1A_task-acute_ieeg.vhdr',
- '/sub-RESP0356/ses-SITUATION1A/ieeg/sub-RESP0356_ses-SITUATION1A_electrodes.tsv',
- '/sub-RESP0356/ses-SITUATION1A/ieeg/sub-RESP0356_ses-SITUATION1A_task-acute_ieeg.json',
- '/sourcedata/sub-RESP0059/ses-SITUATION3A/ieeg/sub-RESP0059_ses-SITUATION3A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0059/ses-SITUATION4A/ieeg/sub-RESP0059_ses-SITUATION4A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0059/ses-SITUATION2A/ieeg/sub-RESP0059_ses-SITUATION2A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0059/ses-SITUATION1B/ieeg/sub-RESP0059_ses-SITUATION1B_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0059/ses-SITUATION1A/ieeg/sub-RESP0059_ses-SITUATION1A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0280/ses-SITUATION3A/ieeg/sub-RESP0280_ses-SITUATION3A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0280/ses-SITUATION2A/ieeg/sub-RESP0280_ses-SITUATION2A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0280/ses-SITUATION1B/ieeg/sub-RESP0280_ses-SITUATION1B_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0280/ses-SITUATION1A/ieeg/sub-RESP0280_ses-SITUATION1A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0465/ses-SITUATION3G/ieeg/sub-RESP0465_ses-SITUATION3G_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0465/ses-SITUATION3C/ieeg/sub-RESP0465_ses-SITUATION3C_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0465/ses-SITUATION3E/ieeg/sub-RESP0465_ses-SITUATION3E_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0465/ses-SITUATION3A/ieeg/sub-RESP0465_ses-SITUATION3A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0465/ses-SITUATION3F/ieeg/sub-RESP0465_ses-SITUATION3F_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0465/ses-SITUATION2A/ieeg/sub-RESP0465_ses-SITUATION2A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0465/ses-SITUATION2B/ieeg/sub-RESP0465_ses-SITUATION2B_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0465/ses-SITUATION3D/ieeg/sub-RESP0465_ses-SITUATION3D_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0465/ses-SITUATION3B/ieeg/sub-RESP0465_ses-SITUATION3B_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0465/ses-SITUATION1A/ieeg/sub-RESP0465_ses-SITUATION1A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0301/ses-SITUATION2A/ieeg/sub-RESP0301_ses-SITUATION2A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0301/ses-SITUATION2B/ieeg/sub-RESP0301_ses-SITUATION2B_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0301/ses-SITUATION2C/ieeg/sub-RESP0301_ses-SITUATION2C_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0301/ses-SITUATION1B/ieeg/sub-RESP0301_ses-SITUATION1B_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0301/ses-SITUATION1A/ieeg/sub-RESP0301_ses-SITUATION1A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0384/ses-SITUATION2D/ieeg/sub-RESP0384_ses-SITUATION2D_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0384/ses-SITUATION1D/ieeg/sub-RESP0384_ses-SITUATION1D_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0384/ses-SITUATION3A/ieeg/sub-RESP0384_ses-SITUATION3A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0384/ses-SITUATION2A/ieeg/sub-RESP0384_ses-SITUATION2A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0384/ses-SITUATION2B/ieeg/sub-RESP0384_ses-SITUATION2B_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0384/ses-SITUATION1C/ieeg/sub-RESP0384_ses-SITUATION1C_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0384/ses-SITUATION2C/ieeg/sub-RESP0384_ses-SITUATION2C_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0384/ses-SITUATION1B/ieeg/sub-RESP0384_ses-SITUATION1B_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0384/ses-SITUATION1A/ieeg/sub-RESP0384_ses-SITUATION1A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0356/ses-SITUATION3A/ieeg/sub-RESP0356_ses-SITUATION3A_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0356/ses-SITUATION2APART2/ieeg/sub-RESP0356_ses-SITUATION2APART2_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0356/ses-SITUATION2APART1/ieeg/sub-RESP0356_ses-SITUATION2APART1_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0356/ses-SITUATION1B/ieeg/sub-RESP0356_ses-SITUATION1B_task-acute_ieeg.TRC',
- '/sourcedata/sub-RESP0356/ses-SITUATION1A/ieeg/sub-RESP0356_ses-SITUATION1A_task-acute_ieeg.TRC',
-]
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/CHANGES b/legacy/bids-validator/tests/data/ds006_missing-session/CHANGES
deleted file mode 100644
index 63dbfaca..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/CHANGES
+++ /dev/null
@@ -1,3 +0,0 @@
-1.0.0 2013-04-16
-
- - initial release
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/README b/legacy/bids-validator/tests/data/ds006_missing-session/README
deleted file mode 100644
index 89646a6a..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/README
+++ /dev/null
@@ -1,14 +0,0 @@
-This dataset was obtained from the OpenfMRI project (http://www.openfmri.org).
-Accession #: ds006A
-Description: Living-nonliving decision with plain or mirror-reversed text
-3/21/2013: Updated release with QA information
-2/19/2016: Updated orientation information in NIFTI header for improved left-right determination.
-
-This dataset is made available under the Public Domain Dedication and License
-v1.0, whose full text can be found at
-http://www.opendatacommons.org/licenses/pddl/1.0/.
-We hope that all users will follow the ODC Attribution/Share-Alike
-Community Norms (http://www.opendatacommons.org/norms/odc-by-sa/);
-in particular, while not legally required, we hope that all users
-of the data will acknowledge the OpenfMRI project and NSF Grant
-OCI-1131441 (R. Poldrack, PI) in any publications.
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/dataset_description.json b/legacy/bids-validator/tests/data/ds006_missing-session/dataset_description.json
deleted file mode 100644
index ab4f1715..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/dataset_description.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "BIDSVersion": "1.0.0",
- "License": "This dataset is made available under the Public Domain Dedication and License \nv1.0, whose full text can be found at \nhttp://www.opendatacommons.org/licenses/pddl/1.0/. \nWe hope that all users will follow the ODC Attribution/Share-Alike \nCommunity Norms (http://www.opendatacommons.org/norms/odc-by-sa/); \nin particular, while not legally required, we hope that all users \nof the data will acknowledge the OpenfMRI project and NSF Grant \nOCI-1131441 (R. Poldrack, PI) in any publications.",
- "Name": "Living-nonliving decision with plain or mirror-reversed text"
-}
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/participants.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/participants.tsv
deleted file mode 100644
index 794ba5a8..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/participants.tsv
+++ /dev/null
@@ -1,15 +0,0 @@
-participant_id sex age
-sub-01 F 21
-sub-02 F 23
-sub-03 M 19
-sub-04 M 21
-sub-05 F 23
-sub-06 F 21
-sub-07 F 35
-sub-08 F 19
-sub-09 F 22
-sub-10 M 23
-sub-11 M 22
-sub-12 F 26
-sub-13 M 20
-sub-14 F 24
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/anat/sub-01_ses-post_T1w.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/anat/sub-01_ses-post_T1w.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/anat/sub-01_ses-post_inplaneT2.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/anat/sub-01_ses-post_inplaneT2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_events.tsv
deleted file mode 100644
index 680b1ec6..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 pl_ns
-6.200 3.250 junk
-11.200 3.250 pl_ns
-17.000 3.250 junk
-21.900 3.250 mr_ns
-28.200 3.250 mr_ns
-37.600 3.250 mr_ns
-41.600 3.250 mr_ns
-50.600 3.250 pl_sw
-56.400 3.250 pl_ns
-60.900 3.250 pl_ns
-66.100 3.250 pl_ns
-71.200 3.250 mr_sw
-81.600 3.250 mr_ns
-85.600 3.250 mr_ns
-92.800 3.250 mr_ns
-97.800 3.250 pl_sw
-104.100 3.250 mr_sw
-114.500 3.250 mr_ns
-121.500 3.250 pl_sw
-128.000 3.250 pl_ns
-132.000 3.250 mr_sw
-136.900 3.250 mr_ns
-142.100 3.250 mr_ns
-146.400 3.250 pl_sw
-154.100 3.250 pl_ns
-159.900 3.250 pl_ns
-167.500 3.250 mr_sw
-172.600 3.250 pl_sw
-181.200 3.250 pl_ns
-186.000 3.250 pl_ns
-195.400 3.250 junk
-201.600 3.250 pl_ns
-209.200 3.250 mr_sw
-215.200 3.250 mr_ns
-220.900 3.250 pl_sw
-226.000 3.250 pl_ns
-231.600 3.250 pl_ns
-241.200 3.250 mr_sw
-246.800 3.250 mr_ns
-255.400 3.250 mr_ns
-261.200 3.250 mr_ns
-269.900 3.250 pl_sw
-276.800 3.250 pl_ns
-281.500 3.250 pl_ns
-286.200 3.250 pl_ns
-293.200 3.250 mr_sw
-298.100 3.250 mr_ns
-306.500 3.250 mr_ns
-312.100 3.250 pl_sw
-316.600 3.250 pl_ns
-326.800 3.250 mr_sw
-336.000 3.250 mr_ns
-340.400 3.250 mr_ns
-349.200 3.250 pl_sw
-357.900 3.250 junk
-361.900 3.250 mr_sw
-366.600 3.250 mr_ns
-371.000 3.250 pl_sw
-375.000 3.250 pl_ns
-384.400 3.250 pl_ns
-389.800 3.250 mr_sw
-396.400 3.250 mr_ns
-402.100 3.250 mr_ns
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_events.tsv
deleted file mode 100644
index 425cdf06..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 pl_ns
-4.900 3.250 pl_ns
-9.000 3.250 pl_ns
-13.100 3.250 pl_ns
-20.400 3.250 mr_sw
-30.100 3.250 pl_sw
-40.100 3.250 pl_ns
-45.000 3.250 pl_ns
-49.100 3.250 mr_sw
-57.400 3.250 mr_ns
-61.800 3.250 mr_ns
-71.500 3.250 mr_ns
-79.000 3.250 mr_ns
-85.800 3.250 pl_sw
-92.900 3.250 junk
-99.600 3.250 junk
-105.600 3.250 pl_ns
-109.900 3.250 mr_sw
-119.400 3.250 mr_ns
-123.800 3.250 mr_ns
-129.000 3.250 mr_ns
-135.900 3.250 pl_sw
-142.800 3.250 pl_ns
-148.900 3.250 mr_sw
-153.000 3.250 mr_ns
-157.100 3.250 mr_ns
-161.800 3.250 mr_ns
-166.900 3.250 pl_sw
-172.100 3.250 pl_ns
-180.200 3.250 mr_sw
-187.900 3.250 mr_ns
-199.200 3.250 pl_sw
-204.600 3.250 pl_ns
-208.800 3.250 pl_ns
-213.200 3.250 pl_ns
-219.500 3.250 pl_ns
-224.800 3.250 mr_sw
-228.800 3.250 mr_ns
-233.500 3.250 pl_sw
-239.600 3.250 pl_ns
-245.500 3.250 pl_ns
-255.400 3.250 mr_sw
-259.600 3.250 mr_ns
-263.900 3.250 mr_ns
-274.100 3.250 pl_sw
-279.400 3.250 pl_ns
-284.100 3.250 pl_ns
-290.200 3.250 junk
-296.200 3.250 junk
-304.500 3.250 pl_sw
-310.400 3.250 pl_ns
-318.500 3.250 pl_ns
-328.800 3.250 junk
-337.100 3.250 junk
-341.200 3.250 mr_ns
-345.900 3.250 pl_sw
-350.200 3.250 mr_sw
-358.000 3.250 mr_ns
-363.500 3.250 mr_ns
-367.900 3.250 pl_sw
-374.600 3.250 pl_ns
-379.200 3.250 mr_sw
-383.200 3.250 mr_ns
-391.800 3.250 mr_ns
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_events.tsv
deleted file mode 100644
index d12a5797..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 pl_ns
-5.800 3.250 pl_ns
-10.200 3.250 junk
-15.000 3.250 junk
-22.200 3.250 mr_sw
-27.200 3.250 junk
-33.500 3.250 mr_ns
-37.600 3.250 mr_ns
-42.200 3.250 mr_ns
-51.200 3.250 pl_sw
-55.200 3.250 pl_ns
-60.500 3.250 junk
-66.800 3.250 mr_ns
-71.900 3.250 mr_ns
-75.900 3.250 mr_ns
-82.400 3.250 pl_sw
-89.100 3.250 pl_ns
-95.100 3.250 pl_ns
-99.600 3.250 pl_ns
-104.900 3.250 pl_ns
-110.400 3.250 mr_sw
-117.100 3.250 mr_ns
-121.400 3.250 pl_sw
-129.400 3.250 pl_ns
-136.800 3.250 mr_sw
-141.200 3.250 junk
-152.000 3.250 junk
-162.100 3.250 mr_sw
-168.600 3.250 mr_ns
-172.600 3.250 pl_sw
-177.200 3.250 pl_ns
-182.500 3.250 mr_sw
-193.200 3.250 mr_ns
-197.200 3.250 mr_ns
-201.200 3.250 mr_ns
-206.600 3.250 pl_sw
-211.000 3.250 junk
-215.800 3.250 pl_ns
-220.800 3.250 mr_sw
-229.500 3.250 junk
-234.000 3.250 mr_ns
-240.200 3.250 pl_sw
-247.900 3.250 pl_ns
-252.100 3.250 pl_ns
-256.500 3.250 pl_ns
-262.600 3.250 mr_sw
-270.600 3.250 pl_sw
-276.200 3.250 pl_ns
-283.600 3.250 pl_ns
-289.800 3.250 junk
-298.500 3.250 mr_ns
-308.500 3.250 mr_ns
-314.100 3.250 pl_sw
-320.500 3.250 junk
-326.100 3.250 pl_ns
-336.000 3.250 mr_sw
-343.900 3.250 mr_ns
-354.400 3.250 mr_ns
-359.800 3.250 junk
-364.900 3.250 pl_ns
-369.600 3.250 pl_ns
-373.600 3.250 mr_sw
-378.800 3.250 mr_ns
-384.100 3.250 junk
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_events.tsv
deleted file mode 100644
index ae71d5d1..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 pl_ns
-4.800 3.250 pl_ns
-8.800 3.250 pl_ns
-14.100 3.250 pl_ns
-18.900 3.250 pl_ns
-30.100 3.250 mr_sw
-35.200 3.250 junk
-39.500 3.250 mr_ns
-45.600 3.250 mr_ns
-51.500 3.250 mr_ns
-55.500 3.250 pl_sw
-59.600 3.250 mr_sw
-64.000 3.250 mr_ns
-73.200 3.250 mr_ns
-78.100 3.250 pl_sw
-82.800 3.250 pl_ns
-88.400 3.250 pl_ns
-93.500 3.250 mr_sw
-100.100 3.250 mr_ns
-105.500 3.250 mr_ns
-113.800 3.250 pl_sw
-123.500 3.250 pl_ns
-129.800 3.250 mr_sw
-139.900 3.250 mr_ns
-144.500 3.250 mr_ns
-148.500 3.250 mr_ns
-155.200 3.250 pl_sw
-164.200 3.250 pl_ns
-170.100 3.250 pl_ns
-176.500 3.250 mr_sw
-180.800 3.250 pl_sw
-185.100 3.250 pl_ns
-189.500 3.250 pl_ns
-193.600 3.250 pl_ns
-199.500 3.250 mr_sw
-206.100 3.250 mr_ns
-213.000 3.250 mr_ns
-221.500 3.250 pl_sw
-227.900 3.250 pl_ns
-232.200 3.250 mr_sw
-240.200 3.250 mr_ns
-247.500 3.250 pl_sw
-251.500 3.250 pl_ns
-256.100 3.250 mr_sw
-266.000 3.250 mr_ns
-270.600 3.250 mr_ns
-276.100 3.250 mr_ns
-282.000 3.250 pl_sw
-287.400 3.250 pl_ns
-296.200 3.250 pl_ns
-300.500 3.250 junk
-306.900 3.250 mr_sw
-318.400 3.250 mr_ns
-327.100 3.250 mr_ns
-332.000 3.250 pl_sw
-337.400 3.250 pl_ns
-341.400 3.250 pl_ns
-348.000 3.250 mr_sw
-357.500 3.250 mr_ns
-364.800 3.250 pl_sw
-371.900 3.250 pl_ns
-376.200 3.250 pl_ns
-381.400 3.250 junk
-385.400 3.250 junk
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/anat/sub-02_ses-post_T1w.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/anat/sub-02_ses-post_T1w.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/anat/sub-02_ses-post_inplaneT2.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/anat/sub-02_ses-post_inplaneT2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_events.tsv
deleted file mode 100644
index 4f963e33..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 junk
-4.800 3.250 pl_ns
-8.800 3.250 pl_ns
-14.100 3.250 pl_ns
-18.900 3.250 pl_ns
-30.100 3.250 mr_sw
-35.200 3.250 mr_ns
-39.500 3.250 mr_ns
-45.600 3.250 mr_ns
-51.500 3.250 mr_ns
-55.500 3.250 pl_sw
-59.600 3.250 mr_sw
-64.000 3.250 mr_ns
-73.200 3.250 mr_ns
-78.100 3.250 pl_sw
-82.800 3.250 pl_ns
-88.400 3.250 pl_ns
-93.500 3.250 mr_sw
-100.100 3.250 mr_ns
-105.500 3.250 mr_ns
-113.800 3.250 pl_sw
-123.500 3.250 pl_ns
-129.800 3.250 mr_sw
-139.900 3.250 mr_ns
-144.500 3.250 mr_ns
-148.500 3.250 mr_ns
-155.200 3.250 pl_sw
-164.200 3.250 pl_ns
-170.100 3.250 pl_ns
-176.500 3.250 mr_sw
-180.800 3.250 pl_sw
-185.100 3.250 pl_ns
-189.500 3.250 pl_ns
-193.600 3.250 pl_ns
-199.500 3.250 mr_sw
-206.100 3.250 mr_ns
-213.000 3.250 mr_ns
-221.500 3.250 pl_sw
-227.900 3.250 pl_ns
-232.200 3.250 mr_sw
-240.200 3.250 mr_ns
-247.500 3.250 pl_sw
-251.500 3.250 pl_ns
-256.100 3.250 mr_sw
-266.000 3.250 mr_ns
-270.600 3.250 mr_ns
-276.100 3.250 junk
-282.000 3.250 pl_sw
-287.400 3.250 pl_ns
-296.200 3.250 junk
-300.500 3.250 pl_ns
-306.900 3.250 mr_sw
-318.400 3.250 mr_ns
-327.100 3.250 mr_ns
-332.000 3.250 pl_sw
-337.400 3.250 pl_ns
-341.400 3.250 pl_ns
-348.000 3.250 mr_sw
-357.500 3.250 mr_ns
-364.800 3.250 pl_sw
-371.900 3.250 pl_ns
-376.200 3.250 pl_ns
-381.400 3.250 mr_sw
-385.400 3.250 mr_ns
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_events.tsv
deleted file mode 100644
index 7a4c50fb..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 pl_ns
-6.200 3.250 pl_ns
-11.200 3.250 pl_ns
-17.000 3.250 mr_sw
-21.900 3.250 mr_ns
-28.200 3.250 mr_ns
-37.600 3.250 mr_ns
-41.600 3.250 mr_ns
-50.600 3.250 pl_sw
-56.400 3.250 pl_ns
-60.900 3.250 pl_ns
-66.100 3.250 pl_ns
-71.200 3.250 mr_sw
-81.600 3.250 mr_ns
-85.600 3.250 mr_ns
-92.800 3.250 mr_ns
-97.800 3.250 pl_sw
-104.100 3.250 mr_sw
-114.500 3.250 mr_ns
-121.500 3.250 pl_sw
-128.000 3.250 junk
-132.000 3.250 mr_sw
-136.900 3.250 mr_ns
-142.100 3.250 mr_ns
-146.400 3.250 pl_sw
-154.100 3.250 pl_ns
-159.900 3.250 pl_ns
-167.500 3.250 mr_sw
-172.600 3.250 pl_sw
-181.200 3.250 pl_ns
-186.000 3.250 pl_ns
-195.400 3.250 pl_ns
-201.600 3.250 pl_ns
-209.200 3.250 mr_sw
-215.200 3.250 mr_ns
-220.900 3.250 pl_sw
-226.000 3.250 pl_ns
-231.600 3.250 pl_ns
-241.200 3.250 mr_sw
-246.800 3.250 mr_ns
-255.400 3.250 mr_ns
-261.200 3.250 mr_ns
-269.900 3.250 pl_sw
-276.800 3.250 pl_ns
-281.500 3.250 pl_ns
-286.200 3.250 pl_ns
-293.200 3.250 mr_sw
-298.100 3.250 mr_ns
-306.500 3.250 mr_ns
-312.100 3.250 pl_sw
-316.600 3.250 pl_ns
-326.800 3.250 mr_sw
-336.000 3.250 mr_ns
-340.400 3.250 mr_ns
-349.200 3.250 pl_sw
-357.900 3.250 pl_ns
-361.900 3.250 mr_sw
-366.600 3.250 mr_ns
-371.000 3.250 pl_sw
-375.000 3.250 pl_ns
-384.400 3.250 pl_ns
-389.800 3.250 mr_sw
-396.400 3.250 mr_ns
-402.100 3.250 mr_ns
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_events.tsv
deleted file mode 100644
index f443c91e..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 pl_ns
-5.900 3.250 pl_ns
-10.800 3.250 pl_ns
-20.600 3.250 pl_ns
-27.000 3.250 mr_sw
-34.800 3.250 mr_ns
-43.000 3.250 pl_sw
-48.100 3.250 pl_ns
-52.800 3.250 pl_ns
-60.900 3.250 mr_sw
-65.600 3.250 pl_sw
-70.900 3.250 pl_ns
-78.900 3.250 pl_ns
-83.200 3.250 pl_ns
-87.200 3.250 mr_sw
-96.000 3.250 mr_ns
-101.400 3.250 mr_ns
-107.000 3.250 mr_ns
-113.400 3.250 pl_sw
-119.600 3.250 pl_ns
-124.100 3.250 junk
-129.200 3.250 mr_sw
-139.800 3.250 mr_ns
-148.600 3.250 mr_ns
-156.100 3.250 mr_ns
-166.000 3.250 pl_sw
-170.000 3.250 mr_sw
-180.500 3.250 mr_ns
-184.800 3.250 mr_ns
-189.400 3.250 mr_ns
-198.100 3.250 mr_ns
-209.200 3.250 pl_sw
-217.800 3.250 pl_ns
-223.500 3.250 pl_ns
-229.200 3.250 mr_sw
-236.400 3.250 mr_ns
-242.000 3.250 pl_sw
-246.200 3.250 pl_ns
-250.600 3.250 mr_sw
-256.800 3.250 mr_ns
-267.000 3.250 pl_sw
-273.500 3.250 pl_ns
-279.500 3.250 mr_sw
-285.500 3.250 mr_ns
-292.200 3.250 mr_ns
-298.200 3.250 pl_sw
-302.800 3.250 pl_ns
-308.100 3.250 pl_ns
-312.400 3.250 mr_sw
-319.000 3.250 mr_ns
-327.000 3.250 mr_ns
-336.600 3.250 pl_sw
-340.800 3.250 pl_ns
-351.900 3.250 mr_sw
-357.800 3.250 mr_ns
-363.400 3.250 mr_ns
-372.900 3.250 pl_sw
-378.600 3.250 pl_ns
-383.400 3.250 pl_ns
-390.100 3.250 pl_ns
-394.200 3.250 pl_ns
-398.200 3.250 mr_sw
-404.400 3.250 mr_ns
-408.900 3.250 mr_ns
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_events.tsv
deleted file mode 100644
index 72be439d..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-post/func/sub-02_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 pl_ns
-5.800 3.250 pl_ns
-10.200 3.250 pl_ns
-15.000 3.250 pl_ns
-22.200 3.250 mr_sw
-27.200 3.250 mr_ns
-33.500 3.250 mr_ns
-37.600 3.250 mr_ns
-42.200 3.250 mr_ns
-51.200 3.250 pl_sw
-55.200 3.250 pl_ns
-60.500 3.250 mr_sw
-66.800 3.250 mr_ns
-71.900 3.250 mr_ns
-75.900 3.250 mr_ns
-82.400 3.250 pl_sw
-89.100 3.250 pl_ns
-95.100 3.250 pl_ns
-99.600 3.250 pl_ns
-104.900 3.250 pl_ns
-110.400 3.250 mr_sw
-117.100 3.250 mr_ns
-121.400 3.250 pl_sw
-129.400 3.250 junk
-136.800 3.250 mr_sw
-141.200 3.250 mr_ns
-152.000 3.250 pl_sw
-162.100 3.250 mr_sw
-168.600 3.250 mr_ns
-172.600 3.250 pl_sw
-177.200 3.250 pl_ns
-182.500 3.250 mr_sw
-193.200 3.250 mr_ns
-197.200 3.250 mr_ns
-201.200 3.250 mr_ns
-206.600 3.250 pl_sw
-211.000 3.250 pl_ns
-215.800 3.250 pl_ns
-220.800 3.250 mr_sw
-229.500 3.250 mr_ns
-234.000 3.250 junk
-240.200 3.250 pl_sw
-247.900 3.250 pl_ns
-252.100 3.250 pl_ns
-256.500 3.250 pl_ns
-262.600 3.250 mr_sw
-270.600 3.250 pl_sw
-276.200 3.250 pl_ns
-283.600 3.250 pl_ns
-289.800 3.250 mr_sw
-298.500 3.250 mr_ns
-308.500 3.250 mr_ns
-314.100 3.250 pl_sw
-320.500 3.250 pl_ns
-326.100 3.250 pl_ns
-336.000 3.250 mr_sw
-343.900 3.250 mr_ns
-354.400 3.250 mr_ns
-359.800 3.250 pl_sw
-364.900 3.250 pl_ns
-369.600 3.250 pl_ns
-373.600 3.250 mr_sw
-378.800 3.250 mr_ns
-384.100 3.250 mr_ns
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/anat/sub-02_ses-pre_T1w.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/anat/sub-02_ses-pre_T1w.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/anat/sub-02_ses-pre_inplaneT2.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/anat/sub-02_ses-pre_inplaneT2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_events.tsv
deleted file mode 100644
index 5fb62914..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 pl_ns
-4.800 3.250 pl_ns
-8.800 3.250 pl_ns
-14.100 3.250 pl_ns
-18.900 3.250 pl_ns
-30.100 3.250 mr_sw
-35.200 3.250 mr_ns
-39.500 3.250 mr_ns
-45.600 3.250 mr_ns
-51.500 3.250 mr_ns
-55.500 3.250 pl_sw
-59.600 3.250 mr_sw
-64.000 3.250 junk
-73.200 3.250 mr_ns
-78.100 3.250 junk
-82.800 3.250 pl_ns
-88.400 3.250 pl_ns
-93.500 3.250 mr_sw
-100.100 3.250 mr_ns
-105.500 3.250 mr_ns
-113.800 3.250 pl_sw
-123.500 3.250 pl_ns
-129.800 3.250 junk
-139.900 3.250 mr_ns
-144.500 3.250 mr_ns
-148.500 3.250 mr_ns
-155.200 3.250 pl_sw
-164.200 3.250 pl_ns
-170.100 3.250 pl_ns
-176.500 3.250 mr_sw
-180.800 3.250 pl_sw
-185.100 3.250 pl_ns
-189.500 3.250 pl_ns
-193.600 3.250 pl_ns
-199.500 3.250 mr_sw
-206.100 3.250 mr_ns
-213.000 3.250 mr_ns
-221.500 3.250 pl_sw
-227.900 3.250 pl_ns
-232.200 3.250 mr_sw
-240.200 3.250 mr_ns
-247.500 3.250 pl_sw
-251.500 3.250 pl_ns
-256.100 3.250 mr_sw
-266.000 3.250 mr_ns
-270.600 3.250 mr_ns
-276.100 3.250 mr_ns
-282.000 3.250 pl_sw
-287.400 3.250 pl_ns
-296.200 3.250 pl_ns
-300.500 3.250 pl_ns
-306.900 3.250 mr_sw
-318.400 3.250 mr_ns
-327.100 3.250 mr_ns
-332.000 3.250 pl_sw
-337.400 3.250 pl_ns
-341.400 3.250 pl_ns
-348.000 3.250 mr_sw
-357.500 3.250 mr_ns
-364.800 3.250 pl_sw
-371.900 3.250 pl_ns
-376.200 3.250 pl_ns
-381.400 3.250 mr_sw
-385.400 3.250 mr_ns
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_events.tsv
deleted file mode 100644
index 99060459..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-02_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 pl_ns
-6.200 3.250 pl_ns
-11.200 3.250 pl_ns
-17.000 3.250 mr_sw
-21.900 3.250 mr_ns
-28.200 3.250 mr_ns
-37.600 3.250 mr_ns
-41.600 3.250 mr_ns
-50.600 3.250 pl_sw
-56.400 3.250 pl_ns
-60.900 3.250 pl_ns
-66.100 3.250 pl_ns
-71.200 3.250 mr_sw
-81.600 3.250 junk
-85.600 3.250 mr_ns
-92.800 3.250 mr_ns
-97.800 3.250 pl_sw
-104.100 3.250 mr_sw
-114.500 3.250 mr_ns
-121.500 3.250 pl_sw
-128.000 3.250 pl_ns
-132.000 3.250 mr_sw
-136.900 3.250 mr_ns
-142.100 3.250 mr_ns
-146.400 3.250 pl_sw
-154.100 3.250 pl_ns
-159.900 3.250 pl_ns
-167.500 3.250 mr_sw
-172.600 3.250 pl_sw
-181.200 3.250 pl_ns
-186.000 3.250 pl_ns
-195.400 3.250 pl_ns
-201.600 3.250 pl_ns
-209.200 3.250 mr_sw
-215.200 3.250 mr_ns
-220.900 3.250 pl_sw
-226.000 3.250 pl_ns
-231.600 3.250 pl_ns
-241.200 3.250 mr_sw
-246.800 3.250 mr_ns
-255.400 3.250 mr_ns
-261.200 3.250 mr_ns
-269.900 3.250 pl_sw
-276.800 3.250 pl_ns
-281.500 3.250 pl_ns
-286.200 3.250 pl_ns
-293.200 3.250 mr_sw
-298.100 3.250 mr_ns
-306.500 3.250 mr_ns
-312.100 3.250 pl_sw
-316.600 3.250 pl_ns
-326.800 3.250 mr_sw
-336.000 3.250 mr_ns
-340.400 3.250 junk
-349.200 3.250 pl_sw
-357.900 3.250 pl_ns
-361.900 3.250 mr_sw
-366.600 3.250 mr_ns
-371.000 3.250 pl_sw
-375.000 3.250 pl_ns
-384.400 3.250 pl_ns
-389.800 3.250 mr_sw
-396.400 3.250 mr_ns
-402.100 3.250 mr_ns
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-03_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-03_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-03_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-03_events.tsv
deleted file mode 100644
index aa1443bd..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-03_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 pl_ns
-4.900 3.250 pl_ns
-9.000 3.250 pl_ns
-13.100 3.250 pl_ns
-20.400 3.250 mr_sw
-30.100 3.250 pl_sw
-40.100 3.250 pl_ns
-45.000 3.250 pl_ns
-49.100 3.250 mr_sw
-57.400 3.250 mr_ns
-61.800 3.250 mr_ns
-71.500 3.250 mr_ns
-79.000 3.250 junk
-85.800 3.250 pl_sw
-92.900 3.250 pl_ns
-99.600 3.250 pl_ns
-105.600 3.250 pl_ns
-109.900 3.250 mr_sw
-119.400 3.250 mr_ns
-123.800 3.250 mr_ns
-129.000 3.250 mr_ns
-135.900 3.250 pl_sw
-142.800 3.250 pl_ns
-148.900 3.250 mr_sw
-153.000 3.250 mr_ns
-157.100 3.250 junk
-161.800 3.250 mr_ns
-166.900 3.250 pl_sw
-172.100 3.250 pl_ns
-180.200 3.250 mr_sw
-187.900 3.250 mr_ns
-199.200 3.250 pl_sw
-204.600 3.250 pl_ns
-208.800 3.250 pl_ns
-213.200 3.250 pl_ns
-219.500 3.250 pl_ns
-224.800 3.250 mr_sw
-228.800 3.250 junk
-233.500 3.250 pl_sw
-239.600 3.250 pl_ns
-245.500 3.250 pl_ns
-255.400 3.250 mr_sw
-259.600 3.250 mr_ns
-263.900 3.250 mr_ns
-274.100 3.250 pl_sw
-279.400 3.250 pl_ns
-284.100 3.250 pl_ns
-290.200 3.250 mr_sw
-296.200 3.250 mr_ns
-304.500 3.250 pl_sw
-310.400 3.250 pl_ns
-318.500 3.250 pl_ns
-328.800 3.250 mr_sw
-337.100 3.250 mr_ns
-341.200 3.250 mr_ns
-345.900 3.250 pl_sw
-350.200 3.250 mr_sw
-358.000 3.250 mr_ns
-363.500 3.250 mr_ns
-367.900 3.250 junk
-374.600 3.250 pl_ns
-379.200 3.250 mr_sw
-383.200 3.250 mr_ns
-391.800 3.250 mr_ns
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-04_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-04_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-04_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-04_events.tsv
deleted file mode 100644
index b100128f..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-04_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 pl_ns
-4.500 3.250 pl_ns
-8.900 3.250 pl_ns
-14.100 3.250 mr_sw
-24.600 3.250 mr_ns
-31.900 3.250 pl_sw
-38.400 3.250 pl_ns
-44.000 3.250 pl_ns
-49.000 3.250 pl_ns
-54.400 3.250 mr_sw
-60.800 3.250 pl_sw
-70.100 3.250 pl_ns
-74.100 3.250 pl_ns
-79.200 3.250 pl_ns
-84.500 3.250 pl_ns
-88.500 3.250 mr_sw
-96.800 3.250 mr_ns
-102.900 3.250 mr_ns
-108.000 3.250 pl_sw
-115.100 3.250 mr_sw
-119.400 3.250 junk
-123.800 3.250 pl_sw
-127.800 3.250 pl_ns
-131.900 3.250 pl_ns
-137.900 3.250 mr_sw
-144.000 3.250 mr_ns
-148.400 3.250 mr_ns
-159.600 3.250 mr_ns
-167.500 3.250 pl_sw
-172.900 3.250 pl_ns
-177.100 3.250 pl_ns
-188.200 3.250 pl_ns
-193.100 3.250 mr_sw
-201.000 3.250 mr_ns
-205.000 3.250 mr_ns
-210.800 3.250 junk
-220.600 3.250 pl_ns
-228.900 3.250 mr_sw
-235.500 3.250 mr_ns
-245.900 3.250 pl_sw
-254.100 3.250 pl_ns
-260.600 3.250 pl_ns
-266.000 3.250 mr_sw
-277.400 3.250 mr_ns
-284.000 3.250 mr_ns
-291.200 3.250 mr_ns
-295.400 3.250 mr_ns
-302.900 3.250 pl_sw
-308.600 3.250 pl_ns
-317.200 3.250 mr_sw
-321.600 3.250 mr_ns
-326.800 3.250 mr_ns
-332.500 3.250 pl_sw
-336.500 3.250 pl_ns
-345.000 3.250 mr_sw
-354.400 3.250 mr_ns
-360.500 3.250 mr_ns
-367.000 3.250 mr_ns
-371.800 3.250 pl_sw
-377.600 3.250 pl_ns
-382.000 3.250 pl_ns
-386.200 3.250 mr_sw
-395.200 3.250 mr_ns
-402.000 3.250 mr_ns
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_events.tsv
deleted file mode 100644
index 3b008328..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-05_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 pl_ns
-5.900 3.250 junk
-10.800 3.250 junk
-20.600 3.250 junk
-27.000 3.250 junk
-34.800 3.250 junk
-43.000 3.250 junk
-48.100 3.250 junk
-52.800 3.250 junk
-60.900 3.250 junk
-65.600 3.250 junk
-70.900 3.250 junk
-78.900 3.250 junk
-83.200 3.250 junk
-87.200 3.250 junk
-96.000 3.250 junk
-101.400 3.250 mr_ns
-107.000 3.250 mr_ns
-113.400 3.250 pl_sw
-119.600 3.250 pl_ns
-124.100 3.250 pl_ns
-129.200 3.250 mr_sw
-139.800 3.250 mr_ns
-148.600 3.250 junk
-156.100 3.250 mr_ns
-166.000 3.250 pl_sw
-170.000 3.250 mr_sw
-180.500 3.250 mr_ns
-184.800 3.250 mr_ns
-189.400 3.250 mr_ns
-198.100 3.250 mr_ns
-209.200 3.250 pl_sw
-217.800 3.250 pl_ns
-223.500 3.250 pl_ns
-229.200 3.250 junk
-236.400 3.250 mr_ns
-242.000 3.250 pl_sw
-246.200 3.250 pl_ns
-250.600 3.250 mr_sw
-256.800 3.250 mr_ns
-267.000 3.250 pl_sw
-273.500 3.250 pl_ns
-279.500 3.250 mr_sw
-285.500 3.250 mr_ns
-292.200 3.250 mr_ns
-298.200 3.250 pl_sw
-302.800 3.250 pl_ns
-308.100 3.250 pl_ns
-312.400 3.250 mr_sw
-319.000 3.250 mr_ns
-327.000 3.250 mr_ns
-336.600 3.250 pl_sw
-340.800 3.250 pl_ns
-351.900 3.250 mr_sw
-357.800 3.250 mr_ns
-363.400 3.250 mr_ns
-372.900 3.250 junk
-378.600 3.250 pl_ns
-383.400 3.250 pl_ns
-390.100 3.250 pl_ns
-394.200 3.250 pl_ns
-398.200 3.250 mr_sw
-404.400 3.250 mr_ns
-408.900 3.250 mr_ns
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_bold.nii.gz b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_events.tsv b/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_events.tsv
deleted file mode 100644
index 10021626..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/sub-02/ses-pre/func/sub-02_ses-pre_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-06_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-0.000 3.250 pl_ns
-5.800 3.250 pl_ns
-10.200 3.250 pl_ns
-15.000 3.250 pl_ns
-22.200 3.250 mr_sw
-27.200 3.250 mr_ns
-33.500 3.250 mr_ns
-37.600 3.250 mr_ns
-42.200 3.250 mr_ns
-51.200 3.250 pl_sw
-55.200 3.250 pl_ns
-60.500 3.250 mr_sw
-66.800 3.250 junk
-71.900 3.250 mr_ns
-75.900 3.250 mr_ns
-82.400 3.250 pl_sw
-89.100 3.250 pl_ns
-95.100 3.250 pl_ns
-99.600 3.250 pl_ns
-104.900 3.250 pl_ns
-110.400 3.250 mr_sw
-117.100 3.250 mr_ns
-121.400 3.250 junk
-129.400 3.250 pl_ns
-136.800 3.250 mr_sw
-141.200 3.250 mr_ns
-152.000 3.250 pl_sw
-162.100 3.250 mr_sw
-168.600 3.250 mr_ns
-172.600 3.250 pl_sw
-177.200 3.250 pl_ns
-182.500 3.250 mr_sw
-193.200 3.250 mr_ns
-197.200 3.250 mr_ns
-201.200 3.250 junk
-206.600 3.250 pl_sw
-211.000 3.250 pl_ns
-215.800 3.250 pl_ns
-220.800 3.250 mr_sw
-229.500 3.250 mr_ns
-234.000 3.250 mr_ns
-240.200 3.250 pl_sw
-247.900 3.250 pl_ns
-252.100 3.250 pl_ns
-256.500 3.250 pl_ns
-262.600 3.250 mr_sw
-270.600 3.250 pl_sw
-276.200 3.250 pl_ns
-283.600 3.250 pl_ns
-289.800 3.250 mr_sw
-298.500 3.250 mr_ns
-308.500 3.250 mr_ns
-314.100 3.250 pl_sw
-320.500 3.250 pl_ns
-326.100 3.250 pl_ns
-336.000 3.250 mr_sw
-343.900 3.250 mr_ns
-354.400 3.250 mr_ns
-359.800 3.250 pl_sw
-364.900 3.250 pl_ns
-369.600 3.250 pl_ns
-373.600 3.250 mr_sw
-378.800 3.250 mr_ns
-384.100 3.250 mr_ns
diff --git a/legacy/bids-validator/tests/data/ds006_missing-session/task-livingnonlivingdecisionwithplainormirrorreversedtext_bold.json b/legacy/bids-validator/tests/data/ds006_missing-session/task-livingnonlivingdecisionwithplainormirrorreversedtext_bold.json
deleted file mode 100644
index fad8d9c0..00000000
--- a/legacy/bids-validator/tests/data/ds006_missing-session/task-livingnonlivingdecisionwithplainormirrorreversedtext_bold.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "RepetitionTime": 2.0,
- "TaskName": "living-nonliving decision with plain or mirror-reversed text"
-}
diff --git a/legacy/bids-validator/tests/data/empty_files/CHANGES b/legacy/bids-validator/tests/data/empty_files/CHANGES
deleted file mode 100644
index 45b3d2c2..00000000
--- a/legacy/bids-validator/tests/data/empty_files/CHANGES
+++ /dev/null
@@ -1,5 +0,0 @@
-Revision history for OpenfMRI dataset ds000246
-
-1.0.0 2017-11-08
-
- - Initial release
diff --git a/legacy/bids-validator/tests/data/empty_files/participants.tsv b/legacy/bids-validator/tests/data/empty_files/participants.tsv
deleted file mode 100644
index 8a621551..00000000
--- a/legacy/bids-validator/tests/data/empty_files/participants.tsv
+++ /dev/null
@@ -1,4 +0,0 @@
-participant_id age sex dominant_hand
-sub-emptyroom n/a n/a n/a
-sub-0001 25 Male Right
-
diff --git a/legacy/bids-validator/tests/data/empty_files/sub-0001/meg/sub-0001_task-AEF_run-01_meg.ds/BadChannels b/legacy/bids-validator/tests/data/empty_files/sub-0001/meg/sub-0001_task-AEF_run-01_meg.ds/BadChannels
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/empty_files/sub-0001/meg/sub-0001_task-AEF_run-01_meg.ds/sub-0001_task-AEF_run-01_meg.meg4 b/legacy/bids-validator/tests/data/empty_files/sub-0001/meg/sub-0001_task-AEF_run-01_meg.ds/sub-0001_task-AEF_run-01_meg.meg4
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/empty_files/sub-0001/sub-0001_scans.tsv b/legacy/bids-validator/tests/data/empty_files/sub-0001/sub-0001_scans.tsv
deleted file mode 100644
index bcfecf70..00000000
--- a/legacy/bids-validator/tests/data/empty_files/sub-0001/sub-0001_scans.tsv
+++ /dev/null
@@ -1,3 +0,0 @@
-filename acq_time
-meg/sub-0001_task-AEF_run-01_meg.ds 1800-01-01T09:43:00
-meg/sub-0001_task-AEF_run-02_meg.ds 1800-01-01T09:51:00
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/dataset_description.json b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/dataset_description.json
deleted file mode 100644
index cce76c7f..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/dataset_description.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "BIDSVersion": "1.0.0rc3",
- "Name": "7t_trt"
-}
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/participants.tsv b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/participants.tsv
deleted file mode 100644
index 0c9cc661..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/participants.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-participant_id sex age_at_first_scan_years number_of_scans_before handedness
-sub-01 F 29 17 100
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/anat/sub-01_ses-1_T1map.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/anat/sub-01_ses-1_T1map.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/anat/sub-01_ses-1_T1w.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/anat/sub-01_ses-1_T1w.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-1_fieldmap.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-1_fieldmap.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-1_magnitude1.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-1_magnitude1.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-1_magnitude2.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-1_magnitude2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.json b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.json
deleted file mode 100644
index 2fba548b..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "EchoTime2": 0.00702,
- "EchoTime1": 0.006,
- "IntendedFor": "ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_bold.nii.gz"
-}
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-2_magnitude1.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-2_magnitude1.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-2_magnitude2.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-2_magnitude2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.json b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.json
deleted file mode 100644
index e1364865..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "EchoTime2": 0.00702,
- "EchoTime1": 0.006,
- "IntendedFor": "ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_bold.nii.gz"
-}
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_bold.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_physio.tsv.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_bold.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_physio.tsv.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-prefrontal_bold.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-prefrontal_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-prefrontal_physio.tsv.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-prefrontal_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/sub-01_ses-1_scans.tsv b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/sub-01_ses-1_scans.tsv
deleted file mode 100644
index 76ab17c6..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-1/sub-01_ses-1_scans.tsv
+++ /dev/null
@@ -1,4 +0,0 @@
-filename positive negative future past myself people surroundings vigilance images words specific_vague intrusive
-func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_bold.nii.gz 90 0 100 100 80 100 100 95 0 100 90 30
-func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_bold.nii.gz 85 0 90 100 100 100 20 100 0 100 100 30
-func/sub-01_ses-1_task-rest_acq-prefrontal_bold.nii.gz 75 0 75 100 100 85 15 100 0 100 95 35
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-1_magnitude1.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-1_magnitude1.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-1_magnitude2.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-1_magnitude2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.json b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.json
deleted file mode 100644
index 5545d84f..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "EchoTime2": 0.00702,
- "EchoTime1": 0.006,
- "IntendedFor": "ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_bold.nii.gz"
-}
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-2_magnitude1.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-2_magnitude1.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-2_magnitude2.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-2_magnitude2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.json b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.json
deleted file mode 100644
index e60f834b..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "EchoTime2": 0.00702,
- "EchoTime1": 0.006,
- "IntendedFor": "ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_bold.nii.gz"
-}
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_bold.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_physio.tsv.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_bold.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_physio.tsv.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-prefrontal_bold.nii.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-prefrontal_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-prefrontal_physio.tsv.gz b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-prefrontal_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/sub-01_ses-2_scans.tsv b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/sub-01_ses-2_scans.tsv
deleted file mode 100644
index d23e770a..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/ses-2/sub-01_ses-2_scans.tsv
+++ /dev/null
@@ -1,4 +0,0 @@
-filename positive negative future past myself people surroundings vigilance images words specific_vague intrusive
-func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_bold.nii.gz 95 0 100 0 90 100 75 100 20 100 100 60
-func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_bold.nii.gz 70 25 100 0 100 100 80 75 0 100 100 65
-func/sub-01_ses-2_task-rest_acq-prefrontal_bold.nii.gz 100 0 100 100 100 100 20 70 0 100 80 65
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/sub-01_sessions.tsv b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/sub-01_sessions.tsv
deleted file mode 100644
index b047cfb7..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/sub-01/sub-01_sessions.tsv
+++ /dev/null
@@ -1,3 +0,0 @@
-session CCPT_avg_succ_RT CCPT_avg_FP_RT CCPT_avg_FN_RT CCPT_succ_count CCPT_FP_count CCPT_FN_count subject_id panas_cheerful panas_disgusted panas_attentive panas_bashful panas_sluggish panas_daring panas_surprised panas_strong panas_scornful panas_relaxed panas_irritable panas_delighted panas_inspired panas_fearless panas_disgusted_with_self panas_sad panas_calm panas_afraid panas_tired panas_amazed panas_shaky panas_happy panas_timid panas_alone panas_alert panas_upset panas_angry panas_bold panas_blue panas_shy panas_active panas_guilty panas_joyful panas_nervous panas_lonely panas_sleepy panas_excited panas_hostile panas_proud panas_jittery panas_lively panas_ashamed panas_at_ease panas_scared panas_drowsy panas_angry_at_self panas_enthusiastic panas_downhearted panas_sheepish panas_distressed panas_blameworthy panas_determined panas_frightened panas_astonished panas_interested panas_loathing panas_confident panas_energetic panas_concentrating panas_dissatisfied_with_self hours_of_sleep_ussually hours_of_sleep_last_night vigilance quality_of_sleep thirst liters_of_water_daily relative_water_intake caffeine_daily relative_caffeine_intake systolic_blood_pressure_left diastolic_blood_pressure_left pulse_left systolic_blood_pressure_right diastolic_blood_pressure_right pulse_right positive negative future past myself people surroundings vigilance_nyc-q images words specific_vague intrusive
-ses-1 500.7708333333333 507.0 n/a 96.0 1.0 0.0 1 6 4 6 2 4 4 2 5 4 6 3 5 6 6 2 1 5 2 2 4 2 7 4 1 5 1 2 4 4 1 7 1 7 2 1 5 6 1 4 2 6 2 1 1 4 2 6 1 1 1 4 5 1 5 6 1 4 6 3 5 8.0 9.5 9 5 9 1.0 7 0.5 1 108 64 66 109 69 70 0 0 75 15 5 70 0 100 0 100 95 50
-ses-2 503.3333333333333 595.0 n/a 96.0 1.0 0.0 1 4 2 6 1 4 5 2 4 5 6 3 5 5 3 2 5 7 1 5 4 1 7 4 1 6 1 1 4 4 1 6 5 5 3 1 1 6 1 4 2 6 1 1 1 4 1 5 1 4 1 4 4 1 5 7 1 6 6 7 1 8.0 7.5 7 9 9 2.0 5 2.0 3 101 66 70 101 65 76 100 5 80 90 5 80 20 100 0 100 100 50
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-fullbrain_bold.json b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-fullbrain_bold.json
deleted file mode 100644
index 6accbd12..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-fullbrain_bold.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "CogAtlasID": "trm_4c8a834779883",
- "EchoTime": 0.017,
- "EffectiveEchoSpacing": 0.0003333262223739227,
- "PhaseEncodingDirection": "j-",
- "RepetitionTime": 3.0,
- "SliceEncodingDirection": "k",
- "SliceTiming": [
- 1.508, 0.0, 1.55, 0.043, 1.592, 0.087, 1.635, 0.13, 1.677, 0.173, 1.722,
- 0.215, 1.765, 0.26, 1.808, 0.302, 1.85, 0.345, 1.893, 0.388, 1.938, 0.43,
- 1.98, 0.475, 2.022, 0.518, 2.065, 0.56, 2.11, 0.603, 2.152, 0.645, 2.195,
- 0.69, 2.238, 0.733, 2.28, 0.775, 2.325, 0.818, 2.367, 0.86, 2.41, 0.905,
- 2.453, 0.948, 2.495, 0.99, 2.54, 1.032, 2.583, 1.075, 2.625, 1.12, 2.668,
- 1.163, 2.71, 1.205, 2.755, 1.248, 2.798, 1.293, 2.84, 1.335, 2.883, 1.378,
- 2.925, 1.42, 2.97, 1.462
- ],
- "TaskName": "Rest"
-}
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-fullbrain_run-1_physio.json b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-fullbrain_run-1_physio.json
deleted file mode 100644
index ff79e46d..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-fullbrain_run-1_physio.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "StartTime": 0,
- "SamplingFrequency": 100,
- "Columns": ["cardiac", "respiratory", "trigger", "oxygen saturation"]
-}
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-fullbrain_run-2_physio.json b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-fullbrain_run-2_physio.json
deleted file mode 100644
index ff79e46d..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-fullbrain_run-2_physio.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "StartTime": 0,
- "SamplingFrequency": 100,
- "Columns": ["cardiac", "respiratory", "trigger", "oxygen saturation"]
-}
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-prefrontal_bold.json b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-prefrontal_bold.json
deleted file mode 100644
index 187ee3f2..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-prefrontal_bold.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "CogAtlasID": "trm_4c8a834779883",
- "EchoTime": 0.026,
- "EffectiveEchoSpacing": 0.00032998944033790924,
- "PhaseEncodingDirection": "j-",
- "RepetitionTime": 4.0,
- "SliceEncodingDirection": "k",
- "SliceTiming": [
- 3.915, 3.815, 3.715, 3.615, 3.515, 3.413, 3.312, 3.212, 3.112, 3.013, 2.913,
- 2.81, 2.71, 2.61, 2.51, 2.41, 2.31, 2.21, 2.108, 2.008, 1.908, 1.808, 1.707,
- 1.608, 1.505, 1.405, 1.305, 1.205, 1.105, 1.005, 0.902, 0.802, 0.703, 0.603,
- 0.502, 0.402, 0.302, 0.2, 0.1, 0.0
- ],
- "TaskName": "Rest"
-}
diff --git a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-prefrontal_physio.json b/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-prefrontal_physio.json
deleted file mode 100644
index ff79e46d..00000000
--- a/legacy/bids-validator/tests/data/fieldmap_without_magnitude/task-rest_acq-prefrontal_physio.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "StartTime": 0,
- "SamplingFrequency": 100,
- "Columns": ["cardiac", "respiratory", "trigger", "oxygen saturation"]
-}
diff --git a/legacy/bids-validator/tests/data/gzip/anon.gz b/legacy/bids-validator/tests/data/gzip/anon.gz
deleted file mode 100644
index 915cbfc4..00000000
Binary files a/legacy/bids-validator/tests/data/gzip/anon.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/gzip/commented.gz b/legacy/bids-validator/tests/data/gzip/commented.gz
deleted file mode 100644
index 8beb9891..00000000
Binary files a/legacy/bids-validator/tests/data/gzip/commented.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/gzip/stamped.gz b/legacy/bids-validator/tests/data/gzip/stamped.gz
deleted file mode 100644
index 716bfcb1..00000000
Binary files a/legacy/bids-validator/tests/data/gzip/stamped.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/latin-1_description/dataset_description.json b/legacy/bids-validator/tests/data/latin-1_description/dataset_description.json
deleted file mode 100644
index 25c0f9a5..00000000
--- a/legacy/bids-validator/tests/data/latin-1_description/dataset_description.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "Name": "Latin-1 encoded",
- "BIDSVersion": "1.0.2",
- "License": "CC0",
- "Authors": ["BοΏ½a"],
- "Acknowledgements": "Conseil rοΏ½gional Auvergne ",
- "HowToAcknowledge": "shoutout on insta plz",
- "Funding": ["Contrat AIB 23000400", "AIC AromaSalt"],
- "ReferencesAndLinks": ["e0123456. doi:99.9999/journal.pone.0123456"],
- "DatasetDOI": "doidoidoidoi"
-}
diff --git a/legacy/bids-validator/tests/data/latin-1_description/participants.tsv b/legacy/bids-validator/tests/data/latin-1_description/participants.tsv
deleted file mode 100644
index 1202fe47..00000000
--- a/legacy/bids-validator/tests/data/latin-1_description/participants.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-participant_id age sex
-sub-01 34 F
diff --git a/legacy/bids-validator/tests/data/latin-1_description/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii b/legacy/bids-validator/tests/data/latin-1_description/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii
deleted file mode 100644
index 5a947f0b..00000000
Binary files a/legacy/bids-validator/tests/data/latin-1_description/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/latin-1_description/sub-01/ses-01/sub-01_ses-01_scans.tsv b/legacy/bids-validator/tests/data/latin-1_description/sub-01/ses-01/sub-01_ses-01_scans.tsv
deleted file mode 100644
index 2368113a..00000000
--- a/legacy/bids-validator/tests/data/latin-1_description/sub-01/ses-01/sub-01_ses-01_scans.tsv
+++ /dev/null
@@ -1,5 +0,0 @@
-filename acq_time
-anat/sub-01_ses-01_T1w.nii.gz 1880-01-10T05:17:54
-func/sub-01_ses-01_task-nback_run-01_bold.nii.gz 1880-01-10T05:22:54
-func/sub-01_ses-01_task-nback_run-02_bold.nii.gz 1880-01-10T05:37:54
-func/sub-01_ses-01_task-rest_bold.nii.gz 1880-01-10T05:52:54
diff --git a/legacy/bids-validator/tests/data/latin-1_description/sub-01/sub-01_sessions.tsv b/legacy/bids-validator/tests/data/latin-1_description/sub-01/sub-01_sessions.tsv
deleted file mode 100644
index a8d9f11c..00000000
--- a/legacy/bids-validator/tests/data/latin-1_description/sub-01/sub-01_sessions.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-session_id systolic_blood_pressure
-ses-01 112
diff --git a/legacy/bids-validator/tests/data/no_t1w/CHANGES b/legacy/bids-validator/tests/data/no_t1w/CHANGES
deleted file mode 100644
index c2ee90bf..00000000
--- a/legacy/bids-validator/tests/data/no_t1w/CHANGES
+++ /dev/null
@@ -1,3 +0,0 @@
-1.0.0 2011-10-06
-
- - initial release
diff --git a/legacy/bids-validator/tests/data/no_t1w/README b/legacy/bids-validator/tests/data/no_t1w/README
deleted file mode 100644
index 7a90bb4e..00000000
--- a/legacy/bids-validator/tests/data/no_t1w/README
+++ /dev/null
@@ -1,16 +0,0 @@
-This dataset was obtained from the OpenfMRI project (http://www.openfmri.org).
-Accession #: ds003
-Description: Rhyme judgment
-
-Release history:
-10/06/2011: initial release
-3/21/2013: Updated release with QA information
-
-This dataset is made available under the Public Domain Dedication and License
-v1.0, whose full text can be found at
-http://www.opendatacommons.org/licenses/pddl/1.0/.
-We hope that all users will follow the ODC Attribution/Share-Alike
-Community Norms (http://www.opendatacommons.org/norms/odc-by-sa/);
-in particular, while not legally required, we hope that all users
-of the data will acknowledge the OpenfMRI project and NSF Grant
-OCI-1131441 (R. Poldrack, PI) in any publications.
diff --git a/legacy/bids-validator/tests/data/no_t1w/dataset_description.json b/legacy/bids-validator/tests/data/no_t1w/dataset_description.json
deleted file mode 100644
index dcb73d0c..00000000
--- a/legacy/bids-validator/tests/data/no_t1w/dataset_description.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "License": "This dataset is made available under the Public Domain Dedication and License \nv1.0, whose full text can be found at \nhttp://www.opendatacommons.org/licenses/pddl/1.0/. \nWe hope that all users will follow the ODC Attribution/Share-Alike \nCommunity Norms (http://www.opendatacommons.org/norms/odc-by-sa/); \nin particular, while not legally required, we hope that all users \nof the data will acknowledge the OpenfMRI project and NSF Grant \nOCI-1131441 (R. Poldrack, PI) in any publications.",
- "Name": "Rhyme judgment",
- "BIDSVersion": "1.0.1"
-}
diff --git a/legacy/bids-validator/tests/data/no_t1w/participants.tsv b/legacy/bids-validator/tests/data/no_t1w/participants.tsv
deleted file mode 100644
index a2ca4b59..00000000
--- a/legacy/bids-validator/tests/data/no_t1w/participants.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-participant_id sex age
-sub-01 M 25
\ No newline at end of file
diff --git a/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-0-1_task-rhymejudgment_bold.nii.gz b/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-0-1_task-rhymejudgment_bold.nii.gz
deleted file mode 100644
index d11cfb32..00000000
Binary files a/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-0-1_task-rhymejudgment_bold.nii.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-01_task-rhyme-judgment_bold.nii.gz b/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-01_task-rhyme-judgment_bold.nii.gz
deleted file mode 100644
index d11cfb32..00000000
Binary files a/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-01_task-rhyme-judgment_bold.nii.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-01_task-rhyme-judgment_events.tsv b/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-01_task-rhyme-judgment_events.tsv
deleted file mode 100644
index f2dd58fd..00000000
--- a/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-01_task-rhyme-judgment_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-20.001 2 word
-22.501 2 word
-25.001 2 word
-27.501 2 word
-30.001 2 word
-32.501 2 word
-35.001 2 word
-37.501 2 word
-60.002 2 word
-62.502 2 word
-65.002 2 word
-67.502 2 word
-70.002 2 word
-72.502 2 word
-75.002 2 word
-77.503 2 word
-100.003 2 word
-102.503 2 word
-105.003 2 word
-107.503 2 word
-110.004 2 word
-112.504 2 word
-115.004 2 word
-117.504 2 word
-140.004 2 word
-142.504 2 word
-145.005 2 word
-147.505 2 word
-150.005 2 word
-152.505 2 word
-155.005 2 word
-157.505 2 word
-180.006 2 pseudoword
-182.506 2 pseudoword
-185.006 2 pseudoword
-187.506 2 pseudoword
-190.006 2 pseudoword
-192.506 2 pseudoword
-195.006 2 pseudoword
-197.507 2 pseudoword
-220.007 2 pseudoword
-222.507 2 pseudoword
-225.007 2 pseudoword
-227.507 2 pseudoword
-230.007 2 pseudoword
-232.508 2 pseudoword
-235.008 2 pseudoword
-237.508 2 pseudoword
-260.008 2 pseudoword
-262.508 2 pseudoword
-265.009 2 pseudoword
-267.509 2 pseudoword
-270.009 2 pseudoword
-272.509 2 pseudoword
-275.009 2 pseudoword
-277.509 2 pseudoword
-300.01 2 pseudoword
-302.51 2 pseudoword
-305.01 2 pseudoword
-307.51 2 pseudoword
-310.01 2 pseudoword
-312.51 2 pseudoword
-315.01 2 pseudoword
-317.51 2 pseudoword
diff --git a/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-01_task-rhyme_judgment_bold.nii.gz b/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-01_task-rhyme_judgment_bold.nii.gz
deleted file mode 100644
index d11cfb32..00000000
Binary files a/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-01_task-rhyme_judgment_bold.nii.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-01_task-rhyme_judgment_events.tsv b/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-01_task-rhyme_judgment_events.tsv
deleted file mode 100644
index f2dd58fd..00000000
--- a/legacy/bids-validator/tests/data/no_t1w/sub-01/func/sub-01_task-rhyme_judgment_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-20.001 2 word
-22.501 2 word
-25.001 2 word
-27.501 2 word
-30.001 2 word
-32.501 2 word
-35.001 2 word
-37.501 2 word
-60.002 2 word
-62.502 2 word
-65.002 2 word
-67.502 2 word
-70.002 2 word
-72.502 2 word
-75.002 2 word
-77.503 2 word
-100.003 2 word
-102.503 2 word
-105.003 2 word
-107.503 2 word
-110.004 2 word
-112.504 2 word
-115.004 2 word
-117.504 2 word
-140.004 2 word
-142.504 2 word
-145.005 2 word
-147.505 2 word
-150.005 2 word
-152.505 2 word
-155.005 2 word
-157.505 2 word
-180.006 2 pseudoword
-182.506 2 pseudoword
-185.006 2 pseudoword
-187.506 2 pseudoword
-190.006 2 pseudoword
-192.506 2 pseudoword
-195.006 2 pseudoword
-197.507 2 pseudoword
-220.007 2 pseudoword
-222.507 2 pseudoword
-225.007 2 pseudoword
-227.507 2 pseudoword
-230.007 2 pseudoword
-232.508 2 pseudoword
-235.008 2 pseudoword
-237.508 2 pseudoword
-260.008 2 pseudoword
-262.508 2 pseudoword
-265.009 2 pseudoword
-267.509 2 pseudoword
-270.009 2 pseudoword
-272.509 2 pseudoword
-275.009 2 pseudoword
-277.509 2 pseudoword
-300.01 2 pseudoword
-302.51 2 pseudoword
-305.01 2 pseudoword
-307.51 2 pseudoword
-310.01 2 pseudoword
-312.51 2 pseudoword
-315.01 2 pseudoword
-317.51 2 pseudoword
diff --git a/legacy/bids-validator/tests/data/no_t1w/task-rhymejudgment_bold.json b/legacy/bids-validator/tests/data/no_t1w/task-rhymejudgment_bold.json
deleted file mode 100644
index 91da4403..00000000
--- a/legacy/bids-validator/tests/data/no_t1w/task-rhymejudgment_bold.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "RepetitionTime": 1.0,
- "TaskName": "rhyme judgment"
-}
diff --git a/legacy/bids-validator/tests/data/no_valid_data/dataset_description.json b/legacy/bids-validator/tests/data/no_valid_data/dataset_description.json
deleted file mode 100644
index dcb73d0c..00000000
--- a/legacy/bids-validator/tests/data/no_valid_data/dataset_description.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "License": "This dataset is made available under the Public Domain Dedication and License \nv1.0, whose full text can be found at \nhttp://www.opendatacommons.org/licenses/pddl/1.0/. \nWe hope that all users will follow the ODC Attribution/Share-Alike \nCommunity Norms (http://www.opendatacommons.org/norms/odc-by-sa/); \nin particular, while not legally required, we hope that all users \nof the data will acknowledge the OpenfMRI project and NSF Grant \nOCI-1131441 (R. Poldrack, PI) in any publications.",
- "Name": "Rhyme judgment",
- "BIDSVersion": "1.0.1"
-}
diff --git a/legacy/bids-validator/tests/data/no_valid_data/sub-01/anat/sub-01_T1w.nii.gz b/legacy/bids-validator/tests/data/no_valid_data/sub-01/anat/sub-01_T1w.nii.gz
deleted file mode 100644
index ee97ef7a..00000000
Binary files a/legacy/bids-validator/tests/data/no_valid_data/sub-01/anat/sub-01_T1w.nii.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/no_valid_data/sub-02/anat/sub-02_anat.nii.gz b/legacy/bids-validator/tests/data/no_valid_data/sub-02/anat/sub-02_anat.nii.gz
deleted file mode 100644
index ee97ef7a..00000000
Binary files a/legacy/bids-validator/tests/data/no_valid_data/sub-02/anat/sub-02_anat.nii.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/ome-tiff/btif_id.ome.tif b/legacy/bids-validator/tests/data/ome-tiff/btif_id.ome.tif
deleted file mode 100644
index f6294616..00000000
Binary files a/legacy/bids-validator/tests/data/ome-tiff/btif_id.ome.tif and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/pet001_jsonContentsDict.js b/legacy/bids-validator/tests/data/pet001_jsonContentsDict.js
deleted file mode 100644
index c4dccaa4..00000000
--- a/legacy/bids-validator/tests/data/pet001_jsonContentsDict.js
+++ /dev/null
@@ -1,163 +0,0 @@
-export default {
- '/dataset_description.json': {
- BIDSVersion: '1.5.0',
- License: 'CCO license',
- Name: '[11C]CIMBI36 PET dataset of a pig',
- Authors: [
- 'Melanie Ganz-Benjaminsen',
- 'Martin Noergaard',
- 'Hanne Demant Hansen',
- ],
- Acknowledgements:
- 'Knudsen GM, Jensen PS, Erritzoe D, BaarΓ© WFC, Ettrup A, Fisher PM, Gillings N, Hansen HD, Hansen LK, Hasselbalch SG, Henningsson S, Herth MM, Holst KK, Iversen P, Kessing LV, Macoveanu J, Madsen KS, Mortensen EL, Nielsen FΓ
, Paulson OB, Siebner HR, Stenbæk DS, Svarer C, Jernigan TL, Strother SC, Frokjaer VG. The Center for Integrated Molecular Brain Imaging (Cimbi) Database. NeuroImage. 2016 Jan 1;124(Pt B):1213-1219',
- HowToAcknowledge: 'This data was obtained from the Cimbi database.',
- Funding: [
- 'Lundbeck Foundation R90-A7722',
- 'Danish Research Council 09-063598',
- 'Rigshospitalet',
- ],
- DatasetDOI: '',
- },
- '/participants.json': {
- participant_id: {
- LongName: 'Participant Id',
- Description: 'label identifying a particular subject',
- },
- weight: { LongName: 'Weight' },
- },
- '/sub-01/ses-01/anat/sub-01_ses-01_T1w.json': {
- Modality: 'MR',
- MagneticFieldStrength: 3,
- Manufacturer: 'Siemens',
- ManufacturersModelName: 'Trio',
- InstitutionName: 'DRCMR_HVIDOVRE',
- InstitutionAddress: '30Kettegaard_Alle_Copenhagen_Hvidovre_DK-2650_DK',
- DeviceSerialNumber: '20511',
- StationName: 'MRC20511',
- ProcedureStepDescription: 'Hjerne_projekter_Cimbi_SAD',
- SoftwareVersions: 'syngo_MR_A30_4VA30A',
- SeriesDescription: 't1_mpr_ns_sag_1mm_noring',
- ProtocolName: 't1_mpr_ns_sag_1mm_noring',
- ScanningSequence: 'IR_GR',
- SequenceVariant: 'SP_MP',
- ScanOptions: 'IR',
- SequenceName: '_tfl3d1_ns',
- ImageType: ['ORIGINAL', 'PRIMARY', 'M', 'ND'],
- AcquisitionTime: '10:24:59.860010',
- AcquisitionNumber: 1,
- ImageComments: '50524',
- EchoTime: 0.00304,
- RepetitionTime: 1.55,
- InversionTime: 0.8,
- FlipAngle: 9,
- PartialFourier: 1,
- BaseResolution: 256,
- PhaseResolution: 1,
- ReceiveCoilName: '8_Channel_Head',
- PulseSequenceDetails: '%SiemensSeq%_tfl',
- PercentPhaseFOV: 100,
- PhaseEncodingSteps: 256,
- AcquisitionMatrixPE: 256,
- ReconMatrixPE: 256,
- ConversionSoftware: 'dcm2niix',
- ConversionSoftwareVersion: 'v1.0.20170923 (OpenJPEG build) GCC4.8.4',
- },
- '/sub-01/ses-01/pet/sub-01_ses-01_pet.json': {
- Modality: 'PET',
- Manufacturer: 'Siemens',
- ManufacturersModelName:
- 'High-Resolution Research Tomograph (HRRT, CTI/Siemens)',
- BodyPart: 'Brain',
- Units: 'Bq/ml',
- TracerName: 'CIMBI-36',
- TracerRadionuclide: 'C11',
- TracerMolecularWeight: 380.28,
- TracerMolecularWeightUnits: 'g/mol',
- InjectedRadioactivity: 573,
- InjectedRadioactivityUnits: 'MBq',
- InjectedMass: 0.62,
- InjectedMassUnits: 'ug',
- SpecificRadioactivity: 353.51,
- SpecificRadioactivityUnits: 'GBq/ug',
- ModeOfAdministration: 'bolus',
- MolarActivity: 1.62,
- MolarActivityUnits: 'nmol',
- MolarActivityMeasTime: '12:59:00',
- TimeZero: '13:04:42',
- ScanStart: 0,
- InjectionStart: 0,
- FrameTimesStart: [
- 0, 10, 20, 30, 40, 50, 60, 80, 100, 120, 140, 160, 180, 240, 300, 360,
- 420, 480, 540, 660, 780, 900, 1020, 1140, 1260, 1380, 1500, 1800, 2100,
- 2400, 2700, 3000, 3300, 3600, 3900, 4200, 4500, 4800, 5100, 5400, 5700,
- 6000, 6300, 6600, 6900,
- ],
- FrameDuration: [
- 10, 20, 30, 40, 50, 60, 80, 100, 120, 140, 160, 180, 240, 300, 360, 420,
- 480, 540, 660, 780, 900, 1020, 1140, 1260, 1380, 1500, 1800, 2100, 2400,
- 2700, 3000, 3300, 3600, 3900, 4200, 4500, 4800, 5100, 5400, 5700, 6000,
- 6300, 6600, 6900, 7200,
- ],
- AcquisitionMode: 'list mode',
- ImageDecayCorrected: true,
- ImageDecayCorrectionTime: 0,
- ReconMatrixSize: [256, 256, 207, 45],
- ImageVoxelSize: [1.2188, 1.2188, 1.2188],
- ReconMethodName: '3D-OSEM-PSF',
- ReconMethodParameterLabels: ['subsets', 'iterations'],
- ReconMethodParameterUnits: ['none', 'none'],
- ReconMethodParameterValues: [16, 10],
- ReconFilterType: 'none',
- ReconFilterSize: 0,
- AttenuationCorrection: '[137Cs]transmission scan-based',
- },
- '/sub-01/ses-01/pet/sub-01_ses-01_recording-autosampler_blood.json': {
- PlasmaAvail: false,
- WholeBloodAvail: true,
- MetaboliteAvail: false,
- DispersionCorrected: false,
- time: {
- Description: 'Time in relation to time zero defined by the _pet.json',
- Units: 's',
- },
- whole_blood_radioactivity: {
- Description:
- 'Radioactivity in uncorrected whole blood samples from Allogg autosampler.',
- Units: 'kBq/ml',
- },
- },
- '/sub-01/ses-01/pet/sub-01_ses-01_recording-manual_blood.json': {
- PlasmaAvail: true,
- WholeBloodAvail: true,
- MetaboliteAvail: true,
- MetaboliteMethod: 'HPLC',
- MetaboliteRecoveryCorrectionApplied: false,
- DispersionCorrected: false,
- time: {
- Description: 'Time in relation to time zero defined by the _pet.json',
- Units: 's',
- },
- plasma_radioactivity: {
- Description:
- 'Radioactivity in plasma samples. Measured using COBRA counter.',
- Units: 'kBq/ml',
- },
- whole_blood_radioactivity: {
- Description:
- 'Radioactivity in whole blood samples. Measured using COBRA counter.',
- Units: 'kBq/ml',
- },
- metabolite_parent_fraction: {
- Description: 'Parent fraction of the radiotracer.',
- Units: 'unitless',
- },
- metabolite_polar_fraction: {
- Description: 'Polar metabolite fraction of the radiotracer.',
- Units: 'unitless',
- },
- metabolite_lipophilic_fraction: {
- Description: 'Lipophilic metabolite fraction of the radiotracer.',
- Units: 'unitless',
- },
- },
-}
diff --git a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/README b/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/README
deleted file mode 100644
index 940a1d10..00000000
--- a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/README
+++ /dev/null
@@ -1,3 +0,0 @@
-This dataset consists of a single PET measurement of a human brain using [11C]DASB to measure serotonin transporter availability. An anatomical T1-weighted MRI is also available. There are arterial measurements available for this tracer. Note: all image files are empty for privacy reasons.
-
-IMPORTANT: The molar activity is fixed for all subjects (55 MBq/nmol) given Parsey et al. 2007.
diff --git a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/dataset_description.json b/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/dataset_description.json
deleted file mode 100644
index 9b176b90..00000000
--- a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/dataset_description.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "BIDSVersion": "1.0.4",
- "License": "CCO license",
- "Name": "[11C]DASB data set",
- "Authors": ["Martin Norgaard", "Christine Delorenzo", "Ramin Parsey"],
- "Acknowledgements": "We thank the employees of the Brain Imaging Core of the NIMH-funded Conte Translational Neuroscience Center, the Kreitchman PET Center, and the Columbia University Radioligand Laboratory for expert help. This work was supported in part by an investigator-initiated grant from Pfizer Inc.",
- "HowToAcknowledge": "Ramin Parsey, Christine Delorenzo",
- "DatasetDOI": ""
-}
diff --git a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/participants.json b/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/participants.json
deleted file mode 100644
index 5793a186..00000000
--- a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/participants.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "participant_id": {
- "LongName": "Participant Id",
- "Description": "label identifying a particular subject"
- },
- "sex": {
- "LongName": "Sex"
- }
-}
diff --git a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/participants.tsv b/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/participants.tsv
deleted file mode 100644
index f84a6430..00000000
--- a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/participants.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-participant_id sex
-sub-01 F
\ No newline at end of file
diff --git a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii.gz b/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/sub-01/ses-01/pet/sub-01_ses-01_pet.json b/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/sub-01/ses-01/pet/sub-01_ses-01_pet.json
deleted file mode 100644
index 45dd6c23..00000000
--- a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/sub-01/ses-01/pet/sub-01_ses-01_pet.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "Manufacturer": "Siemens",
- "ManufacturersModelName": "Siemens HR+",
- "BodyPart": "Brain",
- "Units": "Bq/mL",
- "TracerName": "DASB",
- "TracerRadionuclide": "C11",
- "TracerMolecularWeight": 282.39,
- "TracerMolecularWeightUnits": "g/mol",
- "TracerInjectionType": "bolus",
- "InjectedRadioactivity": 694.86,
- "InjectedRadioactivityUnits": "MBq",
- "InjectedMass": 3.57,
- "InjectedMassUnits": "ug",
- "SpecificRadioactivity": 194.64,
- "SpecificRadioactivityUnits": "MBq/ug",
- "MolarActivity": 55,
- "MolarActivityUnits": "MBq/nmol",
- "ModeOfAdministration": "bolus",
- "ScanStart": 0,
- "InjectionStart": 0,
- "InjectionEnd": 30,
- "TimeZero": "12:24:37",
- "FrameTimesStart": [
- 0, 20, 40, 60, 120, 180, 240, 360, 480, 600, 900, 1200, 1800, 2400, 3000,
- 3600, 4200, 4800, 5400, 6000, 6600
- ],
- "FrameDuration": [
- 20, 40, 60, 120, 180, 240, 360, 480, 600, 900, 1200, 1800, 2400, 3000, 3600,
- 4200, 4800, 5400, 6000, 6600, 7200
- ],
- "AcquisitionMode": "list mode",
- "ImageDecayCorrected": true,
- "ImageDecayCorrectionTime": 0,
- "ReconMethodName": "Vendor",
- "ReconMethodParameterLabels": ["Zoom factor"],
- "ReconMethodParameterUnits": ["none"],
- "ReconMethodParameterValues": [4],
- "ReconFilterType": [
- "Image filter were Shepp 0.5",
- "the Z filter was all-pass 0.4"
- ],
- "ReconFilterSize": [2.5, 2.0],
- "AttenuationCorrection": "Transmission data, and scatter was corrected using a model-based method",
- "AttenuationCorrectionMethodReference": "Parsey et al. 2006, Metabolite considerations in the in vivo quantification of serotonin transporters using 11C-DASB and PET in humans, Journal of Nuclear Medicine"
-}
diff --git a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/sub-01/ses-01/pet/sub-01_ses-01_pet.nii.gz b/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/sub-01/ses-01/pet/sub-01_ses-01_pet.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/sub-01/ses-01/pet/sub-01_ses-01_recording-manual_blood.json b/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/sub-01/ses-01/pet/sub-01_ses-01_recording-manual_blood.json
deleted file mode 100644
index a88f1016..00000000
--- a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/sub-01/ses-01/pet/sub-01_ses-01_recording-manual_blood.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "PlasmaAvail": true,
- "WholeBloodAvail": false,
- "MetaboliteAvail": true,
- "MetaboliteMethod": "Bioscan g-detector",
- "MetaboliteRecoveryCorrectionApplied": false,
- "DispersionCorrected": false,
-
- "time": {
- "Description": "Time in relation to time zero defined by the _pet.json",
- "Units": "s"
- },
- "plasma_radioactivity": {
- "Description": "Radioactivity in plasma samples",
- "Units": "Bq/ml"
- },
- "metabolite_parent_fraction": {
- "Description": "Parent fraction of the radiotracer. The metabolite and unmetabolized parent compound were collected in separate vials, and radioactivity was quantified using a Bioscan g-detector after correction for background radioactivity.",
- "Units": "unitless"
- }
-}
diff --git a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/sub-01/ses-01/pet/sub-01_ses-01_recording-manual_blood.tsv b/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/sub-01/ses-01/pet/sub-01_ses-01_recording-manual_blood.tsv
deleted file mode 100644
index b706f014..00000000
--- a/legacy/bids-validator/tests/data/pet_blood_missing_tsv_column/sub-01/ses-01/pet/sub-01_ses-01_recording-manual_blood.tsv
+++ /dev/null
@@ -1,33 +0,0 @@
-time metabolite_parent_fraction
-0 n/a
-10.0000002 n/a
-19.9999998 n/a
-30 n/a
-40.002 n/a
-49.998 n/a
-60 n/a
-70.002 n/a
-79.998 n/a
-90 n/a
-100.002 n/a
-109.998 n/a
-120 0.50774032
-139.998 n/a
-160.002 n/a
-180 n/a
-199.998 n/a
-220.002 n/a
-240 n/a
-360 n/a
-480 n/a
-720 0.55283186
-960 n/a
-1200 0.35144152
-1800 n/a
-2400 n/a
-3000 0.1507185
-3600 n/a
-4800 0.10388412
-5400 n/a
-6000 0.09530672
-7200 n/a
\ No newline at end of file
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/dataset_description.json b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/dataset_description.json
deleted file mode 100644
index cce76c7f..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/dataset_description.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "BIDSVersion": "1.0.0rc3",
- "Name": "7t_trt"
-}
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/participants.tsv b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/participants.tsv
deleted file mode 100644
index 0c9cc661..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/participants.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-participant_id sex age_at_first_scan_years number_of_scans_before handedness
-sub-01 F 29 17 100
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/anat/sub-01_ses-1_T1map.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/anat/sub-01_ses-1_T1map.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/anat/sub-01_ses-1_T1w.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/anat/sub-01_ses-1_T1w.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-1_fieldmap.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-1_fieldmap.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-1_magnitude2.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-1_magnitude2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.json b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.json
deleted file mode 100644
index 2fba548b..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "EchoTime2": 0.00702,
- "EchoTime1": 0.006,
- "IntendedFor": "ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_bold.nii.gz"
-}
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-2_magnitude1.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-2_magnitude1.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-2_magnitude2.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-2_magnitude2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.json b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.json
deleted file mode 100644
index e1364865..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "EchoTime2": 0.00702,
- "EchoTime1": 0.006,
- "IntendedFor": "ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_bold.nii.gz"
-}
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_bold.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_physio.tsv.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_bold.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_physio.tsv.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-prefrontal_bold.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-prefrontal_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-prefrontal_physio.tsv.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-prefrontal_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/sub-01_ses-1_scans.tsv b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/sub-01_ses-1_scans.tsv
deleted file mode 100644
index 76ab17c6..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-1/sub-01_ses-1_scans.tsv
+++ /dev/null
@@ -1,4 +0,0 @@
-filename positive negative future past myself people surroundings vigilance images words specific_vague intrusive
-func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_bold.nii.gz 90 0 100 100 80 100 100 95 0 100 90 30
-func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_bold.nii.gz 85 0 90 100 100 100 20 100 0 100 100 30
-func/sub-01_ses-1_task-rest_acq-prefrontal_bold.nii.gz 75 0 75 100 100 85 15 100 0 100 95 35
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-1_magnitude1.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-1_magnitude1.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-1_magnitude2.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-1_magnitude2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.json b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.json
deleted file mode 100644
index 5545d84f..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "EchoTime2": 0.00702,
- "EchoTime1": 0.006,
- "IntendedFor": "ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_bold.nii.gz"
-}
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-2_magnitude1.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-2_magnitude1.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-2_magnitude2.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-2_magnitude2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.json b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.json
deleted file mode 100644
index e60f834b..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "EchoTime2": 0.00702,
- "EchoTime1": 0.006,
- "IntendedFor": "ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_bold.nii.gz"
-}
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_bold.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_physio.tsv.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_bold.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_physio.tsv.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-prefrontal_bold.nii.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-prefrontal_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-prefrontal_physio.tsv.gz b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-prefrontal_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/sub-01_ses-2_scans.tsv b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/sub-01_ses-2_scans.tsv
deleted file mode 100644
index d23e770a..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/ses-2/sub-01_ses-2_scans.tsv
+++ /dev/null
@@ -1,4 +0,0 @@
-filename positive negative future past myself people surroundings vigilance images words specific_vague intrusive
-func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_bold.nii.gz 95 0 100 0 90 100 75 100 20 100 100 60
-func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_bold.nii.gz 70 25 100 0 100 100 80 75 0 100 100 65
-func/sub-01_ses-2_task-rest_acq-prefrontal_bold.nii.gz 100 0 100 100 100 100 20 70 0 100 80 65
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/sub-01_sessions.tsv b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/sub-01_sessions.tsv
deleted file mode 100644
index b047cfb7..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/sub-01/sub-01_sessions.tsv
+++ /dev/null
@@ -1,3 +0,0 @@
-session CCPT_avg_succ_RT CCPT_avg_FP_RT CCPT_avg_FN_RT CCPT_succ_count CCPT_FP_count CCPT_FN_count subject_id panas_cheerful panas_disgusted panas_attentive panas_bashful panas_sluggish panas_daring panas_surprised panas_strong panas_scornful panas_relaxed panas_irritable panas_delighted panas_inspired panas_fearless panas_disgusted_with_self panas_sad panas_calm panas_afraid panas_tired panas_amazed panas_shaky panas_happy panas_timid panas_alone panas_alert panas_upset panas_angry panas_bold panas_blue panas_shy panas_active panas_guilty panas_joyful panas_nervous panas_lonely panas_sleepy panas_excited panas_hostile panas_proud panas_jittery panas_lively panas_ashamed panas_at_ease panas_scared panas_drowsy panas_angry_at_self panas_enthusiastic panas_downhearted panas_sheepish panas_distressed panas_blameworthy panas_determined panas_frightened panas_astonished panas_interested panas_loathing panas_confident panas_energetic panas_concentrating panas_dissatisfied_with_self hours_of_sleep_ussually hours_of_sleep_last_night vigilance quality_of_sleep thirst liters_of_water_daily relative_water_intake caffeine_daily relative_caffeine_intake systolic_blood_pressure_left diastolic_blood_pressure_left pulse_left systolic_blood_pressure_right diastolic_blood_pressure_right pulse_right positive negative future past myself people surroundings vigilance_nyc-q images words specific_vague intrusive
-ses-1 500.7708333333333 507.0 n/a 96.0 1.0 0.0 1 6 4 6 2 4 4 2 5 4 6 3 5 6 6 2 1 5 2 2 4 2 7 4 1 5 1 2 4 4 1 7 1 7 2 1 5 6 1 4 2 6 2 1 1 4 2 6 1 1 1 4 5 1 5 6 1 4 6 3 5 8.0 9.5 9 5 9 1.0 7 0.5 1 108 64 66 109 69 70 0 0 75 15 5 70 0 100 0 100 95 50
-ses-2 503.3333333333333 595.0 n/a 96.0 1.0 0.0 1 4 2 6 1 4 5 2 4 5 6 3 5 5 3 2 5 7 1 5 4 1 7 4 1 6 1 1 4 4 1 6 5 5 3 1 1 6 1 4 2 6 1 1 1 4 1 5 1 4 1 4 4 1 5 7 1 6 6 7 1 8.0 7.5 7 9 9 2.0 5 2.0 3 101 66 70 101 65 76 100 5 80 90 5 80 20 100 0 100 100 50
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-fullbrain_bold.json b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-fullbrain_bold.json
deleted file mode 100644
index 6accbd12..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-fullbrain_bold.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "CogAtlasID": "trm_4c8a834779883",
- "EchoTime": 0.017,
- "EffectiveEchoSpacing": 0.0003333262223739227,
- "PhaseEncodingDirection": "j-",
- "RepetitionTime": 3.0,
- "SliceEncodingDirection": "k",
- "SliceTiming": [
- 1.508, 0.0, 1.55, 0.043, 1.592, 0.087, 1.635, 0.13, 1.677, 0.173, 1.722,
- 0.215, 1.765, 0.26, 1.808, 0.302, 1.85, 0.345, 1.893, 0.388, 1.938, 0.43,
- 1.98, 0.475, 2.022, 0.518, 2.065, 0.56, 2.11, 0.603, 2.152, 0.645, 2.195,
- 0.69, 2.238, 0.733, 2.28, 0.775, 2.325, 0.818, 2.367, 0.86, 2.41, 0.905,
- 2.453, 0.948, 2.495, 0.99, 2.54, 1.032, 2.583, 1.075, 2.625, 1.12, 2.668,
- 1.163, 2.71, 1.205, 2.755, 1.248, 2.798, 1.293, 2.84, 1.335, 2.883, 1.378,
- 2.925, 1.42, 2.97, 1.462
- ],
- "TaskName": "Rest"
-}
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-fullbrain_run-1_physio.json b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-fullbrain_run-1_physio.json
deleted file mode 100644
index ff79e46d..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-fullbrain_run-1_physio.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "StartTime": 0,
- "SamplingFrequency": 100,
- "Columns": ["cardiac", "respiratory", "trigger", "oxygen saturation"]
-}
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-fullbrain_run-2_physio.json b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-fullbrain_run-2_physio.json
deleted file mode 100644
index ff79e46d..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-fullbrain_run-2_physio.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "StartTime": 0,
- "SamplingFrequency": 100,
- "Columns": ["cardiac", "respiratory", "trigger", "oxygen saturation"]
-}
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-prefrontal_bold.json b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-prefrontal_bold.json
deleted file mode 100644
index 187ee3f2..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-prefrontal_bold.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "CogAtlasID": "trm_4c8a834779883",
- "EchoTime": 0.026,
- "EffectiveEchoSpacing": 0.00032998944033790924,
- "PhaseEncodingDirection": "j-",
- "RepetitionTime": 4.0,
- "SliceEncodingDirection": "k",
- "SliceTiming": [
- 3.915, 3.815, 3.715, 3.615, 3.515, 3.413, 3.312, 3.212, 3.112, 3.013, 2.913,
- 2.81, 2.71, 2.61, 2.51, 2.41, 2.31, 2.21, 2.108, 2.008, 1.908, 1.808, 1.707,
- 1.608, 1.505, 1.405, 1.305, 1.205, 1.105, 1.005, 0.902, 0.802, 0.703, 0.603,
- 0.502, 0.402, 0.302, 0.2, 0.1, 0.0
- ],
- "TaskName": "Rest"
-}
diff --git a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-prefrontal_physio.json b/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-prefrontal_physio.json
deleted file mode 100644
index ff79e46d..00000000
--- a/legacy/bids-validator/tests/data/phasediff_without_magnitude1/task-rest_acq-prefrontal_physio.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "StartTime": 0,
- "SamplingFrequency": 100,
- "Columns": ["cardiac", "respiratory", "trigger", "oxygen saturation"]
-}
diff --git a/legacy/bids-validator/tests/data/symlinked_subject/CHANGES b/legacy/bids-validator/tests/data/symlinked_subject/CHANGES
deleted file mode 100644
index c2ee90bf..00000000
--- a/legacy/bids-validator/tests/data/symlinked_subject/CHANGES
+++ /dev/null
@@ -1,3 +0,0 @@
-1.0.0 2011-10-06
-
- - initial release
diff --git a/legacy/bids-validator/tests/data/symlinked_subject/README b/legacy/bids-validator/tests/data/symlinked_subject/README
deleted file mode 100644
index 7a90bb4e..00000000
--- a/legacy/bids-validator/tests/data/symlinked_subject/README
+++ /dev/null
@@ -1,16 +0,0 @@
-This dataset was obtained from the OpenfMRI project (http://www.openfmri.org).
-Accession #: ds003
-Description: Rhyme judgment
-
-Release history:
-10/06/2011: initial release
-3/21/2013: Updated release with QA information
-
-This dataset is made available under the Public Domain Dedication and License
-v1.0, whose full text can be found at
-http://www.opendatacommons.org/licenses/pddl/1.0/.
-We hope that all users will follow the ODC Attribution/Share-Alike
-Community Norms (http://www.opendatacommons.org/norms/odc-by-sa/);
-in particular, while not legally required, we hope that all users
-of the data will acknowledge the OpenfMRI project and NSF Grant
-OCI-1131441 (R. Poldrack, PI) in any publications.
diff --git a/legacy/bids-validator/tests/data/symlinked_subject/dataset_description.json b/legacy/bids-validator/tests/data/symlinked_subject/dataset_description.json
deleted file mode 100644
index dcb73d0c..00000000
--- a/legacy/bids-validator/tests/data/symlinked_subject/dataset_description.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "License": "This dataset is made available under the Public Domain Dedication and License \nv1.0, whose full text can be found at \nhttp://www.opendatacommons.org/licenses/pddl/1.0/. \nWe hope that all users will follow the ODC Attribution/Share-Alike \nCommunity Norms (http://www.opendatacommons.org/norms/odc-by-sa/); \nin particular, while not legally required, we hope that all users \nof the data will acknowledge the OpenfMRI project and NSF Grant \nOCI-1131441 (R. Poldrack, PI) in any publications.",
- "Name": "Rhyme judgment",
- "BIDSVersion": "1.0.1"
-}
diff --git a/legacy/bids-validator/tests/data/symlinked_subject/participants.tsv b/legacy/bids-validator/tests/data/symlinked_subject/participants.tsv
deleted file mode 100644
index a2ca4b59..00000000
--- a/legacy/bids-validator/tests/data/symlinked_subject/participants.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-participant_id sex age
-sub-01 M 25
\ No newline at end of file
diff --git a/legacy/bids-validator/tests/data/symlinked_subject/sub-01 b/legacy/bids-validator/tests/data/symlinked_subject/sub-01
deleted file mode 120000
index 3a03548c..00000000
--- a/legacy/bids-validator/tests/data/symlinked_subject/sub-01
+++ /dev/null
@@ -1 +0,0 @@
-../valid_filenames/sub-01
\ No newline at end of file
diff --git a/legacy/bids-validator/tests/data/symlinked_subject/task-rhymejudgment_bold.json b/legacy/bids-validator/tests/data/symlinked_subject/task-rhymejudgment_bold.json
deleted file mode 100644
index 91da4403..00000000
--- a/legacy/bids-validator/tests/data/symlinked_subject/task-rhymejudgment_bold.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "RepetitionTime": 1.0,
- "TaskName": "rhyme judgment"
-}
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/dataset_description.json b/legacy/bids-validator/tests/data/unused_data_dict/dataset_description.json
deleted file mode 100644
index cce76c7f..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/dataset_description.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "BIDSVersion": "1.0.0rc3",
- "Name": "7t_trt"
-}
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/participants.tsv b/legacy/bids-validator/tests/data/unused_data_dict/participants.tsv
deleted file mode 100644
index 0c9cc661..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/participants.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-participant_id sex age_at_first_scan_years number_of_scans_before handedness
-sub-01 F 29 17 100
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/anat/sub-01_ses-1_T1map.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/anat/sub-01_ses-1_T1map.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/anat/sub-01_ses-1_T1w.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/anat/sub-01_ses-1_T1w.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-1_magnitude1.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-1_magnitude1.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-1_magnitude2.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-1_magnitude2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.json b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.json
deleted file mode 100644
index 2fba548b..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "EchoTime2": 0.00702,
- "EchoTime1": 0.006,
- "IntendedFor": "ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_bold.nii.gz"
-}
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-1_phasediff.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-2_magnitude1.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-2_magnitude1.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-2_magnitude2.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-2_magnitude2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.json b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.json
deleted file mode 100644
index e1364865..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "EchoTime2": 0.00702,
- "EchoTime1": 0.006,
- "IntendedFor": "ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_bold.nii.gz"
-}
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-2_phasediff.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-3_phasediff.json b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-3_phasediff.json
deleted file mode 100644
index 2fba548b..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/fmap/sub-01_ses-1_run-3_phasediff.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "EchoTime2": 0.00702,
- "EchoTime1": 0.006,
- "IntendedFor": "ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_bold.nii.gz"
-}
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_bold.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_physio.tsv.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_bold.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_physio.tsv.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-prefrontal_bold.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-prefrontal_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-prefrontal_physio.tsv.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/func/sub-01_ses-1_task-rest_acq-prefrontal_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/sub-01_ses-1_scans.tsv b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/sub-01_ses-1_scans.tsv
deleted file mode 100644
index 76ab17c6..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-1/sub-01_ses-1_scans.tsv
+++ /dev/null
@@ -1,4 +0,0 @@
-filename positive negative future past myself people surroundings vigilance images words specific_vague intrusive
-func/sub-01_ses-1_task-rest_acq-fullbrain_run-1_bold.nii.gz 90 0 100 100 80 100 100 95 0 100 90 30
-func/sub-01_ses-1_task-rest_acq-fullbrain_run-2_bold.nii.gz 85 0 90 100 100 100 20 100 0 100 100 30
-func/sub-01_ses-1_task-rest_acq-prefrontal_bold.nii.gz 75 0 75 100 100 85 15 100 0 100 95 35
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-1_magnitude1.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-1_magnitude1.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-1_magnitude2.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-1_magnitude2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.json b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.json
deleted file mode 100644
index 5545d84f..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "EchoTime2": 0.00702,
- "EchoTime1": 0.006,
- "IntendedFor": "ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_bold.nii.gz"
-}
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-1_phasediff.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-2_magnitude1.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-2_magnitude1.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-2_magnitude2.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-2_magnitude2.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.json b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.json
deleted file mode 100644
index e60f834b..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "EchoTime2": 0.00702,
- "EchoTime1": 0.006,
- "IntendedFor": "ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_bold.nii.gz"
-}
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/fmap/sub-01_ses-2_run-2_phasediff.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_bold.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_physio.tsv.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_bold.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_physio.tsv.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-prefrontal_bold.nii.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-prefrontal_bold.nii.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-prefrontal_physio.tsv.gz b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/func/sub-01_ses-2_task-rest_acq-prefrontal_physio.tsv.gz
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/sub-01_ses-2_scans.tsv b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/sub-01_ses-2_scans.tsv
deleted file mode 100644
index d23e770a..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/ses-2/sub-01_ses-2_scans.tsv
+++ /dev/null
@@ -1,4 +0,0 @@
-filename positive negative future past myself people surroundings vigilance images words specific_vague intrusive
-func/sub-01_ses-2_task-rest_acq-fullbrain_run-1_bold.nii.gz 95 0 100 0 90 100 75 100 20 100 100 60
-func/sub-01_ses-2_task-rest_acq-fullbrain_run-2_bold.nii.gz 70 25 100 0 100 100 80 75 0 100 100 65
-func/sub-01_ses-2_task-rest_acq-prefrontal_bold.nii.gz 100 0 100 100 100 100 20 70 0 100 80 65
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/sub-01_sessions.tsv b/legacy/bids-validator/tests/data/unused_data_dict/sub-01/sub-01_sessions.tsv
deleted file mode 100644
index b047cfb7..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/sub-01/sub-01_sessions.tsv
+++ /dev/null
@@ -1,3 +0,0 @@
-session CCPT_avg_succ_RT CCPT_avg_FP_RT CCPT_avg_FN_RT CCPT_succ_count CCPT_FP_count CCPT_FN_count subject_id panas_cheerful panas_disgusted panas_attentive panas_bashful panas_sluggish panas_daring panas_surprised panas_strong panas_scornful panas_relaxed panas_irritable panas_delighted panas_inspired panas_fearless panas_disgusted_with_self panas_sad panas_calm panas_afraid panas_tired panas_amazed panas_shaky panas_happy panas_timid panas_alone panas_alert panas_upset panas_angry panas_bold panas_blue panas_shy panas_active panas_guilty panas_joyful panas_nervous panas_lonely panas_sleepy panas_excited panas_hostile panas_proud panas_jittery panas_lively panas_ashamed panas_at_ease panas_scared panas_drowsy panas_angry_at_self panas_enthusiastic panas_downhearted panas_sheepish panas_distressed panas_blameworthy panas_determined panas_frightened panas_astonished panas_interested panas_loathing panas_confident panas_energetic panas_concentrating panas_dissatisfied_with_self hours_of_sleep_ussually hours_of_sleep_last_night vigilance quality_of_sleep thirst liters_of_water_daily relative_water_intake caffeine_daily relative_caffeine_intake systolic_blood_pressure_left diastolic_blood_pressure_left pulse_left systolic_blood_pressure_right diastolic_blood_pressure_right pulse_right positive negative future past myself people surroundings vigilance_nyc-q images words specific_vague intrusive
-ses-1 500.7708333333333 507.0 n/a 96.0 1.0 0.0 1 6 4 6 2 4 4 2 5 4 6 3 5 6 6 2 1 5 2 2 4 2 7 4 1 5 1 2 4 4 1 7 1 7 2 1 5 6 1 4 2 6 2 1 1 4 2 6 1 1 1 4 5 1 5 6 1 4 6 3 5 8.0 9.5 9 5 9 1.0 7 0.5 1 108 64 66 109 69 70 0 0 75 15 5 70 0 100 0 100 95 50
-ses-2 503.3333333333333 595.0 n/a 96.0 1.0 0.0 1 4 2 6 1 4 5 2 4 5 6 3 5 5 3 2 5 7 1 5 4 1 7 4 1 6 1 1 4 4 1 6 5 5 3 1 1 6 1 4 2 6 1 1 1 4 1 5 1 4 1 4 4 1 5 7 1 6 6 7 1 8.0 7.5 7 9 9 2.0 5 2.0 3 101 66 70 101 65 76 100 5 80 90 5 80 20 100 0 100 100 50
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-fullbrain_bold.json b/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-fullbrain_bold.json
deleted file mode 100644
index 6accbd12..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-fullbrain_bold.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "CogAtlasID": "trm_4c8a834779883",
- "EchoTime": 0.017,
- "EffectiveEchoSpacing": 0.0003333262223739227,
- "PhaseEncodingDirection": "j-",
- "RepetitionTime": 3.0,
- "SliceEncodingDirection": "k",
- "SliceTiming": [
- 1.508, 0.0, 1.55, 0.043, 1.592, 0.087, 1.635, 0.13, 1.677, 0.173, 1.722,
- 0.215, 1.765, 0.26, 1.808, 0.302, 1.85, 0.345, 1.893, 0.388, 1.938, 0.43,
- 1.98, 0.475, 2.022, 0.518, 2.065, 0.56, 2.11, 0.603, 2.152, 0.645, 2.195,
- 0.69, 2.238, 0.733, 2.28, 0.775, 2.325, 0.818, 2.367, 0.86, 2.41, 0.905,
- 2.453, 0.948, 2.495, 0.99, 2.54, 1.032, 2.583, 1.075, 2.625, 1.12, 2.668,
- 1.163, 2.71, 1.205, 2.755, 1.248, 2.798, 1.293, 2.84, 1.335, 2.883, 1.378,
- 2.925, 1.42, 2.97, 1.462
- ],
- "TaskName": "Rest"
-}
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-fullbrain_run-1_physio.json b/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-fullbrain_run-1_physio.json
deleted file mode 100644
index ff79e46d..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-fullbrain_run-1_physio.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "StartTime": 0,
- "SamplingFrequency": 100,
- "Columns": ["cardiac", "respiratory", "trigger", "oxygen saturation"]
-}
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-fullbrain_run-2_physio.json b/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-fullbrain_run-2_physio.json
deleted file mode 100644
index ff79e46d..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-fullbrain_run-2_physio.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "StartTime": 0,
- "SamplingFrequency": 100,
- "Columns": ["cardiac", "respiratory", "trigger", "oxygen saturation"]
-}
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-prefrontal_bold.json b/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-prefrontal_bold.json
deleted file mode 100644
index 187ee3f2..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-prefrontal_bold.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "CogAtlasID": "trm_4c8a834779883",
- "EchoTime": 0.026,
- "EffectiveEchoSpacing": 0.00032998944033790924,
- "PhaseEncodingDirection": "j-",
- "RepetitionTime": 4.0,
- "SliceEncodingDirection": "k",
- "SliceTiming": [
- 3.915, 3.815, 3.715, 3.615, 3.515, 3.413, 3.312, 3.212, 3.112, 3.013, 2.913,
- 2.81, 2.71, 2.61, 2.51, 2.41, 2.31, 2.21, 2.108, 2.008, 1.908, 1.808, 1.707,
- 1.608, 1.505, 1.405, 1.305, 1.205, 1.105, 1.005, 0.902, 0.802, 0.703, 0.603,
- 0.502, 0.402, 0.302, 0.2, 0.1, 0.0
- ],
- "TaskName": "Rest"
-}
diff --git a/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-prefrontal_physio.json b/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-prefrontal_physio.json
deleted file mode 100644
index ff79e46d..00000000
--- a/legacy/bids-validator/tests/data/unused_data_dict/task-rest_acq-prefrontal_physio.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "StartTime": 0,
- "SamplingFrequency": 100,
- "Columns": ["cardiac", "respiratory", "trigger", "oxygen saturation"]
-}
diff --git a/legacy/bids-validator/tests/data/valid_dataset/dataset_description.json b/legacy/bids-validator/tests/data/valid_dataset/dataset_description.json
deleted file mode 100644
index 21ffe185..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/dataset_description.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "Name": "Synthetic dataset for inclusion in BIDS-examples",
- "BIDSVersion": "1.0.2",
- "License": "PD",
- "Authors": ["Markiewicz, C. J."]
-}
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_confounds.tsv.gz
deleted file mode 100644
index 8b15d957..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_confounds.tsv.gz
deleted file mode 100644
index 2dc309ad..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_confounds.tsv.gz
deleted file mode 100644
index 6111e64c..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-01/func/sub-01_ses-01_task-rest_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_confounds.tsv.gz
deleted file mode 100644
index 01b87482..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_confounds.tsv.gz
deleted file mode 100644
index d3a642bf..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_confounds.tsv.gz
deleted file mode 100644
index a71faef3..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-01/ses-02/func/sub-01_ses-02_task-rest_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_confounds.tsv.gz
deleted file mode 100644
index 68bc472f..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_confounds.tsv.gz
deleted file mode 100644
index 35882f8c..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_confounds.tsv.gz
deleted file mode 100644
index 45779f36..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-01/func/sub-02_ses-01_task-rest_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_confounds.tsv.gz
deleted file mode 100644
index 8e109e91..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_confounds.tsv.gz
deleted file mode 100644
index 940a1e11..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_confounds.tsv.gz
deleted file mode 100644
index 04a0c29b..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-02/ses-02/func/sub-02_ses-02_task-rest_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_confounds.tsv.gz
deleted file mode 100644
index 867b84d0..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_confounds.tsv.gz
deleted file mode 100644
index 1de4b21d..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_confounds.tsv.gz
deleted file mode 100644
index 21a3b741..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-01/func/sub-03_ses-01_task-rest_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_confounds.tsv.gz
deleted file mode 100644
index 57dc17bd..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_confounds.tsv.gz
deleted file mode 100644
index 3406e22c..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_confounds.tsv.gz
deleted file mode 100644
index 9206610a..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-03/ses-02/func/sub-03_ses-02_task-rest_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_confounds.tsv.gz
deleted file mode 100644
index e8b4cbc5..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_confounds.tsv.gz
deleted file mode 100644
index 2995f075..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_confounds.tsv.gz
deleted file mode 100644
index c9277921..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-01/func/sub-04_ses-01_task-rest_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_confounds.tsv.gz
deleted file mode 100644
index c61fcc96..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_confounds.tsv.gz
deleted file mode 100644
index 534988f5..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_confounds.tsv.gz
deleted file mode 100644
index 589a7e8a..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-04/ses-02/func/sub-04_ses-02_task-rest_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_confounds.tsv.gz
deleted file mode 100644
index 80bddbfb..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_confounds.tsv.gz
deleted file mode 100644
index 7cab3253..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_confounds.tsv.gz
deleted file mode 100644
index dc92e8a2..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-01/func/sub-05_ses-01_task-rest_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_confounds.tsv.gz
deleted file mode 100644
index 6d949fd3..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_confounds.tsv.gz
deleted file mode 100644
index 76067d86..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold_space-MNI152NLin2009cAsym_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold_space-T1w_brainmask.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold_space-T1w_brainmask.nii
deleted file mode 100644
index 7fc78c24..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold_space-T1w_brainmask.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold_space-T1w_preproc.nii b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold_space-T1w_preproc.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold_space-T1w_preproc.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_confounds.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_confounds.tsv.gz
deleted file mode 100644
index 31223920..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/derivatives/fmriprep/sub-05/ses-02/func/sub-05_ses-02_task-rest_confounds.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/participants.json b/legacy/bids-validator/tests/data/valid_dataset/participants.json
deleted file mode 100644
index 2e4bc63c..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/participants.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "age": {
- "Description": "Description",
- "Units": "Units"
- },
- "sex": {
- "LongName": "Long name",
- "Description": "Description",
- "Levels": {
- "M": "M",
- "F": "F"
- }
- }
-}
diff --git a/legacy/bids-validator/tests/data/valid_dataset/participants.tsv b/legacy/bids-validator/tests/data/valid_dataset/participants.tsv
deleted file mode 100644
index bebb08da..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/participants.tsv
+++ /dev/null
@@ -1,6 +0,0 @@
-participant_id age sex
-sub-01 34 F
-sub-02 38 M
-sub-03 22 M
-sub-04 21 F
-sub-05 42 M
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii
deleted file mode 100644
index 5a947f0b..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/anat/sub-01_ses-01_T1w.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_physio.tsv.gz
deleted file mode 100644
index 6cac5f00..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_stim.tsv.gz
deleted file mode 100644
index 083cffae..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-01_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_physio.tsv.gz
deleted file mode 100644
index d25c4057..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_stim.tsv.gz
deleted file mode 100644
index fc0db52e..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-nback_run-02_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-rest_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-rest_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-rest_physio.tsv.gz
deleted file mode 100644
index fefa8735..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/func/sub-01_ses-01_task-rest_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/sub-01_ses-01_scans.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/sub-01_ses-01_scans.tsv
deleted file mode 100644
index 990a4678..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-01/sub-01_ses-01_scans.tsv
+++ /dev/null
@@ -1,5 +0,0 @@
-filename acq_time
-anat/sub-01_ses-01_T1w.nii 1880-01-10T05:17:54
-func/sub-01_ses-01_task-nback_run-01_bold.nii 1880-01-10T05:22:54
-func/sub-01_ses-01_task-nback_run-02_bold.nii 1880-01-10T05:37:54
-func/sub-01_ses-01_task-rest_bold.nii 1880-01-10T05:52:54
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/anat/sub-01_ses-02_T1w.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/anat/sub-01_ses-02_T1w.nii
deleted file mode 100644
index 5a947f0b..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/anat/sub-01_ses-02_T1w.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_physio.tsv.gz
deleted file mode 100644
index 069231e0..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_stim.tsv.gz
deleted file mode 100644
index 269b9765..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-01_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_physio.tsv.gz
deleted file mode 100644
index 13817926..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_stim.tsv.gz
deleted file mode 100644
index 5429e32f..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-nback_run-02_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-rest_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-rest_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-rest_physio.tsv.gz
deleted file mode 100644
index ae5e4b63..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/func/sub-01_ses-02_task-rest_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/sub-01_ses-02_scans.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/sub-01_ses-02_scans.tsv
deleted file mode 100644
index 444850e8..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-01/ses-02/sub-01_ses-02_scans.tsv
+++ /dev/null
@@ -1,5 +0,0 @@
-filename acq_time
-anat/sub-01_ses-02_T1w.nii 1802-06-04T22:54:25
-func/sub-01_ses-02_task-nback_run-01_bold.nii 1802-06-04T22:59:25
-func/sub-01_ses-02_task-nback_run-02_bold.nii 1802-06-04T23:14:25
-func/sub-01_ses-02_task-rest_bold.nii 1802-06-04T23:29:25
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-01/sub-01_sessions.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-01/sub-01_sessions.tsv
deleted file mode 100644
index 7f94d942..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-01/sub-01_sessions.tsv
+++ /dev/null
@@ -1,3 +0,0 @@
-session_id systolic_blood_pressure
-ses-01 112
-ses-02 113
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/anat/sub-02_ses-01_T1w.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/anat/sub-02_ses-01_T1w.nii
deleted file mode 100644
index 5a947f0b..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/anat/sub-02_ses-01_T1w.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_physio.tsv.gz
deleted file mode 100644
index 885202cb..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_stim.tsv.gz
deleted file mode 100644
index 15bb0ae1..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-01_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_physio.tsv.gz
deleted file mode 100644
index 2b9c6a09..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_stim.tsv.gz
deleted file mode 100644
index a6c62261..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-nback_run-02_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-rest_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-rest_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-rest_physio.tsv.gz
deleted file mode 100644
index 24e92e14..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/func/sub-02_ses-01_task-rest_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/sub-02_ses-01_scans.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/sub-02_ses-01_scans.tsv
deleted file mode 100644
index 34b46b52..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-01/sub-02_ses-01_scans.tsv
+++ /dev/null
@@ -1,5 +0,0 @@
-filename acq_time
-anat/sub-02_ses-01_T1w.nii 1874-04-12T01:43:17
-func/sub-02_ses-01_task-nback_run-01_bold.nii 1874-04-12T01:48:17
-func/sub-02_ses-01_task-nback_run-02_bold.nii 1874-04-12T02:03:17
-func/sub-02_ses-01_task-rest_bold.nii 1874-04-12T02:18:17
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/anat/sub-02_ses-02_T1w.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/anat/sub-02_ses-02_T1w.nii
deleted file mode 100644
index 5a947f0b..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/anat/sub-02_ses-02_T1w.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_physio.tsv.gz
deleted file mode 100644
index 6687b12a..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_stim.tsv.gz
deleted file mode 100644
index bd9f4758..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-01_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_physio.tsv.gz
deleted file mode 100644
index eb0fb080..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_stim.tsv.gz
deleted file mode 100644
index b74e5ca1..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-nback_run-02_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-rest_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-rest_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-rest_physio.tsv.gz
deleted file mode 100644
index 4cabfd22..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/func/sub-02_ses-02_task-rest_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/sub-02_ses-02_scans.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/sub-02_ses-02_scans.tsv
deleted file mode 100644
index f748d191..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-02/ses-02/sub-02_ses-02_scans.tsv
+++ /dev/null
@@ -1,5 +0,0 @@
-filename acq_time
-anat/sub-02_ses-02_T1w.nii 1814-09-10T07:05:33
-func/sub-02_ses-02_task-nback_run-01_bold.nii 1814-09-10T07:10:33
-func/sub-02_ses-02_task-nback_run-02_bold.nii 1814-09-10T07:25:33
-func/sub-02_ses-02_task-rest_bold.nii 1814-09-10T07:40:33
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-02/sub-02_sessions.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-02/sub-02_sessions.tsv
deleted file mode 100644
index a6faac39..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-02/sub-02_sessions.tsv
+++ /dev/null
@@ -1,3 +0,0 @@
-session_id systolic_blood_pressure
-ses-01 114
-ses-02 115
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/anat/sub-03_ses-01_T1w.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/anat/sub-03_ses-01_T1w.nii
deleted file mode 100644
index 5a947f0b..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/anat/sub-03_ses-01_T1w.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_physio.tsv.gz
deleted file mode 100644
index fb21ff7b..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_stim.tsv.gz
deleted file mode 100644
index ab7ab573..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-01_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_physio.tsv.gz
deleted file mode 100644
index 39ad619f..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_stim.tsv.gz
deleted file mode 100644
index 1cb78cc8..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-nback_run-02_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-rest_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-rest_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-rest_physio.tsv.gz
deleted file mode 100644
index dee09f76..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/func/sub-03_ses-01_task-rest_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/sub-03_ses-01_scans.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/sub-03_ses-01_scans.tsv
deleted file mode 100644
index 9fd2e751..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-01/sub-03_ses-01_scans.tsv
+++ /dev/null
@@ -1,5 +0,0 @@
-filename acq_time
-anat/sub-03_ses-01_T1w.nii 1852-10-11T23:35:34
-func/sub-03_ses-01_task-nback_run-01_bold.nii 1852-10-11T23:40:34
-func/sub-03_ses-01_task-nback_run-02_bold.nii 1852-10-11T23:55:34
-func/sub-03_ses-01_task-rest_bold.nii 1852-10-12T00:10:34
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/anat/sub-03_ses-02_T1w.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/anat/sub-03_ses-02_T1w.nii
deleted file mode 100644
index 5a947f0b..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/anat/sub-03_ses-02_T1w.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_physio.tsv.gz
deleted file mode 100644
index 6f630fb4..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_stim.tsv.gz
deleted file mode 100644
index 4fe64d5e..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-01_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_physio.tsv.gz
deleted file mode 100644
index 8984e115..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_stim.tsv.gz
deleted file mode 100644
index 3c873f27..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-nback_run-02_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-rest_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-rest_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-rest_physio.tsv.gz
deleted file mode 100644
index cf704cf4..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/func/sub-03_ses-02_task-rest_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/sub-03_ses-02_scans.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/sub-03_ses-02_scans.tsv
deleted file mode 100644
index 9bc30a3a..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-03/ses-02/sub-03_ses-02_scans.tsv
+++ /dev/null
@@ -1,5 +0,0 @@
-filename acq_time
-anat/sub-03_ses-02_T1w.nii 1843-04-22T00:23:54
-func/sub-03_ses-02_task-nback_run-01_bold.nii 1843-04-22T00:28:54
-func/sub-03_ses-02_task-nback_run-02_bold.nii 1843-04-22T00:43:54
-func/sub-03_ses-02_task-rest_bold.nii 1843-04-22T00:58:54
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-03/sub-03_sessions.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-03/sub-03_sessions.tsv
deleted file mode 100644
index b8cce36d..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-03/sub-03_sessions.tsv
+++ /dev/null
@@ -1,3 +0,0 @@
-session_id systolic_blood_pressure
-ses-01 112
-ses-02 115
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/anat/sub-04_ses-01_T1w.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/anat/sub-04_ses-01_T1w.nii
deleted file mode 100644
index 5a947f0b..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/anat/sub-04_ses-01_T1w.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_physio.tsv.gz
deleted file mode 100644
index 41ddb9b5..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_stim.tsv.gz
deleted file mode 100644
index 807851b3..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-01_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_physio.tsv.gz
deleted file mode 100644
index 7af9ffb3..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_stim.tsv.gz
deleted file mode 100644
index a012f7c2..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-nback_run-02_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-rest_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-rest_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-rest_physio.tsv.gz
deleted file mode 100644
index 30a22ab8..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/func/sub-04_ses-01_task-rest_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/sub-04_ses-01_scans.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/sub-04_ses-01_scans.tsv
deleted file mode 100644
index ee1f3fa7..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-01/sub-04_ses-01_scans.tsv
+++ /dev/null
@@ -1,5 +0,0 @@
-filename acq_time
-anat/sub-04_ses-01_T1w.nii 1800-05-21T11:18:59
-func/sub-04_ses-01_task-nback_run-01_bold.nii 1800-05-21T11:23:59
-func/sub-04_ses-01_task-nback_run-02_bold.nii 1800-05-21T11:38:59
-func/sub-04_ses-01_task-rest_bold.nii 1800-05-21T11:53:59
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/anat/sub-04_ses-02_T1w.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/anat/sub-04_ses-02_T1w.nii
deleted file mode 100644
index 5a947f0b..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/anat/sub-04_ses-02_T1w.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_physio.tsv.gz
deleted file mode 100644
index 3f69a349..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_stim.tsv.gz
deleted file mode 100644
index e6eb3acc..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-01_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_physio.tsv.gz
deleted file mode 100644
index 3ab98d5a..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_stim.tsv.gz
deleted file mode 100644
index 9b7a5f82..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-nback_run-02_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-rest_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-rest_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-rest_physio.tsv.gz
deleted file mode 100644
index e5e003e7..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/func/sub-04_ses-02_task-rest_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/sub-04_ses-02_scans.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/sub-04_ses-02_scans.tsv
deleted file mode 100644
index d38db6a0..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-04/ses-02/sub-04_ses-02_scans.tsv
+++ /dev/null
@@ -1,5 +0,0 @@
-filename acq_time
-anat/sub-04_ses-02_T1w.nii 1847-10-17T10:15:19
-func/sub-04_ses-02_task-nback_run-01_bold.nii 1847-10-17T10:20:19
-func/sub-04_ses-02_task-nback_run-02_bold.nii 1847-10-17T10:35:19
-func/sub-04_ses-02_task-rest_bold.nii 1847-10-17T10:50:19
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-04/sub-04_sessions.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-04/sub-04_sessions.tsv
deleted file mode 100644
index 884a129c..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-04/sub-04_sessions.tsv
+++ /dev/null
@@ -1,3 +0,0 @@
-session_id systolic_blood_pressure
-ses-01 111
-ses-02 115
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/anat/sub-05_ses-01_T1w.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/anat/sub-05_ses-01_T1w.nii
deleted file mode 100644
index 5a947f0b..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/anat/sub-05_ses-01_T1w.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_physio.tsv.gz
deleted file mode 100644
index 3a2873b1..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_stim.tsv.gz
deleted file mode 100644
index ca9a6e99..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-01_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_physio.tsv.gz
deleted file mode 100644
index 97ef2d74..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_stim.tsv.gz
deleted file mode 100644
index f0192a86..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-nback_run-02_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-rest_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-rest_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-rest_physio.tsv.gz
deleted file mode 100644
index 7f14874d..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/func/sub-05_ses-01_task-rest_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/sub-05_ses-01_scans.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/sub-05_ses-01_scans.tsv
deleted file mode 100644
index 3972a054..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-01/sub-05_ses-01_scans.tsv
+++ /dev/null
@@ -1,5 +0,0 @@
-filename acq_time
-anat/sub-05_ses-01_T1w.nii 1899-07-07T16:04:21
-func/sub-05_ses-01_task-nback_run-01_bold.nii 1899-07-07T16:09:21
-func/sub-05_ses-01_task-nback_run-02_bold.nii 1899-07-07T16:24:21
-func/sub-05_ses-01_task-rest_bold.nii 1899-07-07T16:39:21
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/anat/sub-05_ses-02_T1w.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/anat/sub-05_ses-02_T1w.nii
deleted file mode 100644
index 5a947f0b..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/anat/sub-05_ses-02_T1w.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_physio.tsv.gz
deleted file mode 100644
index 76ba5368..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_stim.tsv.gz
deleted file mode 100644
index 54733dec..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-01_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_physio.tsv.gz
deleted file mode 100644
index 26ab6d83..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_stim.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_stim.tsv.gz
deleted file mode 100644
index b02db1e5..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-nback_run-02_stim.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold.nii b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold.nii
deleted file mode 100644
index cda94451..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-rest_bold.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-rest_physio.tsv.gz b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-rest_physio.tsv.gz
deleted file mode 100644
index 0d309ef6..00000000
Binary files a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/func/sub-05_ses-02_task-rest_physio.tsv.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/sub-05_ses-02_scans.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/sub-05_ses-02_scans.tsv
deleted file mode 100644
index dfe16d08..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-05/ses-02/sub-05_ses-02_scans.tsv
+++ /dev/null
@@ -1,5 +0,0 @@
-filename acq_time
-anat/sub-05_ses-02_T1w.nii 1868-01-31T20:57:43
-func/sub-05_ses-02_task-nback_run-01_bold.nii 1868-01-31T21:02:43
-func/sub-05_ses-02_task-nback_run-02_bold.nii 1868-01-31T21:17:43
-func/sub-05_ses-02_task-rest_bold.nii 1868-01-31T21:32:43
diff --git a/legacy/bids-validator/tests/data/valid_dataset/sub-05/sub-05_sessions.tsv b/legacy/bids-validator/tests/data/valid_dataset/sub-05/sub-05_sessions.tsv
deleted file mode 100644
index 9b19f329..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/sub-05/sub-05_sessions.tsv
+++ /dev/null
@@ -1,3 +0,0 @@
-session_id systolic_blood_pressure
-ses-01 114
-ses-02 110
diff --git a/legacy/bids-validator/tests/data/valid_dataset/task-nback_bold.json b/legacy/bids-validator/tests/data/valid_dataset/task-nback_bold.json
deleted file mode 100644
index 8f5c7fc3..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/task-nback_bold.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "TaskName": "N-Back",
- "RepetitionTime": 2.5
-}
diff --git a/legacy/bids-validator/tests/data/valid_dataset/task-nback_events.tsv b/legacy/bids-validator/tests/data/valid_dataset/task-nback_events.tsv
deleted file mode 100644
index db76af9d..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/task-nback_events.tsv
+++ /dev/null
@@ -1,43 +0,0 @@
-onset duration trial_type weight
-2.016 1 scene_nontarget_nbackparam -0.5
-4.0169999999999995 1 scene_target_nbackparam -0.5
-6.018 1 scene_target_nbackparam -0.5
-8.019 1 scene_nontarget_nbackparam -0.5
-10.02 1 scene_dist_rtparam 0.348
-12.02 1 scene_nontarget_nbackparam -0.5
-14.005 1 scene_nontarget_nbackparam -0.5
-16.005 1 scene_dist_rtparam -0.122
-18.006 1 scene_nontarget_nbackparam -0.5
-20.007 1 scene_dist_rtparam 0.10400000000000001
-24.025 1 faces_nontarget_rtparam 0.026000000000000002
-26.01 1 faces_nontarget_rtparam -0.09699999999999999
-28.01 1 faces_nontarget_rtparam -0.024
-30.011 1 faces_nontarget_rtparam 0.049
-32.012 1 faces_nontarget_rtparam 0.019
-34.013000000000005 1 faces_dist_nbackparam -0.455
-36.014 1 faces_target_rtparam -0.07400000000000001
-38.014 1 faces_nontarget_rtparam -0.062
-40.015 1 faces_nontarget_rtparam 0.01
-42.016000000000005 1 faces_dist_nbackparam -0.455
-68.01 1 scene_nontarget_nbackparam 0.5
-70.01100000000001 1 scene_nontarget_nbackparam 0.5
-72.012 1 scene_nontarget_nbackparam 0.5
-74.013 1 scene_nontarget_nbackparam 0.5
-76.013 1 scene_dist_rtparam 0.136
-78.014 1 scene_target_nbackparam 0.5
-80.015 1 scene_nontarget_nbackparam 0.5
-82.016 1 scene_nontarget_nbackparam 0.5
-84.01700000000001 1 scene_nontarget_nbackparam 0.5
-86.01799999999999 1 scene_target_nbackparam 0.5
-90.01899999999999 1 faces_nontarget_rtparam -0.175
-92.02 1 faces_nontarget_rtparam -0.195
-94.021 1 faces_dist_nbackparam 0.545
-96.022 1 faces_dist_nbackparam 0.545
-98.022 1 faces_target_rtparam -0.068
-100.023 1 faces_nontarget_rtparam 0.018000000000000002
-102.024 1 faces_nontarget_rtparam -0.019
-104.025 1 faces_target_rtparam 0.156
-106.009 1 faces_nontarget_rtparam -0.035
-108.01 1 faces_target_rtparam -0.057
-154.012 1 scene_nontarget_nbackparam -0.5
-156.013 1 scene_nontarget_nbackparam -0.5
diff --git a/legacy/bids-validator/tests/data/valid_dataset/task-nback_physio.json b/legacy/bids-validator/tests/data/valid_dataset/task-nback_physio.json
deleted file mode 100644
index b9de2911..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/task-nback_physio.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "SamplingFrequency": 10.0,
- "StartTime": 0.0,
- "Columns": ["respiratory", "cardiac"]
-}
diff --git a/legacy/bids-validator/tests/data/valid_dataset/task-nback_stim.json b/legacy/bids-validator/tests/data/valid_dataset/task-nback_stim.json
deleted file mode 100644
index 2167b8c4..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/task-nback_stim.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "SamplingFrequency": 2.0,
- "StartTime": 0.0,
- "Columns": ["stimA", "stimB"]
-}
diff --git a/legacy/bids-validator/tests/data/valid_dataset/task-rest_bold.json b/legacy/bids-validator/tests/data/valid_dataset/task-rest_bold.json
deleted file mode 100644
index 81e3fc37..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/task-rest_bold.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "TaskName": "Rest",
- "RepetitionTime": 2.5
-}
diff --git a/legacy/bids-validator/tests/data/valid_dataset/task-rest_physio.json b/legacy/bids-validator/tests/data/valid_dataset/task-rest_physio.json
deleted file mode 100644
index b9de2911..00000000
--- a/legacy/bids-validator/tests/data/valid_dataset/task-rest_physio.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "SamplingFrequency": 10.0,
- "StartTime": 0.0,
- "Columns": ["respiratory", "cardiac"]
-}
diff --git a/legacy/bids-validator/tests/data/valid_filenames/CHANGES b/legacy/bids-validator/tests/data/valid_filenames/CHANGES
deleted file mode 100644
index c2ee90bf..00000000
--- a/legacy/bids-validator/tests/data/valid_filenames/CHANGES
+++ /dev/null
@@ -1,3 +0,0 @@
-1.0.0 2011-10-06
-
- - initial release
diff --git a/legacy/bids-validator/tests/data/valid_filenames/README b/legacy/bids-validator/tests/data/valid_filenames/README
deleted file mode 100644
index 7a90bb4e..00000000
--- a/legacy/bids-validator/tests/data/valid_filenames/README
+++ /dev/null
@@ -1,16 +0,0 @@
-This dataset was obtained from the OpenfMRI project (http://www.openfmri.org).
-Accession #: ds003
-Description: Rhyme judgment
-
-Release history:
-10/06/2011: initial release
-3/21/2013: Updated release with QA information
-
-This dataset is made available under the Public Domain Dedication and License
-v1.0, whose full text can be found at
-http://www.opendatacommons.org/licenses/pddl/1.0/.
-We hope that all users will follow the ODC Attribution/Share-Alike
-Community Norms (http://www.opendatacommons.org/norms/odc-by-sa/);
-in particular, while not legally required, we hope that all users
-of the data will acknowledge the OpenfMRI project and NSF Grant
-OCI-1131441 (R. Poldrack, PI) in any publications.
diff --git a/legacy/bids-validator/tests/data/valid_filenames/dataset_description.json b/legacy/bids-validator/tests/data/valid_filenames/dataset_description.json
deleted file mode 100644
index dcb73d0c..00000000
--- a/legacy/bids-validator/tests/data/valid_filenames/dataset_description.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "License": "This dataset is made available under the Public Domain Dedication and License \nv1.0, whose full text can be found at \nhttp://www.opendatacommons.org/licenses/pddl/1.0/. \nWe hope that all users will follow the ODC Attribution/Share-Alike \nCommunity Norms (http://www.opendatacommons.org/norms/odc-by-sa/); \nin particular, while not legally required, we hope that all users \nof the data will acknowledge the OpenfMRI project and NSF Grant \nOCI-1131441 (R. Poldrack, PI) in any publications.",
- "Name": "Rhyme judgment",
- "BIDSVersion": "1.0.1"
-}
diff --git a/legacy/bids-validator/tests/data/valid_filenames/participants.tsv b/legacy/bids-validator/tests/data/valid_filenames/participants.tsv
deleted file mode 100644
index a2ca4b59..00000000
--- a/legacy/bids-validator/tests/data/valid_filenames/participants.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-participant_id sex age
-sub-01 M 25
\ No newline at end of file
diff --git a/legacy/bids-validator/tests/data/valid_filenames/sub-01/anat/sub-01_T1w.nii b/legacy/bids-validator/tests/data/valid_filenames/sub-01/anat/sub-01_T1w.nii
deleted file mode 100644
index 157fa7b1..00000000
Binary files a/legacy/bids-validator/tests/data/valid_filenames/sub-01/anat/sub-01_T1w.nii and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_filenames/sub-01/anat/sub-01_T1w.nii.gz b/legacy/bids-validator/tests/data/valid_filenames/sub-01/anat/sub-01_T1w.nii.gz
deleted file mode 100644
index e8902711..00000000
Binary files a/legacy/bids-validator/tests/data/valid_filenames/sub-01/anat/sub-01_T1w.nii.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-0-1_task-rhymejudgment_bold.nii.gz b/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-0-1_task-rhymejudgment_bold.nii.gz
deleted file mode 100644
index d11cfb32..00000000
Binary files a/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-0-1_task-rhymejudgment_bold.nii.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-01_task-rhyme-judgment_bold.nii.gz b/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-01_task-rhyme-judgment_bold.nii.gz
deleted file mode 100644
index d11cfb32..00000000
Binary files a/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-01_task-rhyme-judgment_bold.nii.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-01_task-rhyme-judgment_events.tsv b/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-01_task-rhyme-judgment_events.tsv
deleted file mode 100644
index f2dd58fd..00000000
--- a/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-01_task-rhyme-judgment_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-20.001 2 word
-22.501 2 word
-25.001 2 word
-27.501 2 word
-30.001 2 word
-32.501 2 word
-35.001 2 word
-37.501 2 word
-60.002 2 word
-62.502 2 word
-65.002 2 word
-67.502 2 word
-70.002 2 word
-72.502 2 word
-75.002 2 word
-77.503 2 word
-100.003 2 word
-102.503 2 word
-105.003 2 word
-107.503 2 word
-110.004 2 word
-112.504 2 word
-115.004 2 word
-117.504 2 word
-140.004 2 word
-142.504 2 word
-145.005 2 word
-147.505 2 word
-150.005 2 word
-152.505 2 word
-155.005 2 word
-157.505 2 word
-180.006 2 pseudoword
-182.506 2 pseudoword
-185.006 2 pseudoword
-187.506 2 pseudoword
-190.006 2 pseudoword
-192.506 2 pseudoword
-195.006 2 pseudoword
-197.507 2 pseudoword
-220.007 2 pseudoword
-222.507 2 pseudoword
-225.007 2 pseudoword
-227.507 2 pseudoword
-230.007 2 pseudoword
-232.508 2 pseudoword
-235.008 2 pseudoword
-237.508 2 pseudoword
-260.008 2 pseudoword
-262.508 2 pseudoword
-265.009 2 pseudoword
-267.509 2 pseudoword
-270.009 2 pseudoword
-272.509 2 pseudoword
-275.009 2 pseudoword
-277.509 2 pseudoword
-300.01 2 pseudoword
-302.51 2 pseudoword
-305.01 2 pseudoword
-307.51 2 pseudoword
-310.01 2 pseudoword
-312.51 2 pseudoword
-315.01 2 pseudoword
-317.51 2 pseudoword
diff --git a/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-01_task-rhyme_judgment_bold.nii.gz b/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-01_task-rhyme_judgment_bold.nii.gz
deleted file mode 100644
index d11cfb32..00000000
Binary files a/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-01_task-rhyme_judgment_bold.nii.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-01_task-rhyme_judgment_events.tsv b/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-01_task-rhyme_judgment_events.tsv
deleted file mode 100644
index f2dd58fd..00000000
--- a/legacy/bids-validator/tests/data/valid_filenames/sub-01/func/sub-01_task-rhyme_judgment_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-20.001 2 word
-22.501 2 word
-25.001 2 word
-27.501 2 word
-30.001 2 word
-32.501 2 word
-35.001 2 word
-37.501 2 word
-60.002 2 word
-62.502 2 word
-65.002 2 word
-67.502 2 word
-70.002 2 word
-72.502 2 word
-75.002 2 word
-77.503 2 word
-100.003 2 word
-102.503 2 word
-105.003 2 word
-107.503 2 word
-110.004 2 word
-112.504 2 word
-115.004 2 word
-117.504 2 word
-140.004 2 word
-142.504 2 word
-145.005 2 word
-147.505 2 word
-150.005 2 word
-152.505 2 word
-155.005 2 word
-157.505 2 word
-180.006 2 pseudoword
-182.506 2 pseudoword
-185.006 2 pseudoword
-187.506 2 pseudoword
-190.006 2 pseudoword
-192.506 2 pseudoword
-195.006 2 pseudoword
-197.507 2 pseudoword
-220.007 2 pseudoword
-222.507 2 pseudoword
-225.007 2 pseudoword
-227.507 2 pseudoword
-230.007 2 pseudoword
-232.508 2 pseudoword
-235.008 2 pseudoword
-237.508 2 pseudoword
-260.008 2 pseudoword
-262.508 2 pseudoword
-265.009 2 pseudoword
-267.509 2 pseudoword
-270.009 2 pseudoword
-272.509 2 pseudoword
-275.009 2 pseudoword
-277.509 2 pseudoword
-300.01 2 pseudoword
-302.51 2 pseudoword
-305.01 2 pseudoword
-307.51 2 pseudoword
-310.01 2 pseudoword
-312.51 2 pseudoword
-315.01 2 pseudoword
-317.51 2 pseudoword
diff --git a/legacy/bids-validator/tests/data/valid_filenames/task-rhymejudgment_bold.json b/legacy/bids-validator/tests/data/valid_filenames/task-rhymejudgment_bold.json
deleted file mode 100644
index 91da4403..00000000
--- a/legacy/bids-validator/tests/data/valid_filenames/task-rhymejudgment_bold.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "RepetitionTime": 1.0,
- "TaskName": "rhyme judgment"
-}
diff --git a/legacy/bids-validator/tests/data/valid_headers/.bidsignore b/legacy/bids-validator/tests/data/valid_headers/.bidsignore
deleted file mode 100644
index 0b879006..00000000
--- a/legacy/bids-validator/tests/data/valid_headers/.bidsignore
+++ /dev/null
@@ -1 +0,0 @@
-*_not_bids.txt
\ No newline at end of file
diff --git a/legacy/bids-validator/tests/data/valid_headers/CHANGES b/legacy/bids-validator/tests/data/valid_headers/CHANGES
deleted file mode 100644
index c2ee90bf..00000000
--- a/legacy/bids-validator/tests/data/valid_headers/CHANGES
+++ /dev/null
@@ -1,3 +0,0 @@
-1.0.0 2011-10-06
-
- - initial release
diff --git a/legacy/bids-validator/tests/data/valid_headers/README b/legacy/bids-validator/tests/data/valid_headers/README
deleted file mode 100644
index 7a90bb4e..00000000
--- a/legacy/bids-validator/tests/data/valid_headers/README
+++ /dev/null
@@ -1,16 +0,0 @@
-This dataset was obtained from the OpenfMRI project (http://www.openfmri.org).
-Accession #: ds003
-Description: Rhyme judgment
-
-Release history:
-10/06/2011: initial release
-3/21/2013: Updated release with QA information
-
-This dataset is made available under the Public Domain Dedication and License
-v1.0, whose full text can be found at
-http://www.opendatacommons.org/licenses/pddl/1.0/.
-We hope that all users will follow the ODC Attribution/Share-Alike
-Community Norms (http://www.opendatacommons.org/norms/odc-by-sa/);
-in particular, while not legally required, we hope that all users
-of the data will acknowledge the OpenfMRI project and NSF Grant
-OCI-1131441 (R. Poldrack, PI) in any publications.
diff --git a/legacy/bids-validator/tests/data/valid_headers/dataset_description.json b/legacy/bids-validator/tests/data/valid_headers/dataset_description.json
deleted file mode 100644
index dcb73d0c..00000000
--- a/legacy/bids-validator/tests/data/valid_headers/dataset_description.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "License": "This dataset is made available under the Public Domain Dedication and License \nv1.0, whose full text can be found at \nhttp://www.opendatacommons.org/licenses/pddl/1.0/. \nWe hope that all users will follow the ODC Attribution/Share-Alike \nCommunity Norms (http://www.opendatacommons.org/norms/odc-by-sa/); \nin particular, while not legally required, we hope that all users \nof the data will acknowledge the OpenfMRI project and NSF Grant \nOCI-1131441 (R. Poldrack, PI) in any publications.",
- "Name": "Rhyme judgment",
- "BIDSVersion": "1.0.1"
-}
diff --git a/legacy/bids-validator/tests/data/valid_headers/participants.tsv b/legacy/bids-validator/tests/data/valid_headers/participants.tsv
deleted file mode 100644
index a2ca4b59..00000000
--- a/legacy/bids-validator/tests/data/valid_headers/participants.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-participant_id sex age
-sub-01 M 25
\ No newline at end of file
diff --git a/legacy/bids-validator/tests/data/valid_headers/sub-01/anat/sub-01_T1w.nii.gz b/legacy/bids-validator/tests/data/valid_headers/sub-01/anat/sub-01_T1w.nii.gz
deleted file mode 100644
index e8902711..00000000
Binary files a/legacy/bids-validator/tests/data/valid_headers/sub-01/anat/sub-01_T1w.nii.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_headers/sub-01/func/extra_file_that_is_not_bids.txt b/legacy/bids-validator/tests/data/valid_headers/sub-01/func/extra_file_that_is_not_bids.txt
deleted file mode 100644
index e69de29b..00000000
diff --git a/legacy/bids-validator/tests/data/valid_headers/sub-01/func/sub-01_task-rhymejudgment_bold.nii.gz b/legacy/bids-validator/tests/data/valid_headers/sub-01/func/sub-01_task-rhymejudgment_bold.nii.gz
deleted file mode 100644
index d11cfb32..00000000
Binary files a/legacy/bids-validator/tests/data/valid_headers/sub-01/func/sub-01_task-rhymejudgment_bold.nii.gz and /dev/null differ
diff --git a/legacy/bids-validator/tests/data/valid_headers/sub-01/func/sub-01_task-rhymejudgment_events.tsv b/legacy/bids-validator/tests/data/valid_headers/sub-01/func/sub-01_task-rhymejudgment_events.tsv
deleted file mode 100644
index f2dd58fd..00000000
--- a/legacy/bids-validator/tests/data/valid_headers/sub-01/func/sub-01_task-rhymejudgment_events.tsv
+++ /dev/null
@@ -1,65 +0,0 @@
-onset duration trial_type
-20.001 2 word
-22.501 2 word
-25.001 2 word
-27.501 2 word
-30.001 2 word
-32.501 2 word
-35.001 2 word
-37.501 2 word
-60.002 2 word
-62.502 2 word
-65.002 2 word
-67.502 2 word
-70.002 2 word
-72.502 2 word
-75.002 2 word
-77.503 2 word
-100.003 2 word
-102.503 2 word
-105.003 2 word
-107.503 2 word
-110.004 2 word
-112.504 2 word
-115.004 2 word
-117.504 2 word
-140.004 2 word
-142.504 2 word
-145.005 2 word
-147.505 2 word
-150.005 2 word
-152.505 2 word
-155.005 2 word
-157.505 2 word
-180.006 2 pseudoword
-182.506 2 pseudoword
-185.006 2 pseudoword
-187.506 2 pseudoword
-190.006 2 pseudoword
-192.506 2 pseudoword
-195.006 2 pseudoword
-197.507 2 pseudoword
-220.007 2 pseudoword
-222.507 2 pseudoword
-225.007 2 pseudoword
-227.507 2 pseudoword
-230.007 2 pseudoword
-232.508 2 pseudoword
-235.008 2 pseudoword
-237.508 2 pseudoword
-260.008 2 pseudoword
-262.508 2 pseudoword
-265.009 2 pseudoword
-267.509 2 pseudoword
-270.009 2 pseudoword
-272.509 2 pseudoword
-275.009 2 pseudoword
-277.509 2 pseudoword
-300.01 2 pseudoword
-302.51 2 pseudoword
-305.01 2 pseudoword
-307.51 2 pseudoword
-310.01 2 pseudoword
-312.51 2 pseudoword
-315.01 2 pseudoword
-317.51 2 pseudoword
diff --git a/legacy/bids-validator/tests/data/valid_headers/task-rhymejudgment_bold.json b/legacy/bids-validator/tests/data/valid_headers/task-rhymejudgment_bold.json
deleted file mode 100644
index 91da4403..00000000
--- a/legacy/bids-validator/tests/data/valid_headers/task-rhymejudgment_bold.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "RepetitionTime": 1.0,
- "TaskName": "rhyme judgment"
-}
diff --git a/legacy/bids-validator/tests/env/FileList.js b/legacy/bids-validator/tests/env/FileList.js
deleted file mode 100644
index 40232a74..00000000
--- a/legacy/bids-validator/tests/env/FileList.js
+++ /dev/null
@@ -1,85 +0,0 @@
-/**
- * for use in test suites using File & FileList browser APIs in jsdom environment
- */
-
-import fs from 'fs'
-
-import path from 'path'
-import mime from 'mime-types'
-
-function createFileList(dir) {
- const str = dir.substr(dir.lastIndexOf(path.sep) + 1) + '$'
- const rootpath = dir.replace(new RegExp(str), '')
- const paths = getFilepaths(dir, [], rootpath)
- return paths.map((path) => {
- return createFile(path, path.replace(rootpath, ''))
- })
-}
-
-function getFilepaths(dir, files_) {
- files_ = files_ || []
- const files = fs.readdirSync(dir)
- files
- .map((file) => path.join(dir, file))
- .map((path) =>
- isDirectory(path) ? getFilepaths(path, files_) : files_.push(path),
- )
- return files_
-}
-
-function isDirectory(path) {
- const pathStat = fs.lstatSync(path)
- let isDir = pathStat.isDirectory()
- if (pathStat.isSymbolicLink()) {
- try {
- var targetPath = fs.realpathSync(path)
- isDir = fs.lstatSync(targetPath).isDirectory()
- } catch (err) {
- isDir = false
- }
- }
- return isDir
-}
-
-function addFileList(input, file_paths) {
- if (typeof file_paths === 'string') file_paths = [file_paths]
- else if (!Array.isArray(file_paths)) {
- throw new Error(
- 'file_paths needs to be a file path string or an Array of file path strings',
- )
- }
-
- const file_list = file_paths.map((fp) => createFile(fp))
- file_list.__proto__ = Object.create(FileList.prototype)
-
- Object.defineProperty(input, 'files', {
- value: file_list,
- writable: false,
- })
-
- return input
-}
-
-function createFile(file_path, relativePath) {
- const file = fs.statSync(file_path)
-
- const browserFile = new File(
- [new fs.readFileSync(file_path)],
- path.basename(file_path),
- {
- type: mime.lookup(file_path) || '',
- lastModified: file.mtimeMs,
- },
- )
- browserFile.webkitRelativePath = relativePath || file_path
-
- return browserFile
-}
-
-export { addFileList, createFile, createFileList }
-
-export default {
- addFileList,
- createFile,
- createFileList,
-}
diff --git a/legacy/bids-validator/tests/events.spec.js b/legacy/bids-validator/tests/events.spec.js
deleted file mode 100644
index 19ac4b0f..00000000
--- a/legacy/bids-validator/tests/events.spec.js
+++ /dev/null
@@ -1,93 +0,0 @@
-import assert from 'assert'
-import validateEvents from '../validators/events/validate'
-
-describe('Events', function () {
- const headers = [
- [
- {
- path: '/sub01/sub01_task-test_bold.nii.gz',
- relativePath: '/sub01/sub01_task-test_bold.nii.gz',
- },
- { dim: [4, 0, 0, 0, 10] },
- ],
- ]
-
- it('all files in the /stimuli folder should be included in an _events.tsv file', () => {
- // stimuli.events will have all of the
- // files included in the stim_file column of every _events.tsv file.
- // stimuli.directory will have all of the
- // files included in the /stimuli directory.
- const stimuli = {
- events: ['/stimuli/images/red-square.jpg'],
- directory: [{ relativePath: '/stimuli/images/blue-square.jpg' }],
- }
- const issues = validateEvents([], stimuli, [], {})
- assert.strictEqual(issues.length, 1)
- assert.strictEqual(issues[0].code, 77)
- })
-
- it('should not throw issues if all files in the /stimuli folder are included in an _events.tsv file', () => {
- const stimuli = {
- events: ['/stimuli/images/red-square.jpg'],
- directory: [{ relativePath: '/stimuli/images/red-square.jpg' }],
- }
- const issues = validateEvents([], stimuli, [], {})
- assert.deepStrictEqual(issues, [])
- })
-
- it('should throw an issue if the onset of the last event in _events.tsv is more than TR * number of volumes in corresponding nifti header', () => {
- const events = [
- {
- file: { path: '/sub01/sub01_task-test_events.tsv' },
- path: '/sub01/sub01_task-test_events.tsv',
- contents: '12\tsomething\tsomething\n',
- },
- ]
- const jsonDictionary = {
- '/sub01/sub01_task-test_bold.json': {
- RepetitionTime: 1,
- },
- }
-
- const issues = validateEvents(events, [], headers, jsonDictionary)
- assert.strictEqual(issues.length, 1)
- assert.strictEqual(issues[0].code, 85)
- })
-
- it('should throw an issue if the onset of the last event in _events.tsv is less than .5 * TR * number of volumes in corresponding nifti header', () => {
- const events = [
- {
- file: { path: '/sub01/sub01_task-test_events.tsv' },
- path: '/sub01/sub01_task-test_events.tsv',
- contents: '2\tsomething\tsomething\n',
- },
- ]
- const jsonDictionary = {
- '/sub01/sub01_task-test_bold.json': {
- RepetitionTime: 1,
- },
- }
-
- const issues = validateEvents(events, [], headers, jsonDictionary)
- assert.strictEqual(issues.length, 1)
- assert.strictEqual(issues[0].code, 86)
- })
-
- it('should not throw any issues if the onset of the last event in _events.tsv is a reasonable value', () => {
- const events = [
- {
- file: { path: '/sub01/sub01_task-test_events.tsv' },
- path: '/sub01/sub01_task-test_events.tsv',
- contents: '7\tsomething\tsomething\n',
- },
- ]
- const jsonDictionary = {
- '/sub01/sub01_task-test_bold.json': {
- RepetitionTime: 1,
- },
- }
-
- const issues = validateEvents(events, [], headers, jsonDictionary)
- assert.deepStrictEqual(issues, [])
- })
-})
diff --git a/legacy/bids-validator/tests/headerField.spec.js b/legacy/bids-validator/tests/headerField.spec.js
deleted file mode 100644
index 33b16d6b..00000000
--- a/legacy/bids-validator/tests/headerField.spec.js
+++ /dev/null
@@ -1,143 +0,0 @@
-import assert from 'assert'
-import headerFields from '../validators/headerFields'
-
-describe('headerFields', () => {
- it('should throw an error if _magnitude1 or _magnitude2 files do not have exactly 3 dimensions.', () => {
- const headers = [
- // each of these headers has one too many dimensions on the 'dim' field.
- [
- {
- name: 'sub-01_magnitude1.nii',
- relativePath: 'sub-01_magnitude1.nii',
- },
- {
- dim: [5, 1, 1, 1, 1],
- pixdim: [5, 1, 1, 1, 1],
- xyzt_units: [5, 1, 1, 1, 1],
- },
- ],
- [
- {
- name: 'sub-01_magnitude2.nii',
- relativePath: 'sub-01_magnitude2.nii',
- },
- {
- dim: [5, 1, 1, 1, 1],
- pixdim: [5, 1, 1, 1, 1],
- xyzt_units: [5, 1, 1, 1, 1],
- },
- ],
- // each of these headers has one too few dimensions on the 'dim' field.
- [
- {
- name: 'sub-02_magnitude1.nii',
- relativePath: 'sub-02_magnitude1.nii',
- },
- {
- dim: [3, 1, 1],
- pixdim: [4, 1, 1, 1],
- xyzt_units: [4, 1, 1, 1],
- },
- ],
- [
- {
- name: 'sub-02_magnitude2.nii',
- relativePath: 'sub-02_magnitude2.nii',
- },
- {
- dim: [3, 1, 1],
- pixdim: [4, 1, 1, 1],
- xyzt_units: [4, 1, 1, 1],
- },
- ],
- ]
- const issues = headerFields(headers)
- assert(
- issues.length == 4 &&
- issues[0].code == '94' &&
- issues[1].code == '94' &&
- issues[2].code == '94' &&
- issues[3].code == '94',
- )
- })
-
- it('_magnitude1 or _magnitude2 files should have 3 dimensions.', () => {
- const headers = [
- [
- {
- name: 'sub-01_magnitude1.nii',
- relativePath: 'sub-01_magnitude1.nii',
- },
- {
- dim: [3, 1, 1, 1],
- pixdim: [3, 1, 1, 1],
- xyzt_units: [3, 1, 1, 1],
- },
- ],
- [
- {
- name: 'sub-01_magnitude2.nii',
- relativePath: 'sub-01_magnitude2.nii',
- },
- {
- dim: [3, 1, 1, 1],
- pixdim: [3, 1, 1, 1],
- xyzt_units: [3, 1, 1, 1],
- },
- ],
- ]
- const issues = headerFields(headers)
- assert.deepEqual(issues, [])
- })
-
- it('should throw an error if _T1w files has the wrong dimensions.', () => {
- // each of these headers has one too many dimensions on the 'dim' field.
- // the first entry is the total count, and the following three entries are spatial.
- const headers = [
- [
- {
- name: 'sub-01_T1w.nii',
- relativePath: 'sub-01_T1w.nii',
- },
- {
- dim: [5, 1, 1, 1, 1],
- pixdim: [5, 1, 1, 1, 1],
- xyzt_units: [5, 1, 1, 1, 1],
- },
- ],
- [
- {
- name: 'sub-02_T1w.nii',
- relativePath: 'sub-02_T1w.nii',
- },
- {
- dim: [3, 1, 1],
- pixdim: [4, 1, 1, 1],
- xyzt_units: [4, 1, 1, 1],
- },
- ],
- ]
- const issues = headerFields(headers)
- assert(
- issues.length == 2 && issues[0].code == '95' && issues[1].code == '95',
- )
- })
-
- it('_T1w files should have exactly 3 dimensions.', () => {
- const headers = [
- [
- {
- name: 'sub-01_T1w.nii',
- relativePath: 'sub-01_T1w.nii',
- },
- {
- dim: [3, 1, 1, 1],
- pixdim: [3, 1, 1, 1],
- xyzt_units: [4, 1, 1, 1],
- },
- ],
- ]
- const issues = headerFields(headers)
- assert.deepEqual(issues, [])
- })
-})
diff --git a/legacy/bids-validator/tests/hed.spec.js b/legacy/bids-validator/tests/hed.spec.js
deleted file mode 100644
index 11ea1c5a..00000000
--- a/legacy/bids-validator/tests/hed.spec.js
+++ /dev/null
@@ -1,277 +0,0 @@
-import assert from 'assert'
-import validateHed from '../validators/hed'
-
-describe('HED', function () {
- const jsonFiles = [
- {
- relativePath: '/sub01/sub01_task-test_events.json',
- path: '/sub01/sub01_task-test_events.json',
- },
- {
- relativePath: '/dataset_description.json',
- path: '/dataset_description.json',
- },
- ]
-
- it('should not throw an issue if the HED data is valid', () => {
- const events = [
- {
- file: {
- path: '/sub01/sub01_task-test_events.tsv',
- relativePath: '/sub01/sub01_task-test_events.tsv',
- },
- path: '/sub01/sub01_task-test_events.tsv',
- contents:
- 'onset\tduration\ttest\tHED\n' + '7\tsomething\tone\tSpeed/30 mph\n',
- },
- ]
- const jsonDictionary = {
- '/sub01/sub01_task-test_events.json': {
- myCodes: {
- HED: {
- one: 'Duration/5 s',
- },
- },
- },
- '/dataset_description.json': { HEDVersion: '8.0.0' },
- }
-
- return validateHed(events, jsonDictionary, jsonFiles, '').then((issues) => {
- assert.deepStrictEqual(issues, [])
- })
- })
-
- it('should not throw an issue if a value column is annotated', () => {
- const events = [
- {
- file: {
- path: '/sub01/sub01_task-test_events.tsv',
- relativePath: '/sub01/sub01_task-test_events.tsv',
- },
- path: '/sub01/sub01_task-test_events.tsv',
- contents:
- 'onset\tduration\ttest\tHED\n' + '7\t3.0\tone\tSpeed/30 mph\n',
- },
- ]
- const jsonDictionary = {
- '/sub01/sub01_task-test_events.json': {
- myCodes: {
- test: {
- HED: {
- one: 'Label/#',
- },
- },
- },
- },
- '/dataset_description.json': { HEDVersion: '8.0.0' },
- }
-
- return validateHed(events, jsonDictionary, jsonFiles, '').then((issues) => {
- assert.deepStrictEqual(issues, [])
- })
- })
-
- it('should not throw an issue if a library schema is included', () => {
- const events = [
- {
- file: {
- path: '/sub01/sub01_task-test_events.tsv',
- relativePath: '/sub01/sub01_task-test_events.tsv',
- },
- path: '/sub01/sub01_task-test_events.tsv',
- contents:
- 'onset\tduration\ttest\tHED\n' + '7\t3.0\tone\tSpeed/30 mph\n',
- },
- ]
-
- const jsonDictionary = {
- '/sub01/sub01_task-test_events.json': {
- myCodes: {
- test: {
- HED: {
- one: 'ts:Sensory-presentation, Label/#',
- },
- },
- },
- },
- '/dataset_description.json': {
- HEDVersion: ['8.0.0', 'ts:testlib_1.0.2'],
- },
- }
-
- return validateHed(events, jsonDictionary, jsonFiles, '').then((issues) => {
- assert.deepStrictEqual(issues, [])
- })
- })
-
- it('should throw an issue if the HED data is invalid', () => {
- const events = [
- {
- file: {
- path: '/sub01/sub01_task-test_events.tsv',
- relativePath: '/sub01/sub01_task-test_events.tsv',
- },
- path: '/sub01/sub01_task-test_events.tsv',
- contents:
- 'onset\tduration\ttest\tHED\n' + '7\tsomething\tone\tDuration/5 s\n',
- },
- ]
- const jsonDictionary = {
- '/sub01/sub01_task-test_events.json': {
- test: {
- HED: {
- one: 'Speed/5 ms',
- },
- },
- },
- '/dataset_description.json': { HEDVersion: '8.0.0' },
- }
-
- return validateHed(events, jsonDictionary, jsonFiles, '').then((issues) => {
- assert.strictEqual(issues.length, 1)
- assert.strictEqual(issues[0].code, 104)
- })
- })
-
- it('should not throw an issue if multiple library schemas are included', () => {
- const events = [
- {
- file: {
- path: '/sub01/sub01_task-test_events.tsv',
- relativePath: '/sub01/sub01_task-test_events.tsv',
- },
- path: '/sub01/sub01_task-test_events.tsv',
- contents:
- 'onset\tduration\ttest\tHED\n' + '7\t3.0\tone\tSpeed/30 mph\n',
- },
- ]
-
- const jsonDictionary = {
- '/sub01/sub01_task-test_events.json': {
- myCodes: {
- test: {
- HED: {
- one: 'ts:Sensory-presentation, Label/#, sc:Sleep-deprivation',
- },
- },
- },
- },
- '/dataset_description.json': {
- HEDVersion: ['8.0.0', 'ts:testlib_1.0.2', 'sc:score_1.0.0'],
- },
- }
-
- return validateHed(events, jsonDictionary, jsonFiles, '').then((issues) => {
- assert.deepStrictEqual(issues, [])
- })
- })
-
- it('should properly issue warnings when appropriate', () => {
- const events = [
- {
- file: {
- path: '/sub01/sub01_task-test_events.tsv',
- relativePath: '/sub01/sub01_task-test_events.tsv',
- },
- path: '/sub01/sub01_task-test_events.tsv',
- contents:
- 'onset\tduration\ttest\tHED\n' + '7\tsomething\tone\tHuman/Driver\n',
- },
- ]
- const jsonDictionary = {
- '/sub01/sub01_task-test_events.json': {
- test: {
- HED: {
- one: 'Train/Maglev',
- },
- },
- },
- '/dataset_description.json': { HEDVersion: '8.0.0' },
- }
-
- return validateHed(events, jsonDictionary, jsonFiles, '').then((issues) => {
- assert.strictEqual(issues.length, 2)
- assert.strictEqual(issues[0].code, 105)
- assert.strictEqual(issues[1].code, 105)
- })
- })
-
- it('should properly issue errors if HED data is used in a sidecar without using HEDVersion', () => {
- const events = [
- {
- file: {
- path: '/sub01/sub01_task-test_events.tsv',
- relativePath: '/sub01/sub01_task-test_events.tsv',
- },
- path: '/sub01/sub01_task-test_events.tsv',
- contents: 'onset\tduration\ttest\n' + '7\tsomething\tone\n',
- },
- ]
- const jsonDictionary = {
- '/sub01/sub01_task-test_events.json': {
- test: {
- HED: {
- one: 'Train',
- },
- },
- },
- '/dataset_description.json': {},
- }
-
- return validateHed(events, jsonDictionary, jsonFiles, '').then((issues) => {
- assert.strictEqual(issues.length, 1)
- assert.strictEqual(issues[0].code, 109)
- })
- })
-
- it('should properly issue errors if HED data is used in a TSV file without using HEDVersion', () => {
- const events = [
- {
- file: {
- path: '/sub01/sub01_task-test_events.tsv',
- relativePath: '/sub01/sub01_task-test_events.tsv',
- },
- path: '/sub01/sub01_task-test_events.tsv',
- contents: 'onset\tduration\tHED\n' + '7\tsomething\tHuman\n',
- },
- ]
- const jsonDictionary = {
- '/sub01/sub01_task-test_events.json': {},
- '/dataset_description.json': {},
- }
-
- return validateHed(events, jsonDictionary, jsonFiles, '').then((issues) => {
- assert.strictEqual(issues.length, 1)
- assert.strictEqual(issues[0].code, 109)
- })
- })
-
- it('should throw an issue if HEDVersion is invalid', () => {
- const events = [
- {
- file: {
- path: '/sub01/sub01_task-test_events.tsv',
- relativePath: '/sub01/sub01_task-test_events.tsv',
- },
- path: '/sub01/sub01_task-test_events.tsv',
- contents:
- 'onset\tduration\ttest\tHED\n' + '7\tsomething\tone\tSpeed/30 mph\n',
- },
- ]
- const jsonDictionary = {
- '/sub01/sub01_task-test_events.json': {
- myCodes: {
- HED: {
- one: 'Duration/5 s',
- },
- },
- },
- '/dataset_description.json': { HEDVersion: 'one:two:8.0.0' },
- }
-
- return validateHed(events, jsonDictionary, jsonFiles, '').then((issues) => {
- assert.strictEqual(issues.length, 1)
- assert.strictEqual(issues[0].code, 104)
- })
- })
-})
diff --git a/legacy/bids-validator/tests/json.spec.js b/legacy/bids-validator/tests/json.spec.js
deleted file mode 100644
index bf7f54d5..00000000
--- a/legacy/bids-validator/tests/json.spec.js
+++ /dev/null
@@ -1,778 +0,0 @@
-import assert from 'assert'
-import validate from '../index'
-
-describe('JSON', function () {
- var file = {
- name: 'task-rest_bold.json',
- relativePath: '/task-rest_bold.json',
- }
- var jsonDict = {}
-
- it('sidecars should have key/value pair for "RepetitionTime" expressed in seconds', function () {
- var jsonObj = {
- RepetitionTime: 1.2,
- echo_time: 0.005,
- flip_angle: 90,
- TaskName: 'Rest',
- }
- jsonDict[file.relativePath] = jsonObj
- validate.JSON(file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
- var jsonObjInval = {
- RepetitionTime: 1200,
- echo_time: 0.005,
- flip_angle: 90,
- TaskName: 'Rest',
- }
- jsonDict[file.relativePath] = jsonObjInval
- validate.JSON(file, jsonDict, function (issues) {
- assert(issues && issues.length === 1)
- })
- })
-
- it('should detect negative value for SliceTiming', function () {
- var jsonObj = {
- RepetitionTime: 1.2,
- SliceTiming: [-1.0, 0.0, 1.0],
- TaskName: 'Rest',
- }
- jsonDict[file.relativePath] = jsonObj
- validate.JSON(file, jsonDict, function (issues) {
- assert(issues.length === 1 && issues[0].code == 55)
- })
- })
-
- var meg_file = {
- name: 'sub-01_run-01_meg.json',
- relativePath: '/sub-01_run-01_meg.json',
- }
-
- it('*_meg.json sidecars should have required key/value pairs', function () {
- var jsonObj = {
- TaskName: 'Audiovis',
- SamplingFrequency: 1000,
- PowerLineFrequency: 50,
- DewarPosition: 'Upright',
- SoftwareFilters: 'n/a',
- DigitizedLandmarks: true,
- DigitizedHeadPoints: false,
- }
- jsonDict[meg_file.relativePath] = jsonObj
- validate.JSON(meg_file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
-
- var jsonObjInval = jsonObj
- jsonObjInval['SamplingFrequency'] = ''
- jsonDict[meg_file.relativePath] = jsonObjInval
- validate.JSON(meg_file, jsonDict, function (issues) {
- assert(issues && issues.length === 1)
- })
- })
-
- var eeg_file = {
- name: 'sub-01_run-01_eeg.json',
- relativePath: '/sub-01_run-01_eeg.json',
- }
-
- it('*.json sidecars with CogPOID or CogAtlasID fields should require a uri format', function () {
- var jsonObj = {
- TaskName: 'rest',
- SamplingFrequency: 1000,
- EEGReference: 'Cz',
- SoftwareFilters: 'n/a',
- PowerLineFrequency: 1000,
- CogAtlasID:
- 'we did a search on https://ww.idontexist.com for the word "atlas"',
- }
- jsonDict[eeg_file.relativePath] = jsonObj
- validate.JSON(eeg_file, jsonDict, function (issues) {
- assert(issues.length === 1)
- assert(issues[0].evidence == '.CogAtlasID should match format "uri"')
- })
- })
-
- it('*_eeg.json sidecars should have required key/value pairs', function () {
- var jsonObj = {
- TaskName: 'rest',
- SamplingFrequency: 1000,
- EEGReference: 'Cz',
- SoftwareFilters: {
- HighPass: { HalfAmplitudeCutOffHz: 1, RollOff: '6dB/Octave' },
- },
- PowerLineFrequency: 'n/a',
- CogPOID: 'https://www.idontexist.com',
- }
- jsonDict[eeg_file.relativePath] = jsonObj
- validate.JSON(eeg_file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
-
- var jsonObjInval = jsonObj
- jsonObjInval['SamplingFrequency'] = ''
- jsonDict[eeg_file.relativePath] = jsonObjInval
- validate.JSON(eeg_file, jsonDict, function (issues) {
- assert(issues && issues[0].code == 55)
- })
- })
-
- var ieeg_file = {
- name: 'sub-01_run-01_ieeg.json',
- relativePath: '/sub-01_run-01_ieeg.json',
- }
-
- it('*_ieeg.json sidecars should have required key/value pairs', function () {
- var jsonObj = {
- TaskName: 'Audiovis',
- SamplingFrequency: 10,
- PowerLineFrequency: 50,
- SoftwareFilters: {
- HighPass: { HalfAmplitudeCutOffHz: 1, RollOff: '6dB/Octave' },
- },
- iEEGReference: 'chan1',
- CogAtlasID: 'doi:thisisadoi',
- }
- jsonDict[ieeg_file.relativePath] = jsonObj
- validate.JSON(ieeg_file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
- var jsonObjInval = jsonObj
- jsonObjInval['Manufacturer'] = ''
- jsonDict[ieeg_file.relativePath] = jsonObjInval
- validate.JSON(ieeg_file, jsonDict, function (issues) {
- assert(issues && issues.length === 1)
- })
- })
-
- var meg_coordsystem_file = {
- name: 'sub-01/meg/sub-01_task-testing_coordsystem.json',
- relativePath: '/sub-01/meg/sub-01_task-testing_coordsystem.json',
- }
-
- it('MEG *_coordsystem.json files should have required key/value pairs', function () {
- var jsonObj = {
- FiducialsDescription: 'Fiducials were digitized using ... ',
- MEGCoordinateSystem: 'CTF',
- MEGCoordinateUnits: 'mm',
- MEGCoordinateSystemDescription: 'this is the usual ...',
- EEGCoordinateSystem: 'CapTrak',
- EEGCoordinateSystemDescription: 'RAS orientation ...',
- HeadCoilCoordinateSystem: 'Other',
- HeadCoilCoordinates: {
- LPA: [-1, 0, 0],
- RPA: [1, 0, 0],
- NAS: [0, 1, 0],
- },
- AnatomicalLandmarkCoordinates: {
- LPA: [-1, 0, 0],
- RPA: [1, 0, 0],
- NAS: [0, 1, 0],
- },
- AnatomicalLandmarkCoordinateSystem: 'Other',
- AnatomicalLandmarkCoordinateUnits: 'mm',
- }
- jsonDict[meg_coordsystem_file.relativePath] = jsonObj
- validate.JSON(meg_coordsystem_file, jsonDict, function (issues) {
- assert(issues.length === 4)
- assert(
- issues[0].evidence ==
- " should have required property 'HeadCoilCoordinateSystemDescription'",
- )
- assert(issues[1].evidence == ' should match "then" schema')
- assert(
- issues[2].evidence ==
- " should have required property 'AnatomicalLandmarkCoordinateSystemDescription'",
- )
- assert(issues[3].evidence == ' should match "then" schema')
- })
- })
-
- var eeg_coordsystem_file = {
- name: 'sub-01/eeg/sub-01_task-testing_coordsystem.json',
- relativePath: '/sub-01/eeg/sub-01_task-testing_coordsystem.json',
- }
-
- it('EEG *_coordsystem.json files should have required key/value pairs', function () {
- var jsonObj = {
- IntendedFor: 'sub-01_task-testing_electrodes.tsv',
- FiducialsDescription: 'Fiducials were digitized using ... ',
- EEGCoordinateSystem: 'CapTrak',
- EEGCoordinateUnits: 'mm',
- EEGCoordinateSystemDescription: 'RAS orientation ...',
- AnatomicalLandmarkCoordinates: {
- LPA: [-1, 0, 0],
- RPA: [1, 0, 0],
- NAS: [0, 1, 0],
- },
- AnatomicalLandmarkCoordinateSystem: 'Other',
- AnatomicalLandmarkCoordinateUnits: 'mm',
- AnatomicalLandmarkCoordinateSystemDescription: '...',
- }
- jsonDict[eeg_coordsystem_file.relativePath] = jsonObj
- validate.JSON(eeg_coordsystem_file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
- })
-
- it('EEG *_coordsystem.json files should not contain unaccepted *CoordinateSystem keywords', function () {
- var jsonObj = {
- EEGCoordinateSystem: 'RAS',
- EEGCoordinateUnits: 'mm',
- EEGCoordinateSystemDescription: 'RAS orientation ...',
- }
- jsonDict[eeg_coordsystem_file.relativePath] = jsonObj
- validate.JSON(eeg_coordsystem_file, jsonDict, function (issues) {
- assert(issues.length === 5)
- assert(
- issues[0].evidence ==
- '.EEGCoordinateSystem should be equal to one of the allowed values',
- )
- assert(
- issues[4].evidence ==
- '.EEGCoordinateSystem should match some schema in anyOf',
- )
- })
- })
-
- it('EEG *_coordsystem.json schema should require *Description if *Coordsystem is "Other"', function () {
- var jsonObj = {
- EEGCoordinateSystem: 'Other',
- EEGCoordinateUnits: 'mm',
- EEGCoordinateSystemDescription: 'we did ...',
- FiducialsCoordinateSystem: 'Other',
- AnatomicalLandmarkCoordinateSystem: 'Other',
- AnatomicalLandmarkCoordinateSystemDescription: 'we did ...',
- }
- jsonDict[eeg_coordsystem_file.relativePath] = jsonObj
- validate.JSON(eeg_coordsystem_file, jsonDict, function (issues) {
- assert(issues.length === 2)
- assert(
- issues[0].evidence ==
- " should have required property 'FiducialsCoordinateSystemDescription'",
- )
- assert(issues[1].evidence == ' should match "then" schema')
- })
- })
-
- it('EEG *_coordsystem.json schema general requirements should not be overridden by conditional requirements', function () {
- var jsonObj = {
- EEGCoordinateSystem: 'Other',
- EEGCoordinateSystemDescription: 'We used a ...',
- AnatomicalLandmarkCoordinateSystem: 'Other',
- }
- jsonDict[eeg_coordsystem_file.relativePath] = jsonObj
- validate.JSON(eeg_coordsystem_file, jsonDict, function (issues) {
- assert(issues.length === 3)
- assert(
- issues[0].evidence ==
- " should have required property 'EEGCoordinateUnits'",
- )
- assert(
- issues[1].evidence ==
- " should have required property 'AnatomicalLandmarkCoordinateSystemDescription'",
- )
- assert(issues[2].evidence == ' should match "then" schema')
- })
- })
-
- var ieeg_coordsystem_file = {
- name: 'sub-01/ieeg/sub-01_task-testing_coordsystem.json',
- relativePath: '/sub-01/ieeg/sub-01_task-testing_coordsystem.json',
- }
-
- it('iEEG *_coordsystem.json files should have required key/value pairs', function () {
- var jsonObj = {
- iEEGCoordinateSystem: 'Pixels',
- iEEGCoordinateUnits: 'pixels',
- }
- jsonDict[ieeg_coordsystem_file.relativePath] = jsonObj
- validate.JSON(ieeg_coordsystem_file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
- })
-
- it('If iEEG CoordinateSystem is "Pixels", then CoordinateUnits must be "pixels"', function () {
- var jsonObj = {
- iEEGCoordinateSystem: 'Pixels',
- iEEGCoordinateUnits: 'mm',
- }
- jsonDict[ieeg_coordsystem_file.relativePath] = jsonObj
- validate.JSON(ieeg_coordsystem_file, jsonDict, function (issues) {
- assert(issues.length === 2)
- assert(
- issues[0].evidence ==
- '.iEEGCoordinateUnits should be equal to one of the allowed values',
- )
- assert(issues[1].evidence == ' should match "then" schema')
- })
- })
-
- it('iEEG *_coordsystem.json schema should require *Description if *Coordsystem is "Other"', function () {
- var jsonObj = {
- iEEGCoordinateSystem: 'Other',
- iEEGCoordinateUnits: 'pixels',
- }
- jsonDict[ieeg_coordsystem_file.relativePath] = jsonObj
- validate.JSON(ieeg_coordsystem_file, jsonDict, function (issues) {
- assert(issues.length === 2)
- assert(
- issues[0].evidence ==
- " should have required property 'iEEGCoordinateSystemDescription'",
- )
- assert(issues[1].evidence == ' should match "then" schema')
- })
- })
-
- it('should use inherited sidecars to find missing fields', function () {
- const multiEntryJsonDict = {}
-
- // this json file is missing the SamplingFrequency field
- const partialJsonObj = {
- TaskName: 'Audiovis',
- PowerLineFrequency: 50,
- DewarPosition: 'Upright',
- SoftwareFilters: 'n/a',
- DigitizedLandmarks: true,
- DigitizedHeadPoints: false,
- }
- multiEntryJsonDict[meg_file.relativePath] = partialJsonObj
-
- // this json file (sitting at the root directory level)
- // provides the missing json field
- const inheritedMegFile = {
- name: 'meg.json',
- relativePath: '/meg.json',
- }
-
- const restOfJsonObj = {
- SamplingFrequency: 2000,
- }
- multiEntryJsonDict[inheritedMegFile.relativePath] = restOfJsonObj
-
- // json validation will pass because (when merged) there are no
- // missing data fields
- validate.JSON(meg_file, multiEntryJsonDict, function (issues) {
- assert(issues.length == 0)
- })
- })
-
- it('should favor the sidecar on the directory level closest to the file being validated', function () {
- const multiEntryJsonDict = {}
- const lowLevelFile = {
- name: 'run-01_meg.json',
- relativePath: '/sub-01/run-01_meg.json',
- }
-
- // this json file has a good SamplingFrequency field
- const partialJsonObj = {
- TaskName: 'Audiovis',
- SamplingFrequency: 1000,
- PowerLineFrequency: 50,
- DewarPosition: 'Upright',
- SoftwareFilters: 'n/a',
- DigitizedLandmarks: true,
- DigitizedHeadPoints: false,
- }
- multiEntryJsonDict[lowLevelFile.relativePath] = partialJsonObj
-
- // this json file (sitting at the root directory level)
- // also has a SamplingFrequency field, but it is wrong.
- const inheritedMegFile = {
- name: 'meg.json',
- relativePath: '/meg.json',
- }
-
- const restOfJsonObj = {
- SamplingFrequency: '',
- }
- multiEntryJsonDict[inheritedMegFile.relativePath] = restOfJsonObj
-
- // json validation will pass because merged dictionaries prefer
- // field values of the json sidecar furthest from the root.
- // /meg.json is closer to the root than /sub-01/run-01_meg.json
- // and so the values of the latter should be preferred.
- validate.JSON(lowLevelFile, multiEntryJsonDict, function (issues) {
- assert(issues.length == 0)
- })
- })
-
- it('*_bold.json sidecars should not have EffectiveEchoSpacing > TotalReadoutTime', () => {
- // this json dictionary generates a sidecar with EffectiveEchoSpacing > TotalReadoutTime,
- // which is nonsensical
- const fieldMapJsonDict = {
- EffectiveEchoSpacing: 3,
- TotalReadoutTime: 1,
- }
- jsonDict[file.relativePath] = fieldMapJsonDict
-
- // validation should return an error of code 93
- validate.JSON(file, jsonDict, (issues) => {
- assert(issues.length == 1 && issues[0].code == '93')
- })
- })
-
- it('*_bold.json sidecars should have EffectiveEchoSpacing < TotalReadoutTime', () => {
- // this json dictionary generates a sidecar with EffectiveEchoSpacing < TotalReadoutTime,
- // which is reasonable
- const fieldMapJsonDict = {
- EffectiveEchoSpacing: 3,
- TotalReadoutTime: 5,
- }
- jsonDict[file.relativePath] = fieldMapJsonDict
-
- // validation should pass with no errors.
- validate.JSON(file, jsonDict, (issues) => {
- assert.deepEqual(issues, [])
- })
- })
-
- var genetic_info_file = {
- name: 'genetic_info.json',
- relativePath: '/genetic_info.json',
- }
-
- it('sample genetic_info.json should parse', function () {
- var jsonObj = {
- GeneticLevel: ['Genetic'],
- AnalyticalApproach: ['SNP Genotypes'],
- SampleOrigin: 'brain',
- TissueOrigin: 'gray matter',
- CellType: 'neuron',
- BrainLocation: '[-30 -15 10]',
- }
- jsonDict[genetic_info_file.relativePath] = jsonObj
- validate.JSON(genetic_info_file, jsonDict, function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('genetic_info.json should use limited vocabulary for sample origin', function () {
- var jsonObj = {
- GeneticLevel: ['Genetic'],
- AnalyticalApproach: ['SNP Genotypes'],
- SampleOrigin: 'not_from_around_here',
- TissueOrigin: 'gray matter',
- CellType: 'neuron',
- BrainLocation: '[-30 -15 10]',
- }
- jsonDict[genetic_info_file.relativePath] = jsonObj
- validate.JSON(genetic_info_file, jsonDict, function (issues) {
- assert(issues.length === 1 && issues[0].code == 55)
- })
- })
-
- var dataset_description_file = {
- name: 'dataset_description.json',
- relativePath: '/dataset_description.json',
- }
-
- it('dataset_description.json should validate DatasetLinks', function () {
- var jsonObj = {
- Name: 'Example Name',
- BIDSVersion: '1.4.0',
- DatasetLinks: {
- mylink: 'https://www.google.com',
- deriv1: 'derivatives/derivative1',
- phantoms: 'file:///data/phantoms',
- ds000001: 'doi:10.18112/openneuro.ds000001.v1.0.0',
- },
- }
- jsonDict[dataset_description_file.relativePath] = jsonObj
- validate.JSON(dataset_description_file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
- })
-
- it('dataset_description.json should raise on bad keys in DatasetLinks', function () {
- var jsonObj = {
- Name: 'Example Name',
- BIDSVersion: '1.4.0',
- DatasetLinks: {
- mylink: 'https://www.google.com',
- '': 'https://www.yahoo.com',
- 'mylink!': ':/path',
- 'my link': ':/another/path',
- },
- }
- jsonDict[dataset_description_file.relativePath] = jsonObj
- validate.JSON(dataset_description_file, jsonDict, function (issues) {
- assert(issues.length === 6)
- assert(
- issues[0].evidence ==
- '.DatasetLinks should NOT be shorter than 1 characters',
- )
- assert(issues[1].evidence == ".DatasetLinks property name '' is invalid")
- assert(
- issues[2].evidence ==
- '.DatasetLinks should match pattern "^[a-zA-Z0-9]*$"',
- )
- assert(
- issues[3].evidence ==
- ".DatasetLinks property name 'mylink!' is invalid",
- )
- assert(issues[4].evidence == issues[2].evidence)
- assert(
- issues[5].evidence ==
- ".DatasetLinks property name 'my link' is invalid",
- )
- })
- })
-
- it('dataset_description.json should raise on non-object value in DatasetLinks', function () {
- var jsonObj = {
- Name: 'Example Name',
- BIDSVersion: '1.4.0',
- DatasetLinks: 'https://www.google.com',
- }
- jsonDict[dataset_description_file.relativePath] = jsonObj
- validate.JSON(dataset_description_file, jsonDict, function (issues) {
- assert(issues.length === 1)
- assert(issues[0].evidence == '.DatasetLinks should be object')
- })
- })
-
- it('dataset_description.json should raise on invalid values in DatasetLinks', function () {
- var jsonObj = {
- Name: 'Example Name',
- BIDSVersion: '1.4.0',
- DatasetLinks: {
- mylink1: 'https://www.google.com',
- mylink2: 1,
- '': 'https://www.yahoo.com',
- },
- }
- jsonDict[dataset_description_file.relativePath] = jsonObj
- validate.JSON(dataset_description_file, jsonDict, function (issues) {
- assert(issues.length === 3)
- assert(
- issues[0].evidence ==
- '.DatasetLinks should NOT be shorter than 1 characters',
- )
- assert(issues[1].evidence == ".DatasetLinks property name '' is invalid")
- assert(issues[2].evidence == ".DatasetLinks['mylink2'] should be string")
- })
- })
-
- it('dataset_description.json should validate with enum of DatasetType', function () {
- var jsonObj = {
- Name: 'Example Name',
- BIDSVersion: '1.4.0',
- Authors: ['example author'],
- DatasetType: 'raw',
- }
- jsonDict[dataset_description_file.relativePath] = jsonObj
- validate.JSON(dataset_description_file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
- })
-
- it('dataset_description.json should NOT validate with wrong enum of DatasetType', function () {
- var jsonObj = {
- Name: 'Example Name',
- BIDSVersion: '1.4.0',
- Authors: ['example author'],
- DatasetType: 'badenum',
- }
- jsonDict[dataset_description_file.relativePath] = jsonObj
- validate.JSON(dataset_description_file, jsonDict, function (issues) {
- assert(issues.length === 1 && issues[0].code == 55)
- })
- })
-
- it('dataset_description.json should NOT validate with number in Authors', function () {
- var jsonObj = {
- Name: 'Example Name',
- BIDSVersion: '1.4.0',
- Authors: ['example author', 1],
- DatasetType: 'raw',
- }
- jsonDict[dataset_description_file.relativePath] = jsonObj
- validate.JSON(dataset_description_file, jsonDict, function (issues) {
- assert(issues.length === 1 && issues[0].code == 55)
- })
- })
-
- it('dataset_description.json should validate with only required fields, no recommended', function () {
- var jsonObj = {
- Name: 'Example Name',
- BIDSVersion: '1.4.0',
- }
- jsonDict[dataset_description_file.relativePath] = jsonObj
- validate.JSON(dataset_description_file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
- })
-
- it('dataset_description.json should validate with DatasetType "derivative" and GeneratedBy defined', function () {
- var jsonObj = {
- Name: 'Example Name',
- BIDSVersion: '1.4.0',
- Authors: ['example author'],
- DatasetType: 'derivative',
- GeneratedBy: [{ Name: 'Manual' }],
- }
- jsonDict[dataset_description_file.relativePath] = jsonObj
- validate.JSON(dataset_description_file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
- })
-
- it('dataset_description.json should NOT validate with DatasetType "derivative" and GeneratedBy empty', function () {
- var jsonObj = {
- Name: 'Example Name',
- BIDSVersion: '1.4.0',
- Authors: ['example author'],
- DatasetType: 'derivative',
- GeneratedBy: [],
- }
- jsonDict[dataset_description_file.relativePath] = jsonObj
- validate.JSON(dataset_description_file, jsonDict, function (issues) {
- assert(issues.length === 1)
- assert(
- issues[0].code == 55 &&
- issues[0].evidence ==
- '.GeneratedBy should NOT have fewer than 1 items',
- )
- })
- })
-
- it('dataset_description.json should NOT validate with DatasetType "derivative" and GeneratedBy missing', function () {
- var jsonObj = {
- Name: 'Example Name',
- BIDSVersion: '1.4.0',
- Authors: ['example author'],
- DatasetType: 'derivative',
- }
- jsonDict[dataset_description_file.relativePath] = jsonObj
- validate.JSON(dataset_description_file, jsonDict, function (issues) {
- assert(issues.length === 2)
- assert(
- issues[0].code == 55 &&
- issues[0].evidence == " should have required property 'GeneratedBy'",
- )
- })
- })
-
- var beh_file = {
- name: 'sub-01_run-01_beh.json',
- relativePath: '/sub-01_run-01_beh.json',
- }
-
- it('*beh.json sidecars with CogPOID or CogAtlasID fields should require a uri format', function () {
- var jsonObj = {
- TaskName: 'stroop',
- CogAtlasID:
- 'we did a search on https://ww.idontexist.com for the word "atlas"',
- CogPOID:
- 'we did a search on https://ww.idontexisteither.com for the word "paradigm"',
- }
- jsonDict[beh_file.relativePath] = jsonObj
- validate.JSON(beh_file, jsonDict, function (issues) {
- assert(issues.length === 2)
- assert(issues[0].evidence == '.CogAtlasID should match format "uri"')
- assert(issues[1].evidence == '.CogPOID should match format "uri"')
- })
- })
-
- it('*beh.json with extra content throws no error', function () {
- var jsonObj = {
- TaskName: 'stroop',
- trial: {
- LongName: 'Trial name',
- Description: 'Indicator of the type of trial',
- Levels: {
- congruent: 'Word and color font are congruent.',
- incongruent: 'Word and color font are not congruent.',
- },
- },
- }
- jsonDict[beh_file.relativePath] = jsonObj
- validate.JSON(beh_file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
- })
-
- var nirs_file = {
- name: 'sub-01_run-01_nirs.json',
- relativePath: '/sub-01_run-01_nirs.json',
- }
-
- it('*_nirs.json sidecars should have required key/value pairs', function () {
- var jsonObj = {
- TaskName: 'Audiovis',
- SamplingFrequency: 7,
- NIRSChannelCount: 7,
- NIRSSourceOptodeCount: 7,
- NIRSDetectorOptodeCount: 7,
- CapManufacturer: 'EasyCap',
- CapManufacturersModelName: 'actiCAP 64 Ch Standard-2',
- }
- jsonDict[nirs_file.relativePath] = jsonObj
- validate.JSON(nirs_file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
- var jsonObjInval = jsonObj
- jsonObjInval['BadKey'] = ''
- jsonDict[nirs_file.relativePath] = jsonObjInval
- validate.JSON(nirs_file, jsonDict, function (issues) {
- assert(issues && issues.length === 1)
- })
- })
- var nirs_coordsystem_file = {
- name: 'sub-01/nirs/sub-01_task-testing_coordsystem.json',
- relativePath: '/sub-01/nirs/sub-01_task-testing_coordsystem.json',
- }
-
- it('NIRS *_coordsystem.json files should have required key/value pairs', function () {
- var jsonObj = {
- NIRSCoordinateSystem: 'fsaverage',
- NIRSCoordinateUnits: 'mm',
- }
- jsonDict[nirs_coordsystem_file.relativePath] = jsonObj
- validate.JSON(nirs_coordsystem_file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
- })
-
- it('NIRS *_coordsystem.json schema should require *Description if *Coordsystem is "Other"', function () {
- var jsonObj = {
- NIRSCoordinateSystem: 'Other',
- NIRSCoordinateUnits: 'mm',
- }
- jsonDict[nirs_coordsystem_file.relativePath] = jsonObj
- validate.JSON(nirs_coordsystem_file, jsonDict, function (issues) {
- assert(issues.length === 2)
- assert(
- issues[0].evidence ==
- " should have required property 'NIRSCoordinateSystemDescription'",
- )
- assert(issues[1].evidence == ' should match "then" schema')
- })
- })
-
- var motion_file = {
- name: 'sub-01_ses-VR_task-dance_tracksys-Unity_motion.json',
- relativePath: '/sub-01_ses-VR_task-dance_tracksys-Unity_motion.json',
- }
-
- it('*_motion.json sidecars should have required key/value pairs', function () {
- var jsonObj = {
- TaskName: 'Dance',
- SamplingFrequency: 90,
- MotionChannelCount: 7,
- POSChannelCount: 3,
- ORNTChannelCount: 4,
- }
- jsonDict[motion_file.relativePath] = jsonObj
- validate.JSON(motion_file, jsonDict, function (issues) {
- assert(issues.length === 0)
- })
- var jsonObjInval = jsonObj
- jsonObjInval['BadKey'] = ''
- jsonDict[motion_file.relativePath] = jsonObjInval
- validate.JSON(motion_file, jsonDict, function (issues) {
- assert(issues && issues.length === 1)
- })
- })
-})
diff --git a/legacy/bids-validator/tests/nii.spec.js b/legacy/bids-validator/tests/nii.spec.js
deleted file mode 100644
index 712306cc..00000000
--- a/legacy/bids-validator/tests/nii.spec.js
+++ /dev/null
@@ -1,535 +0,0 @@
-import assert from 'assert'
-import validate from '../index'
-
-describe('NIFTI', function () {
- var file = {
- name: 'sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- relativePath:
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- }
- var jsonContentsDict = {
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.json': {
- EchoTime: 1,
- PhaseEncodingDirection: 3,
- EffectiveEchoSpacing: 5,
- SliceTiming: 3,
- SliceEncodingDirection: 4,
- RepetitionTime: 1,
- TotalReadoutTime: 3,
- TaskName: 'Mixed Event Related Probe',
- },
- }
- var events = [
- {
- path: '/sub-15/func/sub-14_task-mixedeventrelatedprobe_run-01_events.tsv',
- },
- {
- path: '/sub-15/run-01_events.tsv',
- },
- ]
-
- it('should warn user about missing events file', function () {
- validate.NIFTI(
- null,
- file,
- jsonContentsDict,
- {},
- [],
- events,
- function (issues) {
- assert((issues.length = 1 && issues[0].code == 25))
- },
- )
- })
-
- it('should ignore missing events files for rest scans', function () {
- let header = {
- dim: [4, 128, 128, 72, 71],
- pixdim: [-1, 2, 2, 2, 1],
- xyzt_units: ['mm', 'mm', 'mm', 's'],
- }
- jsonContentsDict[
- '/sub-15/func/sub-15_task-mixedeventrelatedproberest_run-01_bold.json'
- ] =
- jsonContentsDict[
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.json'
- ]
- file.relativePath =
- '/sub-15/func/sub-15_task-mixedeventrelatedproberest_run-01_bold.nii.gz'
- validate.NIFTI(
- header,
- file,
- jsonContentsDict,
- {},
- [],
- events,
- function (issues) {
- assert.deepEqual(issues, [])
- },
- )
- })
-
- it('should catch mismatched numbers of volumes in dwi scan and .bval/.bvec files', function () {
- var file = {
- name: 'sub-09_ses-test_dwi.nii.gz',
- path: '/ds114/sub-09/ses-test/dwi/sub-09_ses-test_dwi.nii.gz',
- relativePath: '/sub-09/ses-test/dwi/sub-09_ses-test_dwi.nii.gz',
- }
- var header = {
- dim: [4, 128, 128, 72, 71],
- pixdim: [-1, 2, 2, 2, 16.5],
- xyzt_units: ['mm', 'mm', 'mm', 's'],
- }
- jsonContentsDict['/sub-09/ses-test/dwi/sub-09_ses-test_dwi.json'] =
- jsonContentsDict[
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.json'
- ]
- var bContentsDict = {
- '/dwi.bval':
- '0 0 0 0 0 0 0 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000\n',
- '/dwi.bvec':
- '0 0 0 0 0 0 0 -1 -0.002 0.026 -0.591 0.236 0.893 -0.796 -0.234 -0.936 -0.506 -0.346 -0.457 0.487 0.618 0.577 0.827 -0.894 -0.29 -0.116 0.8 -0.514 0.789 -0.949 -0.233 0.021 -0.217 -0.774 0.161 0.147 -0.888 0.562 0.381 0.306 0.332 0.963 0.959 -0.453 0.773 -0.709 0.693 -0.682 0.142 0.74 0.103 -0.584 0.088 0.552 -0.838 -0.363 0.184 0.721 -0.433 -0.502 0.171 -0.463 -0.385 0.713 -0.26 -0.001 -0.037 -0.57 0.282 -0.721 -0.267 \n0 0 0 0 0 0 0 0 1 0.649 -0.766 -0.524 -0.259 0.129 0.93 0.14 -0.845 -0.847 -0.631 -0.389 0.673 -0.105 -0.521 -0.04 -0.541 -0.963 0.403 0.84 0.153 -0.233 0.783 -0.188 -0.956 -0.604 0.356 0.731 0.417 0.232 0.143 -0.199 -0.13 -0.265 0.205 -0.889 0.628 0.408 0.024 0.529 -0.725 0.388 0.822 -0.596 -0.335 -0.792 -0.458 -0.561 0.392 -0.693 0.682 0.69 -0.509 0.423 -0.809 -0.247 0.885 0.077 -0.902 -0.303 0.145 0.608 0.96 \n0 0 0 0 0 0 0 0 0 0.76 0.252 0.818 0.368 0.591 0.284 0.324 -0.175 -0.402 -0.627 0.782 0.407 -0.81 0.213 -0.447 -0.789 -0.245 -0.444 0.174 -0.596 0.211 0.577 -0.982 0.199 0.19 0.921 -0.666 0.193 -0.794 0.914 -0.931 0.934 0.044 0.193 0.068 0.088 0.575 0.721 -0.506 0.674 0.549 0.56 0.551 0.938 0.259 -0.296 0.744 -0.901 0.009 -0.589 0.521 -0.844 0.779 0.444 0.656 -0.387 -0.997 0.43 -0.763 -0.948 0.332 -0.085 \n',
- }
- validate.NIFTI(
- header,
- file,
- jsonContentsDict,
- bContentsDict,
- [],
- [],
- function (issues) {
- assert(issues.length == 1 && issues[0].code == 29)
- },
- )
- })
-
- it('should catch missing .bval an .bvec files', function () {
- var file = {
- name: 'sub-09_ses-test_dwi.nii.gz',
- path: '/ds114/sub-09/ses-test/dwi/sub-09_ses-test_dwi.nii.gz',
- relativePath: '/sub-09/ses-test/dwi/sub-09_ses-test_dwi.nii.gz',
- }
- validate.NIFTI(null, file, jsonContentsDict, {}, [], [], function (issues) {
- assert(issues.length == 2 && issues[0].code == 32 && issues[1].code == 33)
- })
- })
-
- it('should catch missing task name definitions on task scans', function () {
- delete jsonContentsDict[
- '/sub-15/func/sub-15_task-mixedeventrelatedproberest_run-01_bold.json'
- ].TaskName
- validate.NIFTI(
- null,
- file,
- jsonContentsDict,
- {},
- [],
- events,
- function (issues) {
- assert((issues.length = 1 && issues[0].code == 50))
- },
- )
- })
-
- it('should ignore missing task name definitions on sbref task scans', function () {
- var file = {
- name: 'sub-15_task-mixedeventrelatedprobe_acq-LR_sbref.nii.gz',
- relativePath:
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_acq-LR_sbref.nii.gz',
- }
- jsonContentsDict[file.relativePath.replace('.nii.gz', '.json')] =
- jsonContentsDict[
- '/sub-15/func/sub-15_task-mixedeventrelatedproberest_run-01_bold.json'
- ]
- validate.NIFTI(
- null,
- file,
- jsonContentsDict,
- {},
- [],
- events,
- function (issues) {
- assert.deepEqual(issues, [])
- },
- )
- })
-
- it('should generate warning if files listed in IntendedFor of fieldmap json are not of type .nii or .nii.gz', function () {
- var file = {
- name: 'sub-09_ses-test_run-01_fieldmap.nii.gz',
- path: '/ds114/sub-09/ses-test/fmap/sub-09_ses-test_run-01_fieldmap.nii.gz',
- relativePath:
- '/sub-09/ses-test/fmap/sub-09_ses-test_run-01_fieldmap.nii.gz',
- }
-
- var jsonContentsDict = {
- '/sub-09/ses-test/fmap/sub-09_ses-test_run-01_fieldmap.json': {
- TaskName: 'Mixed Event Related Probe',
- IntendedFor: [
- 'func/sub-15_task-mixedeventrelatedprobe_run-05_bold.json',
- 'func/sub-15_task-mixedeventrelatedprobe_run-02_bold.nii.gz',
- ],
- },
- }
- var fileList = []
- fileList.push({
- name: 'sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- path: 'sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- relativePath:
- '/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- })
- validate.NIFTI(null, file, jsonContentsDict, {}, [], [], function (issues) {
- assert(
- issues.some(
- (issue) =>
- issue.reason ===
- 'Invalid filetype: IntendedFor should point to the .nii[.gz] files.' &&
- issue.evidence ===
- 'func/sub-15_task-mixedeventrelatedprobe_run-05_bold.json',
- ),
- )
- })
- })
-
- it('should generate warning if files listed in IntendedFor of fieldmap json do not exist', function () {
- let header = {
- dim: [4, 128, 128, 1, 71],
- pixdim: [-1, 2, 2, 2, 16.5],
- xyzt_units: ['mm', 'mm', 'mm', 's'],
- }
-
- var file = {
- name: 'sub-09_ses-test_run-01_fieldmap.nii.gz',
- path: '/ds114/sub-09/ses-test/fmap/sub-09_ses-test_run-01_fieldmap.nii.gz',
- relativePath:
- '/sub-09/ses-test/fmap/sub-09_ses-test_run-01_fieldmap.nii.gz',
- }
-
- var jsonContentsDict = {
- '/sub-09/ses-test/fmap/sub-09_ses-test_run-01_fieldmap.json': {
- TaskName: 'Mixed Event Related Probe',
- RepetitionTime: 2,
- SliceTiming: [0.4],
- IntendedFor: [
- 'func/sub-15_task-mixedeventrelatedprobe_run-05_bold.nii.gz',
- 'func/sub-15_task-mixedeventrelatedprobe_run-02_bold.nii.gz',
- ],
- },
- }
- var fileList = []
- fileList.push({
- name: 'sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- path: 'sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- relativePath:
- '/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- })
- validate.NIFTI(
- header,
- file,
- jsonContentsDict,
- {},
- [],
- [],
- function (issues) {
- assert(
- issues.length === 3 && issues[0].code == 17 && issues[1].code == 37,
- )
- },
- )
- })
-
- it('should not generate warning if files listed in IntendedFor of fieldmap json exist', function () {
- var file = {
- name: 'sub-15_ses-test_run-01_fieldmap.nii.gz',
- path: '/ds114/sub-15/ses-test/dwi/sub-15_ses-test_run-01_fieldmap.nii.gz',
- relativePath:
- '/sub-15/ses-test/dwi/sub-15_ses-test_run-01_fieldmap.nii.gz',
- }
-
- var jsonContentsDict = {
- '/sub-15/ses-test/dwi/sub-15_ses-test_run-01_fieldmap.json': {
- TaskName: 'Mixed Event Related Probe',
- Units: 'rad/s',
- IntendedFor: [
- 'func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- ],
- },
- }
-
- var fileList = [
- {
- name: 'sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- path: 'sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- relativePath:
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- },
- ]
- validate.NIFTI(
- null,
- file,
- jsonContentsDict,
- {},
- fileList,
- [],
- function (issues) {
- assert.deepEqual(issues, [])
- },
- )
- })
-
- it('SliceTiming should not be greater than RepetitionTime', function () {
- let header = {
- dim: [4, 128, 128, 7, 71],
- pixdim: [-1, 2, 2, 2, 16.5],
- xyzt_units: ['mm', 'mm', 'mm', 's'],
- }
- var jsonContentsDict_new = {
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.json': {
- RepetitionTime: 1.5,
- TaskName:
- 'AntiSaccade (AS) Rewarded & Neutral with varying dot position',
- EchoTime: 0.025,
- NumberofPhaseEncodingSteps: 64,
- FlipAngle: 70,
- PhaseEncodingDirection: 'j',
- SliceTiming: [0.0, 1.3448, 1.6207, 1.3966, 0.6724, 1.4483, 1.7241],
- },
- }
- var file_new = {
- name: 'sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- relativePath:
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- }
- validate.NIFTI(
- header,
- file_new,
- jsonContentsDict_new,
- {},
- [],
- events,
- function (issues) {
- assert(issues[3].code === 66 && issues.length === 4)
- assert(issues[2].code === 12 && issues.length === 4)
- },
- )
- })
-
- it('SliceTiming should be the same length as the k dimension of the corresponding nifti header', function () {
- var jsonContents = {
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.json': {
- RepetitionTime: 16.5,
- TaskName:
- 'AntiSaccade (AS) Rewarded & Neutral with varying dot position',
- EchoTime: 0.025,
- EffectiveEchoSpacing: 0.05,
- NumberofPhaseEncodingSteps: 64,
- FlipAngle: 70,
- PhaseEncodingDirection: 'j',
- SliceTiming: [0.0, 1.3448, 1.6207, 1.3966, 0.6724, 1.4483, 1.7241],
- },
- }
- var testFile = {
- name: 'sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- relativePath:
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- }
- var header = {
- dim: [4, 128, 128, 7, 71],
- pixdim: [-1, 2, 2, 2, 16.5],
- xyzt_units: ['mm', 'mm', 'mm', 's'],
- }
- var events = [
- {
- path: '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_events.tsv',
- },
- {
- path: '/sub-15/run-01_events.tsv',
- },
- ]
- validate.NIFTI(
- header,
- testFile,
- jsonContents,
- {},
- [],
- events,
- function (issues) {
- assert.deepEqual(issues, [])
- },
- )
- })
-
- it('SliceTiming should not have a length different than the k dimension of the corresponding nifti header', function () {
- var jsonContents = {
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.json': {
- RepetitionTime: 16.5,
- TaskName:
- 'AntiSaccade (AS) Rewarded & Neutral with varying dot position',
- EchoTime: 0.025,
- EffectiveEchoSpacing: 0.05,
- NumberofPhaseEncodingSteps: 64,
- FlipAngle: 70,
- PhaseEncodingDirection: 'j',
- SliceTiming: [0.0, 1.3448, 1.6207, 1.3966, 0.6724, 1.4483, 1.7241],
- },
- }
- var testFile = {
- name: 'sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- relativePath:
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- }
- var header = {
- dim: [4, 128, 128, 5, 71],
- pixdim: [-1, 2, 2, 2, 16.5],
- xyzt_units: ['mm', 'mm', 'mm', 's'],
- }
- var events = [
- {
- path: '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_events.tsv',
- },
- {
- path: '/sub-15/run-01_events.tsv',
- },
- ]
-
- validate.NIFTI(
- header,
- testFile,
- jsonContents,
- {},
- [],
- events,
- function (issues) {
- assert(issues.length === 1 && issues[0].code === 87)
- },
- )
- })
-
- it('should throw an error for _phasediff.nii files with associated (EchoTime2 - EchoTime1) less than 0.0001', function () {
- var phaseDiffJson = {
- '/sub-01/func/sub-01_ses-mri_phasediff.json': {
- RepetitionTime: 0.4,
- EchoTime1: 0.00515,
- EchoTime2: 0.00519,
- FlipAngle: 60,
- },
- }
- var phaseDiffFile = {
- name: 'sub-01_ses-mri_phasediff.nii',
- relativePath: '/sub-01/func/sub-01_ses-mri_phasediff.nii',
- }
- validate.NIFTI(
- null,
- phaseDiffFile,
- phaseDiffJson,
- {},
- [],
- events,
- function (issues) {
- assert(issues[0].code === 83 && issues.length === 1)
- },
- )
- })
-
- it('should throw an error for _phasediff.nii files with associated (EchoTime2 - EchoTime1) greater than 0.01', function () {
- var phaseDiffJson = {
- '/sub-01/func/sub-01_ses-mri_phasediff.json': {
- RepetitionTime: 0.4,
- EchoTime1: 0.00515,
- EchoTime2: 0.1019,
- FlipAngle: 60,
- },
- }
- var phaseDiffFile = {
- name: 'sub-01_ses-mri_phasediff.nii',
- relativePath: '/sub-01/func/sub-01_ses-mri_phasediff.nii',
- }
- validate.NIFTI(
- null,
- phaseDiffFile,
- phaseDiffJson,
- {},
- [],
- events,
- function (issues) {
- assert(issues[0].code === 83 && issues.length === 1)
- },
- )
- })
-
- it('should give not error for _phasediff.nii files with reasonable values of associated (EchoTime2 - EchoTime1)', function () {
- var phaseDiffJson = {
- '/sub-01/func/sub-01_ses-mri_phasediff.json': {
- RepetitionTime: 0.4,
- EchoTime1: 0.00515,
- EchoTime2: 0.00819,
- FlipAngle: 60,
- },
- }
- var phaseDiffFile = {
- name: 'sub-01_ses-mri_phasediff.nii',
- relativePath: '/sub-01/func/sub-01_ses-mri_phasediff.nii',
- }
- validate.NIFTI(
- null,
- phaseDiffFile,
- phaseDiffJson,
- {},
- [],
- events,
- function (issues) {
- assert(issues.length === 0)
- },
- )
- })
- it('should give error if VolumeTiming missing acquisition time', function () {
- let header = {
- dim: [4, 128, 128, 72, 71],
- pixdim: [-1, 2, 2, 2, 16.5],
- xyzt_units: ['mm', 'mm', 'mm', 's'],
- }
- let volumeJson = {
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.json': {
- VolumeTiming: 1,
- TaskName: 'mixedeventrelatedprobrest',
- },
- }
-
- let fileList = [
- {
- name: 'sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- path: 'sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- relativePath:
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- },
- ]
- file.relativePath =
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz'
- validate.NIFTI(
- header,
- file,
- volumeJson,
- {},
- fileList,
- events,
- function (issues) {
- assert(issues.filter((x) => x.code === 171).length === 1)
- },
- )
- })
- it('should not give error if VolumeTiming has an acquisition time', function () {
- let volumeJson = {
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.json': {
- VolumeTiming: 1,
- SliceTiming: 1,
- TaskName: 'mixedeventrelatedprobe',
- },
- }
-
- file.relativePath =
- '/sub-15/func/sub-15_task-mixedeventrelatedprobe_run-01_bold.nii.gz'
- validate.NIFTI(null, file, volumeJson, {}, [], events, function (issues) {
- assert(issues.filter((x) => x.code === 171).length === 0)
- })
- })
-})
diff --git a/legacy/bids-validator/tests/potentialLocations.spec.js b/legacy/bids-validator/tests/potentialLocations.spec.js
deleted file mode 100644
index 67c737a3..00000000
--- a/legacy/bids-validator/tests/potentialLocations.spec.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import assert from 'assert'
-import potentialLocations from '../utils/files/potentialLocations'
-
-describe('potentialLocations', () => {
- it('should not return duplicate paths', () => {
- const path = 'data/BIDS-examples/ds001'
- const pLs = potentialLocations(path)
- assert.deepEqual(pLs.length, new Set(pLs).size)
- })
- it('.bold files should only return potential locations that include tasknames', () => {
- const path = 'dsTest/sub-01/func/sub-01_task-testing_run-01_bold.json'
- const pLs = potentialLocations(path)
- const anyNonTaskSpecific = pLs.some(
- (location) => location.indexOf('task') < 0,
- )
- assert.equal(anyNonTaskSpecific, false)
- })
-})
diff --git a/legacy/bids-validator/tests/session.spec.js b/legacy/bids-validator/tests/session.spec.js
deleted file mode 100644
index 989018b2..00000000
--- a/legacy/bids-validator/tests/session.spec.js
+++ /dev/null
@@ -1,179 +0,0 @@
-import assert from 'assert'
-import utils from '../utils'
-const Subject = utils.files.sessions.Subject
-import {
- session as missingSessionFiles,
- getDataOrganization,
- getFilename,
- missingSessionWarnings,
- getSubjectFiles,
- missingFileWarnings,
- checkFileInMissingSession,
- checkMissingFile,
-} from '../validators/session'
-const dir = process.cwd()
-const data_dir = dir + '/bids-validator/tests/data/'
-const missing_session_data = data_dir + 'ds006_missing-session'
-
-describe('session', () => {
- let filelist
-
- describe('missingSessionFiles', () => {
- describe('handling missing sessions', () => {
- beforeEach(async () => {
- filelist = await utils.files.readDir(missing_session_data)
- })
-
- it('should produce a single MISSING_SESSION warning', () => {
- const warnings = missingSessionFiles(filelist)
- const targetWarning = warnings.find(
- (warning) => warning.key === 'MISSING_SESSION',
- )
- assert.ok(targetWarning)
- })
-
- it('should not produce INCONSISTENT_SUBJECTS warnings', () => {
- const warnings = missingSessionFiles(filelist)
- warnings.forEach((warning) =>
- assert.notEqual(warning.key, 'INCONSISTENT_SUBJECTS'),
- )
- })
- })
- })
-
- describe('getDataOrganization', () => {
- it('should take a fileList of data with subjects and sessions and list and return them', async () => {
- let filelist
- await utils.files.readDir(missing_session_data).then((files) => {
- filelist = files
- })
-
- const { subjects, sessions } = getDataOrganization(filelist)
- assert.equal(typeof subjects, 'object')
-
- const subjKeys = Object.keys(subjects)
- assert.ok(subjKeys.length >= 1)
- assert.ok(subjKeys.every((key) => subjects[key] instanceof Subject))
- assert.ok(sessions.length >= 1)
- })
- })
-
- describe('getFilename', () => {
- it('should be able to extract the filename from its path', () => {
- const subjKey = 'sub-01'
- const paths = [
- '/sub-01/ses-post/anat/sub-01_ses-post_inplaneT2.nii.gz',
- '/sub-01/ses-post/anat/sub-01_ses-post_T1w.nii.gz',
- '/sub-01/ses-post/func/sub-01_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_bold.nii.gz',
- ]
- const expecteds = [
- '/ses-post/anat/_ses-post_inplaneT2.nii.gz',
- '/ses-post/anat/_ses-post_T1w.nii.gz',
- '/ses-post/func/_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_bold.nii.gz',
- ]
-
- for (let i = 0; i < paths.length; i++) {
- const result = getFilename(paths[i], subjKey)
- assert.equal(result, expecteds[i])
- }
- })
- })
-
- describe('missingSessionWarnings', () => {
- it('should take a subjects dir and a sessions list and return a list of issues', async () => {
- let filelist
- await utils.files.readDir(missing_session_data).then((files) => {
- filelist = files
- })
- const { subjects, sessions } = getDataOrganization(filelist)
-
- const sessionWarnings = missingSessionWarnings(subjects, sessions)
- assert.ok(Array.isArray(sessionWarnings))
- assert.ok(
- sessionWarnings.every(
- (warning) => warning instanceof utils.issues.Issue,
- ),
- )
- })
- })
-
- describe('getSubjectFiles', () => {
- it('should take a list of subjects and return a set containing each file', async () => {
- let filelist
- await utils.files.readDir(missing_session_data).then((files) => {
- filelist = files
- })
- const { subjects } = getDataOrganization(filelist)
-
- const subjFiles = getSubjectFiles(subjects)
- assert.ok(subjFiles.every((filename) => typeof filename === 'string'))
- assert.equal(subjFiles.length, new Set(subjFiles).size)
-
- const allFiles = Object.keys(subjects).reduce(
- (allFiles, subjKey) => allFiles.concat(subjects[subjKey].files),
- [],
- )
- assert.ok(allFiles.every((file) => subjFiles.includes(file)))
- })
- })
-
- describe('missingFileWarnings', () => {
- it('generates an issue for each file missing from each subject and returns them as a list', () => {
- const subjects = {}
- const subjKey = 'sub-01'
- const subject01 = new Subject()
- const subjFiles = [
- '/ses-post/anat/_ses-post_inplaneT2.nii.gz',
- '/ses-post/anat/_ses-post_T1w.nii.gz',
- '/ses-post/func/_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_bold.nii.gz',
- ]
- subject01.files.push(subjFiles[0])
- subjects[subjKey] = subject01
-
- const warnings = missingFileWarnings(subjects, subjFiles)
- assert.ok(Array.isArray(warnings))
- warnings.every(
- (warning) =>
- warning instanceof utils.issues.Issue && warning.code === 38,
- )
- })
- })
-
- describe('checkFileInMissingSession', () => {
- it('returns true if filepath belongs to missing session', () => {
- const filepath = '/sub-01/ses-post/anat/sub-01_ses-post_inplaneT2.nii.gz'
- const subject = new Subject()
- subject.missingSessions.push('ses-post')
-
- const inMissingSession = checkFileInMissingSession(filepath, subject)
- assert.strictEqual(inMissingSession, true)
- })
- it('returns false if filepath belongs to extant session', () => {
- const filepath = '/sub-01/ses-post/anat/sub-01_ses-post_inplaneT2.nii.gz'
- const subject = new Subject()
- subject.sessions.push('ses-post')
-
- const inMissingSession = checkFileInMissingSession(filepath, subject)
- assert.strictEqual(inMissingSession, false)
- })
- })
-
- describe('checkMissingFile', () => {
- it('returns an issue if filename is missing from subject', () => {
- const subject = new Subject()
- const subjKey = 'sub-01'
- const filenames = [
- '/ses-post/anat/_ses-post_inplaneT2.nii.gz',
- '/ses-post/anat/_ses-post_T1w.nii.gz',
- '/ses-post/func/_ses-post_task-livingnonlivingdecisionwithplainormirrorreversedtext_run-01_bold.nii.gz',
- ]
-
- assert.equal(subject.files.length, 0)
- filenames.forEach((filename) => {
- const warning = checkMissingFile(subject, subjKey, filename)
- assert.ok(warning instanceof utils.issues.Issue)
- assert.equal(warning.code, 38)
- })
- })
- })
-})
diff --git a/legacy/bids-validator/tests/tsv.spec.js b/legacy/bids-validator/tests/tsv.spec.js
deleted file mode 100644
index 421ed7e9..00000000
--- a/legacy/bids-validator/tests/tsv.spec.js
+++ /dev/null
@@ -1,825 +0,0 @@
-import assert from 'assert'
-import validate from '../index'
-
-describe('TSV', function () {
- // general tsv checks ------------------------------------------------------------------
-
- var file = {
- name: 'sub-08_ses-test_task-Βnback_physio.tsv.gz',
- relativePath:
- '/sub-08/ses-test/func/sub-08_ses-test_task-linebisection_events.tsv',
- }
-
- it('should not allow empty values saved as empty cells.', function () {
- var tsv =
- 'header-one\theader-two\theader-three\theader-four\theader-five\n' +
- '1.0\t\t0.2\tresponse 1\t12.32'
- validate.TSV.TSV(file, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 23)
- })
- })
-
- it('should not allow missing values that are specified by something other than "n/a".', function () {
- var tsv =
- 'header-one\theader-two\theader-three\theader-four\theader-five\n' +
- 'n1.0\tNA\t0.2\tresponse 1\t12.32'
- validate.TSV.TSV(file, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 24)
- })
- })
-
- it('should not allow different length rows', function () {
- var tsv =
- 'header-one\theader-two\theader-three\n' +
- 'value-one\tvalue-two\n' +
- 'value-one\tvalue-two\tvalue-three'
- validate.TSV.TSV(file, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 22)
- })
- })
-
- /* See utils.unit.validate for comment
- it('should not allow non-SI units', function () {
- var tsv =
- 'header-one\tunits\theader-three\n' +
- 'value-one\tΒ΅V\tvalue-three\n' +
- 'value-one\tuV\tvalue-three'
-
- validate.TSV.TSV(file, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].key === 'INVALID_TSV_UNITS')
- })
- })
- */
-
- // events checks -----------------------------------------------------------------------
-
- var eventsFile = {
- name: 'sub-08_ses-test_task-linebisection_events.tsv',
- relativePath:
- '/sub-08/ses-test/func/sub-08_ses-test_task-linebisection_events.tsv',
- }
-
- it('should require events files to have "onset" as first header', function () {
- var tsv =
- 'header-one\tduration\theader-three\n' +
- 'value-one\tvalue-two\tvalue-three'
- validate.TSV.TSV(eventsFile, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 20)
- })
- })
-
- it('should require events files to have "duration" as second header', function () {
- var tsv =
- 'onset\theader-two\theader-three\n' + 'value-one\tvalue-two\tvalue-three'
- validate.TSV.TSV(eventsFile, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 21)
- })
- })
-
- it('should not throw issues for a valid events file', function () {
- var tsv =
- 'onset\tduration\theader-three\n' + 'value-one\tvalue-two\tvalue-three'
- validate.TSV.TSV(eventsFile, tsv, [], function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should not throw issues for a valid events file with only two columns', function () {
- var tsv = 'onset\tduration\n' + 'value-one\tvalue-two'
- validate.TSV.TSV(eventsFile, tsv, [], function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should check for the presence of any stimulus files declared', function () {
- var tsv =
- 'onset\tduration\tstim_file\n' +
- 'value-one\tvalue-two\timages/red-square.jpg'
- var fileList = [{ relativePath: '/stimuli/images/blue-square.jpg' }]
- validate.TSV.TSV(eventsFile, tsv, fileList, function (issues) {
- assert(issues.length === 1 && issues[0].code === 52)
- })
-
- fileList.push({ relativePath: '/stimuli/images/red-square.jpg' })
- validate.TSV.TSV(eventsFile, tsv, fileList, function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should return all values in the stim_file column as a list', function () {
- var tsv =
- 'onset\tduration\tstim_file\n' +
- 'value-one\tvalue-two\timages/red-square.jpg'
- var fileList = [{ relativePath: '/stimuli/images/red-square.jpg' }]
- validate.TSV.TSV(
- eventsFile,
- tsv,
- fileList,
- function (issues, participants, stimFiles) {
- assert(
- stimFiles.length === 1 &&
- stimFiles[0] === '/stimuli/images/red-square.jpg',
- )
- },
- )
- })
-
- // participants checks -----------------------------------------------------------------
-
- var participantsFile = {
- name: 'participants.tsv',
- relativePath: '/participants.tsv',
- }
-
- it('should not allow participants.tsv files without participant_id columns', function () {
- var tsv =
- 'subject_id\theader-two\theader-three\n' +
- 'value-one\tvalue-two\tvalue-three'
- validate.TSV.TSV(participantsFile, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 48)
- })
- })
-
- it('should allow a valid participants.tsv file', function () {
- var tsv =
- 'participant_id\theader-two\theader-three\n' +
- 'sub-01\tvalue-two\tvalue-three'
- validate.TSV.TSV(participantsFile, tsv, [], function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should not allow participants with age 89 and above in participants.tsv file', function () {
- var tsv = 'participant_id\theader-two\tage\n' + 'sub-01\tvalue-two\t89'
- validate.TSV.TSV(participantsFile, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 56)
- })
- })
-
- it('should not allow participants written with incorrect pattern', function () {
- var tsv =
- 'participant_id\theader-two\theader-three\n' +
- '01\tvalue-two\tvalue-three'
- validate.TSV.TSV(participantsFile, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 212)
- })
- })
-
- // _scans checks -----------------------------------------------------------------
-
- var scansFile = {
- name: 'sub-08_ses-test_task-linebisection_scans.tsv',
- relativePath:
- '/sub-08/ses-test/sub-08_ses-test_task-linebisection_scans.tsv',
- }
-
- var niftiFile = {
- name: 'sub-08_ses-test_task-linebisection_run-01_bold.nii.gz',
- relativePath:
- '/sub-08/ses-test/func/sub-08_ses-test_task-linebisection_run-01_bold.nii.gz',
- }
-
- var eegFile = {
- name: 'sub-08_ses-test_task-linebisection_run-01_eeg.fif',
- relativePath:
- '/sub-08/ses-test/eeg/sub-08_ses-test_task-linebisection_run-01_eeg.fif',
- }
- var ieegFile = {
- name: 'sub-08_ses-test_task-linebisection_run-01_ieeg.edf',
- relativePath:
- '/sub-08/ses-test/ieeg/sub-08_ses-test_task-linebisection_run-01_ieeg.edf',
- }
-
- var btiFiles = [
- {
- name: 'c,rf0.1Hz',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg/c,rf0.1Hz',
- },
- {
- name: 'config',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg/config',
- },
- {
- name: 'hs_file',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg/hs_file',
- },
- ]
-
- var ctfFiles = [
- {
- name: 'BadChannels',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg.ds/BadChannels',
- },
- {
- name: 'bad.segments',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg.ds/bad.segments',
- },
- {
- name: 'params.dsc',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg.ds/params.dsc',
- },
- {
- name: 'ClassFile.cls',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg.ds/ClassFile.cls',
- },
- {
- name: 'processing.cfg',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg.ds/processing.cfg',
- },
- {
- name: 'sub-08_ses-test_task-linebisection_acq-01_run-01_meg.res4',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg.ds/sub-01_ses-01_task-testing_acq-01_run-01_meg.res4',
- },
- {
- name: 'sub-08_ses-test_task-linebisection_acq-01_run-01_meg.hc',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg.ds/sub-01_ses-01_task-testing_acq-01_run-01_meg.hc',
- },
- {
- name: 'sub-08_ses-test_task-linebisection_acq-01_run-01_meg.infods',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg.ds/sub-01_ses-01_task-testing_acq-01_run-01_meg.infods',
- },
- {
- name: 'sub-08_ses-test_task-linebisection_acq-01_run-01_meg.acq',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg.ds/sub-01_ses-01_task-testing_acq-01_run-01_meg.acq',
- },
- {
- name: 'sub-08_ses-test_task-linebisection_acq-01_run-01_meg.newds',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg.ds/sub-01_ses-01_task-testing_acq-01_run-01_meg.newds',
- },
- {
- name: 'sub-08_ses-test_task-linebisection_acq-01_run-01_meg.meg4',
- relativePath:
- '/sub-08/ses-test/meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg.ds/sub-01_ses-01_task-testing_acq-01_run-01_meg.meg4',
- },
- ]
-
- it('should not allow _scans.tsv files without filename column', function () {
- var tsv =
- 'header-one\theader-two\theader-three\n' +
- 'value-one\tvalue-two\tvalue-three'
- validate.TSV.TSV(scansFile, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 68)
- })
- })
-
- it('should allow _scans.tsv files with filename column', function () {
- var tsv =
- 'header-one\tfilename\theader-three\n' +
- 'value-one\tfunc/sub-08_ses-test_task-linebisection_run-01_bold.nii.gz\tvalue-three'
- validate.TSV.TSV(scansFile, tsv, [niftiFile], function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should not allow improperly formatted acq_time column entries', function () {
- const tsv =
- 'filename\tacq_time\n' +
- 'func/sub-08_ses-test_task-linebisection_run-01_bold.nii.gz\t000001'
- validate.TSV.TSV(scansFile, tsv, [niftiFile], function (issues) {
- assert(issues.length === 1 && issues[0].code === 84)
- })
- })
-
- it('should allow n/a as acq_time column entries', function () {
- const tsv =
- 'filename\tacq_time\n' +
- 'func/sub-08_ses-test_task-linebisection_run-01_bold.nii.gz\tn/a'
- validate.TSV.TSV(scansFile, tsv, [niftiFile], function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should allow properly formatted acq_time column entries', function () {
- const tsv =
- 'filename\tacq_time\n' +
- 'func/sub-08_ses-test_task-linebisection_run-01_bold.nii.gz\t2017-05-03T06:45:45'
- validate.TSV.TSV(scansFile, tsv, [niftiFile], function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should allow acq_time column entries with optional fractional seconds', function () {
- const tsv =
- 'filename\tacq_time\n' +
- 'func/sub-08_ses-test_task-linebisection_run-01_bold.nii.gz\t2017-05-03T06:45:45.88288'
- validate.TSV.TSV(scansFile, tsv, [niftiFile], function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should allow acq_time column entries with optional UTC specifier: "Z"', function () {
- const tsv =
- 'filename\tacq_time\n' +
- 'func/sub-08_ses-test_task-linebisection_run-01_bold.nii.gz\t2017-05-03T06:45:45.88288Z'
- validate.TSV.TSV(scansFile, tsv, [niftiFile], function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should allow session missing', function () {
- var niftiNoSesFile = {
- name: 'sub-08_task-linebisection_run-01_bold.nii.gz',
- relativePath: '/sub-08/func/sub-08_task-linebisection_run-01_bold.nii.gz',
- }
- var scansNoSesFile = {
- name: 'sub-08_task-linebisection_scans.tsv',
- relativePath: '/sub-08/sub-08_task-linebisection_scans.tsv',
- }
- const tsv =
- 'filename\tacq_time\n' +
- 'func/sub-08_task-linebisection_run-01_bold.nii.gz\t2017-05-03T06:45:45'
- validate.TSV.TSV(scansNoSesFile, tsv, [niftiNoSesFile], function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should not allow mismatched filename entries', function () {
- const fileList = [eegFile]
- const tsv =
- 'filename\tacq_time\n' +
- 'func/sub-08_ses-test_task-linebisection_run-01_bold.nii.gz\t2017-05-03T06:45:45'
- validate.TSV.TSV(scansFile, tsv, fileList, function (issues) {
- assert(issues.length === 1 && issues[0].code === 129)
- })
- })
-
- it('should allow matching filename entries', function () {
- const fileList = [niftiFile, eegFile, ieegFile]
- const tsv =
- 'filename\tacq_time\n' +
- 'func/sub-08_ses-test_task-linebisection_run-01_bold.nii.gz\t2017-05-03T06:45:45\n' +
- 'eeg/sub-08_ses-test_task-linebisection_run-01_eeg.fif\t2017-05-03T06:45:45\n' +
- 'ieeg/sub-08_ses-test_task-linebisection_run-01_ieeg.edf\t2017-05-03T06:45:45'
- validate.TSV.TSV(scansFile, tsv, fileList, function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should allow matching filename entries for CTF and BTI data', function () {
- const fileList = btiFiles.concat(ctfFiles)
- const tsv =
- 'filename\tacq_time\n' +
- 'meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg\t2017-05-03T06:45:45\n' +
- 'meg/sub-08_ses-test_task-linebisection_acq-01_run-01_meg.ds\t2017-05-03T06:45:45'
- validate.TSV.TSV(scansFile, tsv, fileList, function (issues) {
- assert.deepEqual(issues, [])
- })
- })
-
- it('should check participants listed in phenotype/*tsv and sub-ids ', function () {
- var phenotypeParticipants = [
- {
- list: ['10159', '10171', '10189'],
- file: {
- name: 'vmnm.tsv',
- path: '/corral-repl/utexas/poldracklab/openfmri/shared2/ds000030/ds030_R1.0.5/ds000030_R1.0.5//phenotype/vmnm.tsv',
- relativePath: '/phenotype/vmnm.tsv',
- },
- },
- ]
- var summary = {
- sessions: [],
- subjects: ['10159', '10171'],
- tasks: [],
- totalFiles: 43,
- size: 11845,
- }
- var issues = []
- validate.TSV.checkPhenotype(
- phenotypeParticipants,
- summary,
- issues,
- function (issues) {
- assert(issues.length === 1 && issues[0].code === 51)
- },
- )
- })
-
- // channels checks -----------------------------------------------------------------
-
- var channelsFileMEG = {
- name: 'sub-01_ses-meg_task-facerecognition_run-01_channels.tsv',
- relativePath:
- '/sub-01/ses-meg/meg/sub-01_ses-meg_task-facerecognition_run-01_channels.tsv',
- }
-
- it('should not allow MEG channels.tsv files without name column', function () {
- var tsv = 'header-one\ttype\tunits\n' + 'value-one\tEEG\tmV'
- validate.TSV.TSV(channelsFileMEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 71)
- })
- })
-
- it('should not allow MEG channels.tsv files without type column', function () {
- var tsv = 'name\theader-two\tunits\n' + 'value-one\tEEG\tmV'
- validate.TSV.TSV(channelsFileMEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 71)
- })
- })
-
- it('should not allow MEG channels.tsv files without units column', function () {
- var tsv = 'name\ttype\theader-three\n' + 'value-one\tEEG\tvalue-three'
- validate.TSV.TSV(channelsFileMEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 71)
- })
- })
-
- it('should allow MEG channels.tsv files with name, type and units columns', function () {
- var tsv =
- 'name\ttype\tunits\theader-four\n' + 'value-one\tEEG\tmV\tvalue-four'
- validate.TSV.TSV(channelsFileMEG, tsv, [], function (issues) {
- assert(issues.length === 0)
- })
- })
-
- var channelsFileEEG = {
- name: 'sub-01_ses-001_task-rest_run-01_channels.tsv',
- relativePath:
- '/sub-01/ses-001/eeg/sub-01_ses-001_task-rest_run-01_channels.tsv',
- }
-
- it('should not allow EEG channels.tsv files without name column', function () {
- var tsv = 'header-one\ttype\tunits\n' + 'value-one\tEEG\tmV'
- validate.TSV.TSV(channelsFileEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 71)
- })
- })
-
- it('should not allow EEG channels.tsv files with name column in wrong place', function () {
- var tsv =
- 'header-one\ttype\tunits\tname\n' + 'value-one\tEEG\tmV\tvalue-name'
- validate.TSV.TSV(channelsFileEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 230)
- })
- })
-
- it('should not allow EEG channels.tsv files without type column', function () {
- var tsv = 'name\theader-two\tunits\n' + 'value-one\tEEG\tmV'
- validate.TSV.TSV(channelsFileEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 71)
- })
- })
-
- it('should not allow EEG channels.tsv files without units column', function () {
- var tsv = 'name\ttype\theader-three\n' + 'value-one\tEEG\tvalue-three'
- validate.TSV.TSV(channelsFileEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 71)
- })
- })
-
- it('should allow EEG channels.tsv files with name, type and units columns', function () {
- var tsv =
- 'name\ttype\tunits\theader-four\n' + 'value-one\tEEG\tmV\tvalue-four'
- validate.TSV.TSV(channelsFileEEG, tsv, [], function (issues) {
- assert(issues.length === 0)
- })
- })
-
- var channelsFileIEEG = {
- name: 'sub-01_ses-ieeg_task-facerecognition_run-01_channels.tsv',
- relativePath:
- '/sub-01/ses-ieeg/ieeg/sub-01_ses-meg_task-facerecognition_run-01_channels.tsv',
- }
-
- it('should not allow iEEG channels.tsv files without low_cutoff column', function () {
- var tsv =
- 'name\ttype\tunits\textra-column\thigh_cutoff\n' +
- 'value-name\tECOG\tmV\tvalue-fake\tvalue-highcut'
- validate.TSV.TSV(channelsFileIEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 72)
- })
- })
-
- it('should not allow iEEG channels.tsv files with low_cutoff column in wrong place', function () {
- var tsv =
- 'name\ttype\tunits\thigh_cutoff\tlow_cutoff\n' +
- 'value-name\tECOG\tmV\tvalue-highcut\tvalue-lowcut'
- validate.TSV.TSV(channelsFileIEEG, tsv, [], function (issues) {
- assert(
- issues.length === 2 && issues[0].code === 229 && issues[1].code === 229,
- )
- })
- })
-
- it('should not allow iEEG channels.tsv files without high_cutoff column', function () {
- var tsv =
- 'name\ttype\tunits\tlow_cutoff\textra-column\n' +
- 'value-name\tECOG\tmV\tvalue-lowcut\tvalue-fake'
- validate.TSV.TSV(channelsFileIEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 72)
- })
- })
-
- it('should not allow iEEG channels.tsv files with value other than good/bad in status column', function () {
- var tsv =
- 'name\ttype\tunits\tlow_cutoff\thigh_cutoff\tstatus\n' +
- 'value-name\tECOG\tmV\tvalue-lowcut\tvalue-highcut\tnot-good'
- validate.TSV.TSV(channelsFileIEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 125)
- })
- })
-
- it('correct columns should pass for iEEG channels.tsv file', function () {
- var tsv =
- 'name\ttype\tunits\tlow_cutoff\thigh_cutoff\tstatus\n' +
- 'value-name\tECOG\tmV\tvalue-lowcut\tvalue-highcut\tgood'
- validate.TSV.TSV(channelsFileIEEG, tsv, [], function (issues) {
- assert(issues.length === 0)
- })
- })
-
- it('should not allow iEEG channels.tsv files with value other than accepted values in type column', function () {
- var tsv =
- 'name\ttype\tunits\tlow_cutoff\thigh_cutoff\tstatus\n' +
- 'value-name\tMEEG\tmV\tvalue-lowcut\tvalue-highcut\tgood'
- validate.TSV.TSV(channelsFileIEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 131)
- expect(typeof issues[0].evidence).toBe('string')
- })
- })
-
- it('should return a string value for evidence for issue 130', function () {
- const tsv =
- 'name\ttype\tunits\tlow_cutoff\thigh_cutoff\tstatus\n' +
- 'value-name\teeg\tmV\tvalue-lowcut\tvalue-highcut\tgood'
- validate.TSV.TSV(channelsFileEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 130)
- expect(typeof issues[0].evidence).toBe('string')
- })
- })
-
- it('should return a string value for evidence for issue 131', function () {
- const tsv =
- 'name\ttype\tunits\tlow_cutoff\thigh_cutoff\tstatus\n' +
- 'value-name\tMEEG\tmV\tvalue-lowcut\tvalue-highcut\tgood'
- validate.TSV.TSV(channelsFileIEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 131)
- expect(typeof issues[0].evidence).toBe('string')
- })
- })
-
- it('should not allow EEG channels.tsv files with value other than accepted values in type column', function () {
- var tsv =
- 'name\ttype\tunits\tlow_cutoff\thigh_cutoff\tstatus\n' +
- 'value-name\tMEEG\tmV\tvalue-lowcut\tvalue-highcut\tgood'
- validate.TSV.TSV(channelsFileEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 131)
- })
- })
-
- it('should not allow MEG channels.tsv files with value other than accepted values in type column', function () {
- var tsv =
- 'name\ttype\tunits\tlow_cutoff\thigh_cutoff\tstatus\n' +
- 'value-name\tMEEG\tmV\tvalue-lowcut\tvalue-highcut\tgood'
- validate.TSV.TSV(channelsFileEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 131)
- })
- })
-
- it('should not allow channels.tsv files with lower-casing in type column', function () {
- var tsv =
- 'name\ttype\tunits\tlow_cutoff\thigh_cutoff\tstatus\n' +
- 'value-name\teeg\tmV\tvalue-lowcut\tvalue-highcut\tgood'
- validate.TSV.TSV(channelsFileEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 130)
- })
- })
-
- it('should allow iEEG channels.tsv files with accepted values in type column', function () {
- var tsv =
- 'name\ttype\tunits\tlow_cutoff\thigh_cutoff\tstatus\n' +
- 'value-name\tECOG\tmV\tvalue-lowcut\tvalue-highcut\tgood'
- validate.TSV.TSV(channelsFileEEG, tsv, [], function (issues) {
- assert(issues.length === 0)
- })
- })
- var channelsFileNIRS = {
- name: 'sub-01_ses-001_task-rest_run-01_channels.tsv',
- relativePath:
- '/sub-01/ses-001/nirs/sub-01_ses-001_task-rest_run-01_channels.tsv',
- }
-
- it('NIRS channels.tsv with correct columns should throw no error', function () {
- var tsv =
- 'name\ttype\tsource\tdetector\twavelength_nominal\tunits\n' +
- 'testch\tNIRSCWAMPLITUDE\tS1\tD1\t760.0\tV'
- validate.TSV.TSV(channelsFileNIRS, tsv, [], function (issues) {
- assert(issues.length === 0)
- })
- })
-
- it('should not allow NIRS channels.tsv files without name column', function () {
- var tsv =
- 'type\tsource\tdetector\twavelength_nominal\tunits\n' +
- 'NIRSCWAMPLITUDE\tS1\tD1\t760.0\tV'
- validate.TSV.TSV(channelsFileNIRS, tsv, [], function (issues) {
- assert(issues[0].code === 234)
- })
- })
-
- var channelsFileMOTION = {
- name: 'sub-01_ses-walk_task-navigation_tracksys-IMU1_run-01_channels.tsv',
- relativePath:
- '/sub-01/ses-walk/motion/sub-01_ses-walk_task-navigation_tracksys-IMU1_run-01_channels.tsv',
- }
-
- it('MOTION channels.tsv with correct columns should throw no error', function () {
- var tsv =
- 'name\tcomponent\ttype\ttracked_point\tunits\n' +
- 't1_acc_x\tx\tACCEL\tLeftFoot\tm/s^2'
- validate.TSV.TSV(channelsFileMOTION, tsv, [], function (issues) {
- assert(issues.length === 0)
- })
- })
-
- it('should not allow MOTION channels.tsv files without component column', function () {
- var tsv =
- 'name\ttype\ttracked_point\tunits\n' + 't1_acc_x\tACCEL\tLeftFoot\tm/s^2'
- validate.TSV.TSV(channelsFileMOTION, tsv, [], function (issues) {
- assert(issues[0].code === 129)
- })
- })
-
- // optodes checks ---------------------------------------------------------
- var optodesFileNIRS = {
- name: 'sub-01_ses-001_task-rest_run-01_optodes.tsv',
- relativePath:
- '/sub-01/ses-001/nirs/sub-01_ses-001_task-rest_run-01_optodes.tsv',
- }
-
- it('should allow NIRS optodes.tsv files with correct columns', function () {
- var tsv = 'name\ttype\tx\ty\tz\n' + 'S1\tsource\t-0.04\t0.02\t0.5\n'
- validate.TSV.TSV(optodesFileNIRS, tsv, [], function (issues) {
- assert(issues.length === 0)
- })
- })
-
- it('should not allow NIRS optodes.tsv files with out name columns', function () {
- var tsv = 'type\tx\ty\tz\n' + 'source\t-0.04\t0.02\t0.5\n'
- validate.TSV.TSV(optodesFileNIRS, tsv, [], function (issues) {
- assert(issues[0].code === 233)
- })
- })
-
- // electrodes checks ---------------------------------------------------------
- var electrodesFileEEG = {
- name: 'sub-01_ses-001_task-rest_run-01_electrodes.tsv',
- relativePath:
- '/sub-01/ses-001/eeg/sub-01_ses-001_task-rest_run-01_electrodes.tsv',
- }
-
- it('should not allow EEG electrodes.tsv files without name column', function () {
- var tsv =
- 'wrongcolumn\tx\ty\tz\ttype\tmaterial\timpedance\n' +
- 'valName\tvalX\tvalY\tvalZ\tvalType\tvalMaterial\tvalImpedance\n'
- validate.TSV.TSV(electrodesFileEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 96)
- })
- })
-
- it('should not allow EEG electrodes.tsv files without x column', function () {
- var tsv =
- 'name\twrongcolumn\ty\tz\ttype\tmaterial\timpedance\n' +
- 'valName\tvalX\tvalY\tvalZ\tvalType\tvalMaterial\tvalImpedance\n'
- validate.TSV.TSV(electrodesFileEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 96)
- })
- })
-
- it('should not allow EEG electrodes.tsv files without y column', function () {
- var tsv =
- 'name\tx\twrongcolumn\tz\ttype\tmaterial\timpedance\n' +
- 'valName\tvalX\tvalY\tvalZ\tvalType\tvalMaterial\tvalImpedance\n'
- validate.TSV.TSV(electrodesFileEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 96)
- })
- })
-
- it('should not allow EEG electrodes.tsv files without z column', function () {
- var tsv =
- 'name\tx\ty\twrongcolumn\ttype\tmaterial\timpedance\n' +
- 'valName\tvalX\tvalY\tvalZ\tvalType\tvalMaterial\tvalImpedance\n'
- validate.TSV.TSV(electrodesFileEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 96)
- })
- })
-
- it('correct columns should pass for EEG electrodes file', function () {
- var tsv =
- 'name\tx\ty\tz\ttype\tmaterial\timpedance\n' +
- 'valName\tvalX\tvalY\tvalZ\tvalType\tvalMaterial\tvalImpedance\n'
- validate.TSV.TSV(electrodesFileEEG, tsv, [], function (issues) {
- assert(issues.length === 0)
- })
- })
-
- var electrodesFileIEEG = {
- name: 'sub-01_ses-ieeg_task-facerecognition_run-01_electrodes.tsv',
- relativePath:
- '/sub-01/ses-ieeg/ieeg/sub-01_ses-ieeg_task-facerecognition_run-01_electrodes.tsv',
- }
-
- it('should not allow iEEG electrodes.tsv files without name column', function () {
- var tsv =
- 'blah\tx\ty\tz\tsize\ttype\n' +
- 'value-one\tvalue-two\tvalue-three\tvalue-four\tvalue-five\tvalue-six\n'
- validate.TSV.TSV(electrodesFileIEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 73)
- })
- })
-
- it('should not allow iEEG electrodes.tsv files without x column', function () {
- var tsv =
- 'name\tblah\ty\tz\tsize\ttype\n' +
- 'value-one\tvalue-two\tvalue-three\tvalue-four\tvalue-five\tvalue-six\n'
- validate.TSV.TSV(electrodesFileIEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 73)
- })
- })
-
- it('should not allow iEEG electrodes.tsv files without y column', function () {
- var tsv =
- 'name\tx\tblah\tz\tsize\ttype\n' +
- 'value-one\tvalue-two\tvalue-three\tvalue-four\tvalue-five\tvalue-six\n'
- validate.TSV.TSV(electrodesFileIEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 73)
- })
- })
-
- it('should not allow iEEG electrodes.tsv files without z column', function () {
- var tsv =
- 'name\tx\ty\tblah\tsize\ttype\n' +
- 'value-one\tvalue-two\tvalue-three\tvalue-four\tvalue-five\tvalue-six\n'
- validate.TSV.TSV(electrodesFileIEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 73)
- })
- })
-
- it('should not allow iEEG electrodes.tsv files without size column', function () {
- var tsv =
- 'name\tx\ty\tz\tblah\ttype\n' +
- 'value-one\tvalue-two\tvalue-three\tvalue-four\tvalue-five\tvalue-six\n'
- validate.TSV.TSV(electrodesFileIEEG, tsv, [], function (issues) {
- assert(issues.length === 1 && issues[0].code === 73)
- })
- })
-
- it('correct columns should pass for iEEG electrodes file', function () {
- var tsv =
- 'name\tx\ty\tz\tsize\ttype\n' +
- 'value-one\tvalue-two\tvalue-three\tvalue-four\tvalue-five\tvalue-six\n'
- validate.TSV.TSV(electrodesFileIEEG, tsv, [], function (issues) {
- assert(issues.length === 0)
- })
- })
-
- var physio_file = {
- name: 'sub-20_ses-1_task-rest_acq-prefrontal_physio.tsv.gz',
- relativePath:
- '/sub-20/ses-1/func/sub-20_ses-1_task-rest_acq-prefrontal_physio.tsv.gz',
- }
-
- it('should not allow physio.tsv.gz file without some associated json', function () {
- let issues = validate.TSV.validateContRec([physio_file], {})
- assert(issues.length === 1 && issues[0].code === 170)
- })
-
- // samples checks -----------------------------------------------------------
-
- const samplesFile = {
- name: 'samples.tsv',
- relativePath: '/samples.tsv',
- }
-
- it('should return errors for each missing mandatory header in samples.tsv', () => {
- const tsv = 'wrong_col\nsome_data\n'
- validate.TSV.TSV(samplesFile, tsv, [], function (issues) {
- expect(issues.length).toBe(3)
- const codes = issues.map((x) => x.code)
- expect(codes.includes(216)).toBe(true)
- expect(codes.includes(217)).toBe(true)
- expect(codes.includes(218)).toBe(true)
- })
- })
-
- it('should return an error for invalid sample_type samples.tsv', () => {
- const tsv = 'sample_type\nbad\n'
- validate.TSV.TSV(samplesFile, tsv, [], function (issues) {
- const codes = issues.map((x) => x.code)
- expect(codes.includes(219)).toBe(true)
- })
- })
-})
diff --git a/legacy/bids-validator/tests/type.spec.js b/legacy/bids-validator/tests/type.spec.js
deleted file mode 100644
index 3770df0d..00000000
--- a/legacy/bids-validator/tests/type.spec.js
+++ /dev/null
@@ -1,639 +0,0 @@
-import { assert } from 'chai'
-import utils from '../utils'
-import BIDS from '../validators/bids'
-
-describe('utils.type.file.isAnat', function () {
- const goodFilenames = [
- '/sub-15/anat/sub-15_inplaneT2.nii.gz',
- '/sub-15/ses-12/anat/sub-15_ses-12_inplaneT2.nii.gz',
- '/sub-16/anat/sub-16_T1w.nii.gz',
- '/sub-16/anat/sub-16_T1w.json',
- '/sub-16/anat/sub-16_run-01_T1w.nii.gz',
- '/sub-16/anat/sub-16_acq-highres_T1w.nii.gz',
- '/sub-16/anat/sub-16_rec-mc_T1w.nii.gz',
- '/sub-16/anat/sub-16_ce-contrastagent_T1w.nii.gz',
- '/sub-16/anat/sub-16_part-mag_T1w.nii.gz',
- '/sub-16/anat/sub-16_T1map.nii.gz',
- '/sub-16/anat/sub-16_mod-T1w_defacemask.nii.gz',
- '/sub-16/anat/sub-16_echo-1_MESE.nii.gz',
- '/sub-16/anat/sub-16_flip-1_VFA.nii.gz',
- '/sub-16/anat/sub-16_inv-1_IRT1.nii.gz',
- '/sub-16/anat/sub-16_flip-1_inv-1_MP2RAGE.nii.gz',
- '/sub-16/anat/sub-16_flip-1_mt-on_MPM.nii.gz',
- '/sub-16/anat/sub-16_mt-on_part-real_MTR.nii.gz',
- ]
-
- goodFilenames.forEach(function (path) {
- it("isAnat('" + path + "') === true", function (isdone) {
- assert.equal(utils.type.file.isAnat(path), true)
- isdone()
- })
- })
-
- const badFilenames = [
- '/sub-1/anat/sub-15_inplaneT2.nii.gz',
- '/sub-15/ses-12/anat/sub-15_inplaneT2.nii.gz',
- '/sub-16/anat/sub-16_T1.nii.gz',
- 'blaaa.nii.gz',
- '/sub-16/anat/sub-16_run-second_T1w.nii.gz',
- '/sub-16/anat/sub-16_run-01_rec-mc_T1w.nii.gz',
- '/sub-16/anat/sub-16_part-magnitude_T1w.nii.gz',
- '/sub-16/anat/sub-16_part-mag_T1map.nii.gz',
- '/sub-16/anat/sub-16_mod-T1weighted_defacemask.nii.gz',
- '/sub-16/anat/sub-16_MESE.nii.gz',
- '/sub-16/anat/sub-16_VFA.nii.gz',
- '/sub-16/anat/sub-16_IRT1.nii.gz',
- '/sub-16/anat/sub-16_flip-1_MP2RAGE.nii.gz',
- '/sub-16/anat/sub-16_flip-1_mt-fail_MPM.nii.gz',
- '/sub-16/anat/sub-16_flip-1_mt-fail_part-real_MTR.nii.gz',
- ]
-
- badFilenames.forEach(function (path) {
- it("isAnat('" + path + "') === false", function (isdone) {
- assert.equal(utils.type.file.isAnat(path), false)
- isdone()
- })
- })
-})
-
-describe('utils.type.file.isFunc', function () {
- var goodFilenames = [
- '/sub-15/func/sub-15_task-0back_bold.nii.gz',
- '/sub-15/ses-12/func/sub-15_ses-12_task-0back_bold.nii.gz',
- '/sub-16/func/sub-16_task-0back_bold.json',
- '/sub-16/func/sub-16_task-0back_run-01_bold.nii.gz',
- '/sub-16/func/sub-16_task-0back_acq-highres_bold.nii.gz',
- '/sub-16/func/sub-16_task-0back_rec-mc_bold.nii.gz',
- '/sub-16/func/sub-16_task-0back_run-01_phase.nii.gz',
- '/sub-16/func/sub-16_task-0back_echo-1_phase.nii.gz',
- '/sub-15/func/sub-15_task-0back_part-phase_bold.nii.gz',
- ]
-
- goodFilenames.forEach(function (path) {
- it("isFunc('" + path + "') === true", function (isdone) {
- assert.equal(utils.type.file.isFunc(path), true)
- isdone()
- })
- })
-
- var badFilenames = [
- '/sub-1/func/sub-15_inplaneT2.nii.gz',
- '/sub-15/ses-12/func/sub-15_inplaneT2.nii.gz',
- '/sub-16/func/sub-16_T1.nii.gz',
- 'blaaa.nii.gz',
- '/sub-16/func/sub-16_run-second_T1w.nii.gz',
- '/sub-16/func/sub-16_task-0-back_rec-mc_bold.nii.gz',
- '/sub-16/func/sub-16_run-01_rec-mc_T1w.nii.gz',
- '/sub-16/func/sub-16_task-0back_part-magnitude_bold.nii.gz',
- ]
-
- badFilenames.forEach(function (path) {
- it("isFunc('" + path + "') === false", function (isdone) {
- assert.equal(utils.type.file.isFunc(path), false)
- isdone()
- })
- })
-})
-
-describe('utils.type.file.isTopLevel', function () {
- const goodFilenames = [
- '/README',
- '/CHANGES',
- '/LICENSE',
- '/dataset_description.json',
- '/ses-pre_task-rest_bold.json',
- '/dwi.bval',
- '/dwi.bvec',
- '/T1w.json',
- '/acq-test_dwi.json',
- '/rec-test_physio.json',
- '/task-testing_eeg.json',
- '/task-testing_ieeg.json',
- '/task-testing_meg.json',
- '/events.json',
- '/scans.json',
- ]
-
- goodFilenames.forEach(function (path) {
- it("isTopLevel('" + path + "') === true", function (isdone) {
- assert.equal(utils.type.file.isTopLevel(path), true)
- isdone()
- })
- })
-
- const badFilenames = [
- '/readme.txt',
- '/changelog',
- '/license.txt',
- '/dataset_description.yml',
- '/ses.json',
- '/_T1w.json',
- '/_dwi.json',
- '/_task-test_physio.json',
- // cross-talk and fine-calibration files for Neuromag/Elekta/MEGIN data (.fif)
- // must be defined at file level.
- '/acq-calibration_meg.dat',
- '/acq-crosstalk_meg.fif',
- ]
-
- badFilenames.forEach(function (path) {
- it("isTopLevel('" + path + "') === false", function (isdone) {
- assert.equal(utils.type.file.isTopLevel(path), false)
- isdone()
- })
- })
-})
-
-describe('utils.type.file.isSubjectLevel', () => {
- const goodFilenames = [] // to be extended in the future...
-
- goodFilenames.forEach((path) => {
- it("isSubjectLevel('" + path + "') === true", function (isdone) {
- assert.equal(utils.type.file.isSubjectLevel(path), true)
- isdone()
- })
- })
-
- const badFilenames = [
- // cross-talk and fine-calibration files for Neuromag/Elekta/MEGIN data (.fif)
- // must be placed on file level.
- '/sub-12/sub-12_acq-calibration_meg.dat',
- '/sub-12/sub-12_acq-crosstalk_meg.fif',
- '/sub-12/acq-calibration_meg.dat',
- '/sub-12/acq-crosstalk_meg.fif',
- '/sub-12/acq-calibration.dat',
- '/sub-12/acq-crosstalk.fif',
- ]
-
- badFilenames.forEach((path) => {
- it("isSubjectLevel('" + path + "') === false", function (isdone) {
- assert.equal(utils.type.file.isSubjectLevel(path), false)
- isdone()
- })
- })
-})
-
-describe('utils.type.file.isSessionLevel', function () {
- const goodFilenames = [
- '/sub-12/sub-12_scans.tsv',
- '/sub-12/sub-12_scans.json',
- '/sub-12/ses-pre/sub-12_ses-pre_scans.tsv',
- '/sub-12/ses-pre/sub-12_ses-pre_scans.json',
- ]
-
- goodFilenames.forEach(function (path) {
- it("isSessionLevel('" + path + "') === true", function (isdone) {
- assert.equal(utils.type.file.isSessionLevel(path), true)
- isdone()
- })
- })
-
- const badFilenames = [
- '/sub-12/sub-12.tsv',
- '/sub-12/ses-pre/sub-12_ses-pre_scan.tsv',
- // cross-talk and fine-calibration files for Neuromag/Elekta/MEGIN data (.fif)
- // must be placed at file level.
- '/sub-12/sub-12_acq-calibration_meg.dat',
- '/sub-12/sub-12_acq-crosstalk_meg.fif',
- '/sub-12/ses-pre/sub-12_ses-pre_acq-calibration_meg.dat',
- '/sub-12/ses-pre/sub-12_ses-pre_acq-crosstalk_meg.fif',
- ]
-
- badFilenames.forEach(function (path) {
- it("isSessionLevel('" + path + "') === false", function (isdone) {
- assert.equal(utils.type.file.isSessionLevel(path), false)
- isdone()
- })
- })
-})
-
-describe('utils.type.file.isDWI', function () {
- const goodFilenames = [
- '/sub-12/dwi/sub-12_dwi.nii.gz',
- '/sub-12/dwi/sub-12_dwi.json',
- '/sub-12/ses-pre/dwi/sub-12_ses-pre_dwi.nii.gz',
- '/sub-12/ses-pre/dwi/sub-12_ses-pre_dwi.bvec',
- '/sub-12/ses-pre/dwi/sub-12_ses-pre_dwi.bval',
- '/sub-12/ses-pre/dwi/sub-12_ses-pre_dwi.json',
- '/sub-12/dwi/sub-12_sbref.nii.gz',
- '/sub-12/dwi/sub-12_sbref.json',
- '/sub-12/ses-pre/dwi/sub-12_ses-pre_sbref.nii.gz',
- '/sub-12/ses-pre/dwi/sub-12_ses-pre_sbref.json',
- '/sub-12/dwi/sub-12_part-mag_sbref.json',
- ]
-
- goodFilenames.forEach(function (path) {
- it("isDWI('" + path + "') === true", function (isdone) {
- assert.equal(utils.type.file.isDWI(path), true)
- isdone()
- })
- })
-
- const badFilenames = [
- '/sub-12/sub-12.tsv',
- '/sub-12/ses-pre/sub-12_ses-pre_scan.tsv',
- '/sub-12/ses-pre/dwi/sub-12_ses-pre_dwi.bvecs',
- '/sub-12/ses-pre/dwi/sub-12_ses-pre_dwi.bvals',
- '/sub-12/dwi/sub-12_sbref.bval',
- '/sub-12/dwi/sub-12_sbref.bvec',
- '/sub-12/ses-pre/dwi/sub-12_ses-pre_sbref.bval',
- '/sub-12/ses-pre/dwi/sub-12_ses-pre_sbref.bvec',
- '/sub-12/dwi/sub-12_part-magnitude_sbref.json',
- ]
-
- badFilenames.forEach(function (path) {
- it("isDWI('" + path + "') === false", function (isdone) {
- assert.equal(utils.type.file.isDWI(path), false)
- isdone()
- })
- })
-})
-
-describe('utils.type.file.isMEG', function () {
- const goodFilenames = [
- // Metadata MEG files
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg.json',
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_channels.tsv',
- // Father directory files are fine for some file formats:
- // Father dir: CTF data with a .ds ... the contents within .ds are not checked
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg.ds/catch-alp-good-f.meg4',
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg.ds/xyz',
- // Father dir: BTi/4D ... again: within contents not checked
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg/config',
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg/hs_file',
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg/e,rfhp1.0Hz.COH',
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg/c,rfDC',
- // NO father dir: KRISS data
- '/sub-control01/ses-001/meg/sub-control01_ses-001_task-rest_run-01_meg.chn',
- '/sub-control01/ses-001/meg/sub-control01_ses-001_task-rest_run-01_meg.kdf',
- '/sub-control01/ses-001/meg/sub-control01_ses-001_task-rest_run-01_meg.trg',
- '/sub-control01/ses-001/meg/sub-control01_ses-001_task-rest_digitizer.txt',
- // NO father dir: KIT data
- '/sub-01/ses-001/meg/sub-01_ses-001_markers.sqd',
- '/sub-01/ses-001/meg/sub-01_ses-001_markers.mrk',
- '/sub-01/ses-001/meg/sub-01_ses-001_meg.sqd',
- '/sub-01/ses-001/meg/sub-01_ses-001_meg.con',
- // NO father dir: ITAB data
- '/sub-control01/ses-001/meg/sub-control01_ses-001_task-rest_run-01_meg.raw',
- '/sub-control01/ses-001/meg/sub-control01_ses-001_task-rest_run-01_meg.raw.mhd',
- // NO father dir: fif data
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_split-01_meg.fif',
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_acq-TEST_run-01_split-01_meg.fif',
- // cross-talk and fine-calibration files for Neuromag/Elekta/MEGIN data (.fif)
- '/sub-01/meg/sub-01_acq-calibration_meg.dat',
- '/sub-01/meg/sub-01_acq-crosstalk_meg.fif',
- '/sub-01/ses-001/meg/sub-01_ses-001_acq-calibration_meg.dat',
- '/sub-01/ses-001/meg/sub-01_ses-001_acq-crosstalk_meg.fif',
- ]
-
- goodFilenames.forEach(function (path) {
- it("isMeg('" + path + "') === true", function (isdone) {
- assert.equal(utils.type.file.isMeg(path), true)
- isdone()
- })
- })
-
- const badFilenames = [
- // missing session directory
- '/sub-01/meg/sub-01_ses-001_task-rest_run-01_meg.json',
- // subject not matching
- '/sub-01/ses-001/meg/sub-12_ses-001_task-rest_run-01_split-01_meg.fif',
- // invalid file endings
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg.tsv',
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg.bogus',
- // wrong order of entities: https://github.com/bids-standard/bids-validator/issues/767
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_acq-TEST_split-01_meg.fif',
- // only parent directory name matters for BTi and CTF systems
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meggg/config',
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg.dd/xyz',
- // KIT with a father dir ... should not have a father dir
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg/sub-01_ses-001_markers.sqd',
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg/sub-01_ses-001_markers.con',
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg/sub-01_ses-001_task-rest_run-01_meg.sqd',
- // FIF with a father dir ... should not have a father dir
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg/sub-01_ses-001_task-rest_meg.fif',
- // ITAB with a father dir ... should not have a father dir
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg/sub-01_ses-001_task-rest_run-01_meg.raw',
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg/sub-01_ses-001_task-rest_run-01_meg.raw.mhd',
- // KRISS with a father dir ... should not have a father dir
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg/sub-01_ses-001_task-rest_run-01_meg.kdf',
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg/sub-01_ses-001_task-rest_run-01_meg.trg',
- '/sub-01/ses-001/meg/sub-01_ses-001_task-rest_run-01_meg/sub-01_ses-001_task-rest_run-01_meg.chn',
- // cross-talk and fine-calibration files for Neuromag/Elekta/MEGIN data (.fif)
- // .dat in MEG only allowed for "acq-calibration"
- '/acq-notcalibration_meg.dat',
- '/sub-01/ses-001/meg/sub-01_ses-001_acq-notcalibration_meg.dat',
- '/sub-01/ses-001/meg/sub-01_ses-001_acq-crosstalk_meg.dat',
- ]
-
- badFilenames.forEach(function (path) {
- it("isMeg('" + path + "') === false", function (isdone) {
- assert.equal(utils.type.file.isMeg(path), false)
- isdone()
- })
- })
-})
-
-describe('utils.type.file.isEEG', function () {
- const goodFilenames = [
- '/sub-01/ses-001/eeg/sub-01_ses-001_task-rest_run-01_eeg.json',
- '/sub-01/ses-001/eeg/sub-01_ses-001_task-rest_run-01_events.tsv',
- '/sub-01/ses-001/eeg/sub-01_ses-001_task-rest_run-01_split-01_eeg.edf',
- '/sub-01/ses-001/eeg/sub-01_ses-001_task-rest_run-01_eeg.eeg',
- '/sub-01/ses-001/eeg/sub-01_ses-001_task-rest_run-01_eeg.vmrk',
- '/sub-01/ses-001/eeg/sub-01_ses-001_task-rest_run-01_eeg.vhdr',
- '/sub-01/ses-001/eeg/sub-01_ses-001_task-rest_run-01_eeg.bdf',
- '/sub-01/ses-001/eeg/sub-01_ses-001_task-rest_run-01_eeg.set',
- '/sub-01/ses-001/eeg/sub-01_ses-001_task-rest_run-01_eeg.fdt',
- '/sub-01/ses-001/eeg/sub-01_ses-001_task-rest_run-01_channels.tsv',
- '/sub-01/ses-001/eeg/sub-01_ses-001_electrodes.tsv',
- '/sub-01/ses-001/eeg/sub-01_ses-001_space-CapTrak_electrodes.tsv',
- '/sub-01/ses-001/eeg/sub-01_ses-001_coordsystem.json',
- '/sub-01/ses-001/eeg/sub-01_ses-001_space-CapTrak_coordsystem.json',
- '/sub-01/ses-001/eeg/sub-01_ses-001_photo.jpg',
- ]
-
- goodFilenames.forEach(function (path) {
- it("isEEG('" + path + "') === true", function (isdone) {
- assert.equal(utils.type.file.isEEG(path), true)
- isdone()
- })
- })
-
- const badFilenames = [
- '/sub-01/eeg/sub-01_ses-001_task-rest_run-01_eeg.json',
- '/sub-01/ses-001/eeg/sub-12_ses-001_task-rest_run-01_split-01_eeg.edf',
- '/sub-01/ses-001/eeg/sub-01_ses-001_task-rest_run-01_eeg.tsv',
- '/sub-01/ses-001/eeg/sub-01_ses-001_space-BOGUS_electrodes.tsv',
- '/sub-01/ses-001/eeg/sub-01_ses-001_space-BOGUS_coordsystem.json',
- ]
-
- badFilenames.forEach(function (path) {
- it("isEEG('" + path + "') === false", function (isdone) {
- assert.equal(utils.type.file.isEEG(path), false)
- isdone()
- })
- })
-})
-
-describe('utils.type.file.isIEEG', function () {
- const goodFilenames = [
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_ieeg.json',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_split-01_ieeg.edf',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_split-01_ieeg.vhdr',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_split-01_ieeg.vmrk',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_split-01_ieeg.eeg',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_split-01_ieeg.set',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_split-01_ieeg.fdt',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_split-01_ieeg.nwb',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_split-01_ieeg.mefd/sub-01_ses-001_task-rest_run-01_ieeg.rdat',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_split-01_ieeg.mefd/sub-01_ses-001_task-rest_run-01_ieeg.ridx',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_split-01_ieeg.mefd/CH1.timd/CH1-000000.segd/sub-01_ses-001_task-rest_run-01_ieeg.tdat',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_split-01_ieeg.mefd/CH1.timd/CH1-000000.segd/sub-01_ses-001_task-rest_run-01_ieeg.idx',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_split-01_ieeg.mefd/CH1.timd/CH1-000000.segd/sub-01_ses-001_task-rest_run-01_ieeg.tmet',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_channels.tsv',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_space-fsaverage_electrodes.tsv',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_space-fsaverage_coordsystem.json',
- ]
-
- goodFilenames.forEach(function (path) {
- it("isIEEG('" + path + "') === true", function (isdone) {
- assert.equal(utils.type.file.isIEEG(path), true)
- isdone()
- })
- })
-
- const badFilenames = [
- '/sub-01/ieeg/sub-01_ses-001_task-rest_run-01_ieeg.json',
- '/sub-01/ses-001/ieeg/sub-12_ses-001_task-rest_run-01_split-01_ieeg.fif',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_task-rest_run-01_ieeg.tsv',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_space-fsavg_electrodes.tsv',
- '/sub-01/ses-001/ieeg/sub-01_ses-001_space-fsavg_coordsystem.json',
- ]
-
- badFilenames.forEach(function (path) {
- it("isIEEG('" + path + "') === false", function (isdone) {
- assert.equal(utils.type.file.isIEEG(path), false)
- isdone()
- })
- })
-})
-
-describe('utils.type.file.isPhenotypic', function () {
- it('should allow .tsv and .json files in the /phenotype directory', function () {
- assert(utils.type.file.isPhenotypic('/phenotype/acds_adult.json'))
- assert(utils.type.file.isPhenotypic('/phenotype/acds_adult.tsv'))
- })
-
- it('should not allow non .tsv and .json files in the /phenotype directory', function () {
- assert(!utils.type.file.isPhenotypic('/phenotype/acds_adult.jpeg'))
- assert(!utils.type.file.isPhenotypic('/phenotype/acds_adult.gif'))
- })
-})
-
-describe('utils.type.file.isAssociatedData', function () {
- it('should return false for unknown root directories', function () {
- var badFilenames = ['/images/picture.jpeg', '/temporary/test.json']
-
- badFilenames.forEach(function (path) {
- assert.equal(utils.type.file.isAssociatedData(path), false)
- })
- })
-
- it('should return true for associated data directories and any files within', function () {
- var goodFilenames = [
- '/code/test-script.py',
- '/derivatives/sub-01_QA.pdf',
- '/sourcedata/sub-01_ses-01_bold.dcm',
- '/stimuli/text.pdf',
- ]
-
- goodFilenames.forEach(function (path) {
- assert(utils.type.file.isAssociatedData(path))
- })
- })
-})
-
-describe('utils.type.file.isStimuliData', function () {
- it('should return false for unknown root directories', function () {
- var badFilenames = ['/images/picture.jpeg', '/temporary/test.json']
-
- badFilenames.forEach(function (path) {
- assert.equal(utils.type.file.isStimuliData(path), false)
- })
- })
-
- it('should return true for stimuli data directories and any files within', function () {
- var goodFilenames = ['/stimuli/sub-01/mov.avi', '/stimuli/text.pdf']
-
- goodFilenames.forEach(function (path) {
- assert(utils.type.file.isStimuliData(path))
- })
- })
-})
-
-describe('utils.type.getPathValues', function () {
- it('should return the correct path values from a valid file path', function () {
- assert.equal(
- utils.type.getPathValues(
- '/sub-22/ses-1/func/sub-22_ses-1_task-rest_acq-prefrontal_physio.tsv.gz',
- ).sub,
- 22,
- )
- assert.equal(
- utils.type.getPathValues(
- '/sub-22/ses-1/func/sub-22_ses-1_task-rest_acq-prefrontal_physio.tsv.gz',
- ).ses,
- 1,
- )
- assert.equal(
- utils.type.getPathValues(
- '/sub-22/func/sub-22_task-rest_acq-prefrontal_physio.tsv.gz',
- ).sub,
- 22,
- )
- assert.equal(
- utils.type.getPathValues(
- '/sub-22/func/sub-22_task-rest_acq-prefrontal_physio.tsv.gz',
- ).ses,
- null,
- )
- })
-})
-
-describe('utils.type.file.isPET', function () {
- const goodFilenames = [
- '/sub-1/ses-1/pet/sub-1_ses-1_task-1_trc-1_rec-1_run-1_pet.json',
- '/sub-1/ses-1/pet/sub-1_ses-1_task-1_trc-1_rec-1_run-1_pet.nii',
- '/sub-1/ses-1/pet/sub-1_ses-1_task-1_trc-1_rec-1_run-1_pet.nii.gz',
- '/sub-03/ses-01/pet/sub-02_ses-40_task-30_pet.json',
- '/sub-03/ses-01/pet/sub-02_ses-40_pet.nii',
- '/sub-03/ses-01/pet/sub-02_ses-40_pet.nii.gz',
- '/sub-03/pet/sub-02_pet.nii',
- '/sub-03/pet/sub-02_pet.nii.gz',
- ]
-
- goodFilenames.forEach(function (path) {
- it("isPET('" + path + "') === true", function (isdone) {
- assert.equal(utils.type.file.isPET(path), true)
- isdone()
- })
- })
-
- const badFilenames = [
- '/sub-1/ses-1/pet/sub-1_ses-1_task-1_trc-1_rec-1_run-1_pet+json',
- '/sub-1/ses-1/pet/sub-1_ses-1_task-1_trc-1_rec-1_run-1_pet.json.gz',
- '/sub-1/ses-1/pet/sub-1ses-1_task-1_trc-1_rec-1_run-1_pet.nii',
- 'sub-1/ses-1/pet/sub-1ses-1_task-1_trc-1_rec-1_run-1_pet.nii',
- '/sub-1/ses-1/pet/sub-1/ses-1_task-1_trc-1_rec-1_run-q_pet.csv',
- '/sub-1/ses-1/pet/sub-1/ses-1_task-1_trc-1_rec-1_run-q_recording-1_pet.nii',
- ]
-
- badFilenames.forEach(function (path) {
- it("isPET('" + path + "') === false", function (isdone) {
- assert.equal(utils.type.file.isPET(path), false)
- isdone()
- })
- })
-})
-
-describe('utils.type.file.isPETBlood', function () {
- const goodFilenames = [
- '/sub-1/ses-1/pet/sub-1_ses-1_task-1_trc-1_rec-1_run-1_recording-1_blood.json',
- '/sub-1/ses-1/pet/sub-1_ses-1_task-1_trc-1_rec-1_run-1_recording-1_blood.tsv',
- '/sub-03/ses-01/pet/sub-02_ses-40_task-30_recording-manual_blood.json',
- '/sub-03/ses-01/pet/sub-02_ses-40_recording-manual_blood.tsv',
- '/sub-03/pet/sub-02_recording-manual_blood.tsv',
- ]
-
- goodFilenames.forEach(function (path) {
- it("isPETBlood('" + path + "') === true", function (isdone) {
- assert.equal(utils.type.file.isPETBlood(path), true)
- isdone()
- })
- })
-
- const badFilenames = [
- '/sub-1/ses-1/pet/sub-1_ses-1_task-1_trc-1_rec-1_run-1_recording-1_blood+json',
- '/sub-1/ses-1/pet/sub-1ses-1_task-1_trc-1_rec-1_run-1_recording-1_blood.tsv',
- 'sub-1/ses-1/pet/sub-1ses-1_task-1_trc-1_rec-1_run-1_recording-1_blood.tsv',
- '/sub-1/ses-1/pet/sub-1/ses-1_task-1_trc-1_rec-1_run-q_recording-1_blood.csv',
- '/sub-1/ses-1/pet/sub-1/ses-1_task-1_trc-1_rec-1_run-q_recording-1_pet.tsv',
- ]
-
- badFilenames.forEach(function (path) {
- it("isPETBlood('" + path + "') === false", function (isdone) {
- assert.equal(utils.type.file.isPETBlood(path), false)
- isdone()
- })
- })
-})
-
-describe('utils.type.file.isMOTION', function () {
- const goodFilenames = [
- '/sub-01/motion/sub-01_task-rest_tracksys-unity_run-01_motion.tsv',
- '/sub-01/ses-walk/motion/sub-01_ses-walk_task-visual_tracksys-unity_motion.tsv',
- '/sub-01/ses-walk/motion/sub-01_ses-walk_task-visual_tracksys-unity_motion.json',
- '/sub-01/ses-walk/motion/sub-01_ses-walk_task-visual_tracksys-unity_channels.tsv',
- '/sub-01/ses-desktop/motion/sub-01_ses-desktop_task-rest_tracksys-unity_run-01_events.tsv',
- '/sub-01/ses-desktop/motion/sub-01_ses-desktop_task-rest_events.tsv',
- ]
-
- goodFilenames.forEach(function (path) {
- it("isMOTION('" + path + "') === true", function (isdone) {
- assert.equal(utils.type.file.isMOTION(path), true)
- isdone()
- })
- })
-
- const badFilenames = [
- '/sub-01/motion/sub-01_ses-001_tracksys-unity_task-rest_run-01_motion.json',
- '/sub-01/ses-001/motion/sub-12_ses-001_task-rest_run-01_motion.tsv',
- '/sub-01/ses-walk/motion/sub-01_ses-walk_task-visual_channels.tsv',
- '/sub-01/ses-001/motion/sub-01_ses-001_run-01_motion.tsv',
- '/sub-01/motion/sub-01_task-walk_run-01_motion.tsv',
- ]
-
- badFilenames.forEach(function (path) {
- it("isMOTION('" + path + "') === false", function (isdone) {
- assert.equal(utils.type.file.isMOTION(path), false)
- isdone()
- })
- })
-})
-
-describe('BIDS.subIDsesIDmismatchtest', function () {
- it("should return if sub and ses doesn't match", function () {
- const files = {
- 0: {
- name: 'sub-22_ses-1_task-rest_acq-prefrontal_physio.tsv.gz',
- path: 'tests/data/BIDS-examples-1.0.0-rc3u5/ds001/sub-22_ses-1_task-rest_acq-prefrontal_physio.tsv.gz',
- relativePath:
- 'ds001/sub-22_ses-1_task-rest_acq-prefrontal_physio.tsv.gz',
- },
- 1: {
- name: '/sub-22/ses-1/func/sub-23_ses-1_task-rest_acq-prefrontal_physio.tsv.gz',
- path: 'tests/data/BIDS-examples-1.0.0-rc3u5/ds001/sub-22/ses-1/func/sub-23_ses-1_task-rest_acq-prefrontal_physio.tsv.gz',
- relativePath:
- 'ds001/sub-22/ses-1/func/sub-23_ses-1_task-rest_acq-prefrontal_physio.tsv.gz',
- },
- 2: {
- name: '/sub-22/ses-1/func/sub-22_ses-2_task-rest_acq-prefrontal_physio.tsv.gz',
- path: 'tests/data/BIDS-examples-1.0.0-rc3u5/ds001/sub-22/ses-1/func/sub-22_ses-2_task-rest_acq-prefrontal_physio.tsv.gz',
- relativePath:
- '/sub-22/ses-1/func/sub-22_ses-2_task-rest_acq-prefrontal_physio.tsv.gz',
- },
- 3: {
- name: '/sub-25/ses-2/func/sub-22_ses-1_task-rest_acq-prefrontal_physio.tsv.gz',
- path: 'tests/data/BIDS-examples-1.0.0-rc3u5/ds001/sub-25/ses-2/func/sub-22_ses-1_task-rest_acq-prefrontal_physio.tsv.gz',
- relativePath:
- 'ds001//sub-25/ses-2/func/sub-22_ses-1_task-rest_acq-prefrontal_physio.tsv.gz',
- },
- }
- const issues = BIDS.subIDsesIDmismatchtest(files)
- const code64_seen = issues.some((issue) => issue.code == '64')
- const code65_seen = issues.some((issue) => issue.code == '65')
- assert(code64_seen)
- assert(code65_seen)
- })
-})
diff --git a/legacy/bids-validator/tests/utils/config.spec.js b/legacy/bids-validator/tests/utils/config.spec.js
deleted file mode 100644
index 9cdcff70..00000000
--- a/legacy/bids-validator/tests/utils/config.spec.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import utils from '../../utils'
-import assert from 'assert'
-
-describe('utils.config', function () {
- var codes = [1, 3, 4, 7, 21, 33, 34]
- var conf = {
- ignore: [3],
- warn: [
- 4,
- {
- and: [7, { or: [33, 21] }],
- },
- ],
- error: [34, 33],
- ignoredFiles: ['**/**/**/.DS_Store'],
- }
-
- describe('ignoredFile', function () {
- it('should return true if the file is ignored', function () {
- assert(utils.config.ignoredFile(conf, '/.DS_Store'))
- assert(utils.config.ignoredFile(conf, 'ds001/.DS_Store'))
- assert(utils.config.ignoredFile(conf, 'ds001/sub-01/.DS_Store'))
- })
-
- it('should return false if the file is not ignored', function () {
- assert(!utils.config.ignoredFile(conf, '/participants.tsv'))
- assert(!utils.config.ignoredFile(conf, 'ds001/README'))
- assert(
- !utils.config.ignoredFile(conf, 'ds001/sub-16/anat/sub-16_T1w.nii.gz'),
- )
- })
- })
-
- describe('interpret', function () {
- it('should return the correct severity mappings', function () {
- var severityMap = utils.config.interpret(codes, conf)
- assert.deepEqual(severityMap, {
- 3: 'ignore',
- 4: 'warning',
- 7: 'warning',
- 21: 'warning',
- 33: 'error',
- 34: 'error',
- })
- })
- })
-
- describe('match', function () {
- it('should return a list of triggered codes that match the config', function () {
- assert.deepEqual([3], utils.config.match(codes, conf.ignore))
- assert.deepEqual([4, 7, 33, 21], utils.config.match(codes, conf.warn))
- assert.deepEqual([34, 33], utils.config.match(codes, conf.error))
- })
- })
-
- describe('flatten', function () {
- it('should return a flattened list of codes', function () {
- assert.deepEqual([3], utils.config.flatten(conf.ignore))
- assert.deepEqual([4, 7, 33, 21], utils.config.flatten(conf.warn))
- assert.deepEqual([34, 33], utils.config.flatten(conf.error))
- })
- })
-
- describe('andFullfilled', function () {
- it("should return true if the 'and' array is fulfilled by the triggered codes", function () {
- assert(utils.config.andFulfilled(codes, conf.warn[1].and))
- })
-
- it("should return false if the 'and' array is not fulfilled", function () {
- assert(!utils.config.andFulfilled(codes, [1, 4, 7, 21, 22]))
- })
- })
-
- describe('orFulfilled', function () {
- it("should return true if the 'or' array is fulfilled by the triggered codes", function () {
- assert(utils.config.orFulfilled(codes, conf.warn[1].and[1].or))
- })
-
- it("should return false if the 'or' array is not fulfilled", function () {
- assert(!utils.config.orFulfilled(codes, [5, 6]))
- })
- })
-})
diff --git a/legacy/bids-validator/tests/utils/files-web.spec.js b/legacy/bids-validator/tests/utils/files-web.spec.js
deleted file mode 100644
index f5779f5c..00000000
--- a/legacy/bids-validator/tests/utils/files-web.spec.js
+++ /dev/null
@@ -1,102 +0,0 @@
-/**
- * eslint no-console: ["error", { allow: ["log"] }]
- * @jest-environment jsdom
- */
-
-import assert from 'assert'
-
-import utils from '../../../bids-validator/utils'
-import groupFileTypes from '../../../bids-validator/validators/bids/groupFileTypes'
-import checkReadme from '../../../bids-validator/validators/bids/checkReadme.js'
-import checkDatasetDescription from '../../../bids-validator/validators/bids/checkDatasetDescription.js'
-import validateMisc from '../../../bids-validator/utils/files/validateMisc'
-import { createFileList } from '../env/FileList'
-
-describe('files in browser', () => {
- describe('files utils in nodejs', () => {
- describe('FileAPI', () => {
- it('should not return a mock implementation', () => {
- let File = utils.files.FileAPI()
- assert(File.name !== 'NodeFile')
- })
- })
- })
-
- describe('files utils in browsers', () => {
- describe('newFile', () => {
- it('creates a new File API object', () => {
- const test_file = utils.files.newFile('test-file')
- assert.equal(test_file.name, 'test-file')
- assert(File.prototype.isPrototypeOf(test_file))
- })
- })
- })
-
- describe('dataset_description.json', () => {
- it('throws warning if it does not exist in proper location', () => {
- const fileList = {}
- const issues = checkDatasetDescription(fileList)
- assert(issues[0].key === 'DATASET_DESCRIPTION_JSON_MISSING')
- })
- })
-
- describe('README', () => {
- it('throws warning if it does not exist in proper location', () => {
- const fileList = {
- 1: {
- name: 'README',
- path: 'tests/data/bids-examples/ds001/not-root-dir/README',
- relativePath: '/not-root-dir/README',
- },
- }
- const issues = checkReadme(fileList)
- assert(issues[0].key === 'README_FILE_MISSING')
- })
-
- it('throws warning if it is too small', () => {
- const fileList = {
- 1: {
- name: 'README',
- path: 'tests/data/bids-examples/ds001/README',
- relativePath: '/README',
- size: 20,
- },
- }
- const issues = checkReadme(fileList)
- assert(issues[0].key === 'README_FILE_SMALL')
- })
- })
-
- describe('validateMisc', () => {
- let filelist = [],
- dir
-
- beforeAll(() => {
- // contains stripped down CTF format dataset: Both, BadChannels and
- // bad.segments files can be empty and still valid. Everything else must
- // not be empty.
- dir = `${process.cwd()}/bids-validator/tests/data/empty_files`
- })
-
- // generate an array of browser Files
- beforeEach(() => {
- filelist = createFileList(dir)
- })
-
- it('returns issues for empty files (0kb), accepting a limited set of exceptions', (done) => {
- const files = groupFileTypes(filelist, {})
-
- validateMisc(files.misc).then((issues) => {
- // *.meg4 and BadChannels files are empty. But only *.meg4 is an issue
- assert.ok(issues.length == 1)
- assert.ok(issues.every((issue) => issue instanceof utils.issues.Issue))
- assert.notStrictEqual(
- issues.findIndex((issue) => issue.code === 99),
- -1,
- )
- assert.ok(issues[0].file.name == 'sub-0001_task-AEF_run-01_meg.meg4')
- done()
- })
- })
- })
-})
diff --git a/legacy/bids-validator/tests/utils/files.spec.js b/legacy/bids-validator/tests/utils/files.spec.js
deleted file mode 100644
index 20031936..00000000
--- a/legacy/bids-validator/tests/utils/files.spec.js
+++ /dev/null
@@ -1,135 +0,0 @@
-import assert from 'assert'
-import utils from '../../utils'
-import groupFileTypes from '../../validators/bids/groupFileTypes'
-import checkReadme from '../../validators/bids/checkReadme.js'
-import checkDatasetDescription from '../../validators/bids/checkDatasetDescription.js'
-import validateMisc from '../../utils/files/validateMisc'
-
-const setupMocks = () => {
- // Mock version of the File API for tests
- global.File = function MockFile(data, fileName, options) {
- assert(data.hasOwnProperty('length'))
- assert.equal(typeof data[0], 'string')
- this._data = data
- this._options = options
- this.name = fileName
- }
-}
-const cleanupMocks = () => {
- delete global.File
-}
-
-describe('files utils in nodejs', () => {
- describe('FileAPI', () => {
- it('should return a mock implementation', () => {
- let File = utils.files.FileAPI()
- assert(typeof File !== 'undefined')
- assert(File.name === 'NodeFile')
- })
- })
- describe('newFile', () => {
- it('creates a new File API object', () => {
- let file = utils.files.newFile('test-file')
- assert.equal(file.name, 'test-file')
- })
- })
-})
-
-describe('files utils in browsers', () => {
- beforeAll(setupMocks)
- afterAll(cleanupMocks)
- describe('newFile', () => {
- it('creates a new File API object', () => {
- const test_file = utils.files.newFile('test-file')
- assert(File.prototype.isPrototypeOf(test_file))
- })
- })
-})
-
-describe('dataset_description.json', () => {
- it('throws warning if it does not exist in proper location', () => {
- const jsonFileContents = {}
- const issues = checkDatasetDescription(jsonFileContents)
- assert(issues[0].key === 'DATASET_DESCRIPTION_JSON_MISSING')
- })
- it('throws a warning if the Authors field of the dataset description has a single entry and less than two commas', () => {
- const jsonFileContents = {
- '/dataset_description.json': {
- Authors: ['An, Author'],
- },
- }
- const issues = checkDatasetDescription(jsonFileContents)
- assert(issues[0].key === 'TOO_FEW_AUTHORS')
- })
- it('throws an error if the Authors field of the dataset description has a single field and multiple commas', () => {
- const jsonFileContents = {
- '/dataset_description.json': {
- Authors: [
- 'Too many, Commas, Indicate, That the user, May not have, Separated authors, Into an array',
- ],
- },
- }
- const issues = checkDatasetDescription(jsonFileContents)
- assert(issues[0].key === 'MULTIPLE_COMMAS_IN_AUTHOR_FIELD')
- })
-})
-
-describe('README', () => {
- it('throws warning if it does not exist in proper location', () => {
- const fileList = {
- 1: {
- name: 'README',
- path: 'tests/data/bids-examples/ds001/not-root-dir/README',
- relativePath: '/not-root-dir/README',
- },
- }
- const issues = checkReadme(fileList)
- assert(issues[0].key === 'README_FILE_MISSING')
- })
-
- it('throws warning if it is too small', () => {
- const fileList = {
- 1: {
- name: 'README',
- path: 'tests/data/bids-examples/ds001/README',
- relativePath: '/README',
- stats: { size: 20 },
- },
- }
- const issues = checkReadme(fileList)
- assert(issues[0].key === 'README_FILE_SMALL')
- })
-})
-
-describe('validateMisc', () => {
- let filelist, dir
-
- beforeAll(() => {
- // contains stripped down CTF format dataset: Both, BadChannels and
- // bad.segments files can be empty and still valid. Everything else must
- // not be empty.
- dir = `${process.cwd()}/bids-validator/tests/data/empty_files`
- })
-
- beforeEach(() => {
- return utils.files.readDir(dir).then((files) => {
- filelist = files
- })
- })
- it('returns issues for empty files (0kb), accepting a limited set of exceptions', (done) => {
- utils.collectSummary(filelist, {})
- const files = groupFileTypes(filelist, {})
-
- validateMisc(files.misc).then((issues) => {
- // *.meg4 and BadChannels files are empty. But only *.meg4 is an issue
- assert.ok(issues.length == 1)
- assert.ok(issues.every((issue) => issue instanceof utils.issues.Issue))
- assert.notStrictEqual(
- issues.findIndex((issue) => issue.code === 99),
- -1,
- )
- assert.ok(issues[0].file.name == 'sub-0001_task-AEF_run-01_meg.meg4')
- done()
- })
- })
-})
diff --git a/legacy/bids-validator/tests/utils/issues.spec.js b/legacy/bids-validator/tests/utils/issues.spec.js
deleted file mode 100644
index 7b11c3f4..00000000
--- a/legacy/bids-validator/tests/utils/issues.spec.js
+++ /dev/null
@@ -1,103 +0,0 @@
-import assert from 'assert'
-import utils from '../../utils'
-
-describe('issues', () => {
- describe('exceptionHandler', () => {
- let testErr, issueList, summary, options, formattedIssues
-
- beforeAll(() => {
- testErr = new Error('oh no')
- issueList = []
- summary = {
- sessions: [],
- subjects: [],
- tasks: [],
- modalities: [],
- totalFiles: 0,
- size: 0,
- }
- options = {
- ignoreWarnings: false,
- ignoreNiftiHeaders: false,
- verbose: false,
- config: {},
- }
- formattedIssues = utils.issues.exceptionHandler(
- testErr,
- issueList,
- summary,
- options,
- )
- })
-
- it('adds INTERNAL ERROR to the issues.errors list', () => {
- assert.equal(formattedIssues.errors[0].key, 'INTERNAL ERROR')
- })
-
- it("creates a properly formatted issue in the error's files property", () => {
- const exceptionIssue = formattedIssues.errors[0].files[0]
- assert.ok(utils.issues.isAnIssue(exceptionIssue))
- })
-
- it('gives a reason for the error', () => {
- const exceptionIssue = formattedIssues.errors[0].files[0]
- assert.equal(
- exceptionIssue.reason,
- `${testErr.message}; please help the BIDS team and community by opening an issue at (https://github.com/bids-standard/bids-validator/issues) with the evidence here.`,
- )
- })
- })
-
- describe('exception/issue redirect', () => {
- let promise, innerPromise, validIssue, invalidIssue
- beforeAll(() => {
- promise = null
- validIssue = new utils.issues.Issue({
- code: 12,
- file: 'goodstuff.json',
- reason: 'a series of unfortunate events',
- })
- invalidIssue = new Error('oops')
-
- promise = () => {
- return new Promise((resolve, reject) => {
- innerPromise().catch((err) =>
- utils.issues.redirect(err, reject, () => {
- resolve()
- }),
- )
- })
- }
- })
-
- it('resolves with valid issue', (done) => {
- innerPromise = () =>
- new Promise((_, reject) => {
- reject(validIssue)
- })
-
- promise().then(() => done())
- })
-
- it('rejects exceptions', (done) => {
- innerPromise = () =>
- new Promise((_, reject) => {
- reject(invalidIssue)
- })
-
- promise().catch(() => done())
- })
-
- it('passes the exception through the error', (done) => {
- innerPromise = () =>
- new Promise((_, reject) => {
- reject(invalidIssue)
- })
-
- promise().catch((err) => {
- assert.deepEqual(err, invalidIssue)
- done()
- })
- })
- })
-})
diff --git a/legacy/bids-validator/utils/__tests__/bids_files.spec.js b/legacy/bids-validator/utils/__tests__/bids_files.spec.js
deleted file mode 100644
index 91507be3..00000000
--- a/legacy/bids-validator/utils/__tests__/bids_files.spec.js
+++ /dev/null
@@ -1,38 +0,0 @@
-import { assert } from 'chai'
-import { checkSidecarForDatafiles } from '../bids_files.js'
-
-describe('bids_files', () => {
- describe('checkSidecarForDatafiles()', () => {
- it('matches .tsv datafile to sidecar', () => {
- const file = {
- relativePath:
- 'ds001/sub-02/func/sub-02_task-balloonanalogrisktask_run-01_events.json',
- }
- const fileList = {
- 1: {
- name: 'sub-02_task-balloonanalogrisktask_run-01_events.tsv',
- relativePath:
- 'ds001/sub-02/func/sub-02_task-balloonanalogrisktask_run-01_events.tsv',
- },
- }
- const match = checkSidecarForDatafiles(file, fileList)
- assert.isTrue(match)
- })
-
- it('does not match invalid datafile formats', () => {
- const file = {
- relativePath:
- 'ds001/sub-02/func/sub-02_task-balloonanalogrisktask_run-01_events.json',
- }
- const fileList = {
- 1: {
- name: 'sub-02_task-balloonanalogrisktask_run-01_events.tsv',
- relativePath:
- 'ds001/sub-02/func/sub-02_task-balloonanalogrisktask_run-01_events.tsn',
- },
- }
- const match = checkSidecarForDatafiles(file, fileList)
- assert.isFalse(match)
- })
- })
-})
diff --git a/legacy/bids-validator/utils/__tests__/collectSubjectMetadata.spec.js b/legacy/bids-validator/utils/__tests__/collectSubjectMetadata.spec.js
deleted file mode 100644
index a5863ce4..00000000
--- a/legacy/bids-validator/utils/__tests__/collectSubjectMetadata.spec.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import { assert } from 'chai'
-import collectSubjectMetadata from '../summary/collectSubjectMetadata'
-
-describe('collectSubjectMetadata', () => {
- it('extracts tsv string to subjectMetadata object', () => {
- const tsvFile = `participant_id age sex
-sub-01 34 F
-sub-02 38 M
-`
- const subjectMetadata = collectSubjectMetadata(tsvFile)
- assert.lengthOf(subjectMetadata, 2)
- assert.deepEqual(subjectMetadata[0], {
- participantId: '01',
- age: 34,
- sex: 'F',
- })
- })
- it('extracts tsv string to subjectMetadata object', () => {
- const tsvFile = ``
- const subjectMetadata = collectSubjectMetadata(tsvFile)
- assert.equal(subjectMetadata, undefined)
- })
-})
diff --git a/legacy/bids-validator/utils/__tests__/filenamesOnly.spec.js b/legacy/bids-validator/utils/__tests__/filenamesOnly.spec.js
deleted file mode 100644
index 63e37200..00000000
--- a/legacy/bids-validator/utils/__tests__/filenamesOnly.spec.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import { validateFilenames } from '../filenamesOnly.js'
-
-describe('test filenames mode', () => {
- beforeEach(() => {
- // eslint-disable-next-line
- console.log = jest.fn()
- })
- it('throws an error when obviously non-BIDS input', async () => {
- async function* badData() {
- yield '0001'
- yield 'nope'
- yield 'not-bids'
- yield 'data'
- }
- const res = await validateFilenames(badData())
- expect(res).toBe(false)
- })
- it('passes validation with a simple dataset', async () => {
- async function* goodData() {
- yield '0001'
- yield 'CHANGES'
- yield 'dataset_description.json'
- yield 'participants.tsv'
- yield 'README'
- yield 'sub-01/anat/sub-01_T1w.nii.gz'
- yield 'T1w.json'
- }
- const res = await validateFilenames(goodData())
- expect(res).toBe(true)
- })
- it('passes validation with .bidsignore', async () => {
- async function* goodData() {
- yield 'sub-02/*'
- yield '0001'
- yield 'CHANGES'
- yield 'dataset_description.json'
- yield 'participants.tsv'
- yield 'README'
- yield 'sub-01/anat/sub-01_T1w.nii.gz'
- yield 'T1w.json'
- yield 'sub-02/not-bids-file.txt'
- }
- const res = await validateFilenames(goodData())
- expect(res).toBe(true)
- })
-})
diff --git a/legacy/bids-validator/utils/__tests__/gitTreeMode.spec.js b/legacy/bids-validator/utils/__tests__/gitTreeMode.spec.js
deleted file mode 100644
index a16d2e70..00000000
--- a/legacy/bids-validator/utils/__tests__/gitTreeMode.spec.js
+++ /dev/null
@@ -1,128 +0,0 @@
-import { assert } from 'chai'
-import {
- readLsTreeLines,
- readCatFileLines,
- processFiles,
-} from '../files/readDir'
-import ignore from 'ignore'
-
-describe('gitTreeMode functions', () => {
- describe('readLsTreeLines', () => {
- it('will handle regular files', () => {
- const lsTreeLines = [
- '100644 blob longkeystring 1000000\tfile/path',
- '100644 blob anotherlongkeystring 1\tpath/to/file',
- ]
-
- const output = readLsTreeLines(lsTreeLines)
- assert.hasAllKeys(output, ['files', 'symlinkFilenames', 'symlinkObjects'])
- assert.isEmpty(output.symlinkFilenames)
- assert.isEmpty(output.symlinkObjects)
- assert.equal(output.files[0].path, 'file/path')
- assert.equal(output.files[0].size, 1000000)
- })
-
- it('will handle symlinked files', () => {
- const lsTreeLines = [
- '120000 blob e886cd8566b5e97db1fc41bb9364fc22cbe81426 199\tsymlink/filepath',
- '120000 blob e2cd091677489a0377d9062347c32d3efebf4322 199\they/jude/dont/be/afraid',
- ]
- const expected = {
- files: [],
- symlinkFilenames: ['symlink/filepath', 'hey/jude/dont/be/afraid'],
- symlinkObjects: [
- 'e886cd8566b5e97db1fc41bb9364fc22cbe81426',
- 'e2cd091677489a0377d9062347c32d3efebf4322',
- ],
- }
- assert.deepEqual(readLsTreeLines(lsTreeLines), expected)
- })
- })
-
- describe('readCatFileLines', () => {
- it('creates file objects from git cat-file output', () => {
- const catFileOutput = [
- 'hash blob 140',
- '.git/annex/objects/Mv/99/SHA256E-s54--42c98d14dbe3d066d35897a61154e39ced478cd1f0ec6159ba5f2361c4919878.json/SHA256E-s54--42c98d14dbe3d066d35897a61154e39ced478cd1f0ec6159ba5f2361c4919878.json',
- 'otherhash blob 140',
- '.git/annex/objects/QV/mW/SHA256E-s99--bbef536348750373727d3b5856398d7377e5d7e23875eed026b83d12cee6f885.json/SHA256E-s99--bbef536348750373727d3b5856398d7377e5d7e23875eed026b83d12cee6f885.json',
- ]
- const symlinkFilenames = ['path/to/file/a', 'path/to/file/b']
- const output = readCatFileLines(catFileOutput, symlinkFilenames)
- assert.equal(output[0].path, symlinkFilenames[0])
- assert.equal(output[0].size, 54)
- })
- })
-
- describe('processFiles', () => {
- const ig = ignore().add('.*').add('/derivatives')
- it('aggregates, filters, and augments the files given to it', () => {
- const filesA = [
- {
- path: '.DS_Store',
- size: 1000000,
- },
- {
- path: 'path/to/a',
- size: 100,
- },
- {
- path: 'path/to/b',
- size: 99,
- },
- ]
- const filesB = [
- {
- path: 'path/to/c',
- size: 98,
- },
- {
- path: 'path/to/d',
- size: 1,
- },
- {
- path: 'derivatives/to/derivative_file',
- size: 1,
- },
- ]
- /* Not currently in use.
- const expected = [
- {
- path: '/path/to/dataset/path/to/a',
- size: 100,
- relativePath: '/path/to/a',
- name: 'a',
- },
- {
- path: '/path/to/dataset/path/to/b',
- size: 99,
- relativePath: '/path/to/b',
- name: 'b',
- },
- {
- path: '/path/to/dataset/path/to/c',
- size: 98,
- relativePath: '/path/to/c',
- name: 'c',
- },
- {
- path: '/path/to/dataset/path/to/d',
- size: 1,
- relativePath: '/path/to/d',
- name: 'd',
- },
- ]
- */
- const output = processFiles('/path/to/dataset', ig, filesA, filesB)
- const fileNames = output.map((file) => file.name)
- assert(!fileNames.includes('.DS_Store'), 'filters out ignored files')
- assert(
- !fileNames.includes('derivative_file'),
- 'filters out ignored directories',
- )
- assert.deepEqual(fileNames, ['a', 'b', 'c', 'd'], 'aggregates files')
- assert.isString(output[0].relativePath, 'adds relativePath to files')
- assert.isString(output[1].relativePath, 'adds name to files')
- })
- })
-})
diff --git a/legacy/bids-validator/utils/__tests__/type.spec.js b/legacy/bids-validator/utils/__tests__/type.spec.js
deleted file mode 100644
index 1de4402e..00000000
--- a/legacy/bids-validator/utils/__tests__/type.spec.js
+++ /dev/null
@@ -1,38 +0,0 @@
-import type from '../type.js'
-
-describe('type.js', () => {
- describe('isBids()', () => {
- it('does not throw an error for valid defacemask filenames', () => {
- expect(
- type.isBIDS(
- '/sub-rid000043/anat/sub-rid000043_run-02_mod-T1w_defacemask.nii.gz',
- ),
- ).toBe(true)
- })
-
- it('does not throw an error for recording entity in physio data', () => {
- expect(
- type.isBIDS(
- '/sub-05/eeg/sub-05_task-matchingpennies_recording-eyetracking_physio.tsv.gz',
- ),
- ).toBe(true)
- })
-
- it('does not throw an error for recording entity in physio data at root of the dataset', () => {
- expect(
- type.isBIDS('/task-matchingpennies_recording-eyetracking_physio.json'),
- ).toBe(true)
- })
-
- const physio_task_modalities = ['eeg', 'ieeg', 'meg', 'func', 'beh']
- physio_task_modalities.map((mod) => {
- it(`does not throw an error for recording entity in ${mod} physio data`, () => {
- expect(
- type.isBIDS(
- `/sub-05/${mod}/sub-05_task-matchingpennies_recording-eyetracking_physio.tsv.gz`,
- ),
- ).toBe(true)
- })
- })
- })
-})
diff --git a/legacy/bids-validator/utils/__tests__/unit.spec.js b/legacy/bids-validator/utils/__tests__/unit.spec.js
deleted file mode 100644
index 10716769..00000000
--- a/legacy/bids-validator/utils/__tests__/unit.spec.js
+++ /dev/null
@@ -1,92 +0,0 @@
-import unit from '../unit'
-
-const { prefixes, roots } = unit
-const validRoot = roots[0]
-
-describe('unit validator', () => {
- it('handles simple units', () => {
- roots.forEach((validRoot) => {
- const goodOutput = unit.validate(validRoot)
- expect(goodOutput.isValid).toBe(true)
- })
- const invalidRoots = [
- 'definitielynotavalidroot',
- `%/${validRoot}`,
- `n/a*${validRoot}`,
- ]
- invalidRoots.forEach((invalidRoot) => {
- const badOutput = unit.validate(invalidRoot)
- expect(badOutput.isValid).toBe(false)
- })
- })
-
- it('handles simple units with prefixes', () => {
- prefixes.forEach((validPrefix) => {
- const goodOutput = unit.validate(validPrefix + validRoot)
- expect(goodOutput.isValid).toBe(true)
- })
- const badOutput = unit.validate('badprefix' + validRoot)
- expect(badOutput.isValid).toBe(false)
- })
-
- const validExponents = [
- '^2',
- '^543',
- 'ΒΉΒ²Β³',
- ...unit.superscriptNumbers.slice(0, 3),
- '^-2',
- 'β»Β³',
- ]
- it('handles simple units with exponents', () => {
- validExponents.forEach((exp) => {
- const goodOutput = unit.validate(validRoot + exp)
- expect(goodOutput.isValid).toBe(true)
- })
- const invalidExponents = ['^^12', '142', '1', '0', '^.1', '^2.1']
- invalidExponents.forEach((exp) => {
- const badOutput = unit.validate(validRoot + exp)
- expect(badOutput.isValid).toBe(false)
- })
- validExponents.slice(0, 3).forEach((exp) => {
- const badOutput = unit.validate(exp)
- expect(badOutput.isValid).toBe(false)
- })
- })
-
- it('handles derived units', () => {
- const validUnits = ['T/m', 'N*m', 'm^2/s^2', 'mm/ms', 'kTΒ³*nmΒ²', 'mΒ²/sΒ²']
- validUnits.forEach((derivedUnit) => {
- const goodOutput = unit.validate(derivedUnit)
- expect(goodOutput.isValid).toBe(true)
- })
- const invalidUnits = [
- `/${validRoot}`,
- `*${validRoot}`,
- `${validRoot}/`,
- `${validRoot}*`,
- `${validRoot}//${validRoot}`,
- `${validRoot}///${validRoot}`,
- `${validRoot}**${validRoot}`,
- `${validRoot}***${validRoot}`,
- `${roots.slice(0, 3).join('')}`,
- ...validExponents.map((exp) => `${exp}${validRoot}`),
- ]
- invalidUnits.forEach((derivedUnit) => {
- const badOutput = unit.validate(derivedUnit)
- expect(badOutput.isValid).toBe(false)
- })
- })
-
- describe('edge cases', () => {
- it('handles unavailable units', () => {
- const unavaliableUnit = 'n/a'
- const goodOutput = unit.validate(unavaliableUnit)
- expect(goodOutput.isValid).toBe(true)
- })
- it('handles percentages', () => {
- const unavaliableUnit = '%'
- const goodOutput = unit.validate(unavaliableUnit)
- expect(goodOutput.isValid).toBe(true)
- })
- })
-})
diff --git a/legacy/bids-validator/utils/array.js b/legacy/bids-validator/utils/array.js
deleted file mode 100644
index c9ee84ac..00000000
--- a/legacy/bids-validator/utils/array.js
+++ /dev/null
@@ -1,63 +0,0 @@
-var array = {
- /**
- * Equals
- *
- * Takes two arrays and returns true if they're
- * equal. Takes a third optional boolean argument
- * to sort arrays before checking equality.
- */
- equals: function (array1, array2, sort) {
- // if the other array is a falsy value, return
- if (!array1 || !array2) {
- return false
- }
-
- // compare lengths
- if (array1.length != array2.length) {
- return false
- }
-
- // optionally sort arrays
- if (sort) {
- array1.sort()
- array2.sort()
- }
-
- for (var i = 0, l = array1.length; i < l; i++) {
- // Check if we have nested arrays
- if (array1[i] instanceof Array && array2[i] instanceof Array) {
- // recurse into the nested arrays
- if (!array.equals(array1[i], array2[i], sort)) {
- return false
- }
- } else if (array1[i] != array2[i]) {
- // Warning - two different object instances will never be equal: {x:20} != {x:20}
- return false
- }
- }
- return true
- },
-
- /**
- * Takes to arrays and returns an array of two
- * arrays contains the differences contained
- * in each array.
- */
- diff: function (array1, array2) {
- var diff1 = [],
- diff2 = []
- for (var i = 0; i < array1.length; i++) {
- var elem1 = array1[i]
- var index = array2.indexOf(elem1)
- if (index > -1) {
- array2.splice(index, 1)
- } else {
- diff1.push(elem1)
- }
- }
- diff2 = array2
- return [diff1, diff2]
- },
-}
-
-export default array
diff --git a/legacy/bids-validator/utils/bids_files.js b/legacy/bids-validator/utils/bids_files.js
deleted file mode 100644
index 54fd90f4..00000000
--- a/legacy/bids-validator/utils/bids_files.js
+++ /dev/null
@@ -1,89 +0,0 @@
-/**
- * Utility functions for checking bids file structures
- * eg. corresponding files
- */
-// dependencies -------------------------------------------------------------------
-import type from './type.js'
-
-// implementations ----------------------------------------------------------------
-/**
- * Verify that JSON sidecars have corresponding data files
- */
-function checkSidecarForDatafiles(file, fileList) {
- const noExt = file.relativePath.replace('.json', '')
- const dictName = noExt.substring(noExt.lastIndexOf('/') + 1, noExt.length)
- const args = {
- dictArgs: dictName.split('_'),
- dictName: dictName,
- dictPath: noExt.substring(0, noExt.lastIndexOf('/') + 1),
- file: file,
- fileList: fileList,
- noExt: noExt,
- }
- const idxs = Object.keys(fileList)
- // Check each file in fileList for potential match - return true on first match
- let dataFile = idxs.some(checkFileListForMatch, args)
- return dataFile
-}
-
-/**
- * Check file list for first valid match for sidecar file
- */
-function checkFileListForMatch(i) {
- this.path = this.fileList[i].relativePath
- let match = false
- // Only check file if path includes the path to sidecar
- const dictArgs = this.path.includes(this.dictPath) ? this.dictArgs : []
- // Set true if dictArgs and all dictargs exist in file path (except 'coordsystem')
- let pathMatch =
- dictArgs.length > 0
- ? dictArgs.every(
- (arg) => arg === 'coordsystem' || this.path.includes(arg),
- )
- : false
- if (pathMatch) {
- match = verifyDatafileMatch(
- this.file.relativePath,
- this.noExt,
- this.fileList[i],
- )
- }
- return match
-}
-
-/**
- * Accepts path to sidecar file, the sidecar filename without extension
- * and the datafile that's a potential match
- * Returns boolean indicating if file evaluates as valid datafile
- */
-function verifyDatafileMatch(sidecarPath, noExt, matchFile) {
- let match = false
- let folderMatch = false
-
- // Make sure it's not the data dictionary itself
- const isSelf = matchFile.relativePath === sidecarPath
- if (!isSelf && type.file.isDatafile(matchFile.relativePath)) {
- match = true
- }
-
- // IEEG and MEG datafiles may be a folder, therefore not contained in fileList, will need to look in paths
- if (!isSelf && !match) {
- if (noExt.endsWith('_meg') || noExt.endsWith('_coordsystem')) {
- folderMatch = matchFile.relativePath.includes('_meg.ds')
- }
- if (noExt.endsWith('_ieeg') || noExt.endsWith('_coordsystem')) {
- folderMatch = matchFile.relativePath.includes('_ieeg.mefd')
- }
- }
- if (folderMatch) {
- match = true
- }
-
- return match
-}
-
-export { checkSidecarForDatafiles }
-
-export default {
- checkSidecarForDatafiles,
-}
diff --git a/legacy/bids-validator/utils/common.js b/legacy/bids-validator/utils/common.js
deleted file mode 100644
index a63f56e6..00000000
--- a/legacy/bids-validator/utils/common.js
+++ /dev/null
@@ -1,18 +0,0 @@
-// An index of rules documents to export as modules
-// The Python module expects these to be within its tree, but we can just import them from there
-import associated_data_rules from '../bids_validator/bids_validator/rules/associated_data_rules.json'
-
-import file_level_rules from '../bids_validator/bids_validator/rules/file_level_rules.json'
-import phenotypic_rules from '../bids_validator/bids_validator/rules/phenotypic_rules.json'
-import session_level_rules from '../bids_validator/bids_validator/rules/session_level_rules.json'
-import subject_level_rules from '../bids_validator/bids_validator/rules/subject_level_rules.json'
-import top_level_rules from '../bids_validator/bids_validator/rules/top_level_rules.json'
-
-export default {
- associated_data_rules: associated_data_rules,
- file_level_rules: file_level_rules,
- phenotypic_rules: phenotypic_rules,
- session_level_rules: session_level_rules,
- subject_level_rules: subject_level_rules,
- top_level_rules: top_level_rules,
-}
diff --git a/legacy/bids-validator/utils/config.js b/legacy/bids-validator/utils/config.js
deleted file mode 100644
index 2b9f8f18..00000000
--- a/legacy/bids-validator/utils/config.js
+++ /dev/null
@@ -1,150 +0,0 @@
-import minimatch from 'minimatch'
-
-var config = {
- /**
- * Ignored File
- */
- ignoredFile: function (conf, filePath) {
- if (conf.ignoredFiles) {
- for (var i = 0; i < conf.ignoredFiles.length; i++) {
- var ignoredPattern = conf.ignoredFiles[i]
- if (minimatch(filePath, ignoredPattern)) {
- return true
- }
- }
- }
- return false
- },
-
- /**
- * Interpret Config
- *
- * Takes a list of triggered codes and a config object
- * and create a map of modified severities
- */
- interpret: function (codes, conf) {
- var severityMap = {}
-
- if (conf.ignore && conf.ignore.length > 0) {
- var ignoreCodes = this.match(codes, conf.ignore)
- for (var i = 0; i < ignoreCodes.length; i++) {
- var ignoreCode = ignoreCodes[i]
- severityMap[ignoreCode] = 'ignore'
- }
- }
-
- if (conf.warn && conf.warn.length > 0) {
- var warnCodes = this.match(codes, conf.warn)
- for (var j = 0; j < warnCodes.length; j++) {
- var warnCode = warnCodes[j]
- severityMap[warnCode] = 'warning'
- }
- }
-
- if (conf.error && conf.error.length > 0) {
- var errorCodes = this.match(codes, conf.error)
- for (var k = 0; k < errorCodes.length; k++) {
- var errorCode = errorCodes[k]
- severityMap[errorCode] = 'error'
- }
- }
-
- return severityMap
- },
-
- /**
- * Match
- *
- * Takes a list of triggered codes and a config
- * object and returns the matched codes.
- */
- match: function (codes, conf) {
- var matches = []
- for (var i = 0; i < conf.length; i++) {
- var confCode = conf[i]
- if (codes.indexOf(confCode) > -1) {
- matches.push(confCode)
- } else if (
- confCode.hasOwnProperty('and') &&
- this.andFulfilled(codes, confCode.and)
- ) {
- // 'and' array fulfilled
- matches = matches.concat(this.flatten(confCode.and))
- }
- }
- return matches
- },
-
- /**
- * Flatten
- *
- * Takes an array that may contain objects with
- * 'and' or 'or' properties and flattens it.
- */
- flatten: function (list) {
- var codes = []
- for (var i = 0; i < list.length; i++) {
- var code = list[i]
- if (code.hasOwnProperty('and')) {
- codes = codes.concat(this.flatten(code.and))
- } else if (code.hasOwnProperty('or')) {
- codes = codes.concat(this.flatten(code.or))
- } else {
- codes.push(code)
- }
- }
- return codes
- },
-
- /**
- * And Fulfilled
- *
- * Takes an array of triggered code and an 'and'
- * array, recursively checks if it's fulfilled
- * and returns true if it is.
- */
- andFulfilled: function (codes, and) {
- for (var i = 0; i < and.length; i++) {
- var andCode = and[i]
- if (andCode.hasOwnProperty('and')) {
- if (!this.andFulfilled(codes, andCode.and)) {
- return false
- }
- } else if (andCode.hasOwnProperty('or')) {
- if (!this.orFulfilled(codes, andCode.or)) {
- return false
- }
- } else if (codes.indexOf(andCode) < 0) {
- return false
- }
- }
- return true
- },
-
- /**
- * Or Fulfilled
- *
- * Takes an array of triggered code and an 'or'
- * array, recursively checks if it's fulfilled
- * and returns true if it is.
- */
- orFulfilled: function (codes, or) {
- for (var i = 0; i < or.length; i++) {
- var orCode = or[i]
- if (orCode.hasOwnProperty('and')) {
- if (this.andFulfilled(codes, orCode.and)) {
- return true
- }
- } else if (orCode.hasOwnProperty('or')) {
- if (this.orFulfilled(codes, orCode.or)) {
- return true
- }
- } else if (codes.indexOf(orCode) > -1) {
- return true
- }
- }
- return false
- },
-}
-
-export default config
diff --git a/legacy/bids-validator/utils/consoleFormat.js b/legacy/bids-validator/utils/consoleFormat.js
deleted file mode 100644
index cccd9e23..00000000
--- a/legacy/bids-validator/utils/consoleFormat.js
+++ /dev/null
@@ -1,179 +0,0 @@
-import colors from 'colors/safe'
-import { table, getBorderCharacters } from 'table'
-import pluralize from 'pluralize'
-import bytes from 'bytes'
-
-export default {
- issues: formatIssues,
- summary: formatSummary,
- logIssues,
- unexpectedError,
-}
-
-function unexpectedError(message) {
- return colors.red(message)
-}
-
-function formatIssues(issues, options = {}) {
- var errors = issues.errors
- var warnings = issues.warnings
- var output = []
- if (errors && errors.length === 1 && errors[0].code === '61') {
- output.push(
- colors.red(
- '[ERR] The given directory failed an initial Quick Test. This means the basic names and structure of the files and directories do not comply with BIDS specification. For more info go to https://bids.neuroimaging.io/',
- ),
- )
- } else if (issues.config && issues.config.length >= 1) {
- output.push(colors.red('[ERR] Invalid Config File'))
- for (var i = 0; i < issues.config.length; i++) {
- var issue = issues.config[i]
- issue.file.file = { relativePath: issue.file.path }
- issue.files = [issue.file]
- }
- output = output.concat(logIssues(issues.config, 'red', options))
- } else if (errors.length >= 1 || warnings.length >= 1) {
- output = output.concat(logIssues(errors, 'red', options))
- output = output.concat(logIssues(warnings, 'yellow', options))
- } else {
- output.push(colors.green('This dataset appears to be BIDS compatible.'))
- }
- return output.join('\n')
-}
-
-function logIssues(issues, color, options) {
- const severity = color == 'red' ? 'ERR' : 'WARN'
- const output = []
- for (var i = 0; i < issues.length; i++) {
- const issue = issues[i]
- const issueNumber = i + 1
- output.push(
- '\t' +
- colors[color](
- issueNumber +
- ': ' +
- `[${severity}] ` +
- issue.reason +
- ' (code: ' +
- issue.code +
- ' - ' +
- issue.key +
- ')',
- ),
- )
- for (var j = 0; j < issue.files.length; j++) {
- var file = issues[i].files[j]
- if (!file || !file.file) {
- continue
- }
- let indent = '\t\t'
- if (file.file.relativePath) {
- output.push(`${indent}.` + file.file.relativePath)
- indent = '\t\t\t'
- }
- if (options.verbose) {
- output.push(indent + file.reason)
- }
- if (file.line) {
- var msg = `${indent}@ line: ` + file.line
- if (file.character) {
- msg += ' character: ' + file.character
- }
- output.push(msg)
- }
- if (file.evidence) {
- output.push(`${indent}Evidence: ` + file.evidence)
- }
- }
- if (issue.additionalFileCount > 0) {
- output.push(
- '\t\t' +
- colors[color](
- '... and ' +
- issue.additionalFileCount +
- ' more files having this issue (Use --verbose to see them all).',
- ),
- )
- }
- output.push('')
- if (issue.helpUrl) {
- output.push(
- colors.cyan(
- '\t' +
- 'Please visit ' +
- issue.helpUrl +
- ' for existing conversations about this issue.',
- ),
- )
- output.push('')
- }
- }
- return output
-}
-
-function formatSummary(summary) {
- const output = []
- if (summary) {
- var numSessions = summary.sessions.length > 0 ? summary.sessions.length : 1
-
- // data
- var column1 = [
- summary.totalFiles +
- ' ' +
- pluralize('File', summary.totalFiles) +
- ', ' +
- bytes(summary.size),
- summary.subjects.length +
- ' - ' +
- pluralize('Subject', summary.subjects.length),
- numSessions + ' - ' + pluralize('Session', numSessions),
- ],
- column2 = summary.tasks,
- column3 = summary.modalities
-
- var longestColumn = Math.max(column1.length, column2.length, column3.length)
- var pad = ' '
-
- // headers
- var headers = [
- pad,
- colors.blue.underline('Summary:') + pad,
- colors.blue.underline('Available Tasks:') + pad,
- colors.blue.underline('Available Modalities:'),
- ]
-
- // rows
- var rows = [headers]
- for (var i = 0; i < longestColumn; i++) {
- var val1, val2, val3
- val1 = column1[i] ? column1[i] + pad : ''
- val2 = column2[i] ? column2[i] + pad : ''
- val3 = column3[i] ? column3[i] : ''
- rows.push([pad, val1, val2, val3])
- }
- output.push(
- table(rows, {
- border: getBorderCharacters(`void`),
- columnDefault: {
- paddingLeft: 0,
- paddingRight: 1,
- },
- drawHorizontalLine: () => {
- return false
- },
- }),
- )
-
- output.push('')
-
- //Neurostars message
- output.push(
- colors.cyan(
- '\tIf you have any questions, please post on https://neurostars.org/tags/bids.',
- ),
- )
-
- output.push('')
- }
- return output.join('\n')
-}
diff --git a/legacy/bids-validator/utils/filenamesOnly.js b/legacy/bids-validator/utils/filenamesOnly.js
deleted file mode 100644
index 7b096e8b..00000000
--- a/legacy/bids-validator/utils/filenamesOnly.js
+++ /dev/null
@@ -1,111 +0,0 @@
-/**
- * Run validation against a list of input files from git pre-receive
- */
-import readline from 'readline'
-import path from 'path'
-import { defaultIgnore } from './files/readDir.js'
-import quickTest from '../validators/bids/quickTest.js'
-import groupFileTypes from '../validators/bids/groupFileTypes.js'
-
-// Disable most tests that might access files
-const defaultOptions = {
- ignoreWarnings: true,
- ignoreNiftiHeaders: true,
- ignoreSymlinks: true,
- ignoreSubjectConsistency: true,
- verbose: false,
- gitTreeMode: false,
- remoteFiles: false,
- gitRef: 'HEAD',
- config: { ignore: [44], warn: [], error: [], ignoredFiles: [] },
-}
-
-async function generateFileObjects(stream) {
- const ig = defaultIgnore()
- const inputFiles = {}
- let bidsIgnore = true
- let index = 0
- for await (const line of stream) {
- // Part 1, parse bidsignore until 0001 (git delimiter packet)
- if (line === '0001') {
- bidsIgnore = false
- } else {
- if (bidsIgnore) {
- ig.add(line)
- } else {
- // Done with bidsignore, read filename data
- const rootPath = `/${line}`
- /**
- * Simulated file object based on input
- * File size is 1 to prevent 0 size errors but makes some checks inaccurate
- */
- const file = {
- name: path.basename(line),
- path: rootPath,
- relativePath: rootPath,
- size: 1,
- }
- if (ig.ignores(line)) {
- file.ignore = true
- }
- inputFiles[index] = file
- index++
- }
- }
- }
- return inputFiles
-}
-
-/**
- * Validate input from stdin as bidsignore + filenames
- *
- * Protocol uses `0001` line to separate the two streams
- * .bidsignore lines are read first
- * One filename per line is read in and bidsignore rules applied
- *
- * @param {AsyncIterable} stream Readline stream
- */
-export async function validateFilenames(stream) {
- const inputFiles = await generateFileObjects(stream)
- const couldBeBIDS = quickTest(inputFiles)
- if (couldBeBIDS) {
- const files = groupFileTypes(inputFiles, defaultOptions)
- if (files.invalid.length > 0) {
- const invalidFiles = []
- for (const f of files.invalid) {
- if (!f.ignore) {
- invalidFiles.push(f)
- }
- }
- if (invalidFiles.length > 0) {
- // eslint-disable-next-line no-console
- console.log(
- 'Validation failed, some files are not valid BIDS filenames:',
- )
- for (const ef of invalidFiles) {
- // eslint-disable-next-line no-console
- console.log(` ${ef.path}`)
- }
- return false
- }
- }
- return true
- } else {
- // eslint-disable-next-line no-console
- console.log(
- 'This dataset failed a quick validation, please verify it is a BIDS dataset at the root of the git repository',
- )
- return false
- }
-}
-
-export async function filenamesOnly() {
- const rl = readline.createInterface({
- input: process.stdin,
- })
- if (await validateFilenames(rl)) {
- return 0
- } else {
- return 1
- }
-}
diff --git a/legacy/bids-validator/utils/files/FileAPI.js b/legacy/bids-validator/utils/files/FileAPI.js
deleted file mode 100644
index 3fc4e88a..00000000
--- a/legacy/bids-validator/utils/files/FileAPI.js
+++ /dev/null
@@ -1,28 +0,0 @@
-/**
- * Simulates some of the browser File API interface.
- * https://developer.mozilla.org/en-US/docs/Web/API/File
- *
- * @param {string[]} parts - file contents as bytes
- * @param {string} filename - filename without path info
- * @param {Object} properties - unused Blob properties
- */
-function NodeFile(parts, filename, properties) {
- this.parts = parts
- this.name = filename
- this.properties = properties
- this.size = parts.reduce(function (a, val) {
- return a + val.length
- }, 0)
- // Unknown defacto mime-type
- this.type = 'application/octet-stream'
- this.lastModified = 0
-}
-
-/**
- * Return a either a mock or real FileAPI if one is available
- */
-function FileAPI() {
- return typeof File === 'undefined' ? NodeFile : File
-}
-
-export default FileAPI
diff --git a/legacy/bids-validator/utils/files/__tests__/generateMergedSidecarDict.spec.js b/legacy/bids-validator/utils/files/__tests__/generateMergedSidecarDict.spec.js
deleted file mode 100644
index 2c7f13ad..00000000
--- a/legacy/bids-validator/utils/files/__tests__/generateMergedSidecarDict.spec.js
+++ /dev/null
@@ -1,49 +0,0 @@
-/*global globalThis*/
-import generateMergedSidecarDict from '../generateMergedSidecarDict.js'
-
-describe('generateMergedSidecarDict.js', () => {
- describe('Object pollution test', () => {
- beforeAll(() => {
- // Simulate code that injects globalThis into every object
- Object.defineProperty(Object.prototype, 'global', {
- get: function () {
- return globalThis
- },
- configurable: true,
- })
- })
-
- afterAll(() => {
- // Clean up the pollution
- delete Object.prototype.global
- })
-
- it('trivial check', () => {
- expect(generateMergedSidecarDict([], {})).toStrictEqual({})
- })
-
- it('merges objects with global property', () => {
- const potentialSidecars = ['/sidecar1.json', '/sidecar2.json']
- const jsonContents = {
- '/sidecar1.json': {
- RegularMetadata1: 'value1',
- global: {
- globalMetadata: 'value1',
- },
- },
- '/sidecar2.json': {
- RegularMetadata2: 'value2',
- },
- }
- expect(
- generateMergedSidecarDict(potentialSidecars, jsonContents),
- ).toStrictEqual({
- RegularMetadata1: 'value1',
- RegularMetadata2: 'value2',
- global: {
- globalMetadata: 'value1',
- },
- })
- })
- })
-})
diff --git a/legacy/bids-validator/utils/files/__tests__/readDir-examples.spec.js b/legacy/bids-validator/utils/files/__tests__/readDir-examples.spec.js
deleted file mode 100644
index fc929b03..00000000
--- a/legacy/bids-validator/utils/files/__tests__/readDir-examples.spec.js
+++ /dev/null
@@ -1,76 +0,0 @@
-import readDir from '../readDir.js'
-
-describe('readDir.js - examples integration', () => {
- describe('readDir()', () => {
- it('returns expected files', async () => {
- await readDir('bids-validator/tests/data/bids-examples/ds002/').then(
- (files) => {
- const filenames = Object.values(files).map((f) => f.name)
- filenames.sort()
- expect(filenames).toHaveLength(246)
- expect(filenames[0]).toBe('CHANGES')
- expect(filenames[25]).toBe(
- 'sub-02_task-mixedeventrelatedprobe_run-01_bold.nii.gz',
- )
- expect(filenames[200]).toBe(
- 'sub-14_task-probabilisticclassification_run-02_events.tsv',
- )
- },
- )
- })
- it('correctly follows symlinks for subjects with followSymbolicLink: true', async () => {
- await readDir('bids-validator/tests/data/symlinked_subject', {
- ignoreSymlinks: false,
- }).then((files) => {
- expect(Object.keys(files)).toHaveLength(12)
- const filenames = Object.values(files).map((f) => f.name)
- filenames.sort()
- expect(filenames).toEqual([
- 'CHANGES',
- 'README',
- 'dataset_description.json',
- 'participants.tsv',
- 'sub-0-1_task-rhymejudgment_bold.nii.gz',
- 'sub-01_T1w.nii',
- 'sub-01_T1w.nii.gz',
- 'sub-01_task-rhyme-judgment_bold.nii.gz',
- 'sub-01_task-rhyme-judgment_events.tsv',
- 'sub-01_task-rhyme_judgment_bold.nii.gz',
- 'sub-01_task-rhyme_judgment_events.tsv',
- 'task-rhymejudgment_bold.json',
- ])
- })
- })
- it('correctly does not follow symlinks for subjects with followSymbolicLink: false', async () => {
- await readDir('bids-validator/tests/data/symlinked_subject', {
- ignoreSymlinks: true,
- }).then((files) => {
- expect(Object.keys(files)).toHaveLength(6)
- const filenames = Object.values(files).map((f) => f.name)
- filenames.sort()
- expect(filenames).toEqual([
- 'CHANGES',
- 'README',
- 'dataset_description.json',
- 'participants.tsv',
- 'sub-01',
- 'task-rhymejudgment_bold.json',
- ])
- })
- })
- it('returns file objects with the expected shape', async () => {
- await readDir('bids-validator/tests/data/symlinked_subject', {
- ignoreSymlinks: true,
- }).then((files) => {
- expect(Object.keys(files)).toHaveLength(6)
- Object.values(files).forEach((f) => {
- expect(Object.getOwnPropertyNames(f)).toEqual([
- 'name',
- 'path',
- 'relativePath',
- ])
- })
- })
- })
- })
-})
diff --git a/legacy/bids-validator/utils/files/__tests__/readDir.spec.js b/legacy/bids-validator/utils/files/__tests__/readDir.spec.js
deleted file mode 100644
index c383f7e4..00000000
--- a/legacy/bids-validator/utils/files/__tests__/readDir.spec.js
+++ /dev/null
@@ -1,45 +0,0 @@
-import readDir from '../readDir.js'
-
-describe('readDir.js', () => {
- describe('fileArrayToObject', () => {
- it('transforms an array to an object', () => {
- expect(
- readDir.fileArrayToObject([
- { name: 'one' },
- { name: 'two' },
- { name: 'three' },
- ]),
- ).toEqual({
- 0: {
- name: 'one',
- },
- 1: {
- name: 'two',
- },
- 2: {
- name: 'three',
- },
- })
- })
- })
- describe('harmonizeRelativePath', () => {
- it('harmonizes a basic POSIX path', () => {
- expect(readDir.harmonizeRelativePath('test/a/path')).toEqual('/a/path')
- })
- it('does not mangle absolute Windows paths', () => {
- expect(readDir.harmonizeRelativePath('C:\\dataset\\directory')).toEqual(
- '/dataset/directory',
- )
- })
- it('does not mangle relative Windows paths', () => {
- expect(readDir.harmonizeRelativePath('dataset\\directory')).toEqual(
- '/directory',
- )
- })
- it('does not mangle relative Windows paths with parent directories', () => {
- expect(
- readDir.harmonizeRelativePath('..\\..\\dataset\\directory'),
- ).toEqual('/../dataset/directory')
- })
- })
-})
diff --git a/legacy/bids-validator/utils/files/__tests__/remoteFiles.spec.js b/legacy/bids-validator/utils/files/__tests__/remoteFiles.spec.js
deleted file mode 100644
index a309f6a7..00000000
--- a/legacy/bids-validator/utils/files/__tests__/remoteFiles.spec.js
+++ /dev/null
@@ -1,242 +0,0 @@
-import { assert } from 'chai'
-import remoteFiles from '../remoteFiles'
-import fs from 'fs'
-import zlib from 'zlib'
-const config = {
- s3Params: {
- Bucket: 'none',
- },
- file: {
- name: 'something',
- },
-}
-
-describe('remoteFiles', () => {
- beforeAll(() => {
- // fetch mock
- global.fetch = jest
- .fn()
- .mockImplementation(() =>
- Promise.resolve({ ok: true, buffer: () => 'buffer' }),
- )
- })
-
- beforeEach(() => {
- delete process.env.AWS_ACCESS_KEY_ID
- })
-
- describe('accessRemoteFile', () => {
- it('should return a promise', () => {
- const promise = remoteFiles.accessRemoteFile(config)
- expect(promise).toBeInstanceOf(Promise)
- })
- it('should return the response of constructAwsRequest if successful', () => {
- remoteFiles
- .accessRemoteFile(config)
- .then((res) => expect(res).toBe('buffer'))
- })
- it('should return the issue of extractGzipBuffer if unzip is unsuccessful', () => {
- config.file.name = 'something.gz'
- return remoteFiles.accessRemoteFile(config).catch((issue) => {
- expect(issue).toHaveProperty('code')
- config.file.name = 'something'
- })
- })
- })
-
- describe('constructAwsRequest', () => {
- it('should return a fetch resolution promise when aws creds are not present', async () => {
- const response = remoteFiles.constructAwsRequest({
- s3Params: { Bucket: 'matters not' },
- })
- expect(response).toBeInstanceOf(Promise)
- })
- it('should return the buffer() property of the fetch response', async () => {
- remoteFiles
- .constructAwsRequest({
- s3Params: { Bucket: 'matters not' },
- })
- .then((data) => {
- assert.equal(data, 'buffer')
- })
- })
- })
-
- describe('extractGzipBuffer', () => {
- it('should extract proper gzip files', async () => {
- zlib.gzip('Some String', async (err, res) => {
- const gzip = await remoteFiles.extractGzipBuffer(res, {})
- expect(gzip).toBeInstanceOf(Uint8Array)
- })
- })
- it('should reject with an issue when gzip reading fails', async () => {
- try {
- const zip = 'bad data'
- await remoteFiles.extractGzipBuffer(zip, {})
- } catch (e) {
- expect(e).toHaveProperty('code')
- expect(e.code).toEqual(28)
- }
- })
- })
-
- describe('callGitAnnex', () => {
- it('should return the string result of execSync', () => {
- const resp = remoteFiles.callGitAnnex('echo test')
- expect(resp.trim()).toBe('test')
- })
- })
-
- describe('getRemotesInfo', () => {
- it('should return an empty array if callGitAnnex does not return contents of a metadata file', () => {
- remoteFiles.callGitAnnex = jest.fn()
- remoteFiles.callGitAnnex.mockReturnValue('bad_response')
- const remotesInfo = remoteFiles.getRemotesInfo('some_directory', {
- relativePath: 'some_file',
- })
- assert.lengthOf(remotesInfo, 0)
- })
- it('should return an empty array if file is not properly formatted', () => {
- const remotesInfo = remoteFiles.getRemotesInfo('some_directory', {})
- assert.lengthOf(remotesInfo, 0)
- })
- it('should return an empty array if directory is not properly formatted', () => {
- const remotesInfo = remoteFiles.getRemotesInfo('bad directory', {
- relativePath: 'some_path',
- })
- assert.lengthOf(remotesInfo, 0)
- })
- it('should return an array of remote objects if getRemoteData returns properly formatted remote metadata file', () => {
- remoteFiles.getRemoteMetadata = jest.fn()
- remoteFiles.getRemoteMetadata.mockReturnValue(
- 'timestamp remoteuuid:commitinfo xversionId#fileName',
- )
- const remotesInfo = remoteFiles.getRemotesInfo('some_directory', {
- relativePath: 'some_file',
- })
- remoteFiles.getRemoteMetadata.mockRestore()
- assert.lengthOf(remotesInfo, 1)
- })
- })
-
- describe('getSingleRemoteInfo', () => {
- it('returns an object with null Bucket property if the response does not contain remote info', () => {
- remoteFiles.callGitAnnex = jest.fn()
- remoteFiles.callGitAnnex.mockReturnValue('bad_response')
- const singleRemoteInfo = remoteFiles.getSingleRemoteInfo(
- 'some_dir',
- 'some_uuid',
- )
- expect(singleRemoteInfo).toHaveProperty('Bucket')
- expect(singleRemoteInfo.Bucket).toBe(null)
- })
- it('returns an object with a Bucket property if callGitAnnex returns an object with the Bucket field', () => {
- remoteFiles.callGitAnnex = jest.fn()
- remoteFiles.callGitAnnex.mockReturnValue(
- 'good_response\nbucket: such_bucket\nawesome_line',
- )
- const singleRemoteInfo = remoteFiles.getSingleRemoteInfo(
- 'some_dir',
- 'some_uuid',
- )
- expect(singleRemoteInfo).toHaveProperty('Bucket')
- expect(singleRemoteInfo.Bucket).toEqual('such_bucket')
- })
- })
-
- describe('getRemoteBucket', () => {
- it('returns an object with a Bucket property if the response contains that field', () => {
- const resp = 'something:something\nbucket: omg\nawesome:awesome'
- const params = remoteFiles.getRemoteBucket(resp)
- expect(params).toHaveProperty('Bucket')
- expect(params.Bucket).toEqual('omg')
- })
- it('returns an object with null Bucket property if the response does not contain the bucket field', () => {
- const resp = 'wow_this_is_a_bad_response'
- const params = remoteFiles.getRemoteBucket(resp)
- expect(params).toHaveProperty('Bucket')
- expect(params.Bucket).toBe(null)
- })
- })
-
- describe('processRemoteMetadata', () => {
- it('properly parses a git-annex remote metadata file', () => {
- const resp = 'timestamp remoteuuid:commitinfo xversionId#fileName'
- const remotesInfo = remoteFiles.processRemoteMetadata(resp)
- assert.lengthOf(remotesInfo, 1)
- const remoteObj = remotesInfo[0]
- expect(remoteObj).toHaveProperty('timestamp')
- expect(remoteObj.timestamp).toEqual('timestamp')
- expect(remoteObj).toHaveProperty('remoteUuid')
- expect(remoteObj.remoteUuid).toEqual('remoteuuid')
- expect(remoteObj).toHaveProperty('fileName')
- expect(remoteObj.fileName).toEqual('fileName')
- expect(remoteObj).toHaveProperty('versionId')
- expect(remoteObj.versionId).toEqual('versionId')
- })
- it('returns an empty array if there is an improperly formatted metadata file', () => {
- let remotesInfo
- const no_spaces = 'poorly_formatted_response' // contains no spaces
- remotesInfo = remoteFiles.processRemoteMetadata(no_spaces)
- assert.lengthOf(remotesInfo, 0)
- const not_enough_items = 'one two' // does not contain enough "columns"
- remotesInfo = remoteFiles.processRemoteMetadata(not_enough_items)
- assert.lengthOf(remotesInfo, 0)
-
- // does not have the properly one two:three xfour#five format
- const not_properly_formatted = 'one two:three four'
- remotesInfo = remoteFiles.processRemoteMetadata(not_properly_formatted)
- assert.lengthOf(remotesInfo, 0)
- const not_the_right_separators = 'one two:three xfour:five'
- remotesInfo = remoteFiles.processRemoteMetadata(not_the_right_separators)
- assert.lengthOf(remotesInfo, 0)
- })
- it('returns objects corresponding to any properly formatted line', () => {
- const one_line_right =
- 'properly formatted:response xwith#a\nline_that_is_not_properly_formatted'
- const remotesInfo = remoteFiles.processRemoteMetadata(one_line_right)
- assert.lengthOf(remotesInfo, 1)
- })
- })
-
- describe('isGitAnnex', () => {
- it('returns false when fs.existsSync returns false', () => {
- fs.existsSync = jest.fn()
- fs.existsSync.mockReturnValue(false)
- const isGitAnnex = remoteFiles.isGitAnnex('some-path')
- expect(fs.existsSync).toHaveBeenCalled()
- expect(isGitAnnex).toBe(false)
- })
- it('returns true when fs.existsSync returns true', () => {
- fs.existsSync = jest.fn()
- fs.existsSync.mockReturnValue(true)
- const isGitAnnex = remoteFiles.isGitAnnex('some-path')
- expect(fs.existsSync).toHaveBeenCalled()
- expect(isGitAnnex).toBe(true)
- })
- })
-
- describe('tryRemote', () => {
- it('should resolve with the results of accessRemoteFile', (done) => {
- remoteFiles.getSingleRemoteInfo = jest.fn()
- remoteFiles.getSingleRemoteInfo.mockReturnValue({ Bucket: 'wow' })
- remoteFiles.accessRemoteFile = jest.fn()
- remoteFiles.accessRemoteFile.mockReturnValue(Promise.resolve('data'))
- remoteFiles
- .tryRemote(
- {},
- { dir: 'directory', file: { relativePath: 'wow', name: 'name' } },
- )
- .then((data) => {
- expect(data)
- done()
- })
- .catch(done)
- })
- })
- // reset the fs object back to its normal state
- // so we dont break jest
- afterAll(() => {
- fs.existsSync.mockRestore()
- })
-})
diff --git a/legacy/bids-validator/utils/files/collectDirectorySize.js b/legacy/bids-validator/utils/files/collectDirectorySize.js
deleted file mode 100644
index ecea9af5..00000000
--- a/legacy/bids-validator/utils/files/collectDirectorySize.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import isNode from '../isNode'
-import getFileStats from './getFileStats'
-
-const collectDirectorySize = (fileList) => {
- let size = 0
- const keys = Object.keys(fileList)
- keys.forEach((key) => {
- const file = fileList[key]
- // collect file stats
- if (file.size) {
- // from File api in browser
- size += file.size
- // or from git-annex metadata when in gitTreeMode
- if (isNode) file.stats = { size: file.size }
- } else {
- file.stats = getFileStats(file)
- size += file.stats.size
- }
- })
- return size
-}
-
-export default collectDirectorySize
diff --git a/legacy/bids-validator/utils/files/generateMergedSidecarDict.js b/legacy/bids-validator/utils/files/generateMergedSidecarDict.js
deleted file mode 100644
index a642eb21..00000000
--- a/legacy/bids-validator/utils/files/generateMergedSidecarDict.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/**
- * Generate Merged Sidecar Dictionary
- *
- * Takes an array of potential sidecards and a
- * master object dictionary of all JSON file
- * content and returns a merged dictionary
- * containing all values from the potential
- * sidecars.
- */
-function generateMergedSidecarDict(potentialSidecars, jsonContents) {
- // Use a map to avoid potential conflicts with keys in Object.prototype
- const mergedDictionary = new Map()
- let valid = true
- potentialSidecars.map((sidecarName) => {
- const jsonObject = jsonContents[sidecarName]
- if (jsonObject) {
- for (const key of Object.keys(jsonObject)) {
- if (jsonObject.hasOwnProperty(key)) {
- mergedDictionary.set(key, jsonObject[key])
- }
- }
- } else if (jsonObject === null) {
- valid = false
- }
- })
- const mergedDictionaryObj = Object.fromEntries(mergedDictionary)
- if (!valid) {
- mergedDictionaryObj.invalid = true
- }
- return mergedDictionaryObj
-}
-
-export default generateMergedSidecarDict
diff --git a/legacy/bids-validator/utils/files/getBFileContent.js b/legacy/bids-validator/utils/files/getBFileContent.js
deleted file mode 100644
index 6e1d6001..00000000
--- a/legacy/bids-validator/utils/files/getBFileContent.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Get B-File Contents
- *
- * Takes an array of potential bval or bvec files
- * and a master b-file contents dictionary and returns
- * the contents of the desired file.
- */
-function getBFileContent(potentialBFiles, bContentsDict) {
- for (var i = 0; i < potentialBFiles.length; i++) {
- var potentialBFile = potentialBFiles[i]
- if (bContentsDict.hasOwnProperty(potentialBFile)) {
- return bContentsDict[potentialBFile]
- }
- }
-}
-
-export default getBFileContent
diff --git a/legacy/bids-validator/utils/files/getFileStats.js b/legacy/bids-validator/utils/files/getFileStats.js
deleted file mode 100644
index 6e78ac14..00000000
--- a/legacy/bids-validator/utils/files/getFileStats.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import fs from 'fs'
-
-function getFileStats(file) {
- let stats
- if (!file.stats) {
- try {
- stats = fs.statSync(file.path)
- } catch (err) {
- stats = { size: 0 }
- }
- }
- return stats
-}
-
-export default getFileStats
diff --git a/legacy/bids-validator/utils/files/illegalCharacterTest.js b/legacy/bids-validator/utils/files/illegalCharacterTest.js
deleted file mode 100644
index fe8b4dc5..00000000
--- a/legacy/bids-validator/utils/files/illegalCharacterTest.js
+++ /dev/null
@@ -1,52 +0,0 @@
-import Issue from '../../utils/issues'
-
-const re = {
- task_re:
- /sub-(.*?)_task-[a-zA-Z0-9]*[_-][a-zA-Z0-9]*(?:_acq-[a-zA-Z0-9-]*)?(?:_run-\d+)?_/g,
- acq_re:
- /sub-(.*?)(_task-\w+.\w+)?(_acq-[a-zA-Z0-9]*[_-][a-zA-Z0-9]*)(?:_run-\d+)?_/g,
- sub_re: /sub-[a-zA-Z0-9]*[_-][a-zA-Z0-9]*_/g, // illegal character in sub
- ses_re: /ses-[a-zA-Z0-9]*[_-][a-zA-Z0-9]*?_(.*?)/g, //illegal character in ses
-}
-
-const illegalchar_regex_list = [
- [re.task_re, 58, 'task name contains illegal character:'],
- [re.acq_re, 59, 'acq name contains illegal character:'],
- [re.sub_re, 62, 'sub name contains illegal character:'],
- [re.ses_re, 63, 'ses name contains illegal character:'],
-]
-
-const illegalCharacterTest = (fileList) => {
- const issues = []
- const fileKeys = Object.keys(fileList)
- fileKeys.forEach((key) => {
- const file = fileList[key]
- const completename = file.relativePath
- if (
- !(
- completename.startsWith('/derivatives') ||
- completename.startsWith('/code') ||
- completename.startsWith('/sourcedata')
- )
- ) {
- illegalchar_regex_list.map((regex) => {
- const err_regex = regex[0]
- const err_code = regex[1]
- const err_evidence = regex[2]
-
- if (err_regex.exec(completename)) {
- issues.push(
- new Issue({
- file: file,
- code: err_code,
- evidence: err_evidence + completename,
- }),
- )
- }
- })
- }
- })
- return issues
-}
-
-export default illegalCharacterTest
diff --git a/legacy/bids-validator/utils/files/index.js b/legacy/bids-validator/utils/files/index.js
deleted file mode 100644
index 237b940a..00000000
--- a/legacy/bids-validator/utils/files/index.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// dependencies -------------------------------------------------------------------
-import FileAPI from './FileAPI'
-
-import newFile from './newFile'
-import readFile from './readFile'
-import readOMEFile from './readOMEFile'
-import readBuffer from './readBuffer'
-import readNiftiHeader from './readNiftiHeader'
-import readDir from './readDir'
-import potentialLocations from './potentialLocations'
-import generateMergedSidecarDict from './generateMergedSidecarDict'
-import getBFileContent from './getBFileContent'
-import collectDirectorySize from './collectDirectorySize'
-import illegalCharacterTest from './illegalCharacterTest'
-import sessions from './sessions'
-import remoteFiles from './remoteFiles'
-import getFileStats from './getFileStats'
-
-// public API ---------------------------------------------------------------------
-
-export default {
- FileAPI,
- newFile,
- readFile,
- readDir,
- readBuffer,
- readOMEFile,
- readNiftiHeader,
- generateMergedSidecarDict,
- potentialLocations,
- getBFileContent,
- collectDirectorySize,
- illegalCharacterTest,
- sessions,
- remoteFiles,
- getFileStats,
-}
diff --git a/legacy/bids-validator/utils/files/newFile.js b/legacy/bids-validator/utils/files/newFile.js
deleted file mode 100644
index 9f9c9e5f..00000000
--- a/legacy/bids-validator/utils/files/newFile.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import FileAPI from './FileAPI'
-
-/**
- * New File
- *
- * Creates an empty File object
- *
- * @param {string} filename - the filename without path info
- */
-function newFile(filename) {
- var File = FileAPI()
- return new File([''], filename)
-}
-
-export default newFile
diff --git a/legacy/bids-validator/utils/files/potentialLocations.js b/legacy/bids-validator/utils/files/potentialLocations.js
deleted file mode 100644
index d1857934..00000000
--- a/legacy/bids-validator/utils/files/potentialLocations.js
+++ /dev/null
@@ -1,89 +0,0 @@
-const potentialLocations = (path) => {
- //add a '/' at the beginning of the path if it doesn't exist yet
- path = path.startsWith('/') ? path : '/' + path
- const splitPath = path.split('/')
- const filename = splitPath[splitPath.length - 1] // filename path component
- const pathComponents = splitPath.splice(0, splitPath.length - 1) // all path components before
-
- // split the filename into separate components
- const filenameComponents = filename.split('_')
-
- // create components object consisting of path + filename component lists
- const components = {
- path: pathComponents,
- filename: filenameComponents,
- }
-
- // generate relevant paths and put into closest -> root order
- const potentials = potentialPaths(components)
- if (potentials.indexOf(path) < 0) {
- return [path].concat(potentials).reverse()
- } else {
- return potentials
- }
-}
-
-const potentialPaths = (components) => {
- let filenameComponents = components.filename // get the underscore separated file components
- let pathComponents = components.path // get the path components before file
- const fileIndex = filenameComponents.length - 1 // index of the filename in file components
- const file = filenameComponents[fileIndex] // filename (events.tsv, bold.json, etc)
- const informationalFileComponents = filenameComponents.slice(0, fileIndex) // all non-filename file path components (ses-*, sub-*, task-*, etc)
-
- // filter filename components that are allowed only in a lower directory
- // eg if we are root level we will not want sub-* included in the possible
- // paths for this level. Also we do not want to include run in that list.
- const nonPathSpecificFileComponents = informationalFileComponents.filter(
- (component) => pathComponents.indexOf(component) < 0,
- )
-
- // loop through all the directory levels - root, sub, (ses), (datatype)
- let paths = []
- pathComponents.map((component, i) => {
- const activeDirectoryComponents = pathComponents.slice(0, i + 1) // the directory components in the current working level
- const directoryString = activeDirectoryComponents.join('/') // path of active directory
-
- const prefixComponents = informationalFileComponents.filter(
- (component) => activeDirectoryComponents.indexOf(component) > -1,
- )
-
- const prefix = prefixComponents.join('_')
- for (
- let j = 0;
- j < Math.pow(2, nonPathSpecificFileComponents.length);
- j++
- ) {
- const filename = nonPathSpecificFileComponents
- .filter((value, index) => j & (1 << index))
- .concat([file])
- .join('_')
-
- // join directory + filepath strings together to get entire path
- paths.push(constructFileName(directoryString, filename, prefix))
- }
- })
-
- // There is an exception to the inheritance principle when it comes
- // to bold data .json sidecars - the potential locations *must* include
- // the task- keyword.
- if (filenameComponents.indexOf('bold.json') > -1) {
- paths = removePathsWithoutTasknames(paths)
- }
-
- return paths
-}
-
-const constructFileName = (directoryString, filename, prefix) => {
- // join the prefix + filename if prefix exists
- const filePathString = prefix ? [prefix, filename].join('_') : filename
- const newPath = directoryString + '/' + filePathString
- return newPath
-}
-
-const removePathsWithoutTasknames = (paths) => {
- return paths.filter((path) => {
- return path.indexOf('task') > -1
- })
-}
-
-export default potentialLocations
diff --git a/legacy/bids-validator/utils/files/readBuffer.js b/legacy/bids-validator/utils/files/readBuffer.js
deleted file mode 100644
index f9caa303..00000000
--- a/legacy/bids-validator/utils/files/readBuffer.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import isNode from '../isNode'
-import fs from 'fs'
-
-const readBuffer = (file) => {
- return new Promise((resolve, reject) => {
- if (isNode) {
- resolve(fs.readFileSync(file.path))
- } else {
- try {
- const reader = new FileReader()
- reader.onload = (event) => {
- resolve(event.target.result)
- }
-
- reader.readAsArrayBuffer(file)
- } catch (e) {
- reject(e)
- }
- }
- })
-}
-
-export default readBuffer
diff --git a/legacy/bids-validator/utils/files/readDir.js b/legacy/bids-validator/utils/files/readDir.js
deleted file mode 100644
index 90211420..00000000
--- a/legacy/bids-validator/utils/files/readDir.js
+++ /dev/null
@@ -1,388 +0,0 @@
-import ignore from 'ignore'
-import readFile from './readFile'
-import path from 'path'
-import fs from 'fs'
-import * as child_proccess from 'child_process'
-import isNode from '../isNode'
-
-/**
- * Read Directory
- *
- * In node it takes a path to a directory and returns
- * an array containing all of the files to a callback.
- * Used to input and organize files in node, in a
- * similar structure to how chrome reads a directory.
- * In the browser it simply passes the file dir
- * object to the callback.
- * @param {String} dir Path to read
- * @param {Object} options
- * @param {boolean} options.ignoreSymlinks enable to prevent recursively following directory symlinks
- * @returns {Promise}
- */
-async function readDir(dir, options = {}) {
- const ig = await getBIDSIgnore(dir)
- const fileArray = isNode
- ? await preprocessNode(path.resolve(dir), ig, options)
- : preprocessBrowser(dir, ig)
- const files = fileArrayToObject(fileArray)
- return files
-}
-
-/**
- * Transform array of file-like objects to one object with each file as a property
- * @param {Array[Object]} fileArray
- * @returns {Object}
- */
-function fileArrayToObject(fileArray) {
- const filesObj = {}
- // converting array to object
- for (let j = 0; j < fileArray.length; j++) {
- filesObj[j] = fileArray[j]
- }
- return filesObj
-}
-
-/**
- * Preprocess file objects from a browser
- *
- * 1. Filters out ignored files and folder.
- * 2. Adds 'relativePath' field of each file object.
- */
-function preprocessBrowser(filesObj, ig) {
- const filesList = []
- for (let i = 0; i < filesObj.length; i++) {
- const fileObj = filesObj[i]
- fileObj.relativePath = harmonizeRelativePath(fileObj.webkitRelativePath)
- if (ig.ignores(path.relative('/', fileObj.relativePath))) {
- fileObj.ignore = true
- }
- filesList.push(fileObj)
- }
- return filesList
-}
-
-/**
- * Harmonize Relative Path
- *
- * Takes a file and returns the browser style relative path
- * base on the environment.
- *
- * Since this may be called in the browser, do not call Node.js modules
- *
- * @param {String} path Relative path to normalize
- * @returns {String}
- */
-function harmonizeRelativePath(path) {
- // This hack uniforms relative paths for command line calls to 'BIDS-examples/ds001/' and 'BIDS-examples/ds001'
- if (path.indexOf('\\') !== -1) {
- // This is likely a Windows path - Node.js
- const pathParts = path.split('\\')
- return '/' + pathParts.slice(1).join('/')
- } else if (path[0] !== '/') {
- // Bad POSIX path - Node.js
- const pathParts = path.split('/')
- return '/' + pathParts.slice(1).join('/')
- } else {
- // Already correct POSIX path - Browsers (all platforms)
- return path
- }
-}
-
-/**
- * Preprocess directory path from a Node CLI
- *
- * 1. Recursively travers the directory tree
- * 2. Filters out ignored files and folder.
- * 3. Harmonizes the 'relativePath' field
- */
-async function preprocessNode(dir, ig, options) {
- const str = dir.substr(dir.lastIndexOf(path.sep) + 1) + '$'
- const rootpath = dir.replace(new RegExp(str), '')
- if (options.gitTreeMode) {
- // if in gitTreeMode, attempt to get files from git-annex metadata
- // before using fs
- const files = await getFilesFromGitTree(dir, ig, options)
- if (files !== null) return files
- }
- return await getFilesFromFs(dir, rootpath, ig, options)
-}
-
-/**
- * runs command `git ls-tree -l -r ` in given directory
- * @param {string} cwd path to dataset directory
- * @param {string} gitRef git ref (commit hash, ref, 'HEAD', etc)
- * @returns {string[]}
- */
-const getGitLsTree = (cwd, gitRef) =>
- new Promise((resolve) => {
- let output = ''
- const gitProcess = child_proccess.spawn(
- 'git',
- ['ls-tree', '-l', '-r', gitRef],
- {
- cwd,
- encoding: 'utf-8',
- },
- )
- gitProcess.stdout.on('data', (data) => {
- output += data.toString()
- })
- gitProcess.stderr.on('data', () => {
- resolve(null)
- })
- gitProcess.on('close', () => {
- resolve(output.trim().split('\n'))
- })
- })
-
-const readLsTreeLines = (gitTreeLines) =>
- gitTreeLines
- .map((line) => {
- const [metadata, path] = line.split('\t')
- const [mode, objType, objHash, size] = metadata.split(/\s+/)
- return { path, mode, objType, objHash, size }
- })
- .filter(
- ({ path, mode }) =>
- // skip git / datalad files and submodules
- !/^\.git/.test(path) &&
- !/^\.datalad/.test(path) &&
- '.gitattributes' !== path &&
- mode !== '160000',
- )
- .reduce(
- (
- // accumulator
- { files, symlinkFilenames, symlinkObjects },
- // git-tree line
- { path, mode, objHash, size },
- ) => {
- // read ls-tree line
- if (mode === '120000') {
- symlinkFilenames.push(path)
- symlinkObjects.push(objHash)
- } else {
- files.push({
- path,
- size: parseInt(size),
- })
- }
- return { files, symlinkFilenames, symlinkObjects }
- },
- { files: [], symlinkFilenames: [], symlinkObjects: [] },
- )
-
-/**
- * runs `git cat-file --batch --buffer` in given directory
- * @param {string} cwd
- * @param {string} input
- * @returns {string[]}
- */
-const getGitCatFile = (cwd, input) =>
- new Promise((resolve) => {
- let output = ''
- const gitProcess = child_proccess.spawn(
- 'git',
- ['cat-file', '--batch', '--buffer'],
- {
- cwd,
- encoding: 'utf-8',
- },
- )
-
- // pass in symlink objects
- gitProcess.stdin.write(input)
- gitProcess.stdin.end()
-
- gitProcess.stdout.on('data', (data) => {
- output += data.toString()
- })
- gitProcess.stderr.on('data', () => {
- resolve(null)
- })
- gitProcess.on('close', () => {
- resolve(output.trim().split('\n'))
- })
- })
-
-const readCatFileLines = (gitCatFileLines, symlinkFilenames) =>
- gitCatFileLines
- // even lines contain unneeded metadata
- .filter((_, i) => i % 2 === 1)
- .map((line, i) => {
- const path = symlinkFilenames[i]
- const key = line.split('/').pop()
- const size = parseInt(key.match(/-s(\d+)/)[1])
- return {
- path,
- size,
- }
- })
-
-const processFiles = (dir, ig, ...fileLists) =>
- fileLists
- .reduce((allFiles, files) => [...allFiles, ...files], [])
- .map((file) => {
- file.relativePath = path.normalize(`${path.sep}${file.path}`)
- return file
- })
- .filter((file) => {
- const ignore = ig.ignores(file.relativePath.slice(1))
- return !ignore
- })
- .map((file) => {
- file.relativePath = harmonizeRelativePath(file.relativePath)
- file.name = path.basename(file.path)
- file.path = path.join(dir, file.relativePath)
- return file
- })
-
-async function getFilesFromGitTree(dir, ig, options) {
- const gitTreeLines = await getGitLsTree(dir, options.gitRef)
- if (
- gitTreeLines === null ||
- (gitTreeLines.length === 1 && gitTreeLines[0] === '')
- )
- return null
- const { files, symlinkFilenames, symlinkObjects } =
- readLsTreeLines(gitTreeLines)
-
- const gitCatFileLines = await getGitCatFile(dir, symlinkObjects.join('\n'))
- // example gitCatFile output:
- // .git/annex/objects/Mv/99/SHA256E-s54--42c98d14dbe3d066d35897a61154e39ced478cd1f0ec6159ba5f2361c4919878.json/SHA256E-s54--42c98d14dbe3d066d35897a61154e39ced478cd1f0ec6159ba5f2361c4919878.json
- // .git/annex/objects/QV/mW/SHA256E-s99--bbef536348750373727d3b5856398d7377e5d7e23875eed026b83d12cee6f885.json/SHA256E-s99--bbef536348750373727d3b5856398d7377e5d7e23875eed026b83d12cee6f885.json
- const symlinkFiles = readCatFileLines(gitCatFileLines, symlinkFilenames)
-
- return processFiles(dir, ig, files, symlinkFiles)
-}
-
-/**
- * Recursive helper function for 'preprocessNode'
- */
-async function getFilesFromFs(dir, rootPath, ig, options, parent = []) {
- const files = await fs.promises.readdir(dir, { withFileTypes: true })
- const filesAccumulator = parent
- for (const file of files) {
- const fullPath = path.join(dir, file.name)
- const relativePath = harmonizeRelativePath(
- path.relative(rootPath, fullPath),
- )
- const ignore = ig.ignores(path.relative('/', relativePath))
- const fileObj = {
- name: file.name,
- path: fullPath,
- relativePath,
- }
- if (ignore) {
- fileObj.ignore = true
- }
- // Three cases to consider: directories, files, symlinks
- if (file.isDirectory()) {
- await getFilesFromFs(fullPath, rootPath, ig, options, filesAccumulator)
- } else if (file.isSymbolicLink()) {
- // Allow skipping symbolic links which lead to recursion
- // Disabling this is a big performance advantage on high latency
- // storage but it's a good default for versatility
- if (!options.ignoreSymlinks) {
- try {
- const targetPath = await fs.promises.realpath(fullPath)
- const targetStat = await fs.promises.stat(targetPath)
- // Either add or recurse from the target depending
- if (targetStat.isDirectory()) {
- await getFilesFromFs(
- targetPath,
- rootPath,
- ig,
- options,
- filesAccumulator,
- )
- } else {
- filesAccumulator.push(fileObj)
- }
- } catch (err) {
- // Symlink points at an invalid target, skip it
- return
- }
- } else {
- // This branch assumes all symbolic links are not directories
- filesAccumulator.push(fileObj)
- }
- } else {
- filesAccumulator.push(fileObj)
- }
- }
- return filesAccumulator
-}
-
-export function defaultIgnore() {
- return ignore()
- .add('.*')
- .add('!*.icloud')
- .add('/derivatives')
- .add('/sourcedata')
- .add('/code')
-}
-
-async function getBIDSIgnore(dir) {
- const ig = defaultIgnore()
-
- const bidsIgnoreFileObj = getBIDSIgnoreFileObj(dir)
- if (bidsIgnoreFileObj) {
- const content = await readFile(bidsIgnoreFileObj)
- ig.add(content)
- }
- return ig
-}
-
-/**
- * Get File object corresponding to the .bidsignore file
- * @param dir
- * @returns File object or null if not found
- */
-function getBIDSIgnoreFileObj(dir) {
- if (isNode) {
- return getBIDSIgnoreFileObjNode(dir)
- } else {
- return getBIDSIgnoreFileObjBrowser(dir)
- }
-}
-
-function getBIDSIgnoreFileObjNode(dir) {
- const path = dir + '/.bidsignore'
- try {
- fs.accessSync(path)
- return { path: path, stats: { size: null } }
- } catch (err) {
- return null
- }
-}
-
-function getBIDSIgnoreFileObjBrowser(dir) {
- for (var i = 0; i < dir.length; i++) {
- const fileObj = dir[i]
- const relativePath = harmonizeRelativePath(fileObj.webkitRelativePath)
- if (relativePath === '/.bidsignore') {
- return fileObj
- }
- }
-}
-
-export {
- readDir,
- getFilesFromFs,
- fileArrayToObject,
- harmonizeRelativePath,
- readLsTreeLines,
- readCatFileLines,
- processFiles,
-}
-
-export default Object.assign(readDir, {
- readDir,
- getFilesFromFs,
- fileArrayToObject,
- harmonizeRelativePath,
- readLsTreeLines,
- readCatFileLines,
- processFiles,
-})
diff --git a/legacy/bids-validator/utils/files/readFile.js b/legacy/bids-validator/utils/files/readFile.js
deleted file mode 100644
index aebadff8..00000000
--- a/legacy/bids-validator/utils/files/readFile.js
+++ /dev/null
@@ -1,84 +0,0 @@
-import testFile from './testFile'
-import Issue from '../../utils/issues'
-import fs from 'fs'
-import isNode from '../isNode'
-import checkIfUtf8 from 'is-utf8'
-
-const JSONFilePattern = /.json$/
-const isJSONFile = (file) =>
- JSONFilePattern.test(isNode ? file.name : file.relativePath)
-
-// Work around JSDom not providing TextDecoder yet
-if (typeof TextDecoder === 'undefined') {
- const { TextDecoder } = require('util')
- global.TextDecoder = TextDecoder
-}
-
-/**
- * checkEncoding
- * @param {object | File} file - nodeJS fs file or browser File
- * @param {buffer | Uint8Array} data - file content buffer
- * @param {function} cb - returns { isUtf8 }
- */
-const checkEncoding = (file, data, cb) => {
- if (isJSONFile(file)) cb({ isUtf8: checkIfUtf8(data) })
-}
-
-/**
- * readFile
- * @param {object | File} file - nodeJS fs file or browser File
- * @param {boolean} annexed - is the file currently annexed?
- * @param {string} dir - path to directory containing dataset. Only used if
- * annexed is true.
- *
- * A helper method for reading file contents.
- * Takes a file object and a callback and calls
- * the callback with the binary contents of the
- * file as the only argument.
- *
- * In the browser the file should be a file object.
- * In node the file should be a path to a file.
- *
- */
-function readFile(file, annexed, dir) {
- return new Promise((resolve, reject) => {
- if (isNode) {
- testFile(file, annexed, dir, function (issue, stats, remoteBuffer) {
- if (issue) {
- return reject(issue)
- }
- if (!remoteBuffer) {
- fs.readFile(file.path, function (err, data) {
- if (err) {
- return reject(err)
- }
- checkEncoding(file, data, ({ isUtf8 }) => {
- if (!isUtf8) reject(new Issue({ code: 123, file }))
- })
- return resolve(data.toString('utf8'))
- })
- }
- if (remoteBuffer) {
- return resolve(remoteBuffer.toString('utf8'))
- }
- })
- } else {
- const reader = new FileReader()
- reader.onloadend = (e) => {
- if (e.target.readyState == FileReader.DONE) {
- if (!e.target.result) {
- return reject(new Issue({ code: 44, file: file }))
- }
- const buffer = new Uint8Array(e.target.result)
- checkEncoding(file, buffer, ({ isUtf8 }) => {
- if (!isUtf8) reject(new Issue({ code: 123, file }))
- })
- return resolve(new TextDecoder().decode(buffer))
- }
- }
- reader.readAsArrayBuffer(file)
- }
- })
-}
-
-export default readFile
diff --git a/legacy/bids-validator/utils/files/readNiftiHeader.js b/legacy/bids-validator/utils/files/readNiftiHeader.js
deleted file mode 100644
index 984efd24..00000000
--- a/legacy/bids-validator/utils/files/readNiftiHeader.js
+++ /dev/null
@@ -1,145 +0,0 @@
-import nifti from 'nifti-js'
-import pako from 'pako'
-import fs from 'fs'
-import testFile from './testFile'
-import Issue from '../../utils/issues'
-import isNode from '../isNode'
-
-/**
- * Read Nifti Header
- *
- * Takes a files and returns a json parsed nifti
- * header without reading any extra bytes.
- */
-function readNiftiHeader(file, annexed, dir, callback) {
- if (isNode) {
- nodeNiftiTest(file, annexed, dir, callback)
- } else {
- browserNiftiTest(file, callback)
- }
-}
-
-function nodeNiftiTest(file, annexed, dir, callback) {
- testFile(file, annexed, dir, function (issue, stats, remoteBuffer) {
- file.stats = stats
- if (issue) {
- callback({ error: issue })
- return
- }
- if (stats) {
- if (stats.size < 348) {
- callback({ error: new Issue({ code: 36, file: file }) })
- return
- }
- }
- if (remoteBuffer) {
- callback(parseNIfTIHeader(remoteBuffer, file))
- } else {
- return extractNiftiFile(file, callback)
- }
- })
-}
-
-function extractNiftiFile(file, callback) {
- const bytesRead = 1024
- const buffer = Buffer.alloc(bytesRead)
-
- fs.open(file.path, 'r', function (err, fd) {
- if (err) {
- callback({ error: new Issue({ code: 44, file: file }) })
- return
- } else {
- fs.read(fd, buffer, 0, bytesRead, 0, function () {
- if (file.name.endsWith('.nii')) {
- callback(parseNIfTIHeader(buffer, file))
- } else {
- try {
- const data = pako.inflate(buffer)
- callback(parseNIfTIHeader(data, file))
- } catch (err) {
- callback(handleGunzipError(buffer, file))
- }
- }
- })
- }
- })
-}
-
-async function browserNiftiTest(file, callback) {
- const bytesRead = 1024
- let blob
- if ('slice' in file) {
- // This is a real browser
- blob = file.slice(0, bytesRead)
- } else {
- // Slice is undefined by the Deno adapter, this is likely Deno or a very confused browser
- blob = await file.readBytes(0, bytesRead)
- }
- if (file.size == 0) {
- callback({ error: new Issue({ code: 44, file: file }) })
- return
- }
-
- // file size is smaller than nifti header size
- if (file.size < 348) {
- callback({ error: new Issue({ code: 36, file: file }) })
- return
- }
- const fileReader = constructBrowserFileReader(file, callback)
- fileReader.readAsArrayBuffer(blob)
-}
-
-function constructBrowserFileReader(file, callback) {
- const fileReader = new FileReader()
- fileReader.onloadend = function () {
- const buffer = new Uint8Array(fileReader.result)
- let unzipped
-
- try {
- unzipped = file.name.endsWith('.nii') ? buffer : pako.inflate(buffer)
- } catch (err) {
- callback(handleGunzipError(buffer, file))
- return
- }
-
- callback(parseNIfTIHeader(unzipped, file))
- }
- return fileReader
-}
-/**
- * Parse NIfTI Header (private)
- *
- * Attempts to parse a header buffer with
- * nifti-js and handles errors.
- */
-function parseNIfTIHeader(buffer, file) {
- var header
- try {
- header = nifti.parseNIfTIHeader(buffer)
- } catch (err) {
- // file is unreadable
- return { error: new Issue({ code: 26, file: file }) }
- }
- // file was not originally gzipped
- return header
-}
-
-/**
- * Handle Gunzip Error (private)
- *
- * Used when unzipping fails. Tests if file was
- * actually gzipped to begin with by trying to parse
- * the original header.
- */
-function handleGunzipError(buffer, file) {
- try {
- nifti.parseNIfTIHeader(buffer)
- } catch (err) {
- // file is unreadable
- return { error: new Issue({ code: 26, file: file }) }
- }
- // file was not originally gzipped
- return { error: new Issue({ code: 28, file: file }) }
-}
-
-export default readNiftiHeader
diff --git a/legacy/bids-validator/utils/files/readOMEFile.js b/legacy/bids-validator/utils/files/readOMEFile.js
deleted file mode 100644
index 4871bff9..00000000
--- a/legacy/bids-validator/utils/files/readOMEFile.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import ExifReader from 'exifreader'
-const xml2js = require('xml2js')
-
-const readOMEFile = (buffer) => {
- let tags = ExifReader.load(buffer)
- let xml = tags['ImageDescription']['description']
- return new Promise((resolve, reject) => {
- xml2js
- .parseStringPromise(xml)
- .then((result) => {
- resolve(result)
- })
- .catch((error) => reject(error))
- })
-}
-
-export default readOMEFile
diff --git a/legacy/bids-validator/utils/files/remoteFiles.js b/legacy/bids-validator/utils/files/remoteFiles.js
deleted file mode 100644
index de02bda6..00000000
--- a/legacy/bids-validator/utils/files/remoteFiles.js
+++ /dev/null
@@ -1,221 +0,0 @@
-import { S3Client } from '@aws-sdk/client-s3'
-import fs from 'fs'
-import cp from 'child_process'
-import Issue from '../issues'
-import pako from 'pako'
-import isNode from '../isNode'
-
-/**
- * Remote Files
- *
- * Helper functions for checking for and using remote file paths
- *
- */
-
-const remoteFiles = {
- // Initiates access of a remote file from git-annex remote
- // Get remotes info the call to try successive remotes
- // Called by testFile
- getAnnexedFile: function (file, dir, limit, callback) {
- // Build config object
- const config = {
- file: file,
- dir: dir,
- }
- if (limit) config.limit = limit
- config.remotesInfo = this.getRemotesInfo(dir, file)
-
- // try all the special git-annex remotes, and exit if there is an issue (reading / fetching files)
- // if all remotes fail, throw issue code 97
- config.remotesInfo.map((remote, idx) => {
- return this.tryRemote(remote, config)
- .then((data) => callback(null, null, data))
- .catch((err) => {
- if (err.code) {
- return callback(err, null, null)
- }
- if (idx == config.remotesInfo.length) {
- return callback(
- new Issue({ code: 98, file: config.file }),
- null,
- null,
- )
- }
- })
- })
- },
-
- // Try to access file from a remote
- tryRemote: function (remote, config) {
- // Get current remote
- config.s3Params = this.getSingleRemoteInfo(config.dir, remote.remoteUuid)
- const dir = config.dir.endsWith('/') ? config.dir.slice(0, -1) : config.dir
- const datasetName = dir.split('/')[dir.split('/').length - 1]
- const key = datasetName + config.file.relativePath
- // Add additional parameters
- config.s3Params['Key'] = key
- config.s3Params['VersionId'] = remote.versionId
- return this.accessRemoteFile(config)
- },
-
- // Download a remote file from its path
- accessRemoteFile: function (config) {
- if (config.limit) config.s3Params['Range'] = 'bytes=0-' + config.limit
- return new Promise((resolve, reject) => {
- this.constructAwsRequest(config)
- .then((buffer) => {
- if (config.file.name.endsWith('.gz')) {
- this.extractGzipBuffer(buffer, config)
- .then((data) => resolve(data))
- .catch((err) => reject(err))
- } else {
- resolve(buffer)
- }
- })
- .catch(reject)
- })
- },
-
- constructAwsRequest: function (config) {
- const hasCreds = isNode
- ? Object.keys(process.env).indexOf('AWS_ACCESS_KEY_ID') > -1
- : false
- if (hasCreds) {
- const s3 = new S3Client()
- return s3.getObject(config.s3Params).then((data) => data.Body)
- } else {
- let url = this.constructAwsUrl(config)
- return fetch(url).then((resp) => {
- if (resp.ok) {
- return resp.buffer()
- } else {
- return Promise.reject(
- new Error(
- `HTTP response failed - ${resp.status} - ${resp.statusText}`,
- ),
- )
- }
- })
- }
- },
-
- constructAwsUrl: function (config) {
- // bucket + key url
- let url = `http://s3.amazonaws.com/${config.s3Params.Bucket}/${config.s3Params.Key}`
-
- // add version to url, if exists
- url = config.s3Params.VersionId
- ? url + '?VersionId=' + config.s3Params.VersionId
- : url
-
- // add range to url, if exists
- url = config.s3Params.Range ? url + '?Range=' + config.s3Params.Range : url
- return url
- },
-
- extractGzipBuffer: function (buffer, config) {
- return new Promise((resolve, reject) => {
- try {
- resolve(pako.inflate(buffer))
- } catch (e) {
- return reject(new Issue({ code: 28, file: config.file }))
- }
- })
- },
-
- // Function for calling local git-annex
- callGitAnnex: function (cmd, cwd) {
- const stream = cp.execSync(cmd, {
- shell: true,
- cwd,
- })
- return stream.toString()
- },
-
- // Ask git-annex for more information about a file
- getRemotesInfo: function (dir, file) {
- // Remove leading slash from relativePath
- const relativePath =
- file.relativePath && file.relativePath.startsWith('/')
- ? file.relativePath.substring(1)
- : file.relativePath
- const lookupkey = this.getLookupKey(relativePath, dir)
- const hashDirLower = this.getHashDirLower(lookupkey, dir)
- const metadata = this.getRemoteMetadata(hashDirLower, lookupkey, dir)
- const remotesInfo = this.processRemoteMetadata(metadata)
- return remotesInfo
- },
-
- // get the key for a particular file's relative path
- getLookupKey: function (relativePath, dir) {
- const lookupKeyCmd = `git-annex lookupkey ${relativePath}`
- return this.callGitAnnex(lookupKeyCmd, dir).trim()
- },
-
- // get hashdirlower property from the git-annex examinekey command
- getHashDirLower: function (lookupkey, dir) {
- try {
- const examineKeyCmd = `git-annex examinekey --json ${lookupkey}`
- const examineKey = JSON.parse(this.callGitAnnex(examineKeyCmd, dir))
- return examineKey.hashdirlower
- } catch (e) {
- return null
- }
- },
-
- // get the remote metadata log content from git show command
- getRemoteMetadata: function (hashDirLower, lookupkey, dir) {
- const gitShowCmd = `git show git-annex:${hashDirLower}${lookupkey}.log.rmet`
- return this.callGitAnnex(gitShowCmd, dir)
- },
-
- // Get info from a given git-annex remote
- getSingleRemoteInfo: function (dir, uuid) {
- const infoCmd = `cd ${dir}
- git-annex info ${uuid}`
- const resp = this.callGitAnnex(infoCmd)
- return this.getRemoteBucket(resp)
- },
-
- // Obtain bucket field from git-annex info query
- getRemoteBucket: function (resp) {
- const params = {
- Bucket: null,
- }
- for (let line of resp.split('\n')) {
- if (line.includes('bucket: ')) {
- params.Bucket = line.split(': ')[1]
- }
- }
- return params
- },
-
- // Manipulate the response from git-annex lookupkey query
- processRemoteMetadata: function (resp) {
- const remotesInfo = []
- const lines = resp.split('\n')
- lines.map((line) => {
- const splitSpace = line.split(' ')
- if (splitSpace.length == 3) {
- const fileInfo = splitSpace[2].split('#')
- const timestamp = splitSpace[0]
- const annexInfo = splitSpace[1].split(':')
- if (fileInfo.length == 2 && annexInfo.length == 2) {
- const remoteUuid = annexInfo[0]
- const fileName = fileInfo[1]
- const versionId = fileInfo[0].substring(1)
- const remoteInfo = { timestamp, remoteUuid, fileName, versionId }
- remotesInfo.push(remoteInfo)
- }
- }
- })
- return remotesInfo
- },
- // Check if a local directory is a git-annex repo
- isGitAnnex: function (path) {
- if (isNode) return fs.existsSync(path + '/.git/annex')
- return false
- },
-}
-
-export default remoteFiles
diff --git a/legacy/bids-validator/utils/files/sessions.js b/legacy/bids-validator/utils/files/sessions.js
deleted file mode 100644
index c1083012..00000000
--- a/legacy/bids-validator/utils/files/sessions.js
+++ /dev/null
@@ -1,9 +0,0 @@
-export default {
- sessionMatcher: new RegExp('(ses-.*?)/'),
-
- Subject: function () {
- this.files = []
- this.sessions = []
- this.missingSessions = []
- },
-}
diff --git a/legacy/bids-validator/utils/files/testFile.js b/legacy/bids-validator/utils/files/testFile.js
deleted file mode 100644
index 117bb838..00000000
--- a/legacy/bids-validator/utils/files/testFile.js
+++ /dev/null
@@ -1,71 +0,0 @@
-import fs from 'fs'
-import Issue from '../../utils/issues'
-import remoteFiles from './remoteFiles'
-import options from '../../utils/options'
-
-/**
- * Test File
- *
- * Takes a file and callback and tests if it's viable for
- * reading and is larger than 0 kb. Calls back with an error and stats if it isn't
- * or null and stats if it is.
- */
-function testFile(file, annexed, dir, callback) {
- fs.access(file.path, function (accessErr) {
- if (!accessErr) {
- // accessible
- handleFsAccess(file, callback)
- } else {
- // inaccessible
- fs.lstat(file.path, function (lstatErr, lstats) {
- if (!lstatErr && lstats && lstats.isSymbolicLink()) {
- // symlink
- if (options.getOptions().remoteFiles)
- // only follow symlinks when --remoteFiles option is on
- handleRemoteAccess(file, annexed, dir, callback)
- else
- callback(
- new Issue({
- code: 114,
- file,
- }),
- file.stats,
- )
- } else {
- // inaccessible local file
- callback(new Issue({ code: 44, file: file }), file.stats)
- }
- })
- }
- })
-}
-
-function handleFsAccess(file, callback) {
- process.nextTick(function () {
- if (file.stats.size === 0) {
- callback(
- new Issue({
- code: 99,
- file: file,
- reason: `Empty files (${file.path}) not allowed.`,
- }),
- file.stats,
- )
- }
- callback(null, file.stats)
- })
-}
-
-function handleRemoteAccess(file, annexed, dir, callback) {
- if (annexed) {
- // Set byte retrieval limits based on file type
- const limit = file.name.includes('.nii') ? 500 : false
- // Call process to get remote files
- // It will call callback with content or error
- remoteFiles.getAnnexedFile(file, dir, limit, callback)
- } else {
- callback(new Issue({ code: 43, file: file }), file.stats)
- }
-}
-
-export default testFile
diff --git a/legacy/bids-validator/utils/files/validateMisc.js b/legacy/bids-validator/utils/files/validateMisc.js
deleted file mode 100644
index d4ceed10..00000000
--- a/legacy/bids-validator/utils/files/validateMisc.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import Issue from '../issues/issue'
-import isNode from '../isNode'
-
-function createIssueForEmpty(file) {
- const size = !isNode ? file.size : file.stats.size
- var failsSizeRequirement = size <= 0
- // Exception misc files that can be valid although size==0
- // E.g., BadChannels and bad.segments in CTF data format (MEG modality)
- const exceptionMiscs = ['BadChannels', 'bad.segments']
- if (exceptionMiscs.indexOf(file.name) > -1) {
- failsSizeRequirement = false
- }
-
- return failsSizeRequirement && new Issue({ code: 99, file: file })
-}
-function clearNonIssues(x) {
- return x instanceof Issue
-}
-
-/**
- * validateMisc
- *
- * takes a list of files and returns an issue for each file
- */
-export default function validateMisc(miscFiles) {
- return Promise.resolve(
- miscFiles.map(createIssueForEmpty).filter(clearNonIssues),
- )
-}
diff --git a/legacy/bids-validator/utils/index.js b/legacy/bids-validator/utils/index.js
deleted file mode 100644
index 4eb8f223..00000000
--- a/legacy/bids-validator/utils/index.js
+++ /dev/null
@@ -1,43 +0,0 @@
-import './prototype'
-import array from './array'
-import config from './config'
-import files from './files'
-import bids_files from './bids_files'
-import issues from './issues'
-import json from './json'
-import modalities from './modalities'
-import options from './options'
-import type from './type'
-import collectSummary from './summary/collectSummary'
-import limit from './promise_limiter'
-import unit from './unit'
-
-export {
- array,
- config,
- files,
- bids_files,
- issues,
- json,
- modalities,
- options,
- type,
- collectSummary,
- limit,
- unit,
-}
-
-export default {
- array,
- config,
- files,
- bids_files,
- issues,
- json,
- modalities,
- options,
- type,
- collectSummary,
- limit,
- unit,
-}
diff --git a/legacy/bids-validator/utils/isNode.js b/legacy/bids-validator/utils/isNode.js
deleted file mode 100644
index dfb3e6a8..00000000
--- a/legacy/bids-validator/utils/isNode.js
+++ /dev/null
@@ -1,7 +0,0 @@
-const isBrowserWorker = () =>
- // eslint-disable-next-line no-undef
- typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope
-
-const isNode = () => typeof window === 'undefined' && !isBrowserWorker()
-
-export default isNode()
diff --git a/legacy/bids-validator/utils/issues/index.js b/legacy/bids-validator/utils/issues/index.js
deleted file mode 100644
index 88c0add6..00000000
--- a/legacy/bids-validator/utils/issues/index.js
+++ /dev/null
@@ -1,206 +0,0 @@
-import list from './list'
-import Issue from './issue'
-import config from '../config'
-
-var issues = {
- /**
- * List
- *
- * List of all validator issues.
- */
- list: list,
-
- /**
- * Issue
- *
- * Issue constructor
- */
- Issue: Issue,
-
- /**
- * Filter Fieldmaps
- *
- * Remove fieldmap related warnings if no fieldmaps
- * are present.
- */
- filterFieldMaps: function (issueList) {
- var filteredIssueList = []
- var fieldmapRelatedCodes = [6, 7, 8, 9]
- for (var i = 0; i < issueList.length; i++) {
- var issue = issueList[i]
- if (fieldmapRelatedCodes.indexOf(issue.code) < 0) {
- filteredIssueList.push(issue)
- }
- }
- return filteredIssueList
- },
-
- /**
- * Format Issues
- */
- format: function (issueList, summary, options) {
- var errors = [],
- warnings = [],
- ignored = []
-
- if (summary.modalities.indexOf('fieldmap') < 0) {
- issueList = this.filterFieldMaps(issueList)
- }
-
- // sort alphabetically by relative path of files
- issueList.sort(function (a, b) {
- var aPath = a.file ? a.file.relativePath : ''
- var bPath = b.file ? b.file.relativePath : ''
- return aPath > bPath ? 1 : bPath > aPath ? -1 : 0
- })
-
- // organize by issue code
- const categorized = {}
- const codes = []
- for (var i = 0; i < issueList.length; i++) {
- var issue = issueList[i]
-
- if (
- issue.file &&
- config.ignoredFile(options.config, issue.file.relativePath)
- ) {
- continue
- }
-
- if (!categorized[issue.code]) {
- codes.push(issue.key)
- codes.push(issue.code)
- categorized[issue.code] = list[issue.code]
- categorized[issue.code].files = []
- categorized[issue.code].additionalFileCount = 0
- categorized[issue.code].helpUrl = issue.helpUrl
- }
- if (options.verbose || categorized[issue.code].files.length < 10) {
- categorized[issue.code].files.push(issue)
- } else {
- categorized[issue.code].additionalFileCount++
- }
- }
-
- const severityMap = config.interpret(codes, options.config)
-
- // organize by severity
- for (const codePropertyName in categorized) {
- if (!categorized.hasOwnProperty(codePropertyName)) {
- continue
- }
- // Properties are always strings but error codes are always integers
- const code = parseInt(codePropertyName)
- issue = categorized[code]
- issue.code = code
-
- if (severityMap.hasOwnProperty(issue.code)) {
- issue.severity = severityMap[issue.code]
- }
-
- if (severityMap.hasOwnProperty(issue.key)) {
- issue.severity = severityMap[issue.key]
- }
- if (issue.severity === 'error') {
- // Schema validation issues will yield the JSON file invalid, we should display them first to attract
- // user attention.
- if (code == 55) {
- errors.unshift(issue)
- } else {
- errors.push(issue)
- }
- } else if (issue.severity === 'warning' && !options.ignoreWarnings) {
- warnings.push(issue)
- } else if (issue.severity === 'ignore') {
- ignored.push(issue)
- }
- }
- return { errors, warnings, ignored }
- },
-
- /**
- * Error To Issue
- *
- * Takes and exception and returns an Issue
- */
- errorToIssue: function (err, code = 0) {
- const callStack = err.stack
- ? err.stack.split('\n').slice(1).join('\n').trim()
- : ''
-
- return new Issue({
- file: callStack,
- evidence: err.stack || '',
- reason: `${err.message}; please help the BIDS team and community by opening an issue at (https://github.com/bids-standard/bids-validator/issues) with the evidence here.`,
- code: code,
- })
- },
-
- /**
- * isAnIssue
- *
- * takes an object and checks if it's an Issue
- */
- isAnIssue: function (obj) {
- const objKeys = Object.keys(obj)
- return objKeys.includes('code') && objKeys.includes('reason')
- },
-
- /**
- * Reformat
- *
- * Takes an already formatted set of issues, a
- * summary and a config object and returns the
- * same issues reformatted against the config.
- */
- reformat: function (issueList, summary, config) {
- var errors = issueList.errors ? issueList.errors : [],
- warnings = issueList.warnings ? issueList.warnings : [],
- ignored = issueList.ignored ? issueList.ignored : []
-
- issueList = errors.concat(warnings).concat(ignored)
- var unformatted = []
- for (var i = 0; i < issueList.length; i++) {
- var issue = issueList[i]
- for (var j = 0; j < issue.files.length; j++) {
- var file = issue.files[j]
- unformatted.push(file)
- }
- }
- return issues.format(unformatted, summary, { config: config })
- },
- /**
- * Exception Handler
- *
- * takes an error in fullTest.js catch
- * converts it to an Issue and pushes it to the total list of issues
- * formats issue list and returns it
- */
- exceptionHandler: function (err, issueList, summary, options) {
- // err here can be a validator Issue or an unknown exception
- if (err.hasOwnProperty('key')) {
- issueList.push(err)
- } else {
- issueList.push(this.errorToIssue(err))
- }
-
- // Format issues
- const issues = this.format(issueList, summary, options)
- return issues
- },
-
- /**
- * Error/Issue redirector
- *
- * takes an error, resolve callback, and reject callback
- */
- redirect: function (err, reject, resolveCB) {
- if (this.isAnIssue(err)) {
- resolveCB()
- } else {
- reject(err)
- }
- },
-}
-
-export default Object.assign(Issue, issues)
diff --git a/legacy/bids-validator/utils/issues/issue.js b/legacy/bids-validator/utils/issues/issue.js
deleted file mode 100644
index 7311c881..00000000
--- a/legacy/bids-validator/utils/issues/issue.js
+++ /dev/null
@@ -1,52 +0,0 @@
-import issues from './list'
-
-/**
- * Help Url
- *
- * Construct a link to a helpful neurostars query, based on the
- * issue key
- */
-const constructHelpUrl = (issue) => {
- const neurostarsPrefix = 'https://neurostars.org/'
- const searchQuery = issue && issue.key ? 'search?q=' + issue.key : ''
- const helpUrl = neurostarsPrefix + searchQuery
- return helpUrl
-}
-
-/**
- * Issue
- *
- * A constructor for BIDS issues.
- *
- * @param {Object} options
- * @param {string} options.key The descriptive string matching the issue code
- * @param {number} options.code Issue code - see 'list.js' for definitions
- * @param {File} [options.file] File object for the affected file
- * @param {string} [options.evidence] The value throwing this issue
- * @param {number} [options.line] The line of the affected file (if within a file)
- * @param {number} [options.character] The character offset in the affected line
- * @param {string} [options.severity] Is this an error or warning?
- * @param {string} [options.reason] A descriptive
- * @param {string} [options.helpUrl] A URL providing documentation to help solve this error
- * @returns {Object} Issue object
- */
-function Issue(options) {
- const code = options.hasOwnProperty('code') ? options.code : null
- const issue = issues[code]
-
- this.key = issue.key
- this.code = code
- this.file = options.hasOwnProperty('file') ? options.file : null
- this.evidence = options.hasOwnProperty('evidence') ? options.evidence : null
- this.line = options.hasOwnProperty('line') ? options.line : null
- this.character = options.hasOwnProperty('character')
- ? options.character
- : null
- this.severity = options.hasOwnProperty('severity')
- ? options.severity
- : issue.severity
- this.reason = options.hasOwnProperty('reason') ? options.reason : issue.reason
- this.helpUrl = constructHelpUrl(issue)
-}
-
-export default Issue
diff --git a/legacy/bids-validator/utils/issues/list.js b/legacy/bids-validator/utils/issues/list.js
deleted file mode 100644
index e1afa254..00000000
--- a/legacy/bids-validator/utils/issues/list.js
+++ /dev/null
@@ -1,1187 +0,0 @@
-/**
- * Issues
- *
- * A list of all possible issues organized by
- * issue code and including severity and reason
- * agnostic to file specifics.
- */
-export default {
- 0: {
- key: 'INTERNAL ERROR',
- severity: 'error',
- reason: 'Internal error. SOME VALIDATION STEPS MAY NOT HAVE OCCURRED',
- },
- 1: {
- key: 'NOT_INCLUDED',
- severity: 'error',
- reason:
- 'Files with such naming scheme are not part of BIDS specification. This error is most commonly ' +
- 'caused by typos in file names that make them not BIDS compatible. Please consult the specification and ' +
- 'make sure your files are named correctly. If this is not a file naming issue (for example when including ' +
- 'files not yet covered by the BIDS specification) you should include a ".bidsignore" file in your dataset (see' +
- ' https://github.com/bids-standard/bids-validator#bidsignore for details). Please ' +
- 'note that derived (processed) data should be placed in /derivatives folder and source data (such as DICOMS ' +
- 'or behavioural logs in proprietary formats) should be placed in the /sourcedata folder.',
- },
- 2: {
- key: 'REPETITION_TIME_GREATER_THAN',
- severity: 'warning',
- reason:
- "'RepetitionTime' is greater than 100 are you sure it's expressed in seconds?",
- },
- 3: {
- key: 'ECHO_TIME_GREATER_THAN',
- severity: 'warning',
- reason:
- "'EchoTime' is greater than 1 are you sure it's expressed in seconds?",
- },
- 4: {
- key: 'ECHO_TIME_DIFFERENCE_GREATER_THAN',
- severity: 'warning',
- reason:
- "'EchoTimeDifference' is greater than 1 are you sure it's expressed in seconds?",
- },
- 5: {
- key: 'TOTAL_READOUT_TIME_GREATER_THAN',
- severity: 'warning',
- reason:
- "'TotalReadoutTime' is greater than 10 are you sure it's expressed in seconds?",
- },
- 6: {
- key: 'ECHO_TIME_NOT_DEFINED',
- severity: 'warning',
- reason:
- "You should define 'EchoTime' for this file. If you don't provide this information field map correction will not be possible.",
- },
- 7: {
- key: 'PHASE_ENCODING_DIRECTION_NOT_DEFINED',
- severity: 'warning',
- reason:
- "You should define 'PhaseEncodingDirection' for this file. If you don't provide this information field map correction will not be possible.",
- },
- 8: {
- key: 'EFFECTIVE_ECHO_SPACING_NOT_DEFINED',
- severity: 'warning',
- reason:
- "You should define 'EffectiveEchoSpacing' for this file. If you don't provide this information field map correction will not be possible.",
- },
- 9: {
- key: 'TOTAL_READOUT_TIME_NOT_DEFINED',
- severity: 'warning',
- reason:
- "You should define 'TotalReadoutTime' for this file. If you don't provide this information field map correction using TOPUP might not be possible.",
- },
- 10: {
- key: 'REPETITION_TIME_MUST_DEFINE',
- severity: 'error',
- reason: "You have to define 'RepetitionTime' for this file.",
- },
- 11: {
- key: 'REPETITION_TIME_UNITS',
- severity: 'error',
- reason:
- "Repetition time was not defined in seconds, milliseconds or microseconds in the scan's header.",
- },
- 12: {
- key: 'REPETITION_TIME_MISMATCH',
- severity: 'error',
- reason:
- "Repetition time did not match between the scan's header and the associated JSON metadata file.",
- },
- 13: {
- key: 'SLICE_TIMING_NOT_DEFINED',
- severity: 'warning',
- reason:
- "You should define 'SliceTiming' for this file. If you don't provide this information slice time correction will not be possible. 'Slice Timing' is the time at which each slice was acquired within each volume (frame) of the acquisition. Slice timing is not slice order -- rather, it is a list of times containing the time (in seconds) of each slice acquisition in relation to the beginning of volume acquisition.",
- },
- 15: {
- key: 'ECHO_TIME1-2_NOT_DEFINED',
- severity: 'error',
- reason: "You have to define 'EchoTime1' and 'EchoTime2' for this file.",
- },
- 16: {
- key: 'ECHO_TIME_MUST_DEFINE',
- severity: 'error',
- reason: "You have to define 'EchoTime' for this file.",
- },
- 17: {
- key: 'UNITS_MUST_DEFINE',
- severity: 'error',
- reason: "You have to define 'Units' for this file.",
- },
- 18: {
- key: 'PHASE_ENCODING_DIRECTION_MUST_DEFINE',
- severity: 'error',
- reason: "You have to define 'PhaseEncodingDirection' for this file.",
- },
- 19: {
- key: 'TOTAL_READOUT_TIME_MUST_DEFINE',
- severity: 'error',
- reason: "You have to define 'TotalReadoutTime' for this file.",
- },
- 20: {
- key: 'EVENTS_COLUMN_ONSET',
- severity: 'error',
- reason: "First column of the events file must be named 'onset'",
- },
- 21: {
- key: 'EVENTS_COLUMN_DURATION',
- severity: 'error',
- reason: "Second column of the events file must be named 'duration'",
- },
- 22: {
- key: 'TSV_EQUAL_ROWS',
- severity: 'error',
- reason:
- 'All rows must have the same number of columns as there are headers.',
- },
- 23: {
- key: 'TSV_EMPTY_CELL',
- severity: 'error',
- reason:
- 'Empty cell in TSV file detected: The proper way of labeling missing values is "n/a".',
- },
- 24: {
- key: 'TSV_IMPROPER_NA',
- severity: 'warning',
- reason: 'A proper way of labeling missing values is "n/a".',
- },
- 25: {
- key: 'EVENTS_TSV_MISSING',
- severity: 'warning',
- reason:
- 'Task scans should have a corresponding events.tsv file. If this is a resting state scan you can ignore this warning or rename the task to include the word "rest".',
- },
- 26: {
- key: 'NIFTI_HEADER_UNREADABLE',
- severity: 'error',
- reason:
- 'We were unable to parse header data from this NIfTI file. Please ensure it is not corrupted or mislabeled.',
- },
- 27: {
- key: 'JSON_INVALID',
- severity: 'error',
- reason: 'Not a valid JSON file.',
- },
- 28: {
- key: 'GZ_NOT_GZIPPED',
- severity: 'error',
- reason: 'This file ends in the .gz extension but is not actually gzipped.',
- },
- 29: {
- key: 'VOLUME_COUNT_MISMATCH',
- severity: 'error',
- reason:
- 'The number of volumes in this scan does not match the number of volumes in the corresponding .bvec and .bval files.',
- },
- 30: {
- key: 'BVAL_MULTIPLE_ROWS',
- severity: 'error',
- reason: '.bval files should contain exactly one row of volumes.',
- },
- 31: {
- key: 'BVEC_NUMBER_ROWS',
- severity: 'error',
- reason: '.bvec files should contain exactly three rows of volumes.',
- },
- 32: {
- key: 'DWI_MISSING_BVEC',
- severity: 'error',
- reason: 'DWI scans should have a corresponding .bvec file.',
- },
- 33: {
- key: 'DWI_MISSING_BVAL',
- severity: 'error',
- reason: 'DWI scans should have a corresponding .bval file.',
- },
- 36: {
- key: 'NIFTI_TOO_SMALL',
- severity: 'error',
- reason: 'This file is too small to contain the minimal NIfTI header.',
- },
- 37: {
- key: 'INTENDED_FOR',
- severity: 'error',
- reason: "'IntendedFor' field needs to point to an existing file.",
- },
- 38: {
- key: 'INCONSISTENT_SUBJECTS',
- severity: 'warning',
- reason:
- 'Not all subjects contain the same files. Each subject should contain the same number of files with ' +
- 'the same naming unless some files are known to be missing.',
- },
- 39: {
- key: 'INCONSISTENT_PARAMETERS',
- severity: 'warning',
- reason: 'Not all subjects/sessions/runs have the same scanning parameters.',
- },
- 40: {
- key: 'NIFTI_DIMENSION',
- severity: 'warning',
- reason:
- "NIfTI file's header field for dimension information blank or too short.",
- },
- 41: {
- key: 'NIFTI_UNIT',
- severity: 'warning',
- reason:
- "NIfTI file's header field for unit information for x, y, z, and t dimensions empty or too short",
- },
- 42: {
- key: 'NIFTI_PIXDIM',
- severity: 'warning',
- reason:
- "NIfTI file's header field for pixel dimension information empty or too short.",
- },
- 43: {
- key: 'ORPHANED_SYMLINK',
- severity: 'error',
- reason:
- 'This file appears to be an orphaned symlink. Make sure it correctly points to its referent.',
- },
- 44: {
- key: 'FILE_READ',
- severity: 'error',
- reason:
- 'We were unable to read this file. Make sure it contains data (file size > 0 kB) and is not corrupted, incorrectly named, or incorrectly symlinked.',
- },
- 45: {
- key: 'SUBJECT_FOLDERS',
- severity: 'error',
- reason:
- 'There are no subject folders (labeled "sub-*") in the root of this dataset.',
- },
- 46: {
- key: 'BVEC_ROW_LENGTH',
- severity: 'error',
- reason:
- 'Each row in a .bvec file should contain the same number of values.',
- },
- 47: {
- key: 'B_FILE',
- severity: 'error',
- reason:
- '.bval and .bvec files must be single space delimited and contain only numerical values.',
- },
- 48: {
- key: 'PARTICIPANT_ID_COLUMN',
- severity: 'error',
- reason:
- "Participants and phenotype .tsv files must have a 'participant_id' column.",
- },
- 49: {
- key: 'PARTICIPANT_ID_MISMATCH',
- severity: 'error',
- reason:
- 'Participant labels found in this dataset did not match the values in participant_id column found in the participants.tsv file.',
- },
- 50: {
- key: 'TASK_NAME_MUST_DEFINE',
- severity: 'error',
- reason: "You have to define 'TaskName' for this file.",
- },
- 51: {
- key: 'PHENOTYPE_SUBJECTS_MISSING',
- severity: 'error',
- reason:
- 'A phenotype/ .tsv file lists subjects that were not found in the dataset.',
- },
- 52: {
- key: 'STIMULUS_FILE_MISSING',
- severity: 'error',
- reason: 'A stimulus file was declared but not found in the dataset.',
- },
- 53: {
- key: 'NO_T1W',
- severity: 'ignore',
- reason: 'Dataset does not contain any T1w scans.',
- },
- 54: {
- key: 'BOLD_NOT_4D',
- severity: 'error',
- reason: 'Bold scans must be 4 dimensional.',
- },
- 55: {
- key: 'JSON_SCHEMA_VALIDATION_ERROR',
- severity: 'error',
- reason:
- 'Invalid JSON file. The file is not formatted according the schema.',
- },
- 56: {
- key: 'Participants age 89 or higher',
- severity: 'warning',
- reason:
- 'As per section 164.514(C) of "The De-identification Standard" under HIPAA guidelines, participants with age 89 or higher should be tagged as 89+. More information can be found at https://www.hhs.gov/hipaa/for-professionals/privacy/special-topics/de-identification/#standard',
- },
- 57: {
- key: 'DATASET_DESCRIPTION_JSON_MISSING',
- severity: 'error',
- reason:
- 'The compulsory file /dataset_description.json is missing. See Section 03 (Modality agnostic files) of the BIDS specification.',
- },
- 58: {
- key: 'TASK_NAME_CONTAIN_ILLEGAL_CHARACTER',
- severity: 'error',
- reason:
- 'Task Name contain an Illegal Character hyphen or underscore. Please edit the filename as per BIDS spec.',
- },
- 59: {
- key: 'ACQ_NAME_CONTAIN_ILLEGAL_CHARACTER',
- severity: 'error',
- reason:
- 'acq Name contain an Illegal Character hyphen or underscore. Please edit the filename as per BIDS spec.',
- },
- 60: {
- key: 'SFORM_AND_QFORM_IN_IMAGE_HEADER_ARE_ZERO',
- severity: 'error',
- reason:
- 'sform_code and qform_code in the image header are 0. The image/file will be considered invalid or assumed to be in LAS orientation.',
- },
- 61: {
- key: 'QUICK_VALIDATION_FAILED',
- severity: 'error',
- reason:
- 'Quick validation failed - the general folder structure does not resemble a BIDS dataset. Have you chosen the right folder (with "sub-*/" subfolders)? Check for structural/naming issues and presence of at least one subject.',
- },
- 62: {
- key: 'SUBJECT_VALUE_CONTAINS_ILLEGAL_CHARACTER',
- severity: 'error',
- reason:
- 'Sub label contain an Illegal Character hyphen or underscore. Please edit the filename as per BIDS spec.',
- },
- 63: {
- key: 'SESSION_VALUE_CONTAINS_ILLEGAL_CHARACTER',
- severity: 'error',
- reason:
- 'Ses label contain an Illegal Character hyphen or underscore. Please edit the filename as per BIDS spec.',
- },
- 64: {
- key: 'SUBJECT_LABEL_IN_FILENAME_DOESNOT_MATCH_DIRECTORY',
- severity: 'error',
- reason:
- "Subject label in the filename doesn't match with the path of the file. File seems to be saved in incorrect subject directory.",
- },
- 65: {
- key: 'SESSION_LABEL_IN_FILENAME_DOESNOT_MATCH_DIRECTORY',
- severity: 'error',
- reason:
- "Session label in the filename doesn't match with the path of the file. File seems to be saved in incorrect session directory.",
- },
- 66: {
- key: 'SLICETIMING_VALUES_GREATOR_THAN_REPETITION_TIME',
- severity: 'error',
- reason:
- '"SliceTiming" value/s contains invalid value as it is greater than RepetitionTime. SliceTiming values should be in seconds not milliseconds (common mistake).',
- },
- 67: {
- key: 'NO_VALID_DATA_FOUND_FOR_SUBJECT',
- severity: 'error',
- reason: 'No BIDS compatible data found for at least one subject.',
- },
- 68: {
- key: 'FILENAME_COLUMN',
- severity: 'error',
- reason: "_scans.tsv files must have a 'filename' column.",
- },
- 70: {
- key: 'WRONG_NEW_LINE',
- severity: 'error',
- reason:
- "All TSV files must use Line Feed '\\n' characters to denote new lines. This files uses Carriage Return '\\r'.",
- },
- 71: {
- key: 'MISSING_TSV_COLUMN_CHANNELS',
- severity: 'error',
- reason:
- "The column names of the channels file must begin with ['name', 'type', 'units']",
- },
- 72: {
- key: 'MISSING_TSV_COLUMN_IEEG_CHANNELS',
- severity: 'error',
- reason:
- "The column names of the channels file must begin with ['name', 'type', 'units', 'low_cutoff', 'high_cutoff']",
- },
- 73: {
- key: 'MISSING_TSV_COLUMN_IEEG_ELECTRODES',
- severity: 'error',
- reason:
- "The column names of the electrodes file must begin with ['name', 'x', 'y', 'z', 'size']",
- },
- 74: {
- key: 'DUPLICATE_NIFTI_FILES',
- severity: 'error',
- reason: "NIfTI file exist with both '.nii' and '.nii.gz' extensions.",
- },
- 75: {
- key: 'NIFTI_PIXDIM4',
- severity: 'error',
- reason: "NIfTI file's header is missing time dimension information.",
- },
- 76: {
- key: 'EFFECTIVEECHOSPACING_TOO_LARGE',
- severity: 'error',
- reason: "Abnormally high value of 'EffectiveEchoSpacing'.",
- },
- 77: {
- key: 'UNUSED_STIMULUS',
- severity: 'warning',
- reason:
- 'There are files in the /stimuli directory that are not utilized in any _events.tsv file.',
- },
- 78: {
- key: 'CHANNELS_COLUMN_SFREQ',
- severity: 'error',
- reason:
- "Fourth column of the channels file must be named 'sampling_frequency'",
- },
- 79: {
- key: 'CHANNELS_COLUMN_LOWCUT',
- severity: 'error',
- reason: "Third column of the channels file must be named 'low_cutoff'",
- },
- 80: {
- key: 'CHANNELS_COLUMN_HIGHCUT',
- severity: 'error',
- reason: "Third column of the channels file must be named 'high_cutoff'",
- },
- 81: {
- key: 'CHANNELS_COLUMN_NOTCH',
- severity: 'error',
- reason: "Third column of the channels file must be named 'notch'",
- },
- 82: {
- key: 'CUSTOM_COLUMN_WITHOUT_DESCRIPTION',
- severity: 'warning',
- reason:
- 'Tabular file contains custom columns not described in a data dictionary',
- },
- 83: {
- key: 'ECHOTIME1_2_DIFFERENCE_UNREASONABLE',
- severity: 'error',
- reason:
- 'The value of (EchoTime2 - EchoTime1) should be within the range of 0.0001 - 0.01.',
- },
- 84: {
- key: 'ACQTIME_FMT',
- severity: 'error',
- reason:
- 'Entries in the "acq_time" column of _scans.tsv should be expressed in the following format YYYY-MM-DDTHH:mm:ss[.000000] (year, month, day, hour (24h), minute, second, and optionally fractional second; this is equivalent to the RFC3339 "date-time" format.',
- },
- 85: {
- key: 'SUSPICIOUSLY_LONG_EVENT_DESIGN',
- severity: 'warning',
- reason:
- 'The onset of the last event is after the total duration of the corresponding scan. This design is suspiciously long. ',
- },
- 86: {
- key: 'SUSPICIOUSLY_SHORT_EVENT_DESIGN',
- severity: 'warning',
- reason:
- 'The onset of the last event is less than half the total duration of the corresponding scan. This design is suspiciously short. ',
- },
- 87: {
- key: 'SLICETIMING_ELEMENTS',
- severity: 'warning',
- reason:
- "The number of elements in the SliceTiming array should match the 'k' dimension of the corresponding NIfTI volume.",
- },
- 88: {
- key: 'MALFORMED_BVEC',
- severity: 'error',
- reason:
- 'The contents of this .bvec file are undefined or severely malformed. ',
- },
- 89: {
- key: 'MALFORMED_BVAL',
- severity: 'error',
- reason:
- 'The contents of this .bval file are undefined or severely malformed. ',
- },
- 90: {
- key: 'SIDECAR_WITHOUT_DATAFILE',
- severity: 'error',
- reason: 'A json sidecar file was found without a corresponding data file',
- },
- 91: {
- key: '_FIELDMAP_WITHOUT_MAGNITUDE_FILE',
- severity: 'error',
- reason:
- '_fieldmap.nii[.gz] file does not have accompanying _magnitude.nii[.gz] file. ',
- },
- 92: {
- key: 'MISSING_MAGNITUDE1_FILE',
- severity: 'warning',
- reason:
- 'Each _phasediff.nii[.gz] file should be associated with a _magnitude1.nii[.gz] file.',
- },
- 93: {
- key: 'EFFECTIVEECHOSPACING_LARGER_THAN_TOTALREADOUTTIME',
- severity: 'error',
- reason:
- 'EffectiveEchoSpacing should always be smaller than TotalReadoutTime. ',
- },
- 94: {
- key: 'MAGNITUDE_FILE_WITH_TOO_MANY_DIMENSIONS',
- severity: 'error',
- reason:
- '_magnitude1.nii[.gz] and _magnitude2.nii[.gz] files must have exactly three dimensions. ',
- },
- 95: {
- key: 'T1W_FILE_WITH_TOO_MANY_DIMENSIONS',
- severity: 'error',
- reason: '_T1w.nii[.gz] files must have exactly three dimensions. ',
- },
- 96: {
- key: 'MISSING_TSV_COLUMN_EEG_ELECTRODES',
- severity: 'error',
- reason:
- "The column names of the electrodes file must begin with ['name', 'x', 'y', 'z']",
- },
- 97: {
- key: 'MISSING_SESSION',
- severity: 'warning',
- reason: 'Not all subjects contain the same sessions.',
- },
- 98: {
- key: 'INACCESSIBLE_REMOTE_FILE',
- severity: 'error',
- reason:
- 'This file appears to be a symlink to a remote annexed file but could not be accessed from any of the configured remotes.',
- },
- 99: {
- key: 'EMPTY_FILE',
- severity: 'error',
- reason: 'Empty files not allowed.',
- },
- 100: {
- key: 'BRAINVISION_LINKS_BROKEN',
- severity: 'error',
- reason:
- 'Internal file pointers in BrainVision file triplet (*.eeg, *.vhdr, and *.vmrk) are broken or some files do not exist.',
- },
- 101: {
- key: 'README_FILE_MISSING',
- severity: 'warning',
- reason:
- 'The recommended file /README is missing. See Section 03 (Modality agnostic files) of the BIDS specification.',
- },
- 102: {
- key: 'TOO_FEW_AUTHORS',
- severity: 'warning',
- reason:
- 'The Authors field of dataset_description.json should contain an array of fields - with one author per field. This was triggered based on the presence of only one author field. Please ignore if all contributors are already properly listed.',
- },
- 103: {
- key: 'MULTIPLE_COMMAS_IN_AUTHOR_FIELD',
- severity: 'error',
- reason:
- 'The Authors field of dataset_description.json should contain an array of fields - with one author per field. This was triggered based on the presence of multiple commas in a single author field. Please ensure your authors are properly formatted.',
- },
- 104: {
- key: 'HED_ERROR',
- severity: 'error',
- reason: 'The validation on this HED string returned an error.',
- },
- 105: {
- key: 'HED_WARNING',
- severity: 'warning',
- reason: 'The validation on this HED string returned a warning.',
- },
- 106: {
- key: 'HED_INTERNAL_ERROR',
- severity: 'error',
- reason: 'An internal error occurred during HED validation.',
- },
- 107: {
- key: 'HED_INTERNAL_WARNING',
- severity: 'warning',
- reason: 'An internal warning occurred during HED validation.',
- },
- 108: {
- key: 'HED_MISSING_VALUE_IN_SIDECAR',
- severity: 'warning',
- reason:
- 'The json sidecar does not contain this column value as a possible key to a HED string.',
- },
- 109: {
- key: 'HED_VERSION_NOT_DEFINED',
- severity: 'warning',
- reason:
- "You should define 'HEDVersion' for this file. If you don't provide this information, the HED validation will use the latest version available.",
- },
- 113: {
- key: 'NO_AUTHORS',
- severity: 'warning',
- reason:
- 'The Authors field of dataset_description.json should contain an array of fields - with one author per field. This was triggered because there are no authors, which will make DOI registration from dataset metadata impossible.',
- },
- 114: {
- key: 'INCOMPLETE_DATASET',
- severity: 'error',
- reason:
- 'This dataset contains remote files. If you would like to validate with remote files, use the --remoteFiles option.',
- },
- 115: {
- key: 'EMPTY_DATASET_NAME',
- severity: 'warning',
- reason:
- 'The Name field of dataset_description.json is present but empty of visible characters.',
- },
- 123: {
- key: 'INVALID JSON ENCODING',
- severity: 'error',
- reason: 'JSON files must be valid utf-8.',
- },
- 124: {
- key: 'INVALID_TSV_UNITS',
- severity: 'error',
- reason:
- 'Units in .tsv files must be valid SI units as described in the BIDS spec Appendix V (https://bids-specification.readthedocs.io/en/stable/99-appendices/05-units.html).',
- },
- 125: {
- key: 'CHANNELS_COLUMN_STATUS',
- severity: 'error',
- reason:
- 'Status column in channels.tsv files must contain only one of two values: good or bad. Per the BIDS spec: (https://bids-specification.readthedocs.io/en/stable/04-modality-specific-files/04-intracranial-electroencephalography.html#channels-description-_channelstsv).',
- },
- 126: {
- key: 'MISSING_TSV_COLUMN_TIME',
- severity: 'error',
- reason: '*_blood.tsv require a time column.',
- },
- 127: {
- key: 'NOT_IN_USE',
- severity: 'error',
- reason: 'Code 127 is currently not used or reserved.',
- },
- 128: {
- key: 'NO_GENETIC_DATABASE',
- severity: 'error',
- reason:
- 'A genetic_info.json file is present but no Database field present in Genetics object in dataset_description.json.',
- },
- 129: {
- key: 'SCANS_FILENAME_NOT_MATCH_DATASET',
- severity: 'error',
- reason:
- 'The filename in scans.tsv file does not match what is present in the BIDS dataset.',
- },
- 130: {
- key: 'CHANNELS_COLUMN_TYPE_UPPER_CASE',
- severity: 'error',
- reason:
- 'Type column in channels.tsv files should consist of upper-case characters.',
- },
- 131: {
- key: 'CHANNELS_COLUMN_TYPE',
- severity: 'error',
- reason:
- 'Type column in channels.tsv files should only consist of values allowed in the specification for MEG/EEG/iEEG data.',
- },
- 133: {
- key: 'LABELING_TYPE_MUST_DEFINE',
- severity: 'error',
- reason:
- "You should define 'ArterialSpinLabelingType' for this file. 'ArterialSpinLabelingType' can be CASL, PCASL, PASL.",
- },
- 134: {
- key: 'LABELING_DURATION_MUST_DEFINE',
- severity: 'error',
- reason:
- "You should define 'LabelingDuration' for this file. 'LabelingDuration' is the total duration of the labeling pulse train, in seconds, corresponding to the temporal width of the labeling bolus for `(P)CASL`. In case all control-label volumes (or deltam or CBF) have the same `LabelingDuration`, a scalar must be specified. In case the control-label volumes (or deltam or cbf) have a different `LabelingDuration`, an array of numbers must be specified, for which any `m0scan` in the timeseries has a `LabelingDuration` of zero. In case an array of numbers is provided, its length should be equal to the number of volumes specified in `*_aslcontext.tsv`. Corresponds to DICOM Tag 0018,9258 `ASL Pulse Train Duration`.",
- },
- 135: {
- key: 'POST_LABELING_DELAY_MUST_DEFINE',
- severity: 'error',
- reason:
- "You should define 'PostLabelingDelay' for this file. 'PostLabelingDelay' is the time, in seconds, after the end of the labeling (for (P)CASL) or middle of the labeling pulse (for PASL) until the middle of the excitation pulse applied to the imaging slab (for 3D acquisition) or first slice (for 2D acquisition). Can be a number (for a single-PLD time series) or an array of numbers (for multi-PLD and Look-Locker). In the latter case, the array of numbers contains the PLD of each volume (i.e. each 'control' and 'label') in the acquisition order. Any image within the time-series without a PLD (e.g. an 'm0scan') is indicated by a zero. Based on DICOM Tags 0018,9079 Inversion Times and 0018,0082 InversionTime.",
- },
- 136: {
- key: 'BACKGROUND_SUPPRESSION_MUST_DEFINE',
- severity: 'error',
- reason:
- "You should define 'BackgroundSuppression' for this file. 'BackGroundSuppression' is a boolean indicating if background suppression is used.",
- },
- 137: {
- key: 'VASCULAR_CRUSHING_MUST_DEFINE',
- severity: 'warning',
- reason:
- "It is recommended to define 'VascularCrushing' for this file. 'VascularCrushing' is a boolean value indicating if an ASL crusher method is used.",
- },
- 138: {
- key: 'PULSE_SEQUENCE_DETAILS_MISSING',
- severity: 'warning',
- reason:
- "It is recommended to define 'PulseSequenceDetails' for this file. 'PulseSequenceDetails' is the information beyond pulse sequence type that identifies the specific pulse sequence used (for example, 'Standard Siemens Sequence distributed with the VB17 software', 'Siemens WIP ### version #.##', or 'Sequence written by X using a version compiled on MM/DD/YYYY').",
- },
- 139: {
- key: 'BLACKLISTED_MODALITY',
- severity: 'error',
- reason:
- 'Found a modality that has been blacklisted through validator configuration.',
- },
- 140: {
- key: '140_EMPTY',
- severity: 'warning',
- reason: '',
- },
- 141: {
- key: '141_EMPTY',
- severity: 'warning',
- reason: '',
- },
- 142: {
- key: 'LABELING_SLAB_THICKNESS_MISSING',
- severity: 'warning',
- reason:
- "It is recommended to define 'LabelingSlabThickness' for this file. 'LabelingSlabThickness' is the thickness of the labeling slab in millimeters. For non-selective FAIR a zero is entered. Corresponds to DICOM Tag 0018,9254 ASL Slab Thickness.",
- },
- 143: {
- key: 'ACQUISITION_VOXELSIZE_MISSING',
- severity: 'warning',
- reason:
- "It is recommended to define 'AcquisitionVoxelSize' for this file. 'AcquisitionVoxelSize' is an array of numbers with a length of 3, in millimeters. This parameter denotes the original acquisition voxel size, excluding any inter-slice gaps and before any interpolation or resampling within reconstruction or image processing. Any point spread function effects (e.g. due to T2-blurring) that would decrease the effective resolution are not considered here.",
- },
- 144: {
- key: 'BACKGROUND_SUPPRESSION_PULSE_TIME_MISSING',
- severity: 'warning',
- reason:
- "It is recommended to define 'BackgroundSuppressionPulseTime' for this file, when the 'BackgroundSuppression' is set to true. 'BackGroundSuppressionPulseTime' is an array of numbers containing timing, in seconds, of the background suppression pulses with respect to the start of the labeling. In case of multi-PLD with different background suppression pulse times, only the pulse time of the first PLD should be defined.",
- },
- 145: {
- key: 'VASCULAR_CRUCHING_VENC_MISSING',
- severity: 'warning',
- reason:
- "It is recommended to define 'VascularCrushingVENC' for this file, when the 'VascularCrushing' is set to true. 'VascularCrushingVENC' is the crusher gradient strength, in centimeters per second. Specify either one number for the total time-series, or provide an array of numbers, for example when using QUASAR, using the value zero to identify volumes for which 'VascularCrushing' was turned off. Corresponds to DICOM Tag 0018,925A ASL Crusher Flow Limit.",
- },
- 147: {
- key: 'PASL_BOLUS_CUT_OFF_FLAG',
- severity: 'error',
- reason:
- "You should define the 'BolusCutOffFlag' for this file. 'BolusCutOffFlag' is a boolean indicating if a bolus cut-off technique is used. Corresponds to DICOM Tag 0018,925C ASL Bolus Cut-off Flag.",
- },
- 149: {
- key: 'PASL_BOLUS_CUT_OFF_DELAY_TIME',
- severity: 'error',
- reason:
- "It is required to define 'BolusCutOffDelayTime' for this file, when 'BolusCutOffFlag' is set to true. 'BolusCutOffDelayTime' is the duration between the end of the labeling and the start of the bolus cut-off saturation pulse(s), in seconds. This can be a number or array of numbers, of which the values must be non-negative and monotonically increasing, depending on the number of bolus cut-off saturation pulses. For Q2TIPS, only the values for the first and last bolus cut-off saturation pulses are provided. Based on DICOM Tag 0018,925F ASL Bolus Cut-off Delay Time.",
- },
- 150: {
- key: 'PASL_BOLUS_CUT_OFF_TECHNIQUE',
- severity: 'error',
- reason:
- "It is required to define 'BolusCutOffTechnique' for this file, when 'BolusCutOffFlag' is set to true. 'BolusCutOffTechnique' is the name of the technique used (e.g. Q2TIPS, QUIPSS, QUIPSSII). Corresponds to DICOM Tag 0018,925E ASL Bolus Cut-off Technique.",
- },
- 153: {
- key: 'M0Type_NOT_SET',
- severity: 'error',
- reason:
- "You should define the 'M0Type' for this file. 'M0Type' describes the presence of M0 information, as either: βSeparateβ when a separate `*_m0scan.nii[.gz]` is present, βIncludedβ when an m0scan volume is contained within the current β*_asl.nii[.gz]β, βEstimateβ when a single whole-brain M0 value is provided, or βAbsentβ when no specific M0 information is present.",
- },
- 154: {
- key: 'M0Type_SET_INCORRECTLY',
- severity: 'error',
- reason:
- "M0Type was not defined correctly. If 'M0Type' is equal to included, the corresponding '*_aslcontext.tsv' should contain the 'm0scan' volume.",
- },
- 155: {
- key: 'MRACQUISITIONTYPE_MUST_DEFINE',
- severity: 'error',
- reason:
- "You should define 'MRAcquisitionType' for this file. 'MRAcquistionType' is the type of sequence readout with possible values: `2D` or `3D`. Corresponds to DICOM Tag 0018,0023 `MR Acquisition Type`.",
- },
- 156: {
- key: 'ACQUISITION_VOXELSIZE_WRONG',
- severity: 'warning',
- reason:
- "The 'AcquisitionVoxelSize' field length is not 3. 'AcquisitionVoxelSize' should be defined as an array of numbers with a length of 3, in millimeters. This parameter denotes the original acquisition voxel size, excluding any inter-slice gaps and before any interpolation or resampling within reconstruction or image processing. Any point spread function effects (e.g. due to T2-blurring) that would decrease the effective resolution are not considered here.",
- },
- 157: {
- key: 'LABELLING_DURATION_LENGTH_NOT_MATCHING_NIFTI',
- severity: 'error',
- reason:
- "The number of values for 'LabelingDuration' for this file does not match the 4th dimension of the NIfTI header. 'LabelingDuration' is the total duration of the labeling pulse train, in seconds, corresponding to the temporal width of the labeling bolus for `(P)CASL`. In case all control-label volumes (or deltam or CBF) have the same `LabelingDuration`, a scalar must be specified. In case the control-label volumes (or deltam or cbf) have a different `LabelingDuration`, an array of numbers must be specified, for which any `m0scan` in the timeseries has a `LabelingDuration` of zero. In case an array of numbers is provided, its length should be equal to the number of volumes specified in `*_aslcontext.tsv`. Corresponds to DICOM Tag 0018,9258 `ASL Pulse Train Duration`.",
- },
- 164: {
- key: 'ASL_MANUFACTURER_MISSING',
- severity: 'warning',
- reason:
- "It is recommended to define 'Manufacturer' for this file. 'Manufacturer' is the manufacturer of the equipment that produced the composite instances. Corresponds to DICOM Tag 0008, 0070 Manufacturer",
- },
- 165: {
- key: 'ASLCONTEXT_TSV_NOT_CONSISTENT',
- severity: 'error',
- reason:
- "The number of volumes in the '*_aslcontext.tsv' for this file does not match the number of values in the NIfTI header.",
- },
- 166: {
- key: 'LOOK_LOCKER_FLIP_ANGLE_MISSING',
- severity: 'error',
- reason:
- "You should define 'FlipAngle' for this file, in case of a LookLocker acquisition. 'FlipAngle' is the flip angle (FA) for the acquisition, specified in degrees. Corresponds to: DICOM Tag 0018, 1314 `Flip Angle`. The data type number may apply to files from any MRI modality concerned with a single value for this field, or to the files in a file collection where the value of this field is iterated using the flip entity. The data type array provides a value for each volume in a 4D dataset and should only be used when the volume timing is critical for interpretation of the data, such as in ASL or variable flip angle fMRI sequences.",
- },
- 167: {
- key: 'FLIP_ANGLE_MISSING',
- severity: 'warning',
- reason:
- "It is recommended to define 'FlipAngle' for this file. 'FlipAngle' is the flip angle (FA) for the acquisition, specified in degrees. Corresponds to: DICOM Tag 0018, 1314 `Flip Angle`. The data type number may apply to files from any MRI modality concerned with a single value for this field, or to the files in a file collection where the value of this field is iterated using the flip entity. The data type array provides a value for each volume in a 4D dataset and should only be used when the volume timing is critical for interpretation of the data, such as in ASL or variable flip angle fMRI sequences.",
- },
- 168: {
- key: 'FLIP_ANGLE_NOT_MATCHING_NIFTI',
- severity: 'error',
- reason:
- "The number of values for 'FlipAngle' for this file does not match the 4th dimension of the NIfTI header. 'FlipAngle' is the flip angle (FA) for the acquisition, specified in degrees. Corresponds to: DICOM Tag 0018, 1314 `Flip Angle`. The data type number may apply to files from any MRI modality concerned with a single value for this field, or to the files in a file collection where the value of this field is iterated using the flip entity. The data type array provides a value for each volume in a 4D dataset and should only be used when the volume timing is critical for interpretation of the data, such as in ASL or variable flip angle fMRI sequences.",
- },
- 169: {
- key: 'LABELING_DURATION_PASL_INCONSISTENT',
- severity: 'error',
- reason:
- "The 'LabelingDuration' for PASL 'ArterialSpinLabelingType' can be only a numerical value put to zero or unset. 'LabelingDuration' is the total duration of the labeling pulse train, in seconds, corresponding to the temporal width of the labeling bolus for `(P)CASL`. In case all control-label volumes (or deltam or CBF) have the same `LabelingDuration`, a scalar must be specified. In case the control-label volumes (or deltam or cbf) have a different `LabelingDuration`, an array of numbers must be specified, for which any `m0scan` in the timeseries has a `LabelingDuration` of zero. In case an array of numbers is provided, its length should be equal to the number of volumes specified in `*_aslcontext.tsv`. Corresponds to DICOM Tag 0018,9258 `ASL Pulse Train Duration`.",
- },
- 170: {
- key: 'CONTINOUS_RECORDING_MISSING_JSON',
- severity: 'error',
- reason:
- 'Continous recording data files are required to have an associated JSON metadata file.',
- },
- 171: {
- key: 'VOLUME_TIMING_MISSING_ACQUISITION_DURATION',
- severity: 'error',
- reason:
- "The field 'VolumeTiming' requires 'AcquisitionDuration' or 'SliceTiming' to be defined.",
- },
- 172: {
- key: 'FLIP_ANGLE_NOT_MATCHING_ASLCONTEXT_TSV',
- severity: 'error',
- reason:
- "The number of values for 'FlipAngle' for this file does not match the number of volumes in the 'sub-[_ses-][_acq-][_rec-][_run-]_aslcontext.tsv'. 'FlipAngle' is the flip angle (FA) for the acquisition, specified in degrees. Corresponds to: DICOM Tag 0018, 1314 `Flip Angle`. The data type number may apply to files from any MRI modality concerned with a single value for this field, or to the files in a file collection where the value of this field is iterated using the flip entity. The data type array provides a value for each volume in a 4D dataset and should only be used when the volume timing is critical for interpretation of the data, such as in ASL or variable flip angle fMRI sequences.",
- },
- 173: {
- key: 'POST_LABELING_DELAY_NOT_MATCHING_NIFTI',
- severity: 'error',
- reason:
- "The number of values for 'PostLabelingDelay' for this file does not match the 4th dimension of the NIfTI header. 'PostLabelingDelay' is the time, in seconds, after the end of the labeling (for (P)CASL) or middle of the labeling pulse (for PASL) until the middle of the excitation pulse applied to the imaging slab (for 3D acquisition) or first slice (for 2D acquisition). Can be a number (for a single-PLD time series) or an array of numbers (for multi-PLD and Look-Locker). In the latter case, the array of numbers contains the PLD of each volume (i.e. each 'control' and 'label') in the acquisition order. Any image within the time-series without a PLD (e.g. an 'm0scan') is indicated by a zero. Based on DICOM Tags 0018,9079 Inversion Times and 0018,0082 InversionTime.",
- },
- 174: {
- key: 'POST_LABELING_DELAY_NOT_MATCHING_ASLCONTEXT_TSV',
- severity: 'error',
- reason:
- "'The number of values for PostLabelingDelay' for this file does not match the number of volumes in the 'sub-[_ses-][_acq-][_rec-][_run-]_aslcontext.tsv'.'PostLabelingDelay' is the time, in seconds, after the end of the labeling (for (P)CASL) or middle of the labeling pulse (for PASL) until the middle of the excitation pulse applied to the imaging slab (for 3D acquisition) or first slice (for 2D acquisition). Can be a number (for a single-PLD time series) or an array of numbers (for multi-PLD and Look-Locker). In the latter case, the array of numbers contains the PLD of each volume (i.e. each 'control' and 'label') in the acquisition order. Any image within the time-series without a PLD (e.g. an 'm0scan') is indicated by a zero. Based on DICOM Tags 0018,9079 Inversion Times and 0018,0082 InversionTime.",
- },
- 175: {
- key: 'LABELLING_DURATION_NOT_MATCHING_ASLCONTEXT_TSV',
- severity: 'error',
- reason:
- "The number of values for 'LabelingDuration' for this file does not match the number of volumes in the 'sub-[_ses-][_acq-][_rec-][_run-]_aslcontext.tsv'. 'LabelingDuration' is the total duration of the labeling pulse train, in seconds, corresponding to the temporal width of the labeling bolus for `(P)CASL`. In case all control-label volumes (or deltam or CBF) have the same `LabelingDuration`, a scalar must be specified. In case the control-label volumes (or deltam or cbf) have a different `LabelingDuration`, an array of numbers must be specified, for which any `m0scan` in the timeseries has a `LabelingDuration` of zero. In case an array of numbers is provided, its length should be equal to the number of volumes specified in `*_aslcontext.tsv`. Corresponds to DICOM Tag 0018,9258 `ASL Pulse Train Duration`.",
- },
- 176: {
- key: 'ASLCONTEXT_TSV_INCONSISTENT',
- severity: 'error',
- reason:
- "In the 'sub-[_ses-][_acq-][_rec-][_run-]_aslcontext.tsv', the 'volume_type' can only be filled with volumes ['cbf' ,'m0scan', 'label', 'control', 'deltam'].",
- },
- 177: {
- key: 'REPETITIONTIMEPREPARATION_NOT_MATCHING_ASLCONTEXT_TSV',
- severity: 'error',
- reason:
- "The number of values of 'RepetitionTimePreparation' for this file does not match the number of volumes in the 'sub-[_ses-][_acq-][_rec-][_run-]_aslcontext.tsv'. 'RepetitionTimePreparation' is the interval, in seconds, that it takes a preparation pulse block to re-appear at the beginning of the succeeding (essentially identical) pulse sequence block. The data type number may apply to files from any MRI modality concerned with a single value for this field. The data type array provides a value for each volume in a 4D dataset and should only be used when the volume timing is critical for interpretation of the data, such as in ASL.",
- },
- 178: {
- key: 'VOLUME_TIMING_AND_REPETITION_TIME_MUTUALLY_EXCLUSIVE',
- severity: 'error',
- reason:
- "The fields 'VolumeTiming' and 'RepetitionTime' for this file are mutually exclusive. Choose 'RepetitionTime' when the same repetition time is used for all volumes, or 'VolumeTiming' when variable times are used.",
- },
- 179: {
- key: 'BACKGROUND_SUPPRESSION_PULSE_NUMBER_MISSING',
- severity: 'warning',
- reason:
- "It is recommended to define 'BackgroundSuppressionNumberPulses' for this file, in case 'BackgroundSuppression' is set to true. 'BackgroundSuppressionNumberPulses' is the number of background suppression pulses used. Note that this excludes any effect of background suppression pulses applied before the labeling.",
- },
- 180: {
- key: 'BACKGROUND_SUPPRESSION_PULSE_NUMBER_NOT_CONSISTENT',
- severity: 'warning',
- reason:
- "The 'BackgroundSuppressionNumberPulses' field is not consistent with the length of 'BackgroundSuppressionPulseTime'. 'BackgroundSuppressionNumberPulses' is the number of background suppression pulses used. Note that this excludes any effect of background suppression pulses applied before the labeling.",
- },
- 181: {
- key: 'TOTAL_ACQUIRED_VOLUMES_NOT_CONSISTENT',
- severity: 'warning',
- reason:
- "The number of values for 'TotalAcquiredVolumes' for this file does not match number of volumes in the 'sub-[_ses-][_acq-][_rec-][_run-]_aslcontext.tsv'. 'TotalAcquiredVolumes' is the original number of 3D volumes acquired for each volume defined in the 'sub-[_ses-][_acq-][_rec-][_run-]_aslcontext.tsv'.",
- },
- 182: {
- key: 'MAGNETIC_FIELD_STRENGTH_MISSING',
- severity: 'error',
- reason:
- "You should define 'MagneticFieldStrength' for this file. 'MagneticFieldStrength' is the nominal field strength of MR magnet in Tesla. Corresponds to DICOM Tag 0018,0087 'Magnetic Field Strength'.",
- },
- 183: {
- key: 'SLICE_TIMING_NOT_DEFINED_2D_ASL',
- severity: 'error',
- reason:
- "'You should define SliceTiming', in case 'SequenceType' is set to a 2D sequence. 'SliceTiming' is the time at which each slice was acquired within each volume (frame) of the acquisition. Slice timing is not slice order -- rather, it is a list of times containing the time (in seconds) of each slice acquisition in relation to the beginning of volume acquisition. The list goes through the slices along the slice axis in the slice encoding dimension (see below). Note that to ensure the proper interpretation of the `SliceTiming` field, it is important to check if the OPTIONAL `SliceEncodingDirection` exists. In particular, if `SliceEncodingDirection` is negative, the entries in `SliceTiming` are defined in reverse order with respect to the slice axis, such that the final entry in the `SliceTiming` list is the time of acquisition of slice 0. Without this parameter slice time correction will not be possible. ",
- },
- 184: {
- key: 'POST_LABELING_DELAY_GREATER',
- severity: 'warning',
- reason:
- "'PostLabelingDelay' is greater than 10, are you sure it's expressed in seconds? 'PostLabelingDelay' is the time, in seconds, after the end of the labeling (for (P)CASL) or middle of the labeling pulse (for PASL) until the middle of the excitation pulse applied to the imaging slab (for 3D acquisition) or first slice (for 2D acquisition). Can be a number (for a single-PLD time series) or an array of numbers (for multi-PLD and Look-Locker). In the latter case, the array of numbers contains the PLD of each volume (i.e. each 'control' and 'label') in the acquisition order. Any image within the time-series without a PLD (e.g. an 'm0scan') is indicated by a zero. Based on DICOM Tags 0018,9079 Inversion Times and 0018,0082 InversionTime.",
- },
- 186: {
- key: 'BOLUS_CUT_OFF_DELAY_TIME_GREATER',
- severity: 'warning',
- reason:
- "'BolusCutOffDelayTime' is greater than 10, are you sure it's expressed in seconds? 'BolusCutOffDelayTime' is duration between the end of the labeling and the start of the bolus cut-off saturation pulse(s), in seconds. This can be a number or array of numbers, of which the values must be non-negative and monotonically increasing, depending on the number of bolus cut-off saturation pulses. For Q2TIPS, only the values for the first and last bolus cut-off saturation pulses are provided. Based on DICOM Tag 0018,925F ASL Bolus Cut-off Delay Time.",
- },
- 187: {
- key: 'LABELING_DURATION_GREATER',
- severity: 'warning',
- reason:
- "'LabelingDuration' is greater than 10, are you sure it's expressed in seconds? 'LabelingDuration' is the total duration of the labeling pulse train, in seconds, corresponding to the temporal width of the labeling bolus for `(P)CASL`. In case all control-label volumes (or deltam or CBF) have the same `LabelingDuration`, a scalar must be specified. In case the control-label volumes (or deltam or cbf) have a different `LabelingDuration`, an array of numbers must be specified, for which any `m0scan` in the timeseries has a `LabelingDuration` of zero. In case an array of numbers is provided, its length should be equal to the number of volumes specified in `*_aslcontext.tsv`. Corresponds to DICOM Tag 0018,9258 `ASL Pulse Train Duration`.",
- },
- 188: {
- key: 'VOLUME_TIMING_NOT_MONOTONICALLY_INCREASING',
- severity: 'error',
- reason:
- "'VolumeTiming' is not monotonically increasing. 'VolumeTiming' is the time at which each volume was acquired during the acquisition, referring to the start of each readout in the ASL timeseries. Use this field instead of the 'RepetitionTime' field in the case that the ASL timeseries have a non-uniform time distance between acquired volumes. The list must have the same length as the 'sub-[_ses-][_acq-][_rec-][_run-]_aslcontext.tsv', and the numbers must be non-negative and monotonically increasing. If 'VolumeTiming' is defined, this requires acquisition time (TA) to be defined via 'AcquisitionDuration'.",
- },
- 189: {
- key: 'CASL_PCASL_NOT_ALLOWED_FIELDS',
- severity: 'error',
- reason:
- "You defined one of the not allowed fields in case of CASL or PCASL 'ArterialSpinLabelingType'. Please verify which field among 'PASLType', 'LabelingSlabThickness' 'BolusCutOffFlag', 'BolusCutOffTimingSequence', 'BolusCutOffDelayTime' and 'BolusCutOffTechnique' you have filled.",
- },
- 190: {
- key: 'PASL_NOT_ALLOWED_FIELDS',
- severity: 'error',
- reason:
- "You defined one of the not allowed fields in case of PASL 'ArterialSpinLabelingType'. Please verify which field among 'CASLType', 'PCASLType' 'LabelingPulseAverageGradient', 'LabelingPulseMaximumGradient', 'LabelingPulseAverageB1', 'LabelingPulseDuration', 'LabelingPulseFlipAngle', 'LabelingPulseInterval', 'LabelingDuration' you have filled.",
- },
- 191: {
- key: 'PCASL_CASL_LABELING_TYPE_NOT_ALLOWED',
- severity: 'error',
- reason:
- "You defined either the 'CASLType' with a PCASL 'LabellingType' or the 'PCASLType' with a CASL 'LabellingType'. This is not allowed, please check that these fields are filled correctly.",
- },
- 192: {
- key: 'BOLUS_CUT_OFF_DELAY_TIME_NOT_MONOTONICALLY_INCREASING',
- severity: 'error',
- reason:
- "'BolusCutOffDelayTime' is not monotonically increasing. 'BolusCutOffDelayTime' is the duration between the end of the labeling and the start of the bolus cut-off saturation pulse(s), in seconds. This can be a number or array of numbers, of which the values must be non-negative and monotonically increasing, depending on the number of bolus cut-off saturation pulses. For Q2TIPS, only the values for the first and last bolus cut-off saturation pulses are provided. Based on DICOM Tag 0018,925F ASL Bolus Cut-off Delay Time.",
- },
- 193: {
- key: 'ECHO_TIME_NOT_DEFINED',
- severity: 'error',
- reason:
- "You must define 'EchoTime' for this file. 'EchoTime' is the echo time (TE) for the acquisition, specified in seconds. Corresponds to DICOM Tag 0018, 0081 Echo Time (please note that the DICOM term is in milliseconds not seconds). The data type number may apply to files from any MRI modality concerned with a single value for this field, or to the files in a file collection where the value of this field is iterated using the echo entity. The data type array provides a value for each volume in a 4D dataset and should only be used when the volume timing is critical for interpretation of the data, such as in ASL or variable echo time fMRI sequences.",
- },
- 194: {
- key: 'MRACQUISITIONTYPE_MISSING',
- severity: 'warning',
- reason:
- "It is recommended to define 'MRAcquisitionType' for this file. 'MRAcquistionType' is the type of sequence readout with possible values: `2D` or `3D`. Corresponds to DICOM Tag 0018,0023 `MR Acquisition Type`.",
- },
- 195: {
- key: 'M0ESTIMATE_NOT_DEFINED',
- severity: 'error',
- reason:
- "You must define 'M0Estimate' for this file, in case 'M0Type' is defined as 'Estimate'. 'M0Estimate' is a single numerical whole-brain M0 value (referring to the M0 of blood), only if obtained externally (for example retrieved from CSF in a separate measurement).",
- },
- 196: {
- key: 'ECHO_TIME_NOT_CONSISTENT',
- severity: 'warning',
- reason:
- "The number of values for 'EchoTime' for this file does not match number of volumes in the 'sub-[_ses-][_acq-][_rec-][_run-]_aslcontext.tsv'. 'EchoTime' is the echo time (TE) for the acquisition, specified in seconds. ",
- },
- 197: {
- key: 'ECHO_TIME_ELEMENTS',
- severity: 'warning',
- reason:
- "The number of elements in the 'EchoTime' array should match the 'k' dimension of the corresponding NIfTI volume.",
- },
- 198: {
- key: 'M0Type_SET_INCORRECTLY_TO_ABSENT',
- severity: 'error',
- reason:
- "You defined M0Type as 'absent' while including a separate '*_m0scan.nii[.gz]' and '*_m0scan.json', or defining the 'M0Estimate' field. This is not allowed, please check that this field are filled correctly.",
- },
- 199: {
- key: 'M0Type_SET_INCORRECTLY_TO_ABSENT_IN_ASLCONTEXT',
- severity: 'error',
- reason:
- "You defined M0Type as 'absent' while including an m0scan volume within the '*_aslcontext.tsv'. This is not allowed, please check that this field are filled correctly.",
- },
- 200: {
- key: 'REPETITION_TIME_PREPARATION_MISSING',
- severity: 'error',
- reason:
- "You must define 'RepetitionTimePreparation' for this file. 'RepetitionTimePreparation' is the interval, in seconds, that it takes a preparation pulse block to re-appear at the beginning of the succeeding (essentially identical) pulse sequence block. The data type number may apply to files from any MRI modality concerned with a single value for this field. The data type array provides a value for each volume in a 4D dataset and should only be used when the volume timing is critical for interpretation of the data, such as in ASL.",
- },
- 201: {
- key: 'REPETITIONTIME_PREPARATION_NOT_CONSISTENT',
- severity: 'error',
- reason:
- "The number of values for 'RepetitionTimePreparation' for this file does not match the 4th dimension of the NIfTI header. 'RepetitionTimePreparation' is the interval, in seconds, that it takes a preparation pulse block to re-appear at the beginning of the succeeding (essentially identical) pulse sequence block. The data type number may apply to files from any MRI modality concerned with a single value for this field. The data type array provides a value for each volume in a 4D dataset and should only be used when the volume timing is critical for interpretation of the data, such as in ASL.",
- },
- 202: {
- key: 'M0Type_SET_INCORRECTLY',
- severity: 'error',
- reason:
- "M0Type was not defined correctly. If 'M0Type' is equal to separate, the dataset should include a *_m0scan.nii[.gz] and *_m0scan.json file.",
- },
- 211: {
- key: 'TSV_MISSING_REQUIRED_COLUMN',
- severity: 'error',
- reason:
- 'A TSV file is missing a column required by a value in its JSON sidecar.',
- },
- 212: {
- key: 'PARTICIPANT_ID_PATTERN',
- severity: 'error',
- reason:
- 'Participant_id column labels must consist of the pattern "sub-".',
- },
- 213: {
- key: 'README_FILE_SMALL',
- severity: 'warning',
- reason:
- 'The recommended file /README is very small. Please consider expanding it with additional information about the dataset.',
- },
- 214: {
- key: 'SAMPLES_TSV_MISSING',
- severity: 'error',
- reason:
- 'The compulsory file /samples.tsv is missing. See Section 03 (Modality agnostic files) of the BIDS specification.',
- },
- 215: {
- key: 'SAMPLE_ID_PATTERN',
- severity: 'error',
- reason:
- 'sample_id column labels must consist of the pattern "sample-".',
- },
- 216: {
- key: 'SAMPLE_ID_COLUMN',
- severity: 'error',
- reason: "Samples .tsv files must have a 'sample_id' column.",
- },
- 217: {
- key: 'PARTICIPANT_ID_COLUMN',
- severity: 'error',
- reason: "Samples .tsv files must have a 'participant_id' column.",
- },
- 218: {
- key: 'SAMPLE_TYPE_COLUMN',
- severity: 'error',
- reason: "Samples .tsv files must have a 'sample_type' column.",
- },
- 219: {
- key: 'SAMPLE_TYPE_VALUE',
- severity: 'error',
- reason:
- 'sample_type MUST consist of one of the following values: cell line, in vitro differentiated cells, primary cell, cell-free sample, cloning host, tissue, whole organisms, organoid or technical sample.',
- },
- 220: {
- key: 'SAMPLE_ID_DUPLICATE',
- severity: 'error',
- reason:
- 'Each sample from a same subject MUST be described by one and only one row.',
- },
- 221: {
- key: 'PIXEL_SIZE_INCONSISTENT',
- severity: 'error',
- reason:
- 'PixelSize need to be consistent with PhysicalSizeX, PhysicalSizeY and PhysicalSizeZ OME metadata fields',
- },
- 222: {
- key: 'INVALID_PIXEL_SIZE_UNIT',
- severity: 'warning',
- reason: 'PixelSize consistency is only validated for "mm", "Β΅m" and "nm".',
- },
- 223: {
- key: 'CHUNK_TRANSFORMATION_MATRIX_MISSING',
- severity: 'warning',
- reason:
- "It is recommended to define 'ChunkTransformationMatrix' for this file.",
- },
- 224: {
- key: 'OPTIONAL_FIELD_INCONSISTENT',
- severity: 'error',
- reason: 'Optional JSON field is not consistent with the OME-TIFF metadata',
- },
- 225: {
- key: 'NO_VALID_JSON',
- severity: 'error',
- reason: 'No valid JSON file found for this file',
- },
- 226: {
- key: 'UNSUPPORTED_BIG_TIFF',
- severity: 'warning',
- reason: 'Metadata consistency check skipped for BigTiff OME-TIFF file',
- },
- 227: {
- key: 'INCONSISTENT_TIFF_EXTENSION',
- severity: 'error',
- reason: 'Inconsistent TIFF file type and extension',
- },
- 228: {
- key: 'MULTIPLE_README_FILES',
- severity: 'error',
- reason:
- 'A BIDS dataset MUST NOT contain more than one `README` file (with or without extension) at its root directory.',
- },
- 229: {
- key: 'INCORRECT_ORDER_TSV_COLUMN_CHANNELS_IEEG',
- severity: 'error',
- reason:
- "The column names of the IEEG channels file must be in the following order ['name', 'type', 'units', 'low_cutoff', 'high_cutoff']",
- },
- 230: {
- key: 'INCORRECT_ORDER_TSV_COLUMN_CHANNELS_EEG',
- severity: 'error',
- reason:
- "The column names of the EEG channels file must be in the following order ['name', 'type', 'units']",
- },
- 231: {
- key: 'TSV_COLUMN_HEADER_DUPLICATE',
- severity: 'error',
- reason:
- 'Two elements in the first row of a TSV are the same. Each column header must be unique.',
- },
- 232: {
- key: 'TSV_COLUMN_HEADER_NA',
- severity: 'error',
- reason:
- 'An element in a tsv header is "n/a". A different header name should be chosen.',
- },
- 233: {
- key: 'MISSING_TSV_COLUMN_NIRS_OPTODES',
- severity: 'error',
- reason:
- "The column names of the optodes file must begin with ['name', 'type', 'x', 'y', 'z']",
- },
- 234: {
- key: 'MISSING_TSV_COLUMN_NIRS_CHANNELS',
- severity: 'error',
- reason:
- "The column names of the channels file must begin with ['name', 'type', 'source', 'detector', 'wavelength_nominal', 'units']",
- },
- 235: {
- key: 'MOTION_COMPONENT_IN_WRONG_COLUMN',
- severity: 'error',
- reason:
- "The 'component' column must be the second column in the channels.tsv file.",
- },
- 236: {
- key: 'MOTION_COMPONENT_INVLAID_VALUE',
- severity: 'error',
- reason:
- "Values in the 'component' column must be one of ['x', 'y', 'z', 'quat_x', 'quat_y', 'quat_z', 'quat_w', 'n/a'].",
- },
- 237: {
- key: 'PET_JSON_KEY_REQUIRED',
- severity: 'error',
- reason: 'A PET image JSON sidecar is missing a required field.',
- },
-}
diff --git a/legacy/bids-validator/utils/json.js b/legacy/bids-validator/utils/json.js
deleted file mode 100644
index ad3785ac..00000000
--- a/legacy/bids-validator/utils/json.js
+++ /dev/null
@@ -1,61 +0,0 @@
-import Issue from './issues'
-import { JSHINT } from 'jshint'
-
-/**
- * Similar to native JSON.parse but returns a promise and
- * runs jshint for more thorough error reporting
- */
-function parse(file, contents) {
- return new Promise((resolve) => {
- let jsObj
- let err
- try {
- jsObj = JSON.parse(contents)
- } catch (exception) {
- err = exception
- } finally {
- if (err) {
- jshint(file, contents, function (issues) {
- resolve({ issues, parsed: null })
- })
- } else {
- resolve({ issues: [], parsed: jsObj })
- }
- }
- })
-}
-
-/**
- * JSHint
- *
- * Checks known invalid JSON file
- * content in order to produce a
- * verbose error message.
- */
-function jshint(file, contents, callback) {
- var issues = []
- if (!JSHINT(contents)) {
- var out = JSHINT.data()
- for (var i = 0; out.errors.length > i; ++i) {
- var error = out.errors[i]
- if (error) {
- issues.push(
- new Issue({
- code: 27,
- file: file,
- line: error.line ? error.line : null,
- character: error.character ? error.character : null,
- reason: error.reason ? error.reason : null,
- evidence: error.evidence ? error.evidence : null,
- }),
- )
- }
- }
- }
- callback(issues)
-}
-
-export default {
- parse,
- jshint,
-}
diff --git a/legacy/bids-validator/utils/modalities.js b/legacy/bids-validator/utils/modalities.js
deleted file mode 100644
index 88d32735..00000000
--- a/legacy/bids-validator/utils/modalities.js
+++ /dev/null
@@ -1,75 +0,0 @@
-export default {
- /**
- * Group
- *
- * Takes an array of modalities and looks for
- * groupings defined in 'modalityGroups' and
- * replaces any perfectly matched groupings with
- * the grouping object key.
- */
- group: function (modalities) {
- var modalityGroups = [
- [['magnitude1', 'magnitude2', 'phase1', 'phase2'], 'fieldmap'],
- [['magnitude1', 'magnitude2', 'phasediff'], 'fieldmap'],
- [['magnitude1', 'phasediff'], 'fieldmap'],
- [['magnitude', 'fieldmap'], 'fieldmap'],
- [['epi'], 'fieldmap'],
- ]
-
- for (
- var groupTouple_i = 0;
- groupTouple_i < modalityGroups.length;
- groupTouple_i++
- ) {
- var groupSet = modalityGroups[groupTouple_i][0]
- var groupName = modalityGroups[groupTouple_i][1]
- var match = true
- for (var i = 0; i < groupSet.length; i++) {
- if (modalities.indexOf(groupSet[i]) === -1) {
- match = false
- }
- }
- if (match) {
- modalities.push(groupName)
- for (var j = 0; j < groupSet.length; j++) {
- modalities.splice(modalities.indexOf(groupSet[j]), 1)
- }
- }
- }
-
- return modalities
- },
- /*
- * Removed in #1122, but modified in BEP-009
- *
- * isCorrectModality: path => {
- * let isCorrectModality = false
- * // MRI
- * if (
- * path[0].includes('.nii') &&
- * ['anat', 'func', 'dwi', 'pet'].indexOf(path[1]) != -1
- * ) {
- * isCorrectModality = true
- * } else if (['.json', '.tsv'].some(v => path[0].includes(v))) {
- * const testPath = path[1]
- * switch (testPath) {
- * case 'meg':
- * // MEG
- * isCorrectModality = true
- * break
- * case 'eeg':
- * // EEG
- * isCorrectModality = true
- * break
- * case 'ieeg':
- * // iEEG
- * isCorrectModality = true
- * break
- * default:
- * break
- * }
- * }
- * return isCorrectModality
- * },
- */
-}
diff --git a/legacy/bids-validator/utils/options.js b/legacy/bids-validator/utils/options.js
deleted file mode 100644
index f428ce6f..00000000
--- a/legacy/bids-validator/utils/options.js
+++ /dev/null
@@ -1,105 +0,0 @@
-import path from 'path'
-import getFileStats from '../utils/files/getFileStats'
-import readFile from '../utils/files/readFile'
-import json from './json'
-import isNode from '../utils/isNode.js'
-
-let options
-
-export default {
- /**
- * Parse
- */
- parse: function (dir, args, callback) {
- options = args ? args : {}
- options = {
- ignoreWarnings: Boolean(options.ignoreWarnings),
- ignoreNiftiHeaders: Boolean(options.ignoreNiftiHeaders),
- ignoreSymlinks: Boolean(options.ignoreSymlinks),
- ignoreSubjectConsistency: Boolean(options.ignoreSubjectConsistency),
- blacklistModalities: options.blacklistModalities,
- verbose: Boolean(options.verbose),
- gitTreeMode: Boolean(options.gitTreeMode),
- remoteFiles: Boolean(options.remoteFiles),
- gitRef: options.gitRef || 'HEAD',
- config: options.config || {},
- }
- if (options.config && typeof options.config !== 'boolean') {
- this.parseConfig(dir, options.config, function (issues, config) {
- options.config = config
- callback(issues, options)
- })
- } else {
- callback(null, options)
- }
- },
-
- getOptions: () => {
- const readonlyOptions = Object.freeze({ ...options })
- return readonlyOptions
- },
-
- /**
- * Load Config
- */
- loadConfig: function (dir, config, callback) {
- if (typeof config === 'string') {
- let configFile
- if (isNode) {
- const configPath = path.isAbsolute(config)
- ? config
- : path.join(dir, config)
- configFile = { path: configPath }
- } else {
- // Grab file from FileList if a path was provided
- configFile = [...dir].find((f) => f.webkitRelativePath === config)
- // No matching config, return a default
- if (!configFile) {
- return callback(null, configFile, JSON.stringify({}))
- }
- }
- configFile.stats = getFileStats(configFile)
- readFile(configFile)
- .then((contents) => {
- callback(null, configFile, contents)
- })
- .catch((issue) => {
- // If the config does not exist, issue 44 is returned
- if (issue.code === 44) {
- callback(null, configFile, JSON.stringify({}))
- } else {
- callback([issue], configFile, null)
- }
- })
- } else if (typeof config === 'object') {
- callback(null, { path: 'config' }, JSON.stringify(config))
- }
- },
-
- /**
- * Parse Config
- */
- parseConfig: function (dir, config, callback) {
- this.loadConfig(dir, config, function (issues, file, contents) {
- if (issues) {
- callback(issues, null)
- } else {
- json.parse(file, contents).then(({ issues, parsed: jsObj }) => {
- if (issues && issues.length > 0) {
- callback(issues, null)
- } else {
- const parsedConfig = {
- ignore: jsObj.ignore ? [].concat(jsObj.ignore) : [],
- warn: jsObj.warn ? [].concat(jsObj.warn) : [],
- error: jsObj.error ? [].concat(jsObj.error) : [],
- ignoredFiles: jsObj.ignoredFiles
- ? [].concat(jsObj.ignoredFiles)
- : [],
- }
- callback(null, parsedConfig)
- }
- })
- }
- })
- },
-}
diff --git a/legacy/bids-validator/utils/promise_limiter.js b/legacy/bids-validator/utils/promise_limiter.js
deleted file mode 100644
index a5d37959..00000000
--- a/legacy/bids-validator/utils/promise_limiter.js
+++ /dev/null
@@ -1,7 +0,0 @@
-/* limits promises to LIMIT to prevent memory overuse */
-
-import pLimit from 'p-limit'
-
-const LIMIT = 200
-
-export default pLimit(LIMIT)
diff --git a/legacy/bids-validator/utils/prototype.js b/legacy/bids-validator/utils/prototype.js
deleted file mode 100644
index 6a5825ce..00000000
--- a/legacy/bids-validator/utils/prototype.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * Prototype
- *
- * A collection to extensions to native javascript prototypes.
- */
-
-// String - Ends With (Polyfill based on MDN recommendation)
-if (!String.prototype.endsWith) {
- String.prototype.endsWith = function (searchString, position) {
- var subjectString = this.toString()
- if (
- typeof position !== 'number' ||
- !isFinite(position) ||
- Math.floor(position) !== position ||
- position > subjectString.length
- ) {
- position = subjectString.length
- }
- position -= searchString.length
- var lastIndex = subjectString.indexOf(searchString, position)
- return lastIndex !== -1 && lastIndex === position
- }
-}
-
-// String - Includes
-if (!String.prototype.includes) {
- String.prototype.includes = function () {
- 'use strict'
- return String.prototype.indexOf.apply(this, arguments) !== -1
- }
-}
diff --git a/legacy/bids-validator/utils/summary/__tests__/collectDatatype.spec.js b/legacy/bids-validator/utils/summary/__tests__/collectDatatype.spec.js
deleted file mode 100644
index 425aa870..00000000
--- a/legacy/bids-validator/utils/summary/__tests__/collectDatatype.spec.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import {
- ds001421,
- ds001734,
- ds003400,
-} from '../../../tests/data/collectModalities-data'
-import collectDatatype from '../collectDataTypes'
-
-describe('collectDatatype()', () => {
- it('includes types such as T1w', () => {
- expect(collectDatatype(ds001734)).toEqual([
- 'magnitude1',
- 'magnitude2',
- 'phasediff',
- 'T1w',
- 'sbref',
- 'bold',
- 'events',
- ])
- expect(collectDatatype(ds001421)).toEqual(['pet', 'T1w'])
- })
- it('does not include T1w when missing', () => {
- expect(collectDatatype(ds003400)).not.toContain('T1w')
- })
-})
diff --git a/legacy/bids-validator/utils/summary/__tests__/collectModalities.spec.js b/legacy/bids-validator/utils/summary/__tests__/collectModalities.spec.js
deleted file mode 100644
index dd83b432..00000000
--- a/legacy/bids-validator/utils/summary/__tests__/collectModalities.spec.js
+++ /dev/null
@@ -1,57 +0,0 @@
-import {
- ds000247,
- ds001421,
- ds001734,
- ds002718,
- ds003400,
-} from '../../../tests/data/collectModalities-data'
-import { collectModalities } from '../collectModalities'
-
-describe('collectModalities()', () => {
- it('returns correct values for a PET dataset', () => {
- expect(collectModalities(ds001421)).toEqual({
- primary: ['PET', 'MRI'],
- secondary: ['MRI_Structural'],
- })
- })
- it('returns correct values for an MRI dataset', () => {
- expect(collectModalities(ds001734)).toEqual({
- primary: ['MRI'],
- secondary: ['MRI_Functional', 'MRI_Structural'],
- })
- })
- it('returns correct values for an EEG dataset', () => {
- expect(collectModalities(ds002718)).toEqual({
- primary: ['EEG', 'MRI'],
- secondary: ['MRI_Structural'],
- })
- })
- it('returns correct values for an iEEG dataset', () => {
- expect(collectModalities(ds003400)).toEqual({
- primary: ['iEEG'],
- secondary: [],
- })
- })
- it('returns correct values for an MEG dataset', () => {
- expect(collectModalities(ds000247)).toEqual({
- primary: ['MEG', 'MRI'],
- secondary: ['MRI_Structural'],
- })
- })
- it('sorts other modalities ahead of MRI on ties', () => {
- const tied = [
- '/sub-01/ses-02/pet/sub-01_ses-02_pet.nii.gz',
- '/sub-01/ses-02/anat/sub-01_ses-02_T1w.nii',
- ]
- expect(collectModalities(tied)).toEqual({
- primary: ['PET', 'MRI'],
- secondary: ['MRI_Structural'],
- })
- })
- it('returns empty arrays when no matches are found', () => {
- expect(collectModalities([])).toEqual({
- primary: [],
- secondary: [],
- })
- })
-})
diff --git a/legacy/bids-validator/utils/summary/__tests__/collectPetFields.spec.js b/legacy/bids-validator/utils/summary/__tests__/collectPetFields.spec.js
deleted file mode 100644
index 4ef4a252..00000000
--- a/legacy/bids-validator/utils/summary/__tests__/collectPetFields.spec.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import collectPetFields, { orderedList } from '../collectPetFields.js'
-import jsonContentsDict from '../../../tests/data/pet001_jsonContentsDict'
-
-describe('collectPetFields()', () => {
- it('extracts an ordered list of pet specific fields', () => {
- expect(collectPetFields(jsonContentsDict)).toEqual({
- BodyPart: ['Brain'],
- ScannerManufacturer: ['Siemens'],
- ScannerManufacturersModelName: [
- 'High-Resolution Research Tomograph (HRRT, CTI/Siemens)',
- ],
- TracerName: ['CIMBI-36'],
- TracerRadionuclide: ['C11'],
- })
- })
-})
-
-describe('orderedList()', () => {
- it('reduces a tally object to an ordered list', () => {
- expect(orderedList({ a: 3, b: 5, c: 1 })).toEqual(['b', 'a', 'c'])
- })
- it('handles empty objects', () => {
- expect(orderedList({})).toEqual([])
- })
-})
diff --git a/legacy/bids-validator/utils/summary/__tests__/collectSubjectMetadata.spec.js b/legacy/bids-validator/utils/summary/__tests__/collectSubjectMetadata.spec.js
deleted file mode 100644
index 229bc4cf..00000000
--- a/legacy/bids-validator/utils/summary/__tests__/collectSubjectMetadata.spec.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import collectSubjectMetadata from '../collectSubjectMetadata.js'
-
-const CRLFParticipantsTsv = 'participant_id\tsex\tage\r\nsub-01\tM\t25\r\n'
-
-describe('collectSubjectMetadata()', () => {
- it('handles Windows newline characters in column row', () => {
- expect(collectSubjectMetadata(CRLFParticipantsTsv)).toEqual([
- {
- age: 25,
- participantId: '01',
- sex: 'M',
- },
- ])
- })
-})
diff --git a/legacy/bids-validator/utils/summary/checkForDerivatives.js b/legacy/bids-validator/utils/summary/checkForDerivatives.js
deleted file mode 100644
index 04dced0b..00000000
--- a/legacy/bids-validator/utils/summary/checkForDerivatives.js
+++ /dev/null
@@ -1,9 +0,0 @@
-const derivativesFilePattern = /^\/derivatives\/\w+re/
-
-export default function checkForDerivatives(files) {
- return (
- Object.values(files).findIndex((file) =>
- derivativesFilePattern.test(file.relativePath),
- ) !== -1
- )
-}
diff --git a/legacy/bids-validator/utils/summary/collectDataTypes.js b/legacy/bids-validator/utils/summary/collectDataTypes.js
deleted file mode 100644
index 085d277d..00000000
--- a/legacy/bids-validator/utils/summary/collectDataTypes.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import type from '../type'
-
-/**
- * Collect all datatype suffixes for files that match a supported modality
- **/
-export const collectDataTypes = (filenames) => {
- const datatypes = []
- for (const path of filenames) {
- const pathParts = path.split('_')
- const suffix = pathParts[pathParts.length - 1]
-
- // check modality by data file extension ...
- // and capture data files for later sanity checks (when available)
- if (type.file.hasModality(path)) {
- // collect modality summary
- const dataType = suffix.slice(0, suffix.indexOf('.'))
- if (datatypes.indexOf(dataType) === -1) {
- datatypes.push(dataType)
- }
- }
- }
- return datatypes
-}
-
-export default collectDataTypes
diff --git a/legacy/bids-validator/utils/summary/collectModalities.js b/legacy/bids-validator/utils/summary/collectModalities.js
deleted file mode 100644
index d0e0a03a..00000000
--- a/legacy/bids-validator/utils/summary/collectModalities.js
+++ /dev/null
@@ -1,93 +0,0 @@
-import type from '../type'
-
-export const collectModalities = (filenames) => {
- const modalities = {
- MRI: 0,
- PET: 0,
- MEG: 0,
- EEG: 0,
- iEEG: 0,
- Microscopy: 0,
- NIRS: 0,
- }
- const secondary = {
- MRI_Diffusion: 0,
- MRI_Structural: 0,
- MRI_Functional: 0,
- MRI_Perfusion: 0,
- PET_Static: 0,
- PET_Dynamic: 0,
- iEEG_ECoG: 0,
- iEEG_SEEG: 0,
- }
- for (const path of filenames) {
- // MRI files
- if (type.file.isAnat(path)) {
- modalities.MRI++
- secondary.MRI_Structural++
- }
- if (type.file.isDWI(path)) {
- modalities.MRI++
- secondary.MRI_Diffusion++
- }
- if (type.file.isAsl(path)) {
- modalities.MRI++
- secondary.MRI_Perfusion++
- }
- if (type.file.isFunc(path) || type.file.isFuncBold(path)) {
- modalities.MRI++
- secondary.MRI_Functional++
- }
- if (type.file.isFieldMap(path)) {
- modalities.MRI++
- }
- if (type.file.isPET(path) || type.file.isPETBlood(path)) {
- modalities.PET++
- if (path.match('rec-acstat') || path.match('rec-nacstat')) {
- secondary.PET_Static++
- } else if (path.match('rec-acdyn') || path.match('rec-nacdyn')) {
- secondary.PET_Dynamic++
- }
- }
- if (type.file.isMeg(path)) {
- modalities.MEG++
- }
- if (type.file.isEEG(path)) {
- modalities.EEG++
- }
- if (type.file.isIEEG(path)) {
- modalities.iEEG++
- }
- if (type.file.isMicroscopy(path)) {
- modalities.Microscopy++
- }
- if (type.file.isNIRS(path)) {
- modalities.NIRS++
- }
- }
- // Order by matching file count
- const nonZero = Object.keys(modalities).filter((a) => modalities[a] !== 0)
- if (nonZero.length === 0) {
- return { primary: [], secondary: [] }
- }
- const sortedModalities = nonZero.sort((a, b) => {
- if (modalities[b] === modalities[a]) {
- // On a tie, hand it to the non-MRI modality
- if (b === 'MRI') {
- return -1
- } else {
- return 0
- }
- }
- return modalities[b] - modalities[a]
- })
- const nonZeroSecondary = Object.keys(secondary).filter(
- (a) => secondary[a] !== 0,
- )
- const sortedSecondary = nonZeroSecondary.sort(
- (a, b) => secondary[b] - secondary[a],
- )
- return { primary: sortedModalities, secondary: sortedSecondary }
-}
-
-export default collectModalities
diff --git a/legacy/bids-validator/utils/summary/collectPetFields.js b/legacy/bids-validator/utils/summary/collectPetFields.js
deleted file mode 100644
index 8c048b9f..00000000
--- a/legacy/bids-validator/utils/summary/collectPetFields.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * Gets the Target, Scanner Mfg, Radiotracer, and Radionuclide from json sidecar
- * @param {*} fileList
- */
-const collectPetFields = (jsonContentsDict) => {
- const fields = {
- BodyPart: {},
- ScannerManufacturer: {},
- ScannerManufacturersModelName: {},
- TracerName: {},
- TracerRadionuclide: {},
- }
-
- // tally up values in fields from all pet.json files
- Object.entries(jsonContentsDict).forEach(([filepath, json]) => {
- if (filepath.endsWith('pet.json')) {
- record(fields, 'ScannerManufacturer', json.Manufacturer)
- record(
- fields,
- 'ScannerManufacturersModelName',
- json.ManufacturersModelName,
- )
- record(fields, 'TracerName', json.TracerName)
- record(fields, 'TracerRadionuclide', json.TracerRadionuclide)
- if (json.BodyPart) record(fields, 'BodyPart', json.BodyPart)
- }
- })
-
- return ordered(fields)
-}
-
-const record = (fields, field, value) => {
- if (fields[field][value]) {
- fields[field][value]++
- } else {
- fields[field][value] = 1
- }
-}
-
-/**
- * Takes each field of tallies and converts it to an ordered list (pure).
- */
-const ordered = (fields) => {
- const orderedFields = {}
- Object.keys(fields).forEach((key) => {
- orderedFields[key] = orderedList(fields[key])
- })
- return orderedFields
-}
-
-/**
- * Given tallies = { a: 3, b: 5, c: 1 }, returns ['b', 'a', 'c']
- * @param {object} tallies
- * @returns {string[]}
- */
-export const orderedList = (tallies) =>
- Object.keys(tallies)
- // convert object to list of key/value pairs
- .map((key) => ({ key, count: tallies[key] }))
- // sort by count, greatest to least
- .sort(({ count: a }, { count: b }) => b - a)
- .map(({ key }) => key)
-
-export default collectPetFields
diff --git a/legacy/bids-validator/utils/summary/collectSessions.js b/legacy/bids-validator/utils/summary/collectSessions.js
deleted file mode 100644
index d85121c0..00000000
--- a/legacy/bids-validator/utils/summary/collectSessions.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import type from '../type'
-
-const collectSessions = (fileList) => {
- const sessions = []
- Object.keys(fileList).forEach((key) => {
- const file = fileList[key]
- if (
- !type.file.isStimuliData(file.relativePath) &&
- type.isBIDS(file.relativePath)
- ) {
- const pathValues = type.getPathValues(file.relativePath)
- const isEmptyRoom = pathValues.sub && pathValues.sub == 'emptyroom'
-
- if (
- pathValues.ses &&
- sessions.indexOf(pathValues.ses) === -1 &&
- !isEmptyRoom
- ) {
- sessions.push(pathValues.ses)
- }
- }
- })
- return sessions
-}
-
-export default collectSessions
diff --git a/legacy/bids-validator/utils/summary/collectSubjectMetadata.js b/legacy/bids-validator/utils/summary/collectSubjectMetadata.js
deleted file mode 100644
index 17a1bac4..00000000
--- a/legacy/bids-validator/utils/summary/collectSubjectMetadata.js
+++ /dev/null
@@ -1,68 +0,0 @@
-const PARTICIPANT_ID = 'participantId'
-/**
- * Go from tsv format string with participant_id as a required header to array of form
- * [
- * {
- * participantId: 'participant_id_1'
- * foo: 'x',
- * ...
- * },
- * {
- * participantId: 'participant_id_2'
- * foo: 'y',
- * ...
- * }
- * ...
- * ]
- *
- * returns null if participant_id is not a header or file contents do not exist
- * @param {string} participantsTsvContent
- */
-const collectSubjectMetadata = (participantsTsvContent) => {
- if (participantsTsvContent) {
- const contentTable = participantsTsvContent
- .split(/\r?\n/)
- .filter((row) => row !== '')
- .map((row) => row.split('\t'))
- const [snakeCaseHeaders, ...subjectData] = contentTable
- const headers = snakeCaseHeaders.map((header) =>
- header === 'participant_id' ? PARTICIPANT_ID : header,
- )
- const targetKeys = [PARTICIPANT_ID, 'age', 'sex', 'group']
- .map((key) => ({
- key,
- index: headers.findIndex((targetKey) => targetKey === key),
- }))
- .filter(({ index }) => index !== -1)
- const participantIdKey = targetKeys.find(
- ({ key }) => key === PARTICIPANT_ID,
- )
- const ageKey = targetKeys.find(({ key }) => key === 'age')
- if (participantIdKey === undefined) return null
- else
- return subjectData
- .map((data) => {
- // this first map is for transforming any data coming out of participants.tsv:
- // strip subject ids to match metadata.subjects: 'sub-01' -> '01'
- data[participantIdKey.index] = data[participantIdKey.index].replace(
- /^sub-/,
- '',
- )
- // make age an integer
- if (ageKey) data[ageKey.index] = parseInt(data[ageKey.index])
- return data
- })
- .map((data) =>
- //extract all target metadata for each subject
- targetKeys.reduce(
- (subject, { key, index }) => ({
- ...subject,
- [key]: data[index],
- }),
- {},
- ),
- )
- }
-}
-
-export default collectSubjectMetadata
diff --git a/legacy/bids-validator/utils/summary/collectSubjects.js b/legacy/bids-validator/utils/summary/collectSubjects.js
deleted file mode 100644
index f640e0f0..00000000
--- a/legacy/bids-validator/utils/summary/collectSubjects.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import type from '../type'
-
-const collectSubjects = (fileList) => {
- const subjects = []
- const fileKeys = Object.keys(fileList)
- fileKeys.forEach((key) => {
- const file = fileList[key]
- if (
- !type.file.isStimuliData(file.relativePath) &&
- type.isBIDS(file.relativePath)
- ) {
- const pathValues = type.getPathValues(file.relativePath)
- const isEmptyRoom = pathValues.sub && pathValues.sub == 'emptyroom'
-
- if (
- pathValues.sub &&
- subjects.indexOf(pathValues.sub) === -1 &&
- !isEmptyRoom
- ) {
- subjects.push(pathValues.sub)
- }
- }
- })
- return subjects
-}
-
-export default collectSubjects
diff --git a/legacy/bids-validator/utils/summary/collectSummary.js b/legacy/bids-validator/utils/summary/collectSummary.js
deleted file mode 100644
index 4446089b..00000000
--- a/legacy/bids-validator/utils/summary/collectSummary.js
+++ /dev/null
@@ -1,55 +0,0 @@
-import files from '../files'
-import checkForDerivatives from './checkForDerivatives'
-import collectDataTypes from './collectDataTypes'
-import collectModalities from './collectModalities'
-import collectSessions from './collectSessions'
-import collectSubjects from './collectSubjects'
-
-const collectSummary = (fileList, options) => {
- const summary = {
- sessions: [],
- subjects: [],
- subjectMetadata: {},
- tasks: [],
- modalities: [],
- secondaryModalities: [],
- totalFiles: -1,
- size: 0,
- dataProcessed: false,
- pet: null,
- }
-
- summary.dataProcessed = checkForDerivatives(fileList)
-
- // remove ignored files from list:
- Object.keys(fileList).forEach(function (key) {
- if (fileList[key].ignore) {
- delete fileList[key]
- }
- })
-
- summary.totalFiles = Object.keys(fileList).length
-
- const relativePaths = Object.keys(fileList).map(
- (file) => fileList[file].relativePath,
- )
-
- //collect file directory statistics
- summary.size = files.collectDirectorySize(fileList)
-
- // collect modalities for summary
- const { primary, secondary } = collectModalities(relativePaths)
- summary.modalities = primary
- summary.secondaryModalities = secondary
- summary.dataTypes = collectDataTypes(relativePaths)
-
- // collect subjects
- summary.subjects = collectSubjects(fileList, options)
-
- // collect sessions
- summary.sessions = collectSessions(fileList, options)
-
- return summary
-}
-
-export default collectSummary
diff --git a/legacy/bids-validator/utils/type.js b/legacy/bids-validator/utils/type.js
deleted file mode 100644
index 9a231549..00000000
--- a/legacy/bids-validator/utils/type.js
+++ /dev/null
@@ -1,437 +0,0 @@
-/**
- * Type
- *
- * A library of functions that take a file path and return a boolean
- * representing whether the given file path is valid within the
- * BIDS specification requirements.
- */
-
-/**
- * Import RegExps from bids-validator-common
- */
-import associated_data_rules from '../bids_validator/rules/associated_data_rules.json'
-
-import file_level_rules from '../bids_validator/rules/file_level_rules.json'
-import phenotypic_rules from '../bids_validator/rules/phenotypic_rules.json'
-import session_level_rules from '../bids_validator/rules/session_level_rules.json'
-import subject_level_rules from '../bids_validator/rules/subject_level_rules.json'
-import top_level_rules from '../bids_validator/rules/top_level_rules.json'
-
-// Associated data
-const associatedData = buildRegExp(associated_data_rules.associated_data)
-// File level
-const anatNonparametric = buildRegExp(file_level_rules.anat_nonparametric)
-const anatParametric = buildRegExp(file_level_rules.anat_parametric)
-const anatDefacemask = buildRegExp(file_level_rules.anat_defacemask)
-const anatMultiEcho = buildRegExp(file_level_rules.anat_multiecho)
-const anatMultiFlip = buildRegExp(file_level_rules.anat_multiflip)
-const anatMultiInv = buildRegExp(file_level_rules.anat_multiinv)
-const anatMP2RAGE = buildRegExp(file_level_rules.anat_mp2rage)
-const anatVFAMT = buildRegExp(file_level_rules.anat_vfa_mt)
-const anatMTR = buildRegExp(file_level_rules.anat_mtr)
-const anatCont = buildRegExp(file_level_rules.anat_cont)
-const behavioralData = buildRegExp(file_level_rules.behavioral)
-const dwiData = buildRegExp(file_level_rules.dwi)
-const eegData = buildRegExp(file_level_rules.eeg)
-const fmapGre = buildRegExp(file_level_rules.fmap_gre)
-const fmapPepolarAsl = buildRegExp(file_level_rules.fmap_pepolar_asl)
-const fmapTB1DAM = buildRegExp(file_level_rules.fmap_TB1DAM)
-const fmapTB1EPI = buildRegExp(file_level_rules.fmap_TB1EPI)
-const fmapRF = buildRegExp(file_level_rules.fmap_rf)
-const fmapTB1SRGE = buildRegExp(file_level_rules.fmap_TB1SRGE)
-const fmapParametric = buildRegExp(file_level_rules.fmap_parametric)
-const func = buildRegExp(file_level_rules.func)
-const funcPhaseDeprecated = buildRegExp(file_level_rules.func_phase_deprecated)
-const funcEvents = buildRegExp(file_level_rules.func_events)
-const funcTimeseries = buildRegExp(file_level_rules.func_timeseries)
-const funcBoldData = buildRegExp(file_level_rules.func_bold)
-const aslData = buildRegExp(file_level_rules.asl)
-const ieegData = buildRegExp(file_level_rules.ieeg)
-const megData = buildRegExp(file_level_rules.meg)
-const megCalibrationData = buildRegExp(file_level_rules.meg_calbibration)
-const megCrosstalkData = buildRegExp(file_level_rules.meg_crosstalk)
-const stimuliData = buildRegExp(file_level_rules.stimuli)
-const petData = buildRegExp(file_level_rules.pet)
-const petBlood = buildRegExp(file_level_rules.pet_blood)
-const microscopyData = buildRegExp(file_level_rules.microscopy)
-const microscopyPhotoData = buildRegExp(file_level_rules.microscopy_photo)
-const microscopyJSON = buildRegExp(file_level_rules.microscopy_json)
-const motion = buildRegExp(file_level_rules.motion)
-const nirsData = buildRegExp(file_level_rules.nirs)
-// Phenotypic data
-const phenotypicData = buildRegExp(phenotypic_rules.phenotypic_data)
-// Session level
-const anatSes = buildRegExp(session_level_rules.anat_ses)
-const dwiSes = buildRegExp(session_level_rules.dwi_ses)
-const eegSes = buildRegExp(session_level_rules.eeg_ses)
-const funcSes = buildRegExp(session_level_rules.func_ses)
-const aslSes = buildRegExp(session_level_rules.asl_ses)
-const ieegSes = buildRegExp(session_level_rules.ieeg_ses)
-const megSes = buildRegExp(session_level_rules.meg_ses)
-const scansSes = buildRegExp(session_level_rules.scans)
-const petSes = buildRegExp(session_level_rules.pet_ses)
-const motionSes = buildRegExp(session_level_rules.motion_ses)
-const microscopySes = buildRegExp(session_level_rules.microscopy_ses)
-const nirsSes = buildRegExp(session_level_rules.nirs_ses)
-// Subject level
-const subjectLevel = buildRegExp(subject_level_rules.subject_level)
-// Top level
-const rootTop = buildRegExp(top_level_rules.root_top)
-const funcTop = buildRegExp(top_level_rules.func_top)
-const aslTop = buildRegExp(top_level_rules.asl_top)
-const anatTop = buildRegExp(top_level_rules.anat_top)
-const vfaTop = buildRegExp(top_level_rules.VFA_top)
-const megreTop = buildRegExp(top_level_rules.megre_mese_top)
-const irt1Top = buildRegExp(top_level_rules.irt1_top)
-const mpmTop = buildRegExp(top_level_rules.mpm_top)
-const mtsTop = buildRegExp(top_level_rules.mts_top)
-const mtrTop = buildRegExp(top_level_rules.mtr_top)
-const mp2rageTop = buildRegExp(top_level_rules.mp2rage_top)
-const dwiTop = buildRegExp(top_level_rules.dwi_top)
-const eegTop = buildRegExp(top_level_rules.eeg_top)
-const ieegTop = buildRegExp(top_level_rules.ieeg_top)
-const fmapEpiTop = buildRegExp(top_level_rules.fmap_epi_top)
-const fmapGreTop = buildRegExp(top_level_rules.fmap_gre_top)
-const otherTopFiles = buildRegExp(top_level_rules.other_top_files)
-const megTop = buildRegExp(top_level_rules.meg_top)
-const petTop = buildRegExp(top_level_rules.pet_top)
-const motionTop = buildRegExp(top_level_rules.motion_top)
-const microscopyTop = buildRegExp(top_level_rules.microscopy_top)
-const nirsTop = buildRegExp(top_level_rules.nirs_top)
-
-export default {
- /**
- * Is BIDS
- *
- * Check if a given path is valid within the
- * bids spec.
- */
- isBIDS: function (path) {
- return (
- this.file.isTopLevel(path) ||
- this.file.isStimuliData(path) ||
- this.file.isSessionLevel(path) ||
- this.file.isSubjectLevel(path) ||
- this.file.isAnat(path) ||
- this.file.isDWI(path) ||
- this.file.isFunc(path) ||
- this.file.isAsl(path) ||
- this.file.isMeg(path) ||
- this.file.isNIRS(path) ||
- this.file.isIEEG(path) ||
- this.file.isEEG(path) ||
- this.file.isBehavioral(path) ||
- this.file.isFieldMap(path) ||
- this.file.isPhenotypic(path) ||
- this.file.isPET(path) ||
- this.file.isPETBlood(path) ||
- this.file.isMOTION(path) ||
- this.file.isMicroscopy(path) ||
- this.file.isMicroscopyPhoto(path) ||
- this.file.isMicroscopyJSON(path)
- )
- },
-
- /**
- * Object with all file type checks
- */
- file: {
- /**
- * Check if the file has appropriate name for a top level file
- */
- isTopLevel: function (path) {
- return (
- rootTop.test(path) ||
- funcTop.test(path) ||
- aslTop.test(path) ||
- dwiTop.test(path) ||
- anatTop.test(path) ||
- vfaTop.test(path) ||
- megreTop.test(path) ||
- irt1Top.test(path) ||
- mpmTop.test(path) ||
- mtsTop.test(path) ||
- mtrTop.test(path) ||
- mp2rageTop.test(path) ||
- fmapEpiTop.test(path) ||
- fmapGreTop.test(path) ||
- otherTopFiles.test(path) ||
- megTop.test(path) ||
- eegTop.test(path) ||
- ieegTop.test(path) ||
- petTop.test(path) ||
- motionTop.test(path) ||
- nirsTop.test(path) ||
- microscopyTop.test(path)
- )
- },
-
- /**
- * Check if file is a data file
- */
- isDatafile: function (path) {
- return (
- this.isAssociatedData(path) ||
- this.isTSV(path) ||
- this.isStimuliData(path) ||
- this.isPhenotypic(path) ||
- this.hasModality(path)
- )
- },
- /**
- * Check if file is appropriate associated data.
- */
- isAssociatedData: function (path) {
- return associatedData.test(path)
- },
-
- isTSV: function (path) {
- return path.endsWith('.tsv')
- },
-
- isContinousRecording: function (path) {
- return path.endsWith('.tsv.gz')
- },
-
- isStimuliData: function (path) {
- return stimuliData.test(path)
- },
-
- /**
- * Check if file is phenotypic data.
- */
- isPhenotypic: function (path) {
- return phenotypicData.test(path)
- },
- /**
- * Check if the file has appropriate name for a session level
- */
- isSessionLevel: function (path) {
- return (
- conditionalMatch(scansSes, path) ||
- conditionalMatch(funcSes, path) ||
- conditionalMatch(aslSes, path) ||
- conditionalMatch(anatSes, path) ||
- conditionalMatch(dwiSes, path) ||
- conditionalMatch(megSes, path) ||
- conditionalMatch(nirsSes, path) ||
- conditionalMatch(eegSes, path) ||
- conditionalMatch(ieegSes, path) ||
- conditionalMatch(petSes, path) ||
- conditionalMatch(motionSes, path) ||
- conditionalMatch(microscopySes, path)
- )
- },
-
- /**
- * Check if the file has appropriate name for a subject level
- */
- isSubjectLevel: function (path) {
- return subjectLevel.test(path)
- },
-
- /**
- * Check if the file has a name appropriate for an anatomical scan
- */
- isAnat: function (path) {
- return (
- conditionalMatch(anatNonparametric, path) ||
- conditionalMatch(anatParametric, path) ||
- conditionalMatch(anatDefacemask, path) ||
- conditionalMatch(anatMultiEcho, path) ||
- conditionalMatch(anatMultiFlip, path) ||
- conditionalMatch(anatMultiInv, path) ||
- conditionalMatch(anatMP2RAGE, path) ||
- conditionalMatch(anatVFAMT, path) ||
- conditionalMatch(anatMTR, path) ||
- conditionalMatch(anatCont, path)
- )
- },
-
- /**
- * Check if the file has a name appropriate for a diffusion scan
- */
- isDWI: function (path) {
- return conditionalMatch(dwiData, path)
- },
-
- /**
- * Check if the file has a name appropriate for a fieldmap scan
- */
- isFieldMap: function (path) {
- return (
- conditionalMatch(fmapGre, path) ||
- conditionalMatch(fmapPepolarAsl, path) ||
- conditionalMatch(fmapTB1DAM, path) ||
- conditionalMatch(fmapTB1EPI, path) ||
- conditionalMatch(fmapTB1SRGE, path) ||
- conditionalMatch(fmapRF, path) ||
- conditionalMatch(fmapParametric, path)
- )
- },
-
- isFieldMapMainNii: function (path) {
- return (
- !path.endsWith('.json') &&
- /* isFieldMap */
- (conditionalMatch(fmapGre, path) ||
- conditionalMatch(fmapPepolarAsl, path) ||
- conditionalMatch(fmapTB1DAM, path) ||
- conditionalMatch(fmapTB1EPI, path) ||
- conditionalMatch(fmapTB1SRGE, path) ||
- conditionalMatch(fmapRF, path) ||
- conditionalMatch(fmapParametric, path))
- )
- },
-
- /**
- * Check if the file has a name appropriate for a functional scan
- */
- isFunc: function (path) {
- return (
- conditionalMatch(func, path) ||
- conditionalMatch(funcPhaseDeprecated, path) ||
- conditionalMatch(funcEvents, path) ||
- conditionalMatch(funcTimeseries, path)
- )
- },
-
- isAsl: function (path) {
- return conditionalMatch(aslData, path)
- },
-
- isPET: function (path) {
- return conditionalMatch(petData, path)
- },
-
- isPETBlood: function (path) {
- return conditionalMatch(petBlood, path)
- },
-
- isMeg: function (path) {
- return (
- conditionalMatch(megData, path) ||
- conditionalMatch(megCalibrationData, path) ||
- conditionalMatch(megCrosstalkData, path)
- )
- },
- isNIRS: function (path) {
- return conditionalMatch(nirsData, path)
- },
-
- isEEG: function (path) {
- return conditionalMatch(eegData, path)
- },
-
- isIEEG: function (path) {
- return conditionalMatch(ieegData, path)
- },
-
- isMOTION: function (path) {
- return conditionalMatch(motion, path)
- },
-
- isMicroscopy: function (path) {
- return conditionalMatch(microscopyData, path)
- },
-
- isMicroscopyPhoto: function (path) {
- return conditionalMatch(microscopyPhotoData, path)
- },
-
- isMicroscopyJSON: function (path) {
- return conditionalMatch(microscopyJSON, path)
- },
-
- isBehavioral: function (path) {
- return conditionalMatch(behavioralData, path)
- },
-
- isFuncBold: function (path) {
- return conditionalMatch(funcBoldData, path)
- },
-
- hasModality: function (path) {
- return (
- this.isAnat(path) ||
- this.isDWI(path) ||
- this.isFieldMap(path) ||
- this.isFieldMapMainNii(path) ||
- this.isFunc(path) ||
- this.isAsl(path) ||
- this.isMeg(path) ||
- this.isNIRS(path) ||
- this.isEEG(path) ||
- this.isIEEG(path) ||
- this.isBehavioral(path) ||
- this.isFuncBold(path) ||
- this.isPET(path) ||
- this.isPETBlood(path) ||
- this.isMicroscopy(path) ||
- this.isMicroscopyPhoto(path) ||
- this.isMicroscopyJSON(path) ||
- this.isMOTION(path)
- )
- },
- },
-
- checkType(obj, typeString) {
- if (typeString == 'number') {
- return !isNaN(parseFloat(obj)) && isFinite(obj)
- } else {
- return typeof obj == typeString
- }
- },
-
- /**
- * Get Path Values
- *
- * Takes a file path and returns and values
- * found for the following path keys.
- * sub-
- * ses-
- */
- getPathValues: function (path) {
- var values = {},
- match
-
- // capture subject
- match = /^\/sub-([a-zA-Z0-9]+)/.exec(path)
- values.sub = match && match[1] ? match[1] : null
-
- // capture session
- match = /^\/sub-[a-zA-Z0-9]+\/ses-([a-zA-Z0-9]+)/.exec(path)
- values.ses = match && match[1] ? match[1] : null
-
- return values
- },
-}
-
-function conditionalMatch(expression, path) {
- const match = expression.exec(path)
-
- // we need to do this because JS does not support conditional groups
- if (match) {
- if ((match[2] && match[3]) || !match[2]) {
- return true
- }
- }
- return false
-}
-
-/**
- * Insert tokens into RegExps from bids-validator-common
- */
-function buildRegExp(obj) {
- if (obj.tokens) {
- let regExp = obj.regexp
- const keys = Object.keys(obj.tokens)
- for (let key of keys) {
- const args = obj.tokens[key].join('|')
- regExp = regExp.replace(key, args)
- }
- return new RegExp(regExp)
- } else {
- return new RegExp(obj.regexp)
- }
-}
diff --git a/legacy/bids-validator/utils/unit.js b/legacy/bids-validator/utils/unit.js
deleted file mode 100644
index 1f13348d..00000000
--- a/legacy/bids-validator/utils/unit.js
+++ /dev/null
@@ -1,190 +0,0 @@
-const roots = [
- 'metre',
- 'm',
- 'kilogram',
- 'kg',
- 'second',
- 's',
- 'ampere',
- 'A',
- 'kelvin',
- 'K',
- 'mole',
- 'mol',
- 'candela',
- 'cd',
- 'radian',
- 'rad',
- 'steradian',
- 'sr',
- 'hertz',
- 'Hz',
- 'newton',
- 'N',
- 'pascal',
- 'Pa',
- 'joule',
- 'J',
- 'watt',
- 'W',
- 'coulomb',
- 'C',
- 'volt',
- 'V',
- 'farad',
- 'F',
- 'ohm',
- 'β¦',
- 'siemens',
- 'S',
- 'weber',
- 'Wb',
- 'tesla',
- 'T',
- 'henry',
- 'H',
- 'degree',
- 'Celsius',
- 'Β°C',
- 'lumen',
- 'lm',
- 'lux',
- 'lx',
- 'becquerel',
- 'Bq',
- 'gray',
- 'Gy',
- 'sievert',
- 'Sv',
- 'katal',
- 'kat',
-]
-const prefixes = [
- // multiples
- 'deca',
- 'da',
- 'hecto',
- 'h',
- 'kilo',
- 'k',
- 'mega',
- 'M',
- 'giga',
- 'G',
- 'tera',
- 'T',
- 'peta',
- 'P',
- 'exa',
- 'E',
- 'zetta',
- 'Z',
- 'yotta',
- 'Y',
- // sub-multiples
- 'deci',
- 'd',
- 'centi',
- 'c',
- 'milli',
- 'm',
- 'micro',
- 'Β΅',
- 'nano',
- 'n',
- 'pico',
- 'p',
- 'femto',
- 'f',
- 'atto',
- 'a',
- 'zepto',
- 'z',
- 'yocto',
- 'y',
-]
-const unitOperators = ['/', '*', 'β
']
-const exponentOperator = '^'
-const operators = [...unitOperators, exponentOperator]
-
-// from 0-9
-const superscriptNumbers = [
- '\u2070',
- '\u00B9',
- '\u00B2',
- '\u00B3',
- '\u2074',
- '\u2075',
- '\u2076',
- '\u2077',
- '\u2078',
- '\u2079',
-]
-const superscriptNegative = '\u207B'
-
-const start = '^'
-const end = '$'
-const prefix = `(${prefixes.join('|')})?`
-const root = `(${roots.join('|')})`
-const superscriptExp = `(${superscriptNegative}?[${superscriptNumbers}]+)?`
-const operatorExp = `(\\^-?[0-9]+)?`
-const unitWithExponentPattern = new RegExp(
- `${start}${prefix}${root}(${superscriptExp}|${operatorExp})${end}`,
-)
-
-const unitOperatorPattern = new RegExp(`[${unitOperators.join('')}]`)
-
-const isUnavailable = (unit) => unit.trim().toLowerCase() === 'n/a'
-const isPercent = (unit) => unit.trim() === '%'
-
-/* Validate currently not used, out of line with specification:
- * https://github.com/bids-standard/bids-specification/pull/411
- * Once updated to use cmixf uncomment section in tsv validator that
- * calls this function, remove this comment, and uncomment test in tests/tsv.spec.js
- */
-/**
- * validate
- *
- * Checks that the SI unit given is valid.
- * Whitespace characters are not supported.
- * Unit must include at least one root unit of measuremnt.
- * Multiple root units must be separated by one of the operators '/' (division) or '*' (multiplication).
- * Each root unit may or may not pre preceded by a multiplier prefix,
- * and may or may not be followed by an exponent.
- * Exponents may only be to integer powers,
- * and may be formatted as either unicode superscript numbers,
- * or as integers following the '^' operator.
- *
- * @param {string} derivedUnit - a simple or complex SI unit
- * @returns {object} - { isValid, evidence }
- */
-const validate = (derivedUnit) => {
- if (isUnavailable(derivedUnit) || isPercent(derivedUnit)) {
- return { isValid: true, evidence: '' }
- } else {
- const separatedUnits = derivedUnit
- .split(unitOperatorPattern)
- .map((str) => str.trim())
- const invalidUnits = separatedUnits.filter(
- (unit) => !unitWithExponentPattern.test(unit),
- )
-
- const isValid = invalidUnits.length === 0
- const evidence = isValid
- ? ''
- : `Subunit${invalidUnits.length === 1 ? '' : 's'} (${invalidUnits.join(
- ', ',
- )}) of unit ${derivedUnit} is invalid. `
-
- return { isValid, evidence }
- }
-}
-
-export { roots, prefixes, superscriptNumbers, operators, validate }
-export default {
- roots,
- prefixes,
- superscriptNumbers,
- operators,
- validate,
-}
diff --git a/legacy/bids-validator/validators/__tests__/checkAnyDataPresent.spec.js b/legacy/bids-validator/validators/__tests__/checkAnyDataPresent.spec.js
deleted file mode 100644
index 23f357b6..00000000
--- a/legacy/bids-validator/validators/__tests__/checkAnyDataPresent.spec.js
+++ /dev/null
@@ -1,43 +0,0 @@
-import { assert } from 'chai'
-import { getFolderSubjects } from '../checkAnyDataPresent.js'
-
-describe('checkAnyDataPresent', () => {
- describe('getFolderSubjects()', () => {
- it('returns only unique subjects', () => {
- // Pseudo-FileList object but an array simulates it
- const fileList = [
- { relativePath: 'sub-01/files' },
- { relativePath: 'sub-01/another' },
- { relativePath: 'sub-02/data' },
- ]
- const subjects = getFolderSubjects(fileList)
- assert.isArray(subjects)
- assert.deepEqual(subjects, ['01', '02'])
- })
- it('filters out emptyroom subject', () => {
- const fileList = [
- { relativePath: 'sub-01/files' },
- { relativePath: 'sub-emptyroom/data' },
- ]
- const subjects = getFolderSubjects(fileList)
- assert.isArray(subjects)
- assert.deepEqual(subjects, ['01'])
- })
- it('works for deeply nested files', () => {
- const fileList = [
- { relativePath: 'sub-01/files/a.nii.gz' },
- { relativePath: 'sub-01/another/b.nii.gz' },
- { relativePath: 'sub-02/data/test' },
- ]
- const subjects = getFolderSubjects(fileList)
- assert.isArray(subjects)
- assert.deepEqual(subjects, ['01', '02'])
- })
- it('works with object arguments', () => {
- const fileList = { 0: { relativePath: 'sub-01/anat/one.nii.gz' } }
- const subjects = getFolderSubjects(fileList)
- assert.isArray(subjects)
- assert.deepEqual(subjects, ['01'])
- })
- })
-})
diff --git a/legacy/bids-validator/validators/__tests__/headerFields.spec.js b/legacy/bids-validator/validators/__tests__/headerFields.spec.js
deleted file mode 100644
index 8bbe9ab1..00000000
--- a/legacy/bids-validator/validators/__tests__/headerFields.spec.js
+++ /dev/null
@@ -1,65 +0,0 @@
-import { assert } from 'chai'
-import { collect39Issues } from '../headerFields'
-
-describe('headerFields', () => {
- describe('collect39Issues()', () => {
- it('should return an empty array if there are no files in allIssues39Dict', () => {
- const allIssues39Dict = {}
- const issues = collect39Issues(allIssues39Dict)
- assert.isArray(issues)
- assert.lengthOf(issues, 0)
- })
- it('should return one issue per file in the allIssues39Dict', () => {
- const allIssues39Dict = {
- file_1: [
- {
- code: 39,
- reason: 'for some reason',
- },
- {
- code: 39,
- reason: 'for some other reason',
- },
- ],
- }
- const issues = collect39Issues(allIssues39Dict)
- assert.isArray(issues)
- assert.lengthOf(issues, 1)
- })
- it('should return one issue for each file with code 39 issues', () => {
- const allIssues39Dict = {
- file_1: [
- {
- code: 39,
- reason: 'reason1',
- },
- ],
- file_2: [
- {
- code: 39,
- reason: 'reason2',
- },
- ],
- }
- const issues = collect39Issues(allIssues39Dict)
- assert.lengthOf(issues, 2)
- })
- it('constructs a combined reason string from each issue.reason of a file', () => {
- const allIssues39Dict = {
- file_1: [
- {
- code: 39,
- reason: 'reason1',
- },
- {
- code: 39,
- reason: 'reason2',
- },
- ],
- }
- const issues = collect39Issues(allIssues39Dict)
- assert.lengthOf(issues, 1)
- assert(issues[0].reason == ' reason1 reason2')
- })
- })
-})
diff --git a/legacy/bids-validator/validators/bids/__tests__/checkDatasetDescription.spec.js b/legacy/bids-validator/validators/bids/__tests__/checkDatasetDescription.spec.js
deleted file mode 100644
index 347723c5..00000000
--- a/legacy/bids-validator/validators/bids/__tests__/checkDatasetDescription.spec.js
+++ /dev/null
@@ -1,127 +0,0 @@
-import { assert } from 'chai'
-import checkDatasetDescription from '../checkDatasetDescription'
-
-describe('checkDatasetDescription', () => {
- describe('checkNameAndAuthorsFields', () => {
- it('returns no issues with valid Name and Authors field', () => {
- const validJsonContentsDict = {
- '/dataset_description.json': {
- Name: 'Electric Boots',
- Authors: ['Benny', 'the Jets'],
- },
- }
- const issues = checkDatasetDescription(validJsonContentsDict)
- assert.lengthOf(issues, 0)
- })
- })
- describe('checkNameField', () => {
- it('returns code 115 when Name is empty', () => {
- const invalidJsonContentsDict = {
- '/dataset_description.json': {
- Name: '',
- },
- }
- const issues = checkDatasetDescription(invalidJsonContentsDict)
- assert(
- issues.findIndex((issue) => issue.code === 115) > -1,
- 'issues include a code 115',
- )
- })
- it('returns code 115 when name only contains whitespace', () => {
- const invalidJsonContentsDict = {
- '/dataset_description.json': {
- Name: ' \t\r\n\f\v\u2003',
- },
- }
- const issues = checkDatasetDescription(invalidJsonContentsDict)
- assert(
- issues.findIndex((issue) => issue.code === 115) > -1,
- 'issues include a code 115',
- )
- })
- it('returns no issues with one non-whitespace character', () => {
- const validJsonContentsDict = {
- '/dataset_description.json': {
- Name: ' \u2708 ',
- Authors: ['Benny', 'the Jets'],
- },
- }
- const issues = checkDatasetDescription(validJsonContentsDict)
- assert.lengthOf(issues, 0)
- })
- })
- describe('checkAuthorField', () => {
- it('returns code 102 when there is only one author present', () => {
- const invalidJsonContentsDict = {
- '/dataset_description.json': {
- Authors: ['Benny'],
- },
- }
- const issues = checkDatasetDescription(invalidJsonContentsDict)
- assert(
- issues.findIndex((issue) => issue.code === 102) > -1,
- 'issues include a code 102',
- )
- })
- it('returns code 103 when there an author has more than one comma', () => {
- const invalidJsonContentsDict = {
- '/dataset_description.json': {
- Authors: ['Benny, and the, Jets'],
- },
- }
- const issues = checkDatasetDescription(invalidJsonContentsDict)
- assert(
- issues.findIndex((issue) => issue.code === 103) > -1,
- 'issues include a code 103',
- )
- })
- it('returns code 113 when there are no Authors', () => {
- const invalidJsonContentsDict = {
- '/dataset_description.json': {
- Authors: [],
- },
- }
- let issues = checkDatasetDescription(invalidJsonContentsDict)
- assert(
- issues.findIndex((issue) => issue.code === 113) > -1,
- 'issues include a code 113',
- )
-
- const invalidJsonContentsDict2 = {
- '/dataset_description.json': {},
- }
- issues = checkDatasetDescription(invalidJsonContentsDict2)
- assert(
- issues.findIndex((issue) => issue.code === 113) > -1,
- 'issues include a code 113',
- )
- })
- })
- describe('checkGeneticDatabaseField', () => {
- it('returns code 128 when there is no Genetics.Dataset with a genetic_info.json present', () => {
- const invalidJsonContentsDict = {
- '/dataset_description.json': {},
- '/genetic_info.json': {},
- }
- let issues = checkDatasetDescription(invalidJsonContentsDict)
- assert(
- issues.findIndex((issue) => issue.code === 128) > -1,
- 'issues include a code 128',
- )
- })
- it('does not return code 128 when GeneticDataset field and genetic_info.json present', () => {
- const validJsonContentsDict = {
- '/dataset_description.json': {
- Authors: ['Benny', 'the Jets'],
- Genetics: { Dataset: 'GeneticGeneticDataset' },
- },
- '/genetic_info.json': {},
- }
- let issues = checkDatasetDescription(validJsonContentsDict)
- assert(
- issues.findIndex((issue) => issue.code === 128) === -1,
- 'issues does not include a code 128',
- )
- })
- })
-})
diff --git a/legacy/bids-validator/validators/bids/__tests__/checkReadme.spec.js b/legacy/bids-validator/validators/bids/__tests__/checkReadme.spec.js
deleted file mode 100644
index 20fc33e8..00000000
--- a/legacy/bids-validator/validators/bids/__tests__/checkReadme.spec.js
+++ /dev/null
@@ -1,70 +0,0 @@
-import { assert } from 'chai'
-import checkReadme from '../checkReadme'
-
-describe('checkReadme', () => {
- it('returns issues with multiple readme files', () => {
- const fileList = {
- '/README': {
- name: 'README',
- path: '/ds-999/README',
- relativePath: '/README',
- stats: { size: 155 },
- },
- '/README.md': {
- name: 'README.md',
- path: '/ds-999/README.md',
- relativePath: '/README.md',
- stats: { size: 155 },
- },
- }
- const issues = checkReadme(fileList)
- assert.lengthOf(issues, 1)
- assert.equal(issues[0].code, 228)
- })
- it('returns issues with multiple small readme files', () => {
- const fileList = {
- '/README': {
- name: 'README',
- path: '/ds-999/README',
- relativePath: '/README',
- stats: { size: 100 },
- },
- '/README.md': {
- name: 'README.md',
- path: '/ds-999/README.md',
- relativePath: '/README.md',
- stats: { size: 100 },
- },
- }
- const issues = checkReadme(fileList)
- assert.lengthOf(issues, 3)
- const codes = issues.map((issue) => issue.code)
- assert.equal(codes.filter((x) => x === 213).length, 2)
- assert.equal(codes.filter((x) => x === 228).length, 1)
- })
- it('returns no issues on readme with extension', () => {
- const fileList = {
- '/README.md': {
- name: 'README.md',
- path: '/ds-999/README.md',
- relativePath: '/README.md',
- stats: { size: 155 },
- },
- }
- const issues = checkReadme(fileList)
- assert.lengthOf(issues, 0)
- })
- it('returns issue on no readme', () => {
- const fileList = {
- '/bad.md': {
- name: 'bad.md',
- path: '/ds-999/bad.md',
- relativePath: '/bad.md',
- stats: { size: 155 },
- },
- }
- const issues = checkReadme(fileList)
- assert.lengthOf(issues, 1)
- assert.equal(issues[0].code, 101)
- })
-})
diff --git a/legacy/bids-validator/validators/bids/__tests__/subjects.spec.js b/legacy/bids-validator/validators/bids/__tests__/subjects.spec.js
deleted file mode 100644
index b55cffcc..00000000
--- a/legacy/bids-validator/validators/bids/__tests__/subjects.spec.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import { assert } from 'chai'
-import subjects from '../subjects'
-
-describe('subjects', () => {
- const subjectsArray = ['01', '02', '03']
-
- describe('participantsInSubjects', () => {
- it('returns no issues if there are no participants provided', () => {
- const issues = subjects.participantsInSubjects(null, [])
- assert.lengthOf(issues, 0)
- })
- it('returns no issues if all participants are in the subjects array', () => {
- const participants = {
- list: subjectsArray,
- }
- const issues = subjects.participantsInSubjects(
- participants,
- subjectsArray,
- )
- assert.lengthOf(issues, 0)
- })
- it('return issue code 49 if participants are not the same as subjects', () => {
- const participants = {
- list: ['01', '05'],
- }
- const issues = subjects.participantsInSubjects(
- participants,
- subjectsArray,
- )
- assert.lengthOf(issues, 1)
- assert.equal(issues[0].code, 49)
- })
- })
-})
diff --git a/legacy/bids-validator/validators/bids/checkDatasetDescription.js b/legacy/bids-validator/validators/bids/checkDatasetDescription.js
deleted file mode 100644
index 87f730a8..00000000
--- a/legacy/bids-validator/validators/bids/checkDatasetDescription.js
+++ /dev/null
@@ -1,79 +0,0 @@
-const Issue = require('../../utils').issues.Issue
-
-const checkDatasetDescription = (jsonContentsDict) => {
- let issues = []
- const jsonFilePaths = Object.keys(jsonContentsDict)
- const hasDatasetDescription = jsonFilePaths.some((path) => {
- return path == '/dataset_description.json'
- })
- const hasGeneticInfo = jsonFilePaths.some((path) => {
- return path === '/genetic_info.json'
- })
-
- if (!hasDatasetDescription) {
- issues.push(new Issue({ code: 57 }))
- } else {
- const datasetDescription = jsonContentsDict['/dataset_description.json']
-
- // check to ensure that the dataset description fields are
- // properly formatted
- issues = issues.concat(checkNameField(datasetDescription.Name))
- issues = issues.concat(checkAuthorField(datasetDescription.Authors))
-
- // if genetic info json present ensure mandatory GeneticDataset present
- if (
- hasGeneticInfo &&
- !(
- 'Genetics' in datasetDescription &&
- 'Dataset' in datasetDescription.Genetics
- )
- ) {
- issues.push(new Issue({ code: 128 }))
- }
- }
- return issues
-}
-
-const checkNameField = (name) => {
- const issues = []
- // missing name will be caught by validation (later)
- if (name !== undefined) {
- const nonws = /\S/
- if (!name.match(nonws)) {
- issues.push(new Issue({ code: 115 }))
- }
- }
- return issues
-}
-
-const checkAuthorField = (authors) => {
- const issues = []
- // because this test happens before schema validation,
- // we have to make sure that authors is an array
- if (authors && typeof authors == 'object' && authors.length) {
- // if any author has more than one comma, throw an error
- authors.forEach((author) => {
- if (('' + author).split(',').length > 2) {
- issues.push(new Issue({ code: 103, evidence: author }))
- }
- })
- // if authors is length 1, we want a warning for a single comma
- // and an error for multiple commas
- if (authors.length == 1) {
- const author = authors[0]
- // check the number of commas in the single author field
- if (typeof author == 'string' && author.split(',').length <= 2) {
- // if there is one or less comma in the author field,
- // we suspect that the curator has not listed everyone involved
- issues.push(new Issue({ code: 102, evidence: author }))
- }
- }
- } else {
- // if there are no authors,
- // warn user that errors could occur during doi minting
- // and that snapshots on OpenNeuro will not be allowed
- issues.push(new Issue({ code: 113, evidence: JSON.stringify(authors) }))
- }
- return issues
-}
-export default checkDatasetDescription
diff --git a/legacy/bids-validator/validators/bids/checkReadme.js b/legacy/bids-validator/validators/bids/checkReadme.js
deleted file mode 100644
index 3a50a929..00000000
--- a/legacy/bids-validator/validators/bids/checkReadme.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import isNode from '../../utils/isNode'
-
-const Issue = require('../../utils').issues.Issue
-
-const checkReadme = (fileList) => {
- const issues = []
- const readmeFiles = Array.from(Object.values(fileList)).filter(
- (file) => file.relativePath && file.relativePath.startsWith('/README'),
- )
-
- readmeFiles.map((readmeFile) => {
- const size = !isNode ? readmeFile.size : readmeFile.stats.size
- const failsSizeRequirement = size <= 150
- if (failsSizeRequirement) {
- issues.push(new Issue({ code: 213, file: readmeFile }))
- }
- })
- if (readmeFiles.length > 1) {
- issues.push(new Issue({ code: 228 }))
- } else if (readmeFiles.length === 0) {
- issues.push(new Issue({ code: 101 }))
- }
- return issues
-}
-export default checkReadme
diff --git a/legacy/bids-validator/validators/bids/fullTest.js b/legacy/bids-validator/validators/bids/fullTest.js
deleted file mode 100644
index b0018ecf..00000000
--- a/legacy/bids-validator/validators/bids/fullTest.js
+++ /dev/null
@@ -1,272 +0,0 @@
-import BIDS from './obj'
-import utils from '../../utils'
-const Issue = utils.issues.Issue
-import tsv from '../tsv'
-import json from '../json'
-import NIFTI from '../nifti'
-import bval from '../bval'
-import bvec from '../bvec'
-import microscopy from '../microscopy'
-import Events from '../events'
-import hed from '../hed'
-import { session } from '../session'
-import checkAnyDataPresent from '../checkAnyDataPresent'
-import headerFields from '../headerFields'
-import subSesMismatchTest from './subSesMismatchTest'
-import groupFileTypes from './groupFileTypes'
-import subjects from './subjects'
-import checkDatasetDescription from './checkDatasetDescription'
-import checkReadme from './checkReadme'
-import validateMisc from '../../utils/files/validateMisc'
-import collectSubjectMetadata from '../../utils/summary/collectSubjectMetadata'
-import collectPetFields from '../../utils/summary/collectPetFields'
-import collectModalities from '../../utils/summary/collectModalities'
-
-/**
- * Full Test
- *
- * Takes on an array of files, callback, and boolean indicating if git-annex is used.
- * Starts the validation process for a BIDS package.
- */
-const fullTest = (fileList, options, annexed, dir, callback) => {
- const self = BIDS
- self.options = options
-
- const jsonContentsDict = {}
- const bContentsDict = {}
- const events = []
- const stimuli = {
- events: [],
- directory: [],
- }
- const jsonFiles = []
- const headers = []
- const participants = null
- const phenotypeParticipants = []
-
- const tsvs = []
-
- if (self.options.blacklistModalities) {
- const relativePaths = Object.keys(fileList).map(
- (file) => fileList[file].relativePath,
- )
- const preIgnoreModalities = collectModalities(relativePaths)
- self.options.blacklistModalities.map((mod) => {
- if (preIgnoreModalities.primary.includes(mod)) {
- self.issues.push(
- new Issue({
- file: mod,
- evidence: `found ${mod} files`,
- code: 139,
- }),
- )
- }
- })
- }
-
- const summary = utils.collectSummary(fileList, self.options)
-
- // remove size redundancies
- for (const key in fileList) {
- if (fileList.hasOwnProperty(key)) {
- const file = fileList[key]
- if (typeof file.stats === 'object' && file.stats.hasOwnProperty('size'))
- delete file.size
- }
- }
-
- // remove ignored files from list:
- Object.keys(fileList).forEach(function (key) {
- if (fileList[key].ignore) {
- delete fileList[key]
- }
- })
-
- self.issues = self.issues.concat(subSesMismatchTest(fileList))
-
- // check for illegal character in task name and acq name
- self.issues = self.issues.concat(utils.files.illegalCharacterTest(fileList))
-
- const files = groupFileTypes(fileList, self.options)
-
- // generate issues for all files that do not comply with
- // bids spec
- files.invalid.map(function (file) {
- self.issues.push(
- new Issue({
- file: file,
- evidence: file.name,
- code: 1,
- }),
- )
- })
-
- // check if dataset contains T1w
- if (!summary.dataTypes.includes('T1w')) {
- self.issues.push(
- new Issue({
- code: 53,
- }),
- )
- }
-
- validateMisc(files.misc)
- .then((miscIssues) => {
- self.issues = self.issues.concat(miscIssues)
-
- // TSV validation
- return tsv.validate(
- files.tsv,
- fileList,
- tsvs,
- events,
- participants,
- phenotypeParticipants,
- stimuli,
- )
- })
- .then(({ tsvIssues, participantsTsvContent }) => {
- self.issues = self.issues.concat(tsvIssues)
-
- // extract metadata on participants to metadata.age and
- // return metadata on each subject from participants.tsv
- summary.subjectMetadata = collectSubjectMetadata(participantsTsvContent)
- // Bvec validation
- return bvec.validate(files.bvec, bContentsDict)
- })
- .then((bvecIssues) => {
- self.issues = self.issues.concat(bvecIssues)
-
- // Bval validation
- return bval.validate(files.bval, bContentsDict)
- })
- .then((bvalIssues) => {
- self.issues = self.issues.concat(bvalIssues)
-
- // Load json files and construct a contents object with field, value pairs
- return json.load(files.json, jsonFiles, jsonContentsDict)
- })
- .then((jsonLoadIssues) => {
- self.issues = self.issues.concat(jsonLoadIssues)
-
- // Check for at least one subject
- const noSubjectIssues = subjects.atLeastOneSubject(fileList)
- self.issues = self.issues.concat(noSubjectIssues)
-
- // Check for datasetDescription file in the proper place
- const datasetDescriptionIssues = checkDatasetDescription(jsonContentsDict)
- self.issues = self.issues.concat(datasetDescriptionIssues)
-
- // Check for README file in the proper place
- const readmeIssues = checkReadme(fileList)
- self.issues = self.issues.concat(readmeIssues)
-
- // Check for microscopy samples file and json files
- if (summary.modalities.includes('Microscopy')) {
- const samplesIssues = microscopy.checkSamples(fileList)
- const jsonAndFieldIssues = microscopy.checkJSONAndField(
- files,
- jsonContentsDict,
- fileList,
- )
- self.issues = self.issues
- .concat(samplesIssues)
- .concat(jsonAndFieldIssues)
- }
- // Validate json files and contents
- return json.validate(jsonFiles, fileList, jsonContentsDict, summary)
- })
- .then((jsonIssues) => {
- self.issues = self.issues.concat(jsonIssues)
-
- // OME-TIFF consistency check
- return microscopy.validate(files.ome, jsonContentsDict)
- })
- .then((omeIssues) => {
- self.issues = self.issues.concat(omeIssues)
- // Nifti validation
- return NIFTI.validate(
- files.nifti,
- fileList,
- self.options,
- jsonContentsDict,
- bContentsDict,
- events,
- headers,
- annexed,
- dir,
- )
- })
- .then((niftiIssues) => {
- self.issues = self.issues.concat(niftiIssues)
-
- // Issues related to participants not listed in the subjects list
- const participantsInSubjectsIssues = subjects.participantsInSubjects(
- participants,
- summary.subjects,
- )
- self.issues = self.issues.concat(participantsInSubjectsIssues)
-
- // Check for equal number of participants from ./phenotype/*.tsv and participants in dataset
- const phenotypeIssues = tsv.checkPhenotype(phenotypeParticipants, summary)
- self.issues = self.issues.concat(phenotypeIssues)
-
- // Validate nii header fields
- self.issues = self.issues.concat(headerFields(headers))
-
- // Events validation
- stimuli.directory = files.stimuli
- self.issues = self.issues.concat(
- Events.validateEvents(events, stimuli, headers, jsonContentsDict),
- )
-
- // check the HED strings
- return hed(tsvs, jsonContentsDict, jsonFiles)
- })
- .then((hedIssues) => {
- self.issues = self.issues.concat(hedIssues)
-
- // Validate custom fields in all TSVs and add any issues to the list
- self.issues = self.issues.concat(
- tsv.validateTsvColumns(tsvs, jsonContentsDict, headers),
- )
- // Validate continuous recording files
- self.issues = self.issues.concat(
- tsv.validateContRec(files.contRecord, jsonContentsDict),
- )
-
- if (!options.ignoreSubjectConsistency) {
- // Validate session files
- self.issues = self.issues.concat(session(fileList))
- }
-
- // Determine if each subject has data present
- self.issues = self.issues.concat(
- checkAnyDataPresent(fileList, summary.subjects),
- )
-
- // Group summary modalities
- summary.modalities = utils.modalities.group(summary.modalities)
-
- // collect PET specific fields
- if (summary.modalities.includes('PET'))
- summary.pet = collectPetFields(jsonContentsDict)
-
- // Format issues
- const issues = utils.issues.format(self.issues, summary, self.options)
- callback(issues, summary)
- })
- .catch((err) => {
- // take internal exceptions and push to issues
- // note: exceptions caught here may have skipped subsequent validations
- const issues = utils.issues.exceptionHandler(
- err,
- self.issues,
- summary,
- self.options,
- )
- callback(issues, summary)
- })
-}
-
-export default fullTest
diff --git a/legacy/bids-validator/validators/bids/groupFileTypes.js b/legacy/bids-validator/validators/bids/groupFileTypes.js
deleted file mode 100644
index e0e8a7d8..00000000
--- a/legacy/bids-validator/validators/bids/groupFileTypes.js
+++ /dev/null
@@ -1,106 +0,0 @@
-import utils from '../../utils'
-
-const groupFileTypes = (fileList, options) => {
- const files = {
- json: [],
- nifti: [],
- stimuli: [],
- ephys: [],
- tsv: [],
- bval: [],
- bvec: [],
- contRecord: [],
- invalid: [],
- ome: [],
- jpg: [],
- png: [],
- tif: [],
- // used to check all files not already passed through testFile()
- misc: [],
- }
- sortFiles(fileList, options, files)
- return files
-}
-
-const sortFiles = (fileList, options, files) => {
- const keys = Object.keys(fileList)
- keys.forEach((key) => {
- const file = fileList[key]
- const filename = file.name
- if (utils.type.file.isStimuliData(file.relativePath)) {
- // collect stimuli
- files.stimuli.push(file)
- files.misc.push(file)
- } else if (!utils.type.isBIDS(file.relativePath)) {
- // invalid file type
- files.invalid.push(file)
- files.misc.push(file)
- } else if (ofType(filename, 'nii') || ofType(filename, 'nii.gz')) {
- // collect niftis
- files.nifti.push(file)
- } else if (ofType(filename, 'json')) {
- // collect json
- files.json.push(file)
- } else if (ofType(filename, 'tsv')) {
- // collect tsv
- files.tsv.push(file)
- } else if (ofType(filename, 'bval')) {
- // collect bval
- files.bval.push(file)
- } else if (ofType(filename, 'bvec')) {
- // collect bvec
- files.bvec.push(file)
- } else if (ephysTest(filename)) {
- // collect ephys
- files.ephys.push(file)
- files.misc.push(file)
- } else if (ofType(filename, 'tsv.gz')) {
- files.contRecord.push(file)
- } else if (ofType(filename, 'ome.tif') || ofType(filename, 'ome.btf')) {
- // collect ome-tiff
- files.ome.push(file)
- } else if (ofType(filename, 'jpg')) {
- // collect jpg
- files.jpg.push(file)
- } else if (ofType(filename, 'png')) {
- // collect png
- files.png.push(file)
- } else if (
- // collect tif
- ofType(filename, 'tif') &&
- !ofType(filename, 'ome.tif') &&
- !ofType(filename, 'ome.btf')
- ) {
- files.tif.push(file)
- } else {
- files.misc.push(file)
- }
- })
-}
-
-const ephysTest = (filename) => {
- return [
- 'edf',
- 'vhdr',
- 'vmrk',
- 'eeg',
- 'bdf',
- 'set',
- 'fdt',
- 'nwb',
- 'rdat',
- 'ridx',
- 'tdat',
- 'tidx',
- 'tmet',
- 'vidx',
- 'vmet',
- ].includes(filename.split('.').pop())
-}
-
-const ofType = (filename, extension) => {
- const ending = '.' + extension
- return filename && filename.endsWith(ending)
-}
-
-export default groupFileTypes
diff --git a/legacy/bids-validator/validators/bids/index.js b/legacy/bids-validator/validators/bids/index.js
deleted file mode 100644
index cb2e4e53..00000000
--- a/legacy/bids-validator/validators/bids/index.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import start from './start'
-import reset from './reset'
-import quickTest from './quickTest'
-import quickTestError from './quickTestError'
-import fullTest from './fullTest'
-import subIDsesIDmismatchTest from './subSesMismatchTest'
-
-const options = {}
-const issues = []
-const subIDsesIDmismatchtest = subIDsesIDmismatchTest
-
-export {
- options,
- issues,
- start,
- quickTestError,
- quickTest,
- fullTest,
- subIDsesIDmismatchtest,
- reset,
-}
-
-export default {
- options,
- issues,
- start,
- quickTestError,
- quickTest,
- fullTest,
- subIDsesIDmismatchtest,
- reset,
-}
diff --git a/legacy/bids-validator/validators/bids/obj.js b/legacy/bids-validator/validators/bids/obj.js
deleted file mode 100644
index 08026c3d..00000000
--- a/legacy/bids-validator/validators/bids/obj.js
+++ /dev/null
@@ -1,12 +0,0 @@
-export default {
- options: {},
- issues: [],
- summary: {
- sessions: [],
- subjects: [],
- tasks: [],
- modalities: [],
- totalFiles: [],
- size: 0,
- },
-}
diff --git a/legacy/bids-validator/validators/bids/quickTest.js b/legacy/bids-validator/validators/bids/quickTest.js
deleted file mode 100644
index 8a092f01..00000000
--- a/legacy/bids-validator/validators/bids/quickTest.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- * Quick Test
- *
- * A quick test to see if it could be a BIDS
- * dataset based on structure/naming. If it
- * could be it will trigger the full validation
- * otherwise it will throw a callback with a
- * generic error.
- */
-const quickTest = (fileList) => {
- const keys = Object.keys(fileList)
- const couldBeBIDS = keys.some((key) => {
- const file = fileList[key]
- let path = file.relativePath
- if (path) {
- path = path.split('/')
- path = path.reverse()
-
- let pathIsSesOrSub =
- path[2] &&
- (path[2].indexOf('ses-') == 0 || path[2].indexOf('sub-') == 0)
-
- return pathIsSesOrSub
- }
- })
- return couldBeBIDS
-}
-
-export default quickTest
diff --git a/legacy/bids-validator/validators/bids/quickTestError.js b/legacy/bids-validator/validators/bids/quickTestError.js
deleted file mode 100644
index 550eff0b..00000000
--- a/legacy/bids-validator/validators/bids/quickTestError.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import path from 'path'
-import utils from '../../utils'
-const Issue = utils.issues.Issue
-import isNode from '../../utils/isNode'
-
-/*
- * Generates an error for quickTest failures
- */
-const quickTestError = function (dir) {
- let filename
- if (isNode) {
- // For Node, grab the path from the dir string
- filename = path.basename(dir)
- } else {
- filename = constructFileName(dir)
- }
- const issue = new Issue({
- code: 61,
- file: {
- name: filename,
- path: path.join('.', filename),
- relativePath: path.join('', filename),
- },
- })
- return issue
-}
-
-const constructFileName = (dir) => {
- try {
- return dir[0].webkitRelativePath.split(path.sep).pop()
- } catch (err) {
- return 'uploaded-directory'
- }
-}
-
-export default quickTestError
diff --git a/legacy/bids-validator/validators/bids/reset.js b/legacy/bids-validator/validators/bids/reset.js
deleted file mode 100644
index 426546f4..00000000
--- a/legacy/bids-validator/validators/bids/reset.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/**
- * Reset
- *
- * Resets the in object data back to original values.
- */
-
-const reset = (BIDS) => {
- BIDS.issues = []
-}
-
-export default reset
diff --git a/legacy/bids-validator/validators/bids/start.js b/legacy/bids-validator/validators/bids/start.js
deleted file mode 100644
index 20463ce6..00000000
--- a/legacy/bids-validator/validators/bids/start.js
+++ /dev/null
@@ -1,47 +0,0 @@
-import { version } from '../../package.json'
-import BIDS from './obj'
-import reset from './reset'
-import quickTest from './quickTest'
-import quickTestError from './quickTestError'
-import fullTest from './fullTest'
-import utils from '../../utils'
-
-/**
- * Start
- *
- * Takes either a filelist array or
- * a path to a BIDS directory and an
- * options object and starts
- * the validation process and
- * returns the errors and warnings as
- * arguments to the callback.
- */
-const start = (dir, options, callback) => {
- if (!options.json) {
- // eslint-disable-next-line
- console.log(`bids-validator@${version}`)
- }
-
- utils.options.parse(dir, options, async function (issues, options) {
- if (issues && issues.length > 0) {
- // option parsing issues
- callback({ config: issues })
- } else {
- BIDS.options = options
- reset(BIDS)
- const files = await utils.files.readDir(dir, options)
- if (quickTest(files)) {
- // Is the dir using git-annex?
- const annexed = utils.files.remoteFiles.isGitAnnex(dir)
- fullTest(files, BIDS.options, annexed, dir, callback)
- } else {
- // Return an error immediately if quickTest fails
- const issue = quickTestError(dir)
- BIDS.summary.totalFiles = Object.keys(files).length
- callback(utils.issues.format([issue], BIDS.summary, options))
- }
- }
- })
-}
-
-export default start
diff --git a/legacy/bids-validator/validators/bids/subSesMismatchTest.js b/legacy/bids-validator/validators/bids/subSesMismatchTest.js
deleted file mode 100644
index d800e57e..00000000
--- a/legacy/bids-validator/validators/bids/subSesMismatchTest.js
+++ /dev/null
@@ -1,111 +0,0 @@
-import utils from '../../utils'
-const Issue = utils.issues.Issue
-
-/**
- * subid and sesid mismatch test. Generates error if ses-id and sub-id are different for any file, Takes a file list and return issues
- */
-const subSesMismatchTest = (fileList) => {
- const issues = []
-
- // validates if sub/ses-id in filename matches with ses/sub directory file is saved
- const fileKeys = Object.keys(fileList)
- fileKeys.forEach((key) => {
- let file = fileList[key]
- if (utils.type.file.isStimuliData(file.relativePath)) {
- return
- }
- const values = getPathandFileValues(file.relativePath)
-
- const pathValues = values[0]
- const fileValues = values[1]
-
- if (fileValues.sub !== null || fileValues.ses !== null) {
- const subMismatch = fileValues.sub !== pathValues.sub
- const sesMismatch = fileValues.ses !== pathValues.ses
-
- if (subMismatch) {
- issues.push(mismatchError('subject', file))
- }
-
- if (sesMismatch) {
- issues.push(mismatchError('session', file))
- }
- }
- })
- return issues
-}
-
-/**
- * getPathandFileValues
- * Takes a file path and returns values
- * found related to subject and session keys for both path and file keys.
- *
- * @param {string} path the string to extract subject and session level values
- */
-const getPathandFileValues = (path) => {
- const values = {}
- const file_name = {}
-
- // capture subject
- values.sub = captureFromPath(path, /^\/sub-([a-zA-Z0-9]+)/)
-
- // capture session
- values.ses = captureFromPath(path, /^\/sub-[a-zA-Z0-9]+\/ses-([a-zA-Z0-9]+)/)
-
- //capture session and subject id from filename to find if files are in
- // correct sub/ses directory
- const filename = path.replace(/^.*[\\/]/, '')
-
- // capture sub from file name
- file_name.sub = captureFromPath(filename, /^sub-([a-zA-Z0-9]+)/)
-
- // capture session from file name
- file_name.ses = captureFromPath(
- filename,
- /^sub-[a-zA-Z0-9]+_ses-([a-zA-Z0-9]+)/,
- )
-
- return [values, file_name]
-}
-
-/**
- * CaptureFromPath
- *
- * takes a file path and a regex and
- * returns the matched value or null
- *
- * @param {string} path path to test regex against
- * @param {regex} regex regex pattern we wish to test
- */
-const captureFromPath = (path, regex) => {
- const match = regex.exec(path)
- return match && match[1] ? match[1] : null
-}
-
-/**
- *
- * Mismatch Error
- *
- * generates the Issue object for session / subject
- * mismatch
- *
- * @param {string} type error type - session or subject
- * @param {object} file file responsible for the error
- */
-const mismatchError = (type, file) => {
- let code, abbrv
- if (type == 'session') {
- code = 65
- abbrv = 'ses'
- } else {
- code = 64
- abbrv = 'sub'
- }
- return new Issue({
- code: code,
- evidence: `File: ${file.relativePath} is saved in incorrect ${type} directory as per ${abbrv}-id in filename.`,
- file: file,
- })
-}
-
-export default subSesMismatchTest
diff --git a/legacy/bids-validator/validators/bids/subjects.js b/legacy/bids-validator/validators/bids/subjects.js
deleted file mode 100644
index ea0d0963..00000000
--- a/legacy/bids-validator/validators/bids/subjects.js
+++ /dev/null
@@ -1,62 +0,0 @@
-import utils from '../../utils'
-const Issue = utils.issues.Issue
-
-const participantsInSubjects = (participants, subjects) => {
- const issues = []
- if (participants) {
- const participantsFromFile = participants.list.sort()
- const participantsFromFolders = subjects.sort()
- if (
- !utils.array.equals(participantsFromFolders, participantsFromFile, true)
- ) {
- const evidence = constructMismatchEvidence(
- participantsFromFile,
- participantsFromFolders,
- )
- issues.push(
- new Issue({
- code: 49,
- evidence: evidence,
- file: participants.file,
- }),
- )
- }
- }
- return issues
-}
-
-const constructMismatchEvidence = (participants, subjects) => {
- const diffs = utils.array.diff(participants, subjects)
- const subjectsNotInSubjectsArray = diffs[0]
- const subjectsNotInParticipantsArray = diffs[1]
- const evidenceOfMissingParticipants = subjectsNotInParticipantsArray.length
- ? 'Subjects ' +
- subjectsNotInParticipantsArray.join(', ') +
- ' were found in the folder structure but are missing in participants.tsv. '
- : ''
- const evidenceOfMissingSubjects = subjectsNotInSubjectsArray.length
- ? 'Subjects ' +
- subjectsNotInSubjectsArray.join(', ') +
- ' were found in participants.tsv but are not present in the folder structure. '
- : ''
- const evidence = evidenceOfMissingParticipants + evidenceOfMissingSubjects
- return evidence
-}
-
-const atLeastOneSubject = (fileList) => {
- const issues = []
- const fileKeys = Object.keys(fileList)
- const hasSubjectDir = fileKeys.some((key) => {
- const file = fileList[key]
- return file.relativePath && file.relativePath.startsWith('/sub-')
- })
- if (!hasSubjectDir) {
- issues.push(new Issue({ code: 45 }))
- }
- return issues
-}
-
-export default {
- participantsInSubjects,
- atLeastOneSubject,
-}
diff --git a/legacy/bids-validator/validators/bval/bval.js b/legacy/bids-validator/validators/bval/bval.js
deleted file mode 100644
index 1ef92109..00000000
--- a/legacy/bids-validator/validators/bval/bval.js
+++ /dev/null
@@ -1,82 +0,0 @@
-const Issue = require('../../utils').issues.Issue
-import { type } from '../../utils'
-
-/**
- * bval
- *
- * Takes a bval file, its contents as a string
- * and a callback as arguments. Callsback
- * with any issues it finds while validating
- * against the BIDS specification.
- */
-export default function bval(file, contents, callback) {
- let issues = []
-
- // break val if type of contents is not string
- issues = issues.concat(checkType(contents, file))
- if (issues.length) {
- return callback(issues)
- }
-
- // check number of rows in contents
- issues = issues.concat(checkNumberOfRows(contents, file))
-
- // check for proper separator and value type
- issues = issues.concat(checkSeparatorAndValueType(contents, file))
-
- callback(issues)
-}
-
-function checkType(contents, file) {
- const issues = []
- // throw error if contents are not string
- if (!type.checkType(contents, 'string')) {
- const evidence =
- 'The contents of this .bval file have type ' +
- typeof contents +
- ' but should be a string.'
- issues.push(
- new Issue({
- code: 89,
- file: file,
- evidence: evidence,
- }),
- )
- }
- return issues
-}
-
-function checkSeparatorAndValueType(contents, file) {
- const issues = []
- const row = contents.replace(/^\s+|\s+$/g, '').split(' ')
- let invalidValue = false
- for (let j = 0; j < row.length; j++) {
- const value = row[j]
- if (!type.checkType(value, 'number')) {
- invalidValue = true
- }
- }
- if (invalidValue) {
- issues.push(
- new Issue({
- code: 47,
- file: file,
- }),
- )
- }
- return issues
-}
-
-function checkNumberOfRows(contents, file) {
- const issues = []
- const numberOfRows = contents.replace(/^\s+|\s+$/g, '').split('\n').length
- if (numberOfRows !== 1) {
- issues.push(
- new Issue({
- code: 30,
- file: file,
- }),
- )
- }
- return issues
-}
diff --git a/legacy/bids-validator/validators/bval/index.js b/legacy/bids-validator/validators/bval/index.js
deleted file mode 100644
index e7676d76..00000000
--- a/legacy/bids-validator/validators/bval/index.js
+++ /dev/null
@@ -1,9 +0,0 @@
-import bval from './bval'
-import validate from './validate'
-
-export { bval, validate }
-
-export default {
- bval,
- validate,
-}
diff --git a/legacy/bids-validator/validators/bval/validate.js b/legacy/bids-validator/validators/bval/validate.js
deleted file mode 100644
index f686960d..00000000
--- a/legacy/bids-validator/validators/bval/validate.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import utils from '../../utils'
-import bval from './bval'
-
-const validate = (files, bContentsDict, annexed, dir) => {
- let issues = []
- // validate bval
- const bvalPromises = files.map(function (file) {
- return utils.limit(
- () =>
- new Promise((resolve, reject) => {
- utils.files
- .readFile(file, annexed, dir)
- .then((contents) => {
- bContentsDict[file.relativePath] = contents
- bval(file, contents, function (bvalIssues) {
- issues = issues.concat(bvalIssues)
- resolve()
- })
- })
- .catch((err) =>
- utils.issues.redirect(err, reject, () => {
- issues.push(err)
- resolve()
- }),
- )
- }),
- )
- })
- return Promise.all(bvalPromises).then(() => issues)
-}
-
-export default validate
diff --git a/legacy/bids-validator/validators/bvec/bvec.js b/legacy/bids-validator/validators/bvec/bvec.js
deleted file mode 100644
index 3d0c639b..00000000
--- a/legacy/bids-validator/validators/bvec/bvec.js
+++ /dev/null
@@ -1,98 +0,0 @@
-const Issue = require('../../utils').issues.Issue
-import { type } from '../../utils'
-
-/**
- * bvec
- *
- * Takes a bvec file, its contents as a string
- * and a callback as arguments. Callsback
- * with any issues it finds while validating
- * against the BIDS specification.
- */
-export default function bvec(file, contents, callback) {
- let issues = []
-
- issues = issues.concat(checkType(contents, file))
- if (issues.length) {
- return callback(issues)
- }
-
- // check that there are exactly three rows
- issues = issues.concat(checkNumberOfRows(contents, file))
-
- // check that each row is the same length
- issues = issues.concat(checkRowConsistency(contents, file))
-
- // check that each value is a number
- issues = issues.concat(checkValueValidity(contents, file))
-
- callback(issues)
-}
-
-function checkType(contents, file) {
- const issues = []
- // throw error if contents are undefined or the wrong type
- if (!type.checkType(contents, 'string')) {
- const evidence = contents
- ? 'The contents of this .bvec file have type ' +
- typeof contents +
- ' but should be a string.'
- : 'The contents of this .bvec file are undefined.'
- issues.push(
- new Issue({
- code: 88,
- file: file,
- evidence: evidence,
- }),
- )
- }
- return issues
-}
-
-function checkNumberOfRows(contents, file) {
- const issues = []
- if (contents.replace(/^\s+|\s+$/g, '').split('\n').length !== 3) {
- issues.push(
- new Issue({
- code: 31,
- file: file,
- }),
- )
- }
- return issues
-}
-
-function checkRowConsistency(contents, file) {
- let rowLength = false
-
- const rows = contents.replace(/^\s+|\s+$/g, '').split('\n')
-
- for (let i = 0; i < rows.length; i++) {
- const row = rows[i].replace(/^\s+|\s+$/g, '').split(' ')
- if (!rowLength) {
- rowLength = row.length
- }
-
- // check for consistent row length
- if (rowLength !== row.length) {
- return [new Issue({ code: 46, file: file })]
- }
- }
- return []
-}
-
-function checkValueValidity(contents, file) {
- const rows = contents.replace(/^\s+|\s+$/g, '').split('\n')
- for (let i = 0; i < rows.length; i++) {
- const row = rows[i].replace(/^\s+|\s+$/g, '').split(' ')
-
- // check for proper separator and value type
- const hasIssue = row
- .map((value) => !type.checkType(value, 'number'))
- .some((val) => val)
- if (hasIssue) {
- return [new Issue({ code: 47, file: file })]
- }
- }
- return []
-}
diff --git a/legacy/bids-validator/validators/bvec/index.js b/legacy/bids-validator/validators/bvec/index.js
deleted file mode 100644
index 682eb4b8..00000000
--- a/legacy/bids-validator/validators/bvec/index.js
+++ /dev/null
@@ -1,9 +0,0 @@
-import bvec from './bvec'
-import validate from './validate'
-
-export { bvec, validate }
-
-export default {
- bvec,
- validate,
-}
diff --git a/legacy/bids-validator/validators/bvec/validate.js b/legacy/bids-validator/validators/bvec/validate.js
deleted file mode 100644
index 62a4a0bb..00000000
--- a/legacy/bids-validator/validators/bvec/validate.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import utils from '../../utils'
-import bvec from './bvec'
-
-const validate = (files, bContentsDict, annexed, dir) => {
- // validate bvec
- let issues = []
- const bvecPromises = files.map(function (file) {
- return utils.limit(
- () =>
- new Promise((resolve, reject) => {
- utils.files
- .readFile(file, annexed, dir)
- .then((contents) => {
- bContentsDict[file.relativePath] = contents
- bvec(file, contents, function (bvecIssues) {
- issues = issues.concat(bvecIssues)
- resolve()
- })
- })
- .catch((err) =>
- utils.issues.redirect(err, reject, () => {
- issues.push(err)
- resolve()
- }),
- )
- }),
- )
- })
- return Promise.all(bvecPromises).then(() => issues)
-}
-
-export default validate
diff --git a/legacy/bids-validator/validators/checkAnyDataPresent.js b/legacy/bids-validator/validators/checkAnyDataPresent.js
deleted file mode 100644
index 28e9d170..00000000
--- a/legacy/bids-validator/validators/checkAnyDataPresent.js
+++ /dev/null
@@ -1,53 +0,0 @@
-import utils from '../utils'
-var Issue = utils.issues.Issue
-
-// Match sub-.../... files, except sub-emptyroom
-const matchSubjectPath = (file) =>
- file.relativePath.match(/sub-((?!emptyroom).*?)(?=\/)/)
-
-// Helper for filtering unique values in an array
-const uniqueArray = (value, index, self) => self.indexOf(value) === index
-
-/**
- * Find unique subjects from FileList
- * @param {object} fileList Browser FileList or Node equivalent
- */
-const getFolderSubjects = (fileList) =>
- Object.values(fileList)
- .filter(matchSubjectPath)
- .map((f) => matchSubjectPath(f)[1])
- .filter(uniqueArray)
-
-/**
- * checkAnyDataPresent
- *
- * Takes a list of files and participants with valid data. Checks if they match.
- */
-function checkAnyDataPresent(fileList, summarySubjects) {
- var issues = []
- var folderSubjects = getFolderSubjects(fileList)
- var subjectsWithoutAnyValidData = folderSubjects.filter(function (i) {
- return summarySubjects.indexOf(i) < 0
- })
-
- for (var i = 0; i < subjectsWithoutAnyValidData.length; i++) {
- var missingSubject = subjectsWithoutAnyValidData[i]
- var subFolder = '/sub-' + missingSubject
- issues.push(
- new Issue({
- file: {
- relativePath: subFolder,
- webkitRelativePath: subFolder,
- name: subFolder,
- path: subFolder,
- },
- reason: 'No BIDS compatible data found for subject ' + missingSubject,
- code: 67,
- }),
- )
- }
- return issues
-}
-
-export default checkAnyDataPresent
-export { getFolderSubjects }
diff --git a/legacy/bids-validator/validators/events/events.js b/legacy/bids-validator/validators/events/events.js
deleted file mode 100644
index 8df4fe37..00000000
--- a/legacy/bids-validator/validators/events/events.js
+++ /dev/null
@@ -1,112 +0,0 @@
-/* eslint-disable no-unused-vars */
-
-import utils from '../../utils'
-const Issue = utils.issues.Issue
-
-export default function (events, stimuli, headers, jsonContents) {
- // check that all stimuli files present in /stimuli are included in an _events.tsv file
- const stimuliIssues = checkStimuli(stimuli)
-
- // check the events file for suspiciously long or short durations
- const designIssues = checkDesignLength(events, headers, jsonContents)
-
- return [].concat(stimuliIssues, designIssues)
-}
-
-const checkStimuli = function (stimuli) {
- const issues = []
- const stimuliFromEvents = stimuli.events
- const stimuliFromDirectory = stimuli.directory
- if (stimuliFromDirectory) {
- const unusedStimuli = stimuliFromDirectory.filter(function (stimuli) {
- return stimuliFromEvents.indexOf(stimuli.relativePath) < 0
- })
- for (let key of unusedStimuli) {
- const stimulus = unusedStimuli[key]
- issues.push(
- new Issue({
- code: 77,
- file: stimulus,
- }),
- )
- }
- }
- return issues
-}
-
-const checkDesignLength = function (events, headers, jsonContents) {
- const issues = []
- // get all headers associated with task data
- const taskHeaders = headers.filter((header) => {
- const file = header[0]
- return file.relativePath.includes('_task-')
- })
-
- // loop through headers with files that are tasks
- taskHeaders.forEach((taskHeader) => {
- // extract the fourth element of 'dim' field of header - this is the
- // number of volumes that were obtained during scan (numVols)
- const file = taskHeader[0]
- const header = taskHeader[1]
- const dim = header.dim
- const numVols = dim[4]
-
- // get the json sidecar dictionary associated with that nifti scan
- const potentialSidecars = utils.files.potentialLocations(
- file.relativePath.replace('.gz', '').replace('.nii', '.json'),
- )
- const mergedDictionary = utils.files.generateMergedSidecarDict(
- potentialSidecars,
- jsonContents,
- )
-
- // extract the 'RepetitionTime' field from said sidecar (TR)
- const TR = mergedDictionary.RepetitionTime
-
- // calculate max reasonable scan time (TR * numVols = longDurationThreshold)
- const longDurationThreshold = Math.floor(TR * numVols)
-
- // calculate min reasonable scan time (.5 * TR * numVols = shortDurationThreshold)
- const shortDurationThreshold = Math.floor(0.5 * longDurationThreshold)
-
- // get the _events.tsv associated with this task scan
- const potentialEvents = utils.files.potentialLocations(
- file.relativePath.replace('.gz', '').replace('bold.nii', 'events.tsv'),
- )
- const associatedEvents = events.filter(
- (event) => potentialEvents.indexOf(event.path) > -1,
- )
-
- // loop through all events associated with this task scan
- for (let event of associatedEvents) {
- // get all non-empty rows
- const rows = event.contents
- .split('\n')
- .filter((row) => !(!row || /^\s*$/.test(row)))
-
- // get the 'onset' field of the last event (lastEventOnset)
- const lastEventOnset = rows[rows.length - 1].trim().split('\t')[0]
-
- // check if lastEventOnset > longDurationThreshold - append issue if so
- if (lastEventOnset > longDurationThreshold) {
- issues.push(
- new Issue({
- file: event.file,
- code: 85,
- }),
- )
- }
-
- // check if the lastEventOnset < shortDurationThreshold - append issue if so
- if (lastEventOnset < shortDurationThreshold) {
- issues.push(
- new Issue({
- file: event.file,
- code: 86,
- }),
- )
- }
- }
- })
- return issues
-}
diff --git a/legacy/bids-validator/validators/events/index.js b/legacy/bids-validator/validators/events/index.js
deleted file mode 100644
index 7e19d4c8..00000000
--- a/legacy/bids-validator/validators/events/index.js
+++ /dev/null
@@ -1,7 +0,0 @@
-import events from './events'
-import validate from './validate'
-
-export default {
- events: events,
- validateEvents: validate,
-}
diff --git a/legacy/bids-validator/validators/events/validate.js b/legacy/bids-validator/validators/events/validate.js
deleted file mode 100644
index 7ce367cb..00000000
--- a/legacy/bids-validator/validators/events/validate.js
+++ /dev/null
@@ -1,3 +0,0 @@
-import eventsTest from './events'
-
-export default eventsTest
diff --git a/legacy/bids-validator/validators/headerFields.js b/legacy/bids-validator/validators/headerFields.js
deleted file mode 100644
index 3684c498..00000000
--- a/legacy/bids-validator/validators/headerFields.js
+++ /dev/null
@@ -1,297 +0,0 @@
-import utils from '../utils'
-var Issue = utils.issues.Issue
-import isNode from '../utils/isNode'
-
-/**
- * dimensions and resolution
- *
- * Checks dimensions and resolution for x, y, z, and time across subjects to
- * ensure they are consistent.
- *
- * The fields we are interested in are all arrays and we are only looking at
- * the first for values in those arrays. To handle single values or longer
- * arrays more arguments will need to be added to headerField.
- */
-
-const headerFields = (headers) => {
- var finalIssues = []
- var allIssues39Dict = {}
- var fields = ['dim', 'pixdim']
-
- /* turn a list of dicts into a dict of lists */
- for (var i = 0; i < fields.length; i++) {
- var field = fields[i]
- var issues = headerField(headers, field)
- issues.forEach((issue) => {
- if (issue.code == 39) {
- if (allIssues39Dict.hasOwnProperty(issue.file.relativePath)) {
- allIssues39Dict[issue.file.relativePath].push(issue)
- } else {
- allIssues39Dict[issue.file.relativePath] = [issue]
- }
- } else {
- finalIssues.push(issue)
- }
- })
- }
-
- finalIssues = finalIssues.concat(collect39Issues(allIssues39Dict))
-
- return finalIssues
-}
-
-const collect39Issues = (allIssues39Dict) => {
- const finalIssues = []
- for (let file of Object.keys(allIssues39Dict)) {
- const firstIssue = allIssues39Dict[file][0]
- let evidence = ''
- for (var issue of allIssues39Dict[file]) {
- evidence = evidence + ' ' + issue.reason
- }
- firstIssue.reason = evidence
- finalIssues.push(firstIssue)
- }
- return finalIssues
-}
-
-/**
- * Key to headerField working is the fact that we take and array of values
- * from the nifti header and convert it to a string. This string is used to
- * compare the header field value against other header field values and is used
- * as an attribute in the object nifti_types. Nifti types refers to the
- * different types of nifti files we are comparing across subjects. Only the
- * dimensionality of similar anatomy/functional/dwi headers are being compared.
- */
-
-const headerField = (headers, field) => {
- var nifti_types = {}
- var issues = []
- for (var header_index = 0; header_index < headers.length; header_index++) {
- var badField = false
- var field_value
- var file = headers[header_index][0]
- var filename
- var header = headers[header_index][1]
- var match
- var path = file.relativePath
- var subject
-
- if (field === 'dim') {
- if (
- typeof header[field] === 'undefined' ||
- header[field] === null ||
- header[field].length < header[field][0]
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 40,
- }),
- )
- continue
- } else if (
- file.name.indexOf('_bold') > -1 &&
- (header[field][0] !== 4 || header[field].length !== 5)
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 54,
- evidence: 'header field "dim" = ' + header[field],
- }),
- )
- continue
- } else if (
- (file.name.indexOf('magnitude1') > -1 ||
- file.name.indexOf('magnitude2') > -1) &&
- header[field].length !== 4
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 94,
- evidence: 'this magnitude file has more than three dimensions. ',
- }),
- )
- continue
- } else if (file.name.indexOf('T1w') > -1 && header[field].length !== 4) {
- issues.push(
- new Issue({
- file: file,
- code: 95,
- evidence: 'this T1w file does not have exactly three dimensions. ',
- }),
- )
- }
- field_value = header[field].slice(1, header[field][0] + 1).toString()
- } else if (field === 'pixdim') {
- if (
- typeof header['xyzt_units'] === 'undefined' ||
- header['xyzt_units'] === null ||
- header['xyzt_units'].length < 4
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 41,
- }),
- )
- badField = true
- }
- if (
- typeof header['pixdim'] === 'undefined' ||
- header['pixdim'] === null ||
- header['pixdim'].length < 4
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 42,
- }),
- )
- badField = true
- }
- if (header['qform_code'] === 0 && header['sform_code'] === 0) {
- issues.push(
- new Issue({
- file: file,
- code: 60,
- }),
- )
- badField = true
- }
- if (badField === true) {
- continue
- }
- field_value = []
- var pix_dim = header[field].slice(1, 5)
- var units = header['xyzt_units'].slice(0, 4)
- for (var i = 0; i < pix_dim.length; i++) {
- field_value.push('' + pix_dim[i].toFixed(2) + units[i])
- }
- field_value = field_value.toString()
- } else {
- console.warn(
- 'Checks against header field: ' + field + ' are currently unsupported.',
- )
- return
- }
-
- if (!file || (!isNode && !file.webkitRelativePath)) {
- continue
- }
-
- //match the subject identifier up to the '/' in the full path to a file.
- match = path.match(/sub-(.*?)(?=\/)/)
- if (match === null) {
- continue
- } else {
- subject = match[0]
- }
- // files are prepended with subject name, the following two commands
- // remove the subject from the file name to allow filenames to be more
- // easily compared
- filename = path.substring(path.match(subject).index + subject.length)
- filename = filename.replace(subject, '')
-
- // generalize the run number so we can compare counts across all runs
- match = filename.match(/run-\d+/)
- if (match !== null) {
- filename = filename.replace(match[0], '')
- }
-
- if (!nifti_types.hasOwnProperty(filename)) {
- nifti_types[filename] = {}
- nifti_types[filename][field_value] = { count: 1, files: [file] }
- } else {
- if (!nifti_types[filename].hasOwnProperty(field_value)) {
- nifti_types[filename][field_value] = { count: 1, files: [file] }
- } else {
- nifti_types[filename][field_value].count += 1
- nifti_types[filename][field_value].files.push(file)
- }
- }
- }
- for (let nifti_key of Object.keys(nifti_types)) {
- const nifti_type = nifti_types[nifti_key]
- let max_field_value = Object.keys(nifti_type)[0]
- for (let field_value_key in nifti_type) {
- if (nifti_type.hasOwnProperty(field_value_key)) {
- field_value = nifti_type[field_value_key]
- if (field_value.count > nifti_type[max_field_value].count) {
- max_field_value = field_value_key
- }
- }
- }
- for (let field_value_key of Object.keys(nifti_type)) {
- field_value = nifti_type[field_value_key]
- if (
- max_field_value !== field_value_key &&
- headerFieldCompare(max_field_value, field_value_key)
- ) {
- for (
- var nifti_file_index = 0;
- nifti_file_index < field_value.files.length;
- nifti_file_index++
- ) {
- var nifti_file = field_value.files[nifti_file_index]
- var evidence
- if (field === 'dim') {
- evidence =
- 'The most common set of dimensions is: ' +
- max_field_value +
- ' (voxels), This file has the dimensions: ' +
- field_value_key +
- ' (voxels).'
- } else if (field === 'pixdim') {
- evidence =
- 'The most common resolution is: ' +
- max_field_value.replace(/,/g, ' x ') +
- ', This file has the resolution: ' +
- field_value_key.replace(/,/g, ' x ') +
- '.'
- }
- issues.push(
- new Issue({
- file: nifti_file,
- reason: evidence,
- code: 39,
- }),
- )
- }
- }
- }
- }
- return issues
-}
-
-/**
- * if elements of the two arrays differ by less than one we won't raise a
- * warning about them. There are a large number of floating point rounding
- * errors that cause resolutions to be slightly different. Returns true if
- * the two headers are significantly different
- */
-const headerFieldCompare = (header1, header2) => {
- var hdr1 = header1.split(',')
- var hdr2 = header2.split(',')
- if (hdr1.length !== hdr2.length) {
- return true
- }
- for (var i = 0; i < hdr1.length; i++) {
- var hdr1_val = Number(hdr1[i].match(/-?\d*\.?\d*/))
- var hdr2_val = Number(hdr2[i].match(/-?\d*\.?\d*/))
- // Matching alphas with * will return '' on headers without units
- var hdr1_unit = hdr1[i].match(/[A-Za-z]*$/)[0]
- var hdr2_unit = hdr2[i].match(/[A-Za-z]*$/)[0]
- if (Math.abs(hdr1_val - hdr2_val) > 0.00001) {
- return true
- }
- if (hdr1_unit !== hdr2_unit) {
- return true
- }
- }
- return false
-}
-
-export default headerFields
-export { collect39Issues }
diff --git a/legacy/bids-validator/validators/hed.js b/legacy/bids-validator/validators/hed.js
deleted file mode 100644
index 4dde02b4..00000000
--- a/legacy/bids-validator/validators/hed.js
+++ /dev/null
@@ -1,96 +0,0 @@
-import hedValidator from 'hed-validator'
-import utils from '../utils'
-
-const Issue = utils.issues.Issue
-
-export default async function returnHedIssues(tsvs, jsonContents, jsonFiles) {
- const issues = await checkHedStrings(tsvs, jsonContents, jsonFiles)
- return issues.map((issue) => new Issue(issue))
-}
-
-async function checkHedStrings(tsvs, jsonContents, jsonFiles) {
- const datasetDescription = jsonContents['/dataset_description.json']
- const datasetDescriptionData = new hedValidator.bids.BidsJsonFile(
- '/dataset_description.json',
- datasetDescription,
- getSidecarFileObject('/dataset_description.json', jsonFiles),
- )
-
- let hedSchemas
- try {
- hedSchemas = await hedValidator.bids.buildBidsSchemas(
- datasetDescriptionData,
- null,
- )
- } catch (issueError) {
- return hedValidator.bids.BidsHedIssue.fromHedIssues(
- issueError,
- datasetDescriptionData.file,
- )
- }
-
- const issues = []
- for (const [sidecarName, sidecarContents] of Object.entries(jsonContents)) {
- try {
- const sidecarFile = buildSidecar(sidecarName, sidecarContents, jsonFiles)
- issues.push(...validateFile(sidecarFile, hedSchemas))
- } catch (e) {
- issues.push(new Issue({ code: 109 }))
- return issues
- }
- }
-
- if (issues.some((issue) => issue.isError())) {
- return issues
- }
-
- for (const tsv of tsvs) {
- try {
- const tsvFile = buildTsv(tsv, jsonContents)
- issues.push(...validateFile(tsvFile, hedSchemas))
- } catch (e) {
- issues.push(new Issue({ code: 109 }))
- return issues
- }
- }
-
- return issues
-}
-
-function buildSidecar(sidecarName, sidecarContents, jsonFiles) {
- const file = getSidecarFileObject(sidecarName, jsonFiles)
-
- return new hedValidator.bids.BidsSidecar(sidecarName, sidecarContents, file)
-}
-
-function buildTsv(tsv, jsonContents) {
- const potentialSidecars = utils.files.potentialLocations(
- tsv.file.relativePath.replace('.tsv', '.json'),
- )
- const mergedDictionary = utils.files.generateMergedSidecarDict(
- potentialSidecars,
- jsonContents,
- )
-
- return new hedValidator.bids.BidsTsvFile(
- tsv.file.relativePath,
- tsv.contents,
- tsv.file,
- potentialSidecars,
- mergedDictionary,
- )
-}
-
-function validateFile(file, hedSchemas) {
- const issues = file.validate(hedSchemas)
- if (issues === null) {
- throw new Error()
- }
- return issues
-}
-
-function getSidecarFileObject(sidecarName, jsonFiles) {
- return jsonFiles.filter((file) => {
- return file.relativePath === sidecarName
- })[0]
-}
diff --git a/legacy/bids-validator/validators/index.js b/legacy/bids-validator/validators/index.js
deleted file mode 100644
index f8599726..00000000
--- a/legacy/bids-validator/validators/index.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// dependencies ------------------------------------------------------
-import 'cross-fetch/polyfill'
-
-import tsv from './tsv'
-import json from './json'
-import { NIFTI } from './nifti'
-import { start as BIDS } from './bids'
-import Events from './events'
-import { bval } from './bval'
-import { bvec } from './bvec'
-import utils from '../utils'
-import consoleFormat from '../utils/consoleFormat'
-
-// public api --------------------------------------------------------
-
-const validate = {
- BIDS: BIDS,
- JSON: json.json,
- TSV: tsv,
- NIFTI,
- Events: Events,
- bval: bval,
- bvec: bvec,
- reformat: utils.issues.reformat,
- utils: utils,
- consoleFormat,
-}
-
-// exports -----------------------------------------------------------
-
-export default validate
diff --git a/legacy/bids-validator/validators/json/index.js b/legacy/bids-validator/validators/json/index.js
deleted file mode 100644
index e5555e84..00000000
--- a/legacy/bids-validator/validators/json/index.js
+++ /dev/null
@@ -1,9 +0,0 @@
-import json from './json'
-import validate from './validate'
-import load from './load'
-
-export default {
- json: json,
- validate: validate,
- load: load,
-}
diff --git a/legacy/bids-validator/validators/json/json.js b/legacy/bids-validator/validators/json/json.js
deleted file mode 100644
index a6b01a9c..00000000
--- a/legacy/bids-validator/validators/json/json.js
+++ /dev/null
@@ -1,204 +0,0 @@
-import utils from '../../utils'
-import Ajv from 'ajv'
-const ajv = new Ajv({ allErrors: true, strictSchema: false })
-ajv.addMetaSchema(require('ajv/lib/refs/json-schema-draft-06.json'))
-ajv.addSchema(require('./schemas/common_definitions.json'))
-const Issue = utils.issues.Issue
-
-/**
- * JSON
- *
- * Takes a JSON file as a string and a callback
- * as arguments. And callsback with any errors
- * it finds while validating against the BIDS
- * specification.
- */
-export default function (file, jsonContentsDict, callback) {
- // primary flow --------------------------------------------------------------------
- let issues = []
- const potentialSidecars = utils.files.potentialLocations(file.relativePath)
- const mergedDictionary = utils.files.generateMergedSidecarDict(
- potentialSidecars,
- jsonContentsDict,
- )
- if (mergedDictionary) {
- issues = issues.concat(checkUnits(file, mergedDictionary))
- issues = issues.concat(compareSidecarProperties(file, mergedDictionary))
- }
- callback(issues, mergedDictionary)
-}
-
-// individual checks ---------------------------------------------------------------
-
-function checkUnits(file, sidecar) {
- let issues = []
- const schema = selectSchema(file)
- issues = issues.concat(validateSchema(file, sidecar, schema))
-
- issues = issues.concat(
- checkSidecarUnits(file, sidecar, { field: 'RepetitionTime', min: 100 }, 2),
- )
-
- issues = issues.concat(
- checkSidecarUnits(file, sidecar, { field: 'EchoTime', min: 1 }, 3),
- )
- issues = issues.concat(
- checkSidecarUnits(file, sidecar, { field: 'EchoTime1', min: 1 }, 4),
- )
- issues = issues.concat(
- checkSidecarUnits(file, sidecar, { field: 'EchoTime2', min: 1 }, 4),
- )
- issues = issues.concat(
- checkSidecarUnits(file, sidecar, { field: 'TotalReadoutTime', min: 10 }, 5),
- )
-
- return issues
-}
-
-const compareSidecarProperties = (file, sidecar) => {
- const issues = []
-
- // check that EffectiveEchoSpacing < TotalReadoutTime
- if (
- sidecar.hasOwnProperty('TotalReadoutTime') &&
- sidecar.hasOwnProperty('EffectiveEchoSpacing') &&
- sidecar['TotalReadoutTime'] < sidecar['EffectiveEchoSpacing']
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 93,
- }),
- )
- }
- return issues
-}
-
-const selectSchema = (file) => {
- let schema = null
- if (file.name) {
- if (file.name.endsWith('participants.json')) {
- schema = require('./schemas/data_dictionary.json')
- } else if (
- file.name.endsWith('bold.json') ||
- file.name.endsWith('sbref.json')
- ) {
- schema = require('./schemas/bold.json')
- } else if (file.name.endsWith('asl.json')) {
- schema = require('./schemas/asl.json')
- } else if (file.name.endsWith('pet.json')) {
- schema = require('./schemas/pet.json')
- } else if (file.name.endsWith('nirs.json')) {
- schema = require('./schemas/nirs.json')
- } else if (file.relativePath === '/dataset_description.json') {
- schema = require('./schemas/dataset_description.json')
- } else if (file.name.endsWith('meg.json')) {
- schema = require('./schemas/meg.json')
- } else if (file.name.endsWith('ieeg.json')) {
- schema = require('./schemas/ieeg.json')
- } else if (file.name.endsWith('eeg.json')) {
- schema = require('./schemas/eeg.json')
- } else if (
- file.name.endsWith('TEM.json') ||
- file.name.endsWith('SEM.json') ||
- file.name.endsWith('uCT.json') ||
- file.name.endsWith('BF.json') ||
- file.name.endsWith('DF.json') ||
- file.name.endsWith('PC.json') ||
- file.name.endsWith('DIC.json') ||
- file.name.endsWith('FLUO.json') ||
- file.name.endsWith('CONF.json') ||
- file.name.endsWith('PLI.json') ||
- file.name.endsWith('CARS.json') ||
- file.name.endsWith('2PE.json') ||
- file.name.endsWith('MPE.json') ||
- file.name.endsWith('SR.json') ||
- file.name.endsWith('NLO.json') ||
- file.name.endsWith('OCT.json') ||
- file.name.endsWith('SPIM.json')
- ) {
- schema = require('./schemas/microscopy.json')
- } else if (
- file.relativePath.includes('/micr') &&
- file.name.endsWith('photo.json')
- ) {
- schema = require('./schemas/microscopy_photo.json')
- } else if (
- file.relativePath.includes('/meg/') &&
- file.name.endsWith('coordsystem.json')
- ) {
- schema = require('./schemas/coordsystem_meg.json')
- } else if (
- file.relativePath.includes('/ieeg/') &&
- file.name.endsWith('coordsystem.json')
- ) {
- schema = require('./schemas/coordsystem_ieeg.json')
- } else if (
- file.relativePath.includes('/eeg/') &&
- file.name.endsWith('coordsystem.json')
- ) {
- schema = require('./schemas/coordsystem_eeg.json')
- } else if (
- file.relativePath.includes('/nirs/') &&
- file.name.endsWith('coordsystem.json')
- ) {
- schema = require('./schemas/coordsystem_nirs.json')
- } else if (file.name.endsWith('genetic_info.json')) {
- schema = require('./schemas/genetic_info.json')
- } else if (
- file.relativePath.includes('/pet/') &&
- file.name.endsWith('blood.json')
- ) {
- schema = require('./schemas/pet_blood.json')
- } else if (
- file.name.endsWith('physio.json') ||
- file.name.endsWith('stim.json')
- ) {
- schema = require('./schemas/physio.json')
- } else if (file.name.endsWith('events.json')) {
- schema = require('./schemas/events.json')
- } else if (file.name.endsWith('beh.json')) {
- schema = require('./schemas/beh.json')
- } else if (file.name.endsWith('_motion.json')) {
- schema = require('./schemas/motion.json')
- } else if (file.name.endsWith('_channels.json')) {
- schema = require('./schemas/channels.json')
- }
- }
- return schema
-}
-
-const validateSchema = (file, sidecar, schema) => {
- const issues = []
- if (schema) {
- const validate = ajv.compile(schema)
- const valid = validate(sidecar)
- if (!valid) {
- validate.errors.map((error) =>
- issues.push(
- new Issue({
- file: file,
- code: 55,
- evidence: error.dataPath + ' ' + error.message,
- }),
- ),
- )
- }
- }
- return issues
-}
-
-const checkSidecarUnits = (file, sidecar, fieldObj, errCode) => {
- const issues = []
- const field = fieldObj.field
- const min = fieldObj.min
- if (sidecar.hasOwnProperty(field) && sidecar[field] > min) {
- issues.push(
- new Issue({
- code: errCode,
- file: file,
- }),
- )
- }
- return issues
-}
diff --git a/legacy/bids-validator/validators/json/load.js b/legacy/bids-validator/validators/json/load.js
deleted file mode 100644
index 9c0c0e72..00000000
--- a/legacy/bids-validator/validators/json/load.js
+++ /dev/null
@@ -1,52 +0,0 @@
-import utils from '../../utils'
-
-class JSONParseError extends Error {
- constructor(message) {
- super(message)
- this.name = 'JSONParseError'
- }
-}
-
-const load = (files, jsonFiles, jsonContentsDict, annexed, dir) => {
- let issues = []
-
- // Read JSON file contents and parse for issues
- const readJsonFile = (file, annexed, dir) =>
- utils.files
- .readFile(file, annexed, dir)
- .then((contents) => utils.json.parse(file, contents))
- .then(({ issues: parseIssues, parsed }) => {
- // Append any parse issues to returned issues
- Array.prototype.push.apply(issues, parseIssues)
-
- // Abort further tests if an error is found
- if (
- parseIssues &&
- parseIssues.some((issue) => issue.severity === 'error')
- ) {
- throw new JSONParseError('Aborted due to parse error')
- }
-
- jsonContentsDict[file.relativePath] = parsed
- jsonFiles.push(file)
- })
-
- // Start concurrent read/parses
- const fileReads = files.map((file) =>
- utils.limit(() => readJsonFile(file, annexed, dir)),
- )
-
- // After all reads/parses complete, return any found issues
- return Promise.all(fileReads)
- .then(() => issues)
- .catch((err) => {
- // Handle early exit
- if (err instanceof JSONParseError) {
- return issues
- } else {
- throw err
- }
- })
-}
-
-export default load
diff --git a/legacy/bids-validator/validators/json/schemas/M0Scan.json b/legacy/bids-validator/validators/json/schemas/M0Scan.json
deleted file mode 100644
index a14a5f20..00000000
--- a/legacy/bids-validator/validators/json/schemas/M0Scan.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "type": "object",
- "properties": {
- "EchoTime": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "EffectiveEchoSpacing": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "PhaseEncodingDirection": {
- "type": "string",
- "enum": ["i", "j", "k", "i-", "j-", "k-"]
- },
- "RepetitionTimePreparation": {
- "anyOf": [
- { "type": "number", "minimum": 0 },
- {
- "type": "array",
- "items": { "type": "number" },
- "minimum": 0
- }
- ]
- },
- "SliceEncodingDirection": {
- "type": "string",
- "enum": ["i", "j", "k", "i-", "j-", "k-"]
- },
- "SliceTiming": {
- "type": "array",
- "items": {
- "type": "number",
- "minimum": 0
- }
- },
- "AcquisitionVoxelSize": {
- "type": "array",
- "items": {
- "type": "number",
- "exclusiveMinimum": 0
- }
- }
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/asl.json b/legacy/bids-validator/validators/json/schemas/asl.json
deleted file mode 100644
index 55fd883d..00000000
--- a/legacy/bids-validator/validators/json/schemas/asl.json
+++ /dev/null
@@ -1,204 +0,0 @@
-{
- "type": "object",
- "properties": {
- "EchoTime": {
- "anyOf": [
- { "type": "number", "exclusiveMinimum": 0 },
- {
- "type": "array",
- "items": { "type": "number", "exclusiveMinimum": 0 }
- }
- ]
- },
- "EffectiveEchoSpacing": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "PhaseEncodingDirection": {
- "type": "string",
- "enum": ["i", "j", "k", "i-", "j-", "k-"]
- },
- "RepetitionTimePreparation": {
- "anyOf": [
- { "type": "number", "minimum": 0 },
- {
- "type": "array",
- "items": { "type": "number" },
- "minimum": 0
- }
- ]
- },
- "SliceEncodingDirection": {
- "type": "string",
- "enum": ["i", "j", "k", "i-", "j-", "k-"]
- },
- "SliceTiming": {
- "type": "array",
- "items": {
- "type": "number",
- "minimum": 0
- }
- },
- "FlipAngle": {
- "anyOf": [
- { "type": "number" },
- {
- "type": "array",
- "items": { "type": "number" }
- }
- ]
- },
- "ArterialSpinLabelingType": {
- "type": "string",
- "enum": ["PASL", "CASL", "PCASL"]
- },
- "LabelingDuration": {
- "anyOf": [
- { "type": "number", "minimum": 0 },
- {
- "type": "array",
- "items": { "type": "number" },
- "minimum": 0
- }
- ]
- },
- "PostLabelingDelay": {
- "anyOf": [
- { "type": "number", "minimum": 0 },
- {
- "type": "array",
- "items": { "type": "number" },
- "minimum": 0
- }
- ]
- },
- "BackgroundSuppression": {
- "type": "boolean"
- },
- "VascularCrushing": {
- "type": "boolean"
- },
- "LabelingLocationDescription": {
- "type": "string"
- },
- "LabelingOrientation": {
- "type": "array",
- "items": { "type": "number" }
- },
- "LabelingDistance": {
- "type": "number"
- },
- "LabelingPulseMaximumGradient": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "LabelingPulseFlipAngle": {
- "type": "number",
- "exclusiveMinimum": 0,
- "maximum": 360
- },
- "LabelingSlabThickness": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "AcquisitionVoxelSize": {
- "type": "array",
- "items": {
- "type": "number",
- "exclusiveMinimum": 0
- }
- },
- "BackgroundSuppressionNumberPulses": {
- "type": "number",
- "minimum": 0
- },
- "BackgroundSuppressionPulseTime": {
- "type": "array",
- "items": {
- "type": "number",
- "minimum": 0
- }
- },
- "VascularCrushingVENC": {
- "anyOf": [
- { "type": "number" },
- {
- "type": "array",
- "items": { "type": "number" }
- }
- ]
- },
- "PCASLType": {
- "type": "string",
- "enum": ["balanced", "unbalanced"]
- },
- "CASLType": {
- "type": "string",
- "enum": ["single-coil", "double-coil"]
- },
- "PASLType": {
- "type": "string"
- },
- "LookLocker": {
- "type": "boolean"
- },
- "LabelingPulseDuration": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "LabelingPulseInterval": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "LabelingPulseAverageB1": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "LabelingPulseAverageGradient": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "LabelingEfficiency": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "BolusCutOffFlag": {
- "type": "boolean"
- },
- "BolusCutOffDelayTime": {
- "anyOf": [
- { "type": "number", "minimum": 0 },
- {
- "type": "array",
- "items": { "type": "number" },
- "minimum": 0
- }
- ]
- },
- "BolusCutOffTechnique": {
- "type": "string"
- },
- "M0Type": {
- "type": "string",
- "enum": ["Separate", "Included", "Estimate", "Absent"]
- },
- "M0Estimate": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "TotalAcquiredPairs": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "PulseSequenceDetails": {
- "type": "string"
- },
- "Manufacturer": {
- "type": "string"
- },
- "MRAcquisitionType": {
- "type": "string",
- "enum": ["2D", "3D"]
- }
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/beh.json b/legacy/bids-validator/validators/json/schemas/beh.json
deleted file mode 100644
index 394ea41f..00000000
--- a/legacy/bids-validator/validators/json/schemas/beh.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
- "type": "object",
- "properties": {
- "TaskName": { "$ref": "common_definitions.json#/definitions/TaskName" },
- "TaskDescription": {
- "$ref": "common_definitions.json#/definitions/TaskDescription"
- },
- "Instructions": {
- "$ref": "common_definitions.json#/definitions/Instructions"
- },
- "CogAtlasID": { "$ref": "common_definitions.json#/definitions/CogAtlasID" },
- "CogPOID": { "$ref": "common_definitions.json#/definitions/CogPOID" },
- "InstitutionName": {
- "$ref": "common_definitions.json#/definitions/InstitutionName"
- },
- "InstitutionAddress": {
- "$ref": "common_definitions.json#/definitions/InstitutionAddress"
- },
- "InstitutionalDepartmentName": {
- "$ref": "common_definitions.json#/definitions/InstitutionalDepartmentName"
- }
- },
- "additionalProperties": true
-}
diff --git a/legacy/bids-validator/validators/json/schemas/bold.json b/legacy/bids-validator/validators/json/schemas/bold.json
deleted file mode 100644
index 13f395fb..00000000
--- a/legacy/bids-validator/validators/json/schemas/bold.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-06/schema#",
- "type": "object",
- "properties": {
- "CogAtlasID": { "$ref": "common_definitions.json#/definitions/CogAtlasID" },
- "CogPOID": { "$ref": "common_definitions.json#/definitions/CogPOID" },
- "AcquisitionDuration": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "EchoTime": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "EffectiveEchoSpacing": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "PhaseEncodingDirection": {
- "type": "string",
- "enum": ["i", "j", "k", "i-", "j-", "k-"]
- },
- "RepetitionTime": {
- "type": "number",
- "exclusiveMinimum": 0
- },
- "SliceEncodingDirection": {
- "type": "string",
- "enum": ["i", "j", "k", "i-", "j-", "k-"]
- },
- "SliceTiming": {
- "type": "array",
- "items": {
- "type": "number",
- "minimum": 0
- }
- },
- "TaskName": {
- "type": "string"
- },
- "VolumeTiming": {
- "type": "array",
- "items": {
- "type": "number",
- "minimum": 0
- }
- },
- "PartialFourier": {
- "type": "number"
- }
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/channels.json b/legacy/bids-validator/validators/json/schemas/channels.json
deleted file mode 100644
index e4be45d8..00000000
--- a/legacy/bids-validator/validators/json/schemas/channels.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-06/schema#",
- "allOf": [
- {
- "type": "object",
- "properties": {
- "reference_frame": {
- "title": "Reference Frame",
- "type": "object",
- "properties": {
- "Levels": {
- "type": "object",
- "patternProperties": {
- "^.+$": {
- "type": "object",
- "properties": {
- "RotationOrder": {
- "description": "The sequence in which the extrinsic rotations are applied around the three axes.",
- "type": "string",
- "enum": ["XYZ", "XZY", "YXZ", "YZX", "ZXY", "ZYX"]
- },
- "RotationRule": {
- "description": "The direction of rotation around each axis.",
- "type": "string",
- "enum": ["left-hand", "right-hand"]
- },
- "SpatialAxes": {
- "description": "The coordinate system in which the motion data are to be interpreted. A sequence of characters from the set `{'A', 'P', 'L', 'R', 'S', 'I', '_'}` indicating the direction of each axis. For example `\"ARS\"` indicates positive values in the X, Y, Z axes are respectively anterior, right, and superior of the origin, while `\"PLI\"` indicates positive values are posterior, left, and inferior of the origin. The `\"_\"` character may be used for unused axes.",
- "type": "string",
- "pattern": "^[APLRSI_]{3}$"
- }
- }
- }
- }
- }
- }
- }
- }
- },
- {
- "type": "object",
- "patternProperties": {
- "^.+$": { "$ref": "common_definitions.json#/definitions/ColumnDescription" }
- }
- }
- ]
-}
diff --git a/legacy/bids-validator/validators/json/schemas/common_definitions.json b/legacy/bids-validator/validators/json/schemas/common_definitions.json
deleted file mode 100644
index 5980ca3c..00000000
--- a/legacy/bids-validator/validators/json/schemas/common_definitions.json
+++ /dev/null
@@ -1,194 +0,0 @@
-{
- "$id": "common_definitions.json",
- "definitions": {
- "CogAtlasID": { "type": "string", "format": "uri" },
- "CogPOID": { "type": "string", "format": "uri" },
- "CoordUnits": { "type": "string", "enum": ["m", "mm", "cm", "n/a"] },
- "MEGCoordSys": {
- "type": "string",
- "enum": [
- "CTF",
- "ElektaNeuromag",
- "4DBti",
- "KitYokogawa",
- "ChietiItab",
- "Other"
- ]
- },
- "EEGCoordSys": {
- "type": "string",
- "enum": ["CapTrak", "EEGLAB", "EEGLAB-HJ", "Other"]
- },
- "iEEGCoordSys": {
- "type": "string",
- "enum": ["Pixels", "ACPC", "ScanRAS", "Other"]
- },
- "StandardTemplateCoordSys": {
- "type": "string",
- "enum": [
- "ICBM452AirSpace",
- "ICBM452Warp5Space",
- "IXI549Space",
- "fsaverage",
- "fsaverageSym",
- "fsLR",
- "MNIColin27",
- "MNI152Lin",
- "MNI152NLin2009aSym",
- "MNI152NLin2009bSym",
- "MNI152NLin2009cSym",
- "MNI152NLin2009aAsym",
- "MNI152NLin2009bAsym",
- "MNI152NLin2009cAsym",
- "MNI152NLin6Sym",
- "MNI152NLin6ASym",
- "MNI305",
- "NIHPD",
- "OASIS30AntsOASISAnts",
- "OASIS30Atropos",
- "Talairach",
- "UNCInfant"
- ]
- },
- "StandardTemplateDeprecatedCoordSys": {
- "type": "string",
- "enum": [
- "fsaverage3",
- "fsaverage4",
- "fsaverage5",
- "fsaverage6",
- "fsaveragesym",
- "UNCInfant0V21",
- "UNCInfant1V21",
- "UNCInfant2V21",
- "UNCInfant0V22",
- "UNCInfant1V22",
- "UNCInfant2V22",
- "UNCInfant0V23",
- "UNCInfant1V23",
- "UNCInfant2V23"
- ]
- },
- "DeviceSerialNumber": { "type": "string" },
- "ECGChannelCount": { "type": "integer", "minimum": 0 },
- "EEGChannelCount": { "type": "integer", "minimum": 0 },
- "NIRSChannelCount": { "type": "integer", "minimum": 0 },
- "NIRSSourceOptodeCount": { "type": "integer", "minimum": 0 },
- "NIRSDetectorOptodeCount": { "type": "integer", "minimum": 0 },
- "EMGChannelCount": { "type": "integer", "minimum": 0 },
- "EOGChannelCount": { "type": "integer", "minimum": 0 },
- "EpochLength": { "type": "number", "minimum": 0 },
- "HardwareFilters": {
- "anyOf": [
- { "type": "object", "additionalProperties": { "type": "object" } },
- { "type": "string", "pattern": "^n/a$" }
- ]
- },
- "InstitutionAddress": { "type": "string" },
- "InstitutionName": { "type": "string" },
- "Instructions": { "type": "string" },
- "InstitutionalDepartmentName": { "type": "string", "minLength": 1 },
- "LandmarkCoordinates": {
- "type": "object",
- "additionalProperties": {
- "type": "array",
- "items": {
- "type": "number"
- },
- "minItems": 3,
- "maxItems": 3
- }
- },
- "Manufacturer": { "type": "string", "minLength": 1 },
- "MiscChannelCount": { "type": "integer", "minimum": 0 },
- "PowerLineFrequency": {
- "anyOf": [
- { "type": "number", "exclusiveMinimum": 0 },
- { "type": "string", "pattern": "^n/a$" }
- ]
- },
- "RecordingDuration": { "type": "number" },
- "RecordingType": {
- "type": "string",
- "enum": ["continuous", "epoched", "discontinuous"]
- },
- "SamplingFrequency": { "type": "number" },
- "SoftwareFilters": {
- "anyOf": [
- { "type": "object", "additionalProperties": { "type": "object" } },
- { "type": "string", "pattern": "^n/a$" }
- ]
- },
- "SoftwareVersions": { "type": "string" },
- "TaskDescription": { "type": "string" },
- "TaskName": { "type": "string", "minLength": 1 },
- "TermURL": {
- "title": "TermURL",
- "description": "URL pointing to a formal definition in an ontology available on the web.",
- "type": "string",
- "format": "uri"
- },
- "TriggerChannelCount": { "type": "integer", "minimum": 0 },
- "ColumnDescription": {
- "type": "object",
- "title": "Column",
- "description": "Column of a corresponding tabular file.",
- "properties": {
- "LongName": {
- "title": "LongName",
- "description": " Long (unabbreviated) name of column.",
- "type": "string"
- },
- "Description": {
- "title": "Description",
- "description": "Description of the column.",
- "type": "string"
- },
- "Units": {
- "title": "Units",
- "description": "Measurement units.",
- "type": "string"
- },
- "Levels": {
- "type": "object",
- "title": "Levels",
- "description": "For categorical variables: a dictionary of possible values (keys) and their descriptions (values).",
- "patternProperties": {
- "^.+$": {
- "anyOf": [
- { "type": "string" },
- {
- "type": "object",
- "properties": {
- "Description": { "type": "string" },
- "TermURL": { "$ref": "#/definitions/TermURL" }
- }
- }
- ]
- }
- }
- },
- "TermURL": { "$ref": "#/definitions/TermURL" },
- "HED": {
- "anyOf": [
- {
- "type": "object",
- "title": "HED",
- "description": "For categorical variables: a dictionary of possible values (keys) and their HED strings (values).",
- "patternProperties": {
- "^.+$": {
- "type": "string"
- }
- }
- },
- {
- "type": "string",
- "title": "HED",
- "description": "For value variables: a string with a single '#' character where the cell value is to be interpolated."
- }
- ]
- }
- }
- }
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/coordsystem_eeg.json b/legacy/bids-validator/validators/json/schemas/coordsystem_eeg.json
deleted file mode 100644
index 3b0e375b..00000000
--- a/legacy/bids-validator/validators/json/schemas/coordsystem_eeg.json
+++ /dev/null
@@ -1,112 +0,0 @@
-{
- "type": "object",
- "properties": {
- "IntendedFor": { "type": "string", "minLength": 1 },
- "FiducialsDescription": { "type": "string", "minLength": 1 },
- "FiducialsCoordinates": {
- "$ref": "common_definitions.json#/definitions/LandmarkCoordinates"
- },
- "FiducialsCoordinateSystem": {
- "anyOf": [
- { "$ref": "common_definitions.json#/definitions/MEGCoordSys" },
- { "$ref": "common_definitions.json#/definitions/EEGCoordSys" },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateCoordSys"
- },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateDeprecatedCoordSys"
- }
- ]
- },
- "FiducialsCoordinateSystemDescription": {
- "type": "string",
- "minLength": 1
- },
- "FiducialsCoordinateUnits": {
- "$ref": "common_definitions.json#/definitions/CoordUnits"
- },
- "EEGCoordinateSystem": {
- "anyOf": [
- { "$ref": "common_definitions.json#/definitions/MEGCoordSys" },
- { "$ref": "common_definitions.json#/definitions/EEGCoordSys" },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateCoordSys"
- },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateDeprecatedCoordSys"
- }
- ]
- },
- "EEGCoordinateUnits": {
- "$ref": "common_definitions.json#/definitions/CoordUnits"
- },
- "EEGCoordinateSystemDescription": { "type": "string", "minLength": 1 },
- "AnatomicalLandmarkCoordinates": {
- "$ref": "common_definitions.json#/definitions/LandmarkCoordinates"
- },
- "AnatomicalLandmarkCoordinateSystem": {
- "anyOf": [
- { "$ref": "common_definitions.json#/definitions/MEGCoordSys" },
- { "$ref": "common_definitions.json#/definitions/EEGCoordSys" },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateCoordSys"
- },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateDeprecatedCoordSys"
- }
- ]
- },
- "AnatomicalLandmarkCoordinateUnits": {
- "$ref": "common_definitions.json#/definitions/CoordUnits"
- },
- "AnatomicalLandmarkCoordinateSystemDescription": {
- "type": "string",
- "minLength": 1
- }
- },
- "required": ["EEGCoordinateSystem", "EEGCoordinateUnits"],
- "additionalProperties": false,
- "allOf": [
- {
- "$ref": "#/dependency-definitions/if-EEGCoordinateSystem-is-Other-then-Description-is-required"
- },
- {
- "$ref": "#/dependency-definitions/if-FiducialsCoordinateSystem-is-Other-then-Description-is-required"
- },
- {
- "$ref": "#/dependency-definitions/if-AnatomicalLandmarkCoordinateSystem-is-Other-then-Description-is-required"
- }
- ],
- "dependency-definitions": {
- "if-EEGCoordinateSystem-is-Other-then-Description-is-required": {
- "if": {
- "type": "object",
- "properties": {
- "EEGCoordinateSystem": { "const": "Other" }
- },
- "required": ["EEGCoordinateSystem"]
- },
- "then": { "required": ["EEGCoordinateSystemDescription"] }
- },
- "if-FiducialsCoordinateSystem-is-Other-then-Description-is-required": {
- "if": {
- "type": "object",
- "properties": {
- "FiducialsCoordinateSystem": { "const": "Other" }
- },
- "required": ["FiducialsCoordinateSystem"]
- },
- "then": { "required": ["FiducialsCoordinateSystemDescription"] }
- },
- "if-AnatomicalLandmarkCoordinateSystem-is-Other-then-Description-is-required": {
- "if": {
- "type": "object",
- "properties": {
- "AnatomicalLandmarkCoordinateSystem": { "const": "Other" }
- },
- "required": ["AnatomicalLandmarkCoordinateSystem"]
- },
- "then": { "required": ["AnatomicalLandmarkCoordinateSystemDescription"] }
- }
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/coordsystem_ieeg.json b/legacy/bids-validator/validators/json/schemas/coordsystem_ieeg.json
deleted file mode 100644
index 9d3a5cb2..00000000
--- a/legacy/bids-validator/validators/json/schemas/coordsystem_ieeg.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "type": "object",
- "properties": {
- "IntendedFor": { "type": "string", "minLength": 1 },
- "iEEGCoordinateSystem": {
- "anyOf": [
- { "$ref": "common_definitions.json#/definitions/iEEGCoordSys" },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateCoordSys"
- },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateDeprecatedCoordSys"
- }
- ]
- },
- "iEEGCoordinateUnits": {
- "type": "string",
- "enum": ["m", "mm", "cm", "pixels", "n/a"]
- },
- "iEEGCoordinateSystemDescription": { "type": "string", "minLength": 1 },
- "iEEGCoordinateProcessingDescription": { "type": "string", "minLength": 1 },
- "iEEGCoordinateProcessingReference": { "type": "string", "minLength": 1 }
- },
- "required": ["iEEGCoordinateSystem", "iEEGCoordinateUnits"],
- "additionalProperties": false,
- "allOf": [
- {
- "$ref": "#/dependency-definitions/if-iEEGCoordinateSystem-is-Other-then-Description-is-required"
- },
- {
- "$ref": "#/dependency-definitions/if-iEEGCoordinateSystem-is-Pixels-then-iEEGCoordinateUnits-must-be-pixels"
- }
- ],
- "dependency-definitions": {
- "if-iEEGCoordinateSystem-is-Other-then-Description-is-required": {
- "if": {
- "type": "object",
- "properties": {
- "iEEGCoordinateSystem": { "const": "Other" }
- },
- "required": ["iEEGCoordinateSystem"]
- },
- "then": { "required": ["iEEGCoordinateSystemDescription"] }
- },
- "if-iEEGCoordinateSystem-is-Pixels-then-iEEGCoordinateUnits-must-be-pixels": {
- "if": {
- "type": "object",
- "properties": {
- "iEEGCoordinateSystem": { "const": "Pixels" }
- },
- "required": ["iEEGCoordinateSystem"]
- },
- "then": {
- "type": "object",
- "properties": {
- "iEEGCoordinateUnits": { "type": "string", "enum": ["pixels"] }
- },
- "required": ["iEEGCoordinateUnits"]
- }
- }
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/coordsystem_meg.json b/legacy/bids-validator/validators/json/schemas/coordsystem_meg.json
deleted file mode 100644
index f7959405..00000000
--- a/legacy/bids-validator/validators/json/schemas/coordsystem_meg.json
+++ /dev/null
@@ -1,182 +0,0 @@
-{
- "type": "object",
- "properties": {
- "MEGCoordinateSystem": {
- "anyOf": [
- { "$ref": "common_definitions.json#/definitions/MEGCoordSys" },
- { "$ref": "common_definitions.json#/definitions/EEGCoordSys" },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateCoordSys"
- },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateDeprecatedCoordSys"
- }
- ]
- },
- "MEGCoordinateUnits": {
- "$ref": "common_definitions.json#/definitions/CoordUnits"
- },
- "MEGCoordinateSystemDescription": { "type": "string", "minLength": 1 },
- "EEGCoordinateSystem": {
- "anyOf": [
- { "$ref": "common_definitions.json#/definitions/MEGCoordSys" },
- { "$ref": "common_definitions.json#/definitions/EEGCoordSys" },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateCoordSys"
- },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateDeprecatedCoordSys"
- }
- ]
- },
- "EEGCoordinateUnits": {
- "$ref": "common_definitions.json#/definitions/CoordUnits"
- },
- "EEGCoordinateSystemDescription": { "type": "string", "minLength": 1 },
- "IntendedFor": {
- "anyOf": [
- {
- "type": "array",
- "items": {
- "type": "string",
- "minLength": 1
- }
- },
- { "type": "string", "minLength": 1 }
- ]
- },
- "FiducialsDescription": { "type": "string", "minLength": 1 },
- "HeadCoilCoordinates": {
- "$ref": "common_definitions.json#/definitions/LandmarkCoordinates"
- },
- "HeadCoilCoordinateSystem": {
- "anyOf": [
- { "$ref": "common_definitions.json#/definitions/MEGCoordSys" },
- { "$ref": "common_definitions.json#/definitions/EEGCoordSys" },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateCoordSys"
- },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateDeprecatedCoordSys"
- }
- ]
- },
- "HeadCoilCoordinateUnits": {
- "$ref": "common_definitions.json#/definitions/CoordUnits"
- },
- "HeadCoilCoordinateSystemDescription": { "type": "string", "minLength": 1 },
- "AnatomicalLandmarkCoordinates": {
- "$ref": "common_definitions.json#/definitions/LandmarkCoordinates"
- },
- "AnatomicalLandmarkCoordinateSystem": {
- "anyOf": [
- { "$ref": "common_definitions.json#/definitions/MEGCoordSys" },
- { "$ref": "common_definitions.json#/definitions/EEGCoordSys" },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateCoordSys"
- },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateDeprecatedCoordSys"
- }
- ]
- },
- "AnatomicalLandmarkCoordinateUnits": {
- "$ref": "common_definitions.json#/definitions/CoordUnits"
- },
- "AnatomicalLandmarkCoordinateSystemDescription": {
- "type": "string",
- "minLength": 1
- },
- "DigitizedHeadPoints": { "type": "string" },
- "DigitizedHeadPointsCoordinateSystem": {
- "anyOf": [
- { "$ref": "common_definitions.json#/definitions/MEGCoordSys" },
- { "$ref": "common_definitions.json#/definitions/EEGCoordSys" },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateCoordSys"
- },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateDeprecatedCoordSys"
- }
- ]
- },
- "DigitizedHeadPointsCoordinateUnits": {
- "$ref": "common_definitions.json#/definitions/CoordUnits"
- },
- "DigitizedHeadPointsCoordinateSystemDescription": {
- "type": "string",
- "minLength": 1
- }
- },
- "required": ["MEGCoordinateSystem", "MEGCoordinateUnits"],
- "additionalProperties": false,
- "allOf": [
- {
- "$ref": "#/dependency-definitions/if-MEGCoordinateSystem-is-Other-then-Description-is-required"
- },
- {
- "$ref": "#/dependency-definitions/if-EEGCoordinateSystem-is-Other-then-Description-is-required"
- },
- {
- "$ref": "#/dependency-definitions/if-HeadCoilCoordinateSystem-is-Other-then-Description-is-required"
- },
- {
- "$ref": "#/dependency-definitions/if-AnatomicalLandmarkCoordinateSystem-is-Other-then-Description-is-required"
- },
- {
- "$ref": "#/dependency-definitions/if-DigitizedHeadPointsCoordinateSystem-is-Other-then-Description-is-required"
- }
- ],
- "dependency-definitions": {
- "if-MEGCoordinateSystem-is-Other-then-Description-is-required": {
- "if": {
- "type": "object",
- "properties": {
- "MEGCoordinateSystem": { "const": "Other" }
- },
- "required": ["MEGCoordinateSystem"]
- },
- "then": { "required": ["MEGCoordinateSystemDescription"] }
- },
- "if-EEGCoordinateSystem-is-Other-then-Description-is-required": {
- "if": {
- "type": "object",
- "properties": {
- "EEGCoordinateSystem": { "const": "Other" }
- },
- "required": ["EEGCoordinateSystem"]
- },
- "then": { "required": ["EEGCoordinateSystemDescription"] }
- },
- "if-HeadCoilCoordinateSystem-is-Other-then-Description-is-required": {
- "if": {
- "type": "object",
- "properties": {
- "HeadCoilCoordinateSystem": { "const": "Other" }
- },
- "required": ["HeadCoilCoordinateSystem"]
- },
- "then": { "required": ["HeadCoilCoordinateSystemDescription"] }
- },
- "if-AnatomicalLandmarkCoordinateSystem-is-Other-then-Description-is-required": {
- "if": {
- "type": "object",
- "properties": {
- "AnatomicalLandmarkCoordinateSystem": { "const": "Other" }
- },
- "required": ["AnatomicalLandmarkCoordinateSystem"]
- },
- "then": { "required": ["AnatomicalLandmarkCoordinateSystemDescription"] }
- },
- "if-DigitizedHeadPointsCoordinateSystem-is-Other-then-Description-is-required": {
- "if": {
- "type": "object",
- "properties": {
- "DigitizedHeadPointsCoordinateSystem": { "const": "Other" }
- },
- "required": ["DigitizedHeadPointsCoordinateSystem"]
- },
- "then": { "required": ["DigitizedHeadPointsCoordinateSystemDescription"] }
- }
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/coordsystem_nirs.json b/legacy/bids-validator/validators/json/schemas/coordsystem_nirs.json
deleted file mode 100644
index ee522e2e..00000000
--- a/legacy/bids-validator/validators/json/schemas/coordsystem_nirs.json
+++ /dev/null
@@ -1,113 +0,0 @@
-{
- "type": "object",
- "properties": {
- "IntendedFor": { "type": "string", "minLength": 1 },
- "FiducialsDescription": { "type": "string", "minLength": 1 },
- "FiducialsCoordinates": {
- "$ref": "common_definitions.json#/definitions/LandmarkCoordinates"
- },
- "FiducialsCoordinateSystem": {
- "anyOf": [
- { "$ref": "common_definitions.json#/definitions/MEGCoordSys" },
- { "$ref": "common_definitions.json#/definitions/EEGCoordSys" },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateCoordSys"
- },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateDeprecatedCoordSys"
- }
- ]
- },
- "FiducialsCoordinateSystemDescription": {
- "type": "string",
- "minLength": 1
- },
- "FiducialsCoordinateUnits": {
- "$ref": "common_definitions.json#/definitions/CoordUnits"
- },
- "NIRSCoordinateSystem": {
- "anyOf": [
- { "$ref": "common_definitions.json#/definitions/MEGCoordSys" },
- { "$ref": "common_definitions.json#/definitions/EEGCoordSys" },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateCoordSys"
- },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateDeprecatedCoordSys"
- }
- ]
- },
- "NIRSCoordinateUnits": {
- "$ref": "common_definitions.json#/definitions/CoordUnits"
- },
- "NIRSCoordinateSystemDescription": { "type": "string", "minLength": 1 },
- "AnatomicalLandmarkCoordinates": {
- "$ref": "common_definitions.json#/definitions/LandmarkCoordinates"
- },
- "AnatomicalLandmarkCoordinateSystem": {
- "anyOf": [
- { "$ref": "common_definitions.json#/definitions/MEGCoordSys" },
- { "$ref": "common_definitions.json#/definitions/EEGCoordSys" },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateCoordSys"
- },
- {
- "$ref": "common_definitions.json#/definitions/StandardTemplateDeprecatedCoordSys"
- }
- ]
- },
- "AnatomicalLandmarkCoordinateUnits": {
- "$ref": "common_definitions.json#/definitions/CoordUnits"
- },
- "AnatomicalLandmarkCoordinateSystemDescription": {
- "type": "string",
- "minLength": 1
- },
- "NIRSCoordinateProcessingDescription": { "type": "string", "minLength": 1 }
- },
- "required": ["NIRSCoordinateSystem", "NIRSCoordinateUnits"],
- "additionalProperties": false,
- "allOf": [
- {
- "$ref": "#/dependency-definitions/if-NIRSCoordinateSystem-is-Other-then-Description-is-required"
- },
- {
- "$ref": "#/dependency-definitions/if-FiducialsCoordinateSystem-is-Other-then-Description-is-required"
- },
- {
- "$ref": "#/dependency-definitions/if-AnatomicalLandmarkCoordinateSystem-is-Other-then-Description-is-required"
- }
- ],
- "dependency-definitions": {
- "if-NIRSCoordinateSystem-is-Other-then-Description-is-required": {
- "if": {
- "type": "object",
- "properties": {
- "NIRSCoordinateSystem": { "const": "Other" }
- },
- "required": ["NIRSCoordinateSystem"]
- },
- "then": { "required": ["NIRSCoordinateSystemDescription"] }
- },
- "if-FiducialsCoordinateSystem-is-Other-then-Description-is-required": {
- "if": {
- "type": "object",
- "properties": {
- "FiducialsCoordinateSystem": { "const": "Other" }
- },
- "required": ["FiducialsCoordinateSystem"]
- },
- "then": { "required": ["FiducialsCoordinateSystemDescription"] }
- },
- "if-AnatomicalLandmarkCoordinateSystem-is-Other-then-Description-is-required": {
- "if": {
- "type": "object",
- "properties": {
- "AnatomicalLandmarkCoordinateSystem": { "const": "Other" }
- },
- "required": ["AnatomicalLandmarkCoordinateSystem"]
- },
- "then": { "required": ["AnatomicalLandmarkCoordinateSystemDescription"] }
- }
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/data_dictionary.json b/legacy/bids-validator/validators/json/schemas/data_dictionary.json
deleted file mode 100644
index f3bfc192..00000000
--- a/legacy/bids-validator/validators/json/schemas/data_dictionary.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "type": "object",
- "patternProperties": {
- "^.+$": { "$ref": "common_definitions.json#/definitions/ColumnDescription" }
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/dataset_description.json b/legacy/bids-validator/validators/json/schemas/dataset_description.json
deleted file mode 100644
index cf61644b..00000000
--- a/legacy/bids-validator/validators/json/schemas/dataset_description.json
+++ /dev/null
@@ -1,147 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-06/schema#",
- "$id": "http://example.com/example.json",
- "type": "object",
- "properties": {
- "Name": {
- "type": "string"
- },
- "BIDSVersion": {
- "type": "string"
- },
- "HEDVersion": {
- "anyOf": [
- { "type": "string" },
- {
- "type": "array",
- "items": {
- "type": "string",
- "pattern": "^(?:[a-zA-Z]+:)?(?:[a-zA-Z]+_)?(?:0|[1-9]\\d*)\\.(?:0|[1-9]\\d*)\\.(?:0|[1-9]\\d*)(?:-(?:(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+(?:[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$"
- }
- }
- ]
- },
- "DatasetType": {
- "type": "string",
- "enum": ["raw", "derivative"]
- },
- "License": {
- "type": "string"
- },
- "Authors": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "Acknowledgements": {
- "type": "string"
- },
- "HowToAcknowledge": {
- "type": "string"
- },
- "Funding": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "EthicsApprovals": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "ReferencesAndLinks": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "DatasetDOI": {
- "type": "string"
- },
- "DatasetLinks": {
- "type": "object",
- "properties": {},
- "propertyNames": {
- "type": "string",
- "minLength": 1,
- "pattern": "^[a-zA-Z0-9]*$"
- },
- "additionalProperties": {
- "type": "string",
- "format": "uri-reference"
- }
- },
- "GeneratedBy": {
- "type": "array",
- "minItems": 1,
- "items": {
- "type": "object",
- "properties": {
- "Name": { "type": "string" },
- "Version": { "type": "string" },
- "Description": { "type": "string" },
- "CodeURL": { "type": "string", "format": "uri" },
- "Container": {
- "type": "object",
- "properties": {
- "Type": { "type": "string" },
- "Tag": { "type": "string" },
- "URI": { "type": "string", "format": "uri" }
- }
- }
- }
- }
- },
- "SourceDatasets": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "URL": { "type": "string", "format": "uri" },
- "DOI": { "type": "string" },
- "Version": { "type": "string" }
- }
- }
- },
- "Genetics": {
- "type": "object",
- "properties": {
- "Database": {
- "type": "string",
- "format": "uri"
- },
- "Dataset": {
- "type": "string",
- "format": "uri"
- },
- "Descriptors": {
- "items": {
- "type": "string"
- },
- "type": ["array", "string"]
- }
- }
- }
- },
- "required": ["Name", "BIDSVersion"],
- "allOf": [
- {
- "$ref": "#/dependency-definitions/if-DatasetType-is-derivative-then-GeneratedBy-is-required"
- }
- ],
- "dependency-definitions": {
- "if-DatasetType-is-derivative-then-GeneratedBy-is-required": {
- "if": {
- "type": "object",
- "properties": { "DatasetType": { "const": "derivative" } },
- "required": ["DatasetType"]
- },
- "then": {
- "required": ["GeneratedBy"]
- }
- }
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/eeg.json b/legacy/bids-validator/validators/json/schemas/eeg.json
deleted file mode 100644
index 14ed0374..00000000
--- a/legacy/bids-validator/validators/json/schemas/eeg.json
+++ /dev/null
@@ -1,89 +0,0 @@
-{
- "type": "object",
- "properties": {
- "TaskName": { "$ref": "common_definitions.json#/definitions/TaskName" },
- "TaskDescription": {
- "$ref": "common_definitions.json#/definitions/TaskDescription"
- },
- "Instructions": {
- "$ref": "common_definitions.json#/definitions/Instructions"
- },
- "CogAtlasID": { "$ref": "common_definitions.json#/definitions/CogAtlasID" },
- "CogPOID": { "$ref": "common_definitions.json#/definitions/CogPOID" },
- "InstitutionName": {
- "$ref": "common_definitions.json#/definitions/InstitutionName"
- },
- "InstitutionAddress": {
- "$ref": "common_definitions.json#/definitions/InstitutionAddress"
- },
- "InstitutionalDepartmentName": {
- "$ref": "common_definitions.json#/definitions/InstitutionalDepartmentName"
- },
- "Manufacturer": {
- "$ref": "common_definitions.json#/definitions/Manufacturer"
- },
- "ManufacturersModelName": { "type": "string", "minLength": 1 },
- "DeviceSerialNumber": {
- "$ref": "common_definitions.json#/definitions/DeviceSerialNumber"
- },
- "SoftwareVersions": {
- "$ref": "common_definitions.json#/definitions/SoftwareVersions"
- },
- "PowerLineFrequency": {
- "$ref": "common_definitions.json#/definitions/PowerLineFrequency"
- },
- "SamplingFrequency": {
- "$ref": "common_definitions.json#/definitions/SamplingFrequency"
- },
- "EEGChannelCount": {
- "$ref": "common_definitions.json#/definitions/EEGChannelCount"
- },
- "EOGChannelCount": {
- "$ref": "common_definitions.json#/definitions/EOGChannelCount"
- },
- "ECGChannelCount": {
- "$ref": "common_definitions.json#/definitions/ECGChannelCount"
- },
- "EMGChannelCount": {
- "$ref": "common_definitions.json#/definitions/EMGChannelCount"
- },
- "MiscChannelCount": {
- "$ref": "common_definitions.json#/definitions/MiscChannelCount"
- },
- "TriggerChannelCount": {
- "$ref": "common_definitions.json#/definitions/TriggerChannelCount"
- },
- "EEGPlacementScheme": { "type": "string" },
- "EEGReference": { "type": "string" },
- "EEGGround": { "type": "string" },
- "CapManufacturer": { "type": "string" },
- "CapManufacturersModelName": { "type": "string" },
- "HeadCircumference": { "type": "number", "exclusiveMinimum": 0 },
- "HardwareFilters": {
- "$ref": "common_definitions.json#/definitions/HardwareFilters"
- },
- "SoftwareFilters": {
- "$ref": "common_definitions.json#/definitions/SoftwareFilters"
- },
- "RecordingDuration": {
- "$ref": "common_definitions.json#/definitions/RecordingDuration"
- },
- "RecordingType": {
- "$ref": "common_definitions.json#/definitions/RecordingType"
- },
- "EpochLength": {
- "$ref": "common_definitions.json#/definitions/EpochLength"
- },
- "SubjectArtefactDescription": { "type": "string" },
- "ElectricalStimulation": { "type": "boolean" },
- "ElectricalStimulationParameters": { "type": "string" }
- },
- "required": [
- "TaskName",
- "SamplingFrequency",
- "SoftwareFilters",
- "EEGReference",
- "PowerLineFrequency"
- ],
- "additionalProperties": false
-}
diff --git a/legacy/bids-validator/validators/json/schemas/events.json b/legacy/bids-validator/validators/json/schemas/events.json
deleted file mode 100644
index bace2aa3..00000000
--- a/legacy/bids-validator/validators/json/schemas/events.json
+++ /dev/null
@@ -1,30 +0,0 @@
-{
- "type": "object",
- "patternProperties": {
- "^.+$": { "$ref": "common_definitions.json#/definitions/ColumnDescription" }
- },
- "properties": {
- "StimulusPresentation": {
- "type": "object",
- "properties": {
- "OperatingSystem": {
- "type": "string"
- },
- "SoftwareName": {
- "type": "string"
- },
- "SoftwareRRID": {
- "type": "string",
- "pattern": ".+_.+"
- },
- "SoftwareVersion": {
- "type": "string"
- },
- "Code": {
- "type": "string",
- "format": "uri"
- }
- }
- }
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/genetic_info.json b/legacy/bids-validator/validators/json/schemas/genetic_info.json
deleted file mode 100644
index 95f42621..00000000
--- a/legacy/bids-validator/validators/json/schemas/genetic_info.json
+++ /dev/null
@@ -1,61 +0,0 @@
-{
- "type": "object",
- "definitions": {
- "GeneticLevelEnum": {
- "type": "string",
- "enum": [
- "Genetic",
- "Genomic",
- "Epigenomic",
- "Transcriptomic",
- "Metabolomic",
- "Proteomic"
- ]
- }
- },
- "properties": {
- "GeneticLevel": {
- "anyof": [
- {
- "type": "array",
- "items": { "$ref": "#/definitions/GeneticLevelEnum" }
- },
- { "$ref": "#/definitions/GeneticLevelEnum" }
- ]
- },
- "AnalyticalApproach": {
- "items": {
- "type": "string"
- },
- "type": ["array", "string"]
- },
- "SampleOrigin": {
- "type": "string",
- "enum": [
- "blood",
- "saliva",
- "brain",
- "csf",
- "breast milk",
- "bile",
- "amniotic fluid",
- "other biospecimen"
- ]
- },
- "TissueOrigin": {
- "type": "string",
- "enum": [
- "gray matter",
- "white matter",
- "csf",
- "meninges",
- "macrovascular",
- "microvascular"
- ]
- },
- "BrainLocation": { "type": "string" },
- "CellType": { "type": "string" }
- },
- "required": ["GeneticLevel", "SampleOrigin"],
- "additionalProperties": false
-}
diff --git a/legacy/bids-validator/validators/json/schemas/ieeg.json b/legacy/bids-validator/validators/json/schemas/ieeg.json
deleted file mode 100644
index 21b7efb6..00000000
--- a/legacy/bids-validator/validators/json/schemas/ieeg.json
+++ /dev/null
@@ -1,92 +0,0 @@
-{
- "type": "object",
- "properties": {
- "TaskName": { "$ref": "common_definitions.json#/definitions/TaskName" },
- "SamplingFrequency": {
- "$ref": "common_definitions.json#/definitions/SamplingFrequency"
- },
- "PowerLineFrequency": {
- "$ref": "common_definitions.json#/definitions/PowerLineFrequency"
- },
- "DCOffsetCorrection": { "type": "string", "minLength": 1 },
- "SoftwareFilters": {
- "$ref": "common_definitions.json#/definitions/SoftwareFilters"
- },
- "HardwareFilters": {
- "$ref": "common_definitions.json#/definitions/HardwareFilters"
- },
- "Manufacturer": {
- "$ref": "common_definitions.json#/definitions/Manufacturer"
- },
- "ManufacturersModelName": { "type": "string" },
- "TaskDescription": {
- "$ref": "common_definitions.json#/definitions/TaskDescription"
- },
- "Instructions": {
- "$ref": "common_definitions.json#/definitions/Instructions"
- },
- "CogAtlasID": { "$ref": "common_definitions.json#/definitions/CogAtlasID" },
- "CogPOID": { "$ref": "common_definitions.json#/definitions/CogPOID" },
- "InstitutionName": {
- "$ref": "common_definitions.json#/definitions/InstitutionName"
- },
- "InstitutionAddress": {
- "$ref": "common_definitions.json#/definitions/InstitutionAddress"
- },
- "InstitutionalDepartmentName": {
- "$ref": "common_definitions.json#/definitions/InstitutionalDepartmentName"
- },
- "DeviceSerialNumber": {
- "$ref": "common_definitions.json#/definitions/DeviceSerialNumber"
- },
- "ECOGChannelCount": { "type": "integer", "minimum": 0 },
- "SEEGChannelCount": { "type": "integer", "minimum": 0 },
- "EEGChannelCount": {
- "$ref": "common_definitions.json#/definitions/EEGChannelCount"
- },
- "EOGChannelCount": {
- "$ref": "common_definitions.json#/definitions/EOGChannelCount"
- },
- "ECGChannelCount": {
- "$ref": "common_definitions.json#/definitions/ECGChannelCount"
- },
- "EMGChannelCount": {
- "$ref": "common_definitions.json#/definitions/EMGChannelCount"
- },
- "MiscChannelCount": {
- "$ref": "common_definitions.json#/definitions/MiscChannelCount"
- },
- "TriggerChannelCount": {
- "$ref": "common_definitions.json#/definitions/TriggerChannelCount"
- },
- "RecordingDuration": {
- "$ref": "common_definitions.json#/definitions/RecordingDuration"
- },
- "RecordingType": {
- "$ref": "common_definitions.json#/definitions/RecordingType"
- },
- "EpochLength": {
- "$ref": "common_definitions.json#/definitions/EpochLength"
- },
- "SubjectArtefactDescription": { "type": "string" },
- "SoftwareVersions": {
- "$ref": "common_definitions.json#/definitions/SoftwareVersions"
- },
- "iEEGReference": { "type": "string" },
- "ElectrodeManufacturer": { "type": "string" },
- "ElectrodeManufacturersModelName": { "type": "string" },
- "iEEGGround": { "type": "string" },
- "iEEGPlacementScheme": { "type": "string" },
- "iEEGElectrodeGroups": { "type": "string" },
- "ElectricalStimulation": { "type": "boolean" },
- "ElectricalStimulationParameters": { "type": "string" }
- },
- "required": [
- "TaskName",
- "SamplingFrequency",
- "PowerLineFrequency",
- "SoftwareFilters",
- "iEEGReference"
- ],
- "additionalProperties": false
-}
diff --git a/legacy/bids-validator/validators/json/schemas/meg.json b/legacy/bids-validator/validators/json/schemas/meg.json
deleted file mode 100644
index b2da2d3f..00000000
--- a/legacy/bids-validator/validators/json/schemas/meg.json
+++ /dev/null
@@ -1,119 +0,0 @@
-{
- "type": "object",
- "properties": {
- "TaskName": { "$ref": "common_definitions.json#/definitions/TaskName" },
- "TaskDescription": {
- "$ref": "common_definitions.json#/definitions/TaskDescription"
- },
- "Instructions": {
- "$ref": "common_definitions.json#/definitions/Instructions"
- },
- "CogAtlasID": { "$ref": "common_definitions.json#/definitions/CogAtlasID" },
- "CogPOID": { "$ref": "common_definitions.json#/definitions/CogPOID" },
- "InstitutionName": {
- "$ref": "common_definitions.json#/definitions/InstitutionName"
- },
- "InstitutionAddress": {
- "$ref": "common_definitions.json#/definitions/InstitutionAddress"
- },
- "InstitutionalDepartmentName": {
- "$ref": "common_definitions.json#/definitions/InstitutionalDepartmentName"
- },
- "Manufacturer": {
- "$ref": "common_definitions.json#/definitions/Manufacturer"
- },
- "ManufacturersModelName": { "type": "string", "minLength": 1 },
- "DeviceSerialNumber": {
- "$ref": "common_definitions.json#/definitions/DeviceSerialNumber"
- },
- "SoftwareVersions": {
- "$ref": "common_definitions.json#/definitions/SoftwareVersions"
- },
- "PowerLineFrequency": {
- "$ref": "common_definitions.json#/definitions/PowerLineFrequency"
- },
- "SamplingFrequency": {
- "$ref": "common_definitions.json#/definitions/SamplingFrequency"
- },
- "MEGChannelCount": { "type": "integer", "minimum": 0 },
- "MEGREFChannelCount": { "type": "integer", "minimum": 0 },
- "EEGChannelCount": {
- "$ref": "common_definitions.json#/definitions/EEGChannelCount"
- },
- "ECOGChannelCount": { "type": "integer", "minimum": 0 },
- "SEEGChannelCount": { "type": "integer", "minimum": 0 },
- "EOGChannelCount": {
- "$ref": "common_definitions.json#/definitions/EOGChannelCount"
- },
- "ECGChannelCount": {
- "$ref": "common_definitions.json#/definitions/ECGChannelCount"
- },
- "EMGChannelCount": {
- "$ref": "common_definitions.json#/definitions/EMGChannelCount"
- },
- "MiscChannelCount": {
- "$ref": "common_definitions.json#/definitions/MiscChannelCount"
- },
- "TriggerChannelCount": {
- "$ref": "common_definitions.json#/definitions/TriggerChannelCount"
- },
- "EEGPlacementScheme": { "type": "string" },
- "EEGReference": { "type": "string" },
- "CapManufacturer": { "type": "string" },
- "CapManufacturersModelName": { "type": "string" },
- "DewarPosition": { "type": "string" },
- "HardwareFilters": {
- "$ref": "common_definitions.json#/definitions/HardwareFilters"
- },
- "SoftwareFilters": {
- "$ref": "common_definitions.json#/definitions/SoftwareFilters"
- },
- "RecordingDuration": {
- "$ref": "common_definitions.json#/definitions/RecordingDuration"
- },
- "RecordingType": {
- "$ref": "common_definitions.json#/definitions/RecordingType"
- },
- "EpochLength": {
- "$ref": "common_definitions.json#/definitions/EpochLength"
- },
- "ContinuousHeadLocalization": { "type": "boolean" },
- "HeadCoilFrequency": {
- "anyOf": [
- { "type": "number" },
- {
- "type": "array",
- "items": { "type": "number" }
- }
- ]
- },
- "AssociatedEmptyRoom": {
- "anyOf": [
- {
- "type": "array",
- "items": {
- "type": "string",
- "minLength": 1
- }
- },
- { "type": "string", "minLength": 1 }
- ]
- },
- "MaxMovement": { "type": "number" },
- "SubjectArtefactDescription": { "type": "string" },
- "DigitizedLandmarks": { "type": "boolean" },
- "DigitizedHeadPoints": { "type": "boolean" },
- "ElectricalStimulation": { "type": "boolean" },
- "ElectricalStimulationParameters": { "type": "string" }
- },
- "required": [
- "TaskName",
- "SamplingFrequency",
- "PowerLineFrequency",
- "DewarPosition",
- "SoftwareFilters",
- "DigitizedLandmarks",
- "DigitizedHeadPoints"
- ],
- "additionalProperties": false
-}
diff --git a/legacy/bids-validator/validators/json/schemas/microscopy.json b/legacy/bids-validator/validators/json/schemas/microscopy.json
deleted file mode 100644
index 2c9cae30..00000000
--- a/legacy/bids-validator/validators/json/schemas/microscopy.json
+++ /dev/null
@@ -1,115 +0,0 @@
-{
- "type": "object",
- "properties": {
- "Manufacturer": { "type": "string", "minLength": 1 },
- "ManufacturersModelName": { "type": "string", "minLength": 1 },
- "DeviceSerialNumber": { "type": "string", "minLength": 1 },
- "StationName": { "type": "string", "minLength": 1 },
- "SoftwareVersions": { "type": "string", "minLength": 1 },
- "InstitutionName": { "type": "string", "minLength": 1 },
- "InstitutionAddress": { "type": "string", "minLength": 1 },
- "InstitutionalDepartmentName": { "type": "string", "minLength": 1 },
- "BodyPart": { "type": "string", "minLength": 1 },
- "BodyPartDetails": { "type": "string", "minLength": 1 },
- "BodyPartDetailsOntology": {
- "type": "string",
- "minLength": 1,
- "format": "uri"
- },
- "SampleEnvironment": {
- "type": "string",
- "minLength": 1,
- "enum": ["in vivo", "ex vivo", "in vitro"]
- },
- "SampleEmbedding": { "type": "string", "minLength": 1 },
- "SampleFixation": { "type": "string", "minLength": 1 },
- "SampleStaining": {
- "anyOf": [
- { "type": "string", "minLength": 1 },
- { "type": "array", "items": { "type": "string" } }
- ]
- },
- "SamplePrimaryAntibody": {
- "anyOf": [
- { "type": "string", "minLength": 1 },
- { "type": "array", "items": { "type": "string" } }
- ]
- },
- "SampleSecondaryAntibody": {
- "anyOf": [
- { "type": "string", "minLength": 1 },
- { "type": "array", "items": { "type": "string" } }
- ]
- },
- "SliceThickness": { "type": "number", "exclusiveMinimum": 0 },
- "SampleExtractionProtocol": { "type": "string", "minLength": 1 },
- "SampleExtractionInstitution": { "type": "string", "minLength": 1 },
- "TissueDeformationScaling": { "type": "number" },
- "PixelSize": {
- "type": "array",
- "minItems": 2,
- "maxItems": 3,
- "items": { "type": "number", "minimum": 0 }
- },
- "PixelSizeUnits": { "type": "string", "enum": ["mm", "um", "nm"] },
- "Immersion": { "type": "string", "minLength": 1 },
- "NumericalAperture": { "type": "number", "exclusiveMinimum": 0 },
- "Magnification": { "type": "number", "exclusiveMinimum": 0 },
- "ImageAcquisitionProtocol": { "type": "string", "minLength": 1 },
- "OtherAcquisitionParameters": { "type": "string", "minLength": 1 },
- "ChunkTransformationMatrix": {
- "anyOf": [
- {
- "type": "array",
- "minItems": 3,
- "maxItems": 3,
- "items": {
- "type": "array",
- "minItems": 3,
- "maxItems": 3,
- "items": { "type": "number" }
- }
- },
- {
- "type": "array",
- "minItems": 4,
- "maxItems": 4,
- "items": {
- "type": "array",
- "minItems": 4,
- "maxItems": 4,
- "items": { "type": "number" }
- }
- }
- ]
- },
- "ChunkTransformationMatrixAxis": {
- "type": "array",
- "minItems": 2,
- "maxItems": 3,
- "items": { "type": "string" }
- }
- },
- "required": ["PixelSize", "PixelSizeUnits"],
- "recommended": [
- "Manufacturer",
- "ManufacturersModelName",
- "DeviceSerialNumber",
- "StationName",
- "SoftwareVersions",
- "InstitutionName",
- "InstitutionAddress",
- "InstitutionalDepartmentName",
- "BodyPart",
- "BodyPartDetails",
- "SampleEnvironment",
- "SampleStaining",
- "SamplePrimaryAntibody",
- "SampleSecondaryAntibody"
- ],
-
- "dependencies": {
- "PixelSize": ["PixelSizeUnits"],
- "ChunkTransformationMatrix": ["ChunkTransformationMatrixAxis"]
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/microscopy_photo.json b/legacy/bids-validator/validators/json/schemas/microscopy_photo.json
deleted file mode 100644
index 94cd7220..00000000
--- a/legacy/bids-validator/validators/json/schemas/microscopy_photo.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "type": "object",
- "properties": {
- "PhotoDescription": { "type": "string", "minLength": 1 },
- "IntendedFor": {
- "anyOf": [
- { "type": "string", "minLength": 1 },
- {
- "type": "array",
- "items": { "type": "string", "minLength": 1 },
- "minItems": 1
- }
- ]
- }
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/motion.json b/legacy/bids-validator/validators/json/schemas/motion.json
deleted file mode 100644
index 3db7717a..00000000
--- a/legacy/bids-validator/validators/json/schemas/motion.json
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "type": "object",
- "properties": {
- "TaskName": { "$ref": "common_definitions.json#/definitions/TaskName" },
- "TaskDescription": {
- "$ref": "common_definitions.json#/definitions/TaskDescription"
- },
- "Instructions": {
- "$ref": "common_definitions.json#/definitions/Instructions"
- },
- "CogAtlasID": { "$ref": "common_definitions.json#/definitions/CogAtlasID" },
- "CogPOID": { "$ref": "common_definitions.json#/definitions/CogPOID" },
- "InstitutionName": {
- "$ref": "common_definitions.json#/definitions/InstitutionName"
- },
- "InstitutionAddress": {
- "$ref": "common_definitions.json#/definitions/InstitutionAddress"
- },
- "InstitutionalDepartmentName": {
- "$ref": "common_definitions.json#/definitions/InstitutionalDepartmentName"
- },
- "EpochLength": {
- "$ref": "common_definitions.json#/definitions/EpochLength"
- },
- "RecordingType": {
- "$ref": "common_definitions.json#/definitions/RecordingType"
- },
- "SubjectArtefactDescription": { "type": "string" },
- "MotionChannelCount": { "type": "number" },
- "TrackingSystemName": { "type": "string" },
- "DeviceSerialNumber": {
- "$ref": "common_definitions.json#/definitions/DeviceSerialNumber"
- },
- "SoftwareVersions": {
- "$ref": "common_definitions.json#/definitions/SoftwareVersions"
- },
- "Manufacturer": {
- "$ref": "common_definitions.json#/definitions/Manufacturer"
- },
- "ManufacturersModelName": { "type": "string", "minLength": 1 },
- "TrackedPointsCount": { "type": "number" },
- "RecordingDuration": {
- "$ref": "common_definitions.json#/definitions/RecordingDuration"
- },
- "SamplingFrequency": {
- "$ref": "common_definitions.json#/definitions/SamplingFrequency"
- },
- "SamplingFrequencyEffective": { "type": "number" },
- "SoftwareFilters": {
- "$ref": "common_definitions.json#/definitions/SoftwareFilters"
- },
-
- "ACCELChannelCount": { "type": "number" },
- "ANGACCELChannelCount": { "type": "number" },
- "GYROChannelCount": { "type": "number" },
- "JNTANGChannelCount": { "type": "number" },
- "MAGNChannelCount": { "type": "number" },
- "MISCChannelCount": { "type": "number" },
- "ORNTChannelCount": { "type": "number" },
- "POSChannelCount": { "type": "number" },
- "VELChannelCount": { "type": "number" },
- "LATENCYChannelCount": { "type": "number" },
- "MissingValues": { "type": "string" }
- },
- "required": ["TaskName", "SamplingFrequency"],
- "additionalProperties": false
-}
diff --git a/legacy/bids-validator/validators/json/schemas/nirs.json b/legacy/bids-validator/validators/json/schemas/nirs.json
deleted file mode 100644
index b71d2e0f..00000000
--- a/legacy/bids-validator/validators/json/schemas/nirs.json
+++ /dev/null
@@ -1,106 +0,0 @@
-{
- "type": "object",
- "properties": {
- "TaskName": { "$ref": "common_definitions.json#/definitions/TaskName" },
- "TaskDescription": {
- "$ref": "common_definitions.json#/definitions/TaskDescription"
- },
- "Instructions": {
- "$ref": "common_definitions.json#/definitions/Instructions"
- },
- "CogAtlasID": { "$ref": "common_definitions.json#/definitions/CogAtlasID" },
- "CogPOID": { "$ref": "common_definitions.json#/definitions/CogPOID" },
- "InstitutionName": {
- "$ref": "common_definitions.json#/definitions/InstitutionName"
- },
- "InstitutionalDepartmentName": { "type": "string" },
- "InstitutionAddress": {
- "$ref": "common_definitions.json#/definitions/InstitutionAddress"
- },
- "Manufacturer": {
- "$ref": "common_definitions.json#/definitions/Manufacturer"
- },
- "ManufacturersModelName": { "type": "string", "minLength": 1 },
- "DeviceSerialNumber": {
- "$ref": "common_definitions.json#/definitions/DeviceSerialNumber"
- },
- "SoftwareVersions": {
- "$ref": "common_definitions.json#/definitions/SoftwareVersions"
- },
- "PowerLineFrequency": {
- "$ref": "common_definitions.json#/definitions/PowerLineFrequency"
- },
- "SamplingFrequency": {
- "anyOf": [
- { "$ref": "common_definitions.json#/definitions/SamplingFrequency" },
- { "enum": ["n/a"] }
- ]
- },
- "NIRSChannelCount": {
- "$ref": "common_definitions.json#/definitions/NIRSChannelCount"
- },
- "NIRSSourceOptodeCount": {
- "$ref": "common_definitions.json#/definitions/NIRSSourceOptodeCount"
- },
- "NIRSDetectorOptodeCount": {
- "$ref": "common_definitions.json#/definitions/NIRSDetectorOptodeCount"
- },
- "EEGChannelCount": {
- "$ref": "common_definitions.json#/definitions/EEGChannelCount"
- },
- "EOGChannelCount": {
- "$ref": "common_definitions.json#/definitions/EOGChannelCount"
- },
- "ECGChannelCount": {
- "$ref": "common_definitions.json#/definitions/ECGChannelCount"
- },
- "EMGChannelCount": {
- "$ref": "common_definitions.json#/definitions/EMGChannelCount"
- },
- "MiscChannelCount": {
- "$ref": "common_definitions.json#/definitions/MiscChannelCount"
- },
- "TriggerChannelCount": {
- "$ref": "common_definitions.json#/definitions/TriggerChannelCount"
- },
- "NIRSPlacementScheme": { "type": "string" },
- "CapManufacturer": { "type": "string" },
- "CapManufacturersModelName": { "type": "string" },
- "HeadCircumference": { "type": "number", "exclusiveMinimum": 0 },
- "SourceType": { "type": "string" },
- "ShortChannelCount": {
- "type": "number",
- "exclusiveMinimum": 0,
- "recommends_tsv_non_custom_columns": ["short_channel"]
- },
- "HardwareFilters": {
- "$ref": "common_definitions.json#/definitions/HardwareFilters"
- },
- "SoftwareFilters": {
- "$ref": "common_definitions.json#/definitions/SoftwareFilters"
- },
- "RecordingDuration": {
- "$ref": "common_definitions.json#/definitions/RecordingDuration"
- },
- "RecordingType": {
- "$ref": "common_definitions.json#/definitions/RecordingType"
- },
- "SubjectArtefactDescription": { "type": "string" },
- "ACCELChannelCount": { "type": "number" },
- "GYROChannelCount": { "type": "number" },
- "MAGNChannelCount": { "type": "number" }
- },
- "required": [
- "TaskName",
- "SamplingFrequency",
- "NIRSChannelCount",
- "NIRSSourceOptodeCount",
- "NIRSDetectorOptodeCount"
- ],
- "required_if_tsv_value_present": {
- "ACCELChannelCount": { "header": "type", "value": "ACC" },
- "MAGNChannelCount": { "header": "type", "value": "MAGN" },
- "GYROChannelCount": { "header": "type", "value": "GYRO" }
- },
- "additionalProperties": false
-}
diff --git a/legacy/bids-validator/validators/json/schemas/pet.json b/legacy/bids-validator/validators/json/schemas/pet.json
deleted file mode 100644
index 495d9044..00000000
--- a/legacy/bids-validator/validators/json/schemas/pet.json
+++ /dev/null
@@ -1,253 +0,0 @@
-{
- "type": "object",
- "properties": {
- "Manufacturer": { "type": "string", "minLength": 1 },
- "ManufacturersModelName": { "type": "string", "minLength": 1 },
- "Units": {
- "type": "string",
- "minLength": 1
- },
- "TracerName": { "type": "string", "minLength": 1 },
- "TracerRadionuclide": { "type": "string", "minLength": 1 },
- "InstitutionName": { "type": "string", "minLength": 1 },
- "InstitutionAddress": { "type": "string", "minLength": 1 },
- "InstitutionalDepartmentName": {
- "$ref": "common_definitions.json#/definitions/InstitutionalDepartmentName"
- },
- "BodyPart": { "type": "string", "minLength": 1 },
- "TracerRadLex": { "type": "string", "minLength": 1 },
- "TracerSNOMED": { "type": "string", "minLength": 1 },
- "TracerMolecularWeight": { "type": "number" },
- "TracerMolecularWeightUnits": { "type": "string", "minLength": 1 },
- "PharmaceuticalName": { "type": "string", "minLength": 1 },
- "PharmaceuticalDoseAmount": {
- "anyOf": [
- { "type": "number", "minimum": 0 },
- { "type": "array", "items": { "type": "number" } }
- ]
- },
- "PharmaceuticalDoseUnits": { "type": "string", "minLength": 1 },
- "PharmaceuticalDoseRegimen": { "type": "string", "minLength": 1 },
- "PharmaceuticalDoseTime": {
- "anyOf": [
- { "type": "number" },
- { "type": "array", "items": { "type": "number" } }
- ]
- },
- "Anaesthesia": { "type": "string", "minLength": 1 },
-
- "ModeOfAdministration": { "type": "string", "minLength": 1 },
- "InjectedRadioactivity": { "type": "number" },
- "InjectedRadioactivityUnits": { "type": "string", "minLength": 1 },
- "InjectedMass": {
- "anyOf": [{ "type": "number" }, { "type": "string", "pattern": "^n/a$" }]
- },
- "InjectedMassUnits": { "type": "string", "minLength": 1 },
- "SpecificRadioactivity": {
- "anyOf": [{ "type": "number" }, { "type": "string", "pattern": "^n/a$" }]
- },
- "SpecificRadioactivityUnits": { "type": "string", "minLength": 1 },
- "InjectedMassPerWeight": { "type": "number" },
- "InjectedMassPerWeightUnits": { "type": "string", "minLength": 1 },
- "SpecificRadioactivityMeasTime": {
- "type": "string",
- "pattern": "^(?:2[0-3]|[01][0-9]):[0-5][0-9]:[0-5][0-9]$"
- },
- "MolarActivity": { "type": "number" },
- "MolarActivityUnits": { "type": "string", "minLength": 1 },
- "MolarActivityMeasTime": {
- "type": "string",
- "pattern": "^(?:2[0-3]|[01][0-9]):[0-5][0-9]:[0-5][0-9]$"
- },
- "InfusionRadioactivity": { "type": "number" },
- "InfusionStart": { "type": "number" },
- "InfusionSpeed": { "type": "number" },
- "InfusionSpeedUnits": { "type": "string", "minLength": 1 },
- "InjectedVolume": { "type": "number" },
- "Purity": { "type": "number" },
-
- "TimeZero": {
- "type": "string",
- "pattern": "^(?:2[0-3]|[01][0-9]):[0-5][0-9]:[0-5][0-9]$"
- },
- "ScanStart": { "type": "number" },
- "InjectionStart": { "type": "number" },
- "FrameTimesStart": { "type": "array", "items": { "type": "number" } },
- "FrameDuration": { "type": "array", "items": { "type": "number" } },
- "ScanDate": {
- "type": "string",
- "pattern": "date"
- },
- "InjectionEnd": { "type": "number" },
-
- "AcquisitionMode": { "type": "string", "minLength": 1 },
- "ImageDecayCorrected": { "type": "boolean" },
- "ImageDecayCorrectionTime": { "type": "number" },
- "ReconMethodName": { "type": "string", "minLength": 1 },
- "ReconMethodParameterLabels": {
- "type": "array",
- "items": { "type": "string" }
- },
- "ReconMethodParameterUnits": {
- "type": "array",
- "items": { "type": "string" }
- },
- "ReconMethodParameterValues": {
- "type": "array",
- "items": { "type": "number" }
- },
- "ReconFilterType": {
- "anyOf": [
- { "type": "string" },
- { "type": "array", "items": { "type": "string" } }
- ]
- },
- "ReconFilterSize": {
- "anyOf": [
- { "type": "number", "minimum": 0 },
- { "type": "array", "items": { "type": "number" } }
- ]
- },
- "ReconMethodImplementationVersion": { "type": "string", "minLength": 1 },
- "AttenuationCorrection": { "type": "string", "minLength": 1 },
- "AttenuationCorrectionMethodReference": {
- "type": "string",
- "minLength": 1
- },
- "ScaleFactor": {
- "type": "array",
- "items": { "type": "number" }
- },
- "ScatterFraction": {
- "type": "array",
- "items": { "type": "number" }
- },
- "DecayCorrectionFactor": {
- "type": "array",
- "items": { "type": "number" }
- },
- "DoseCalibrationFactor": {
- "type": "number",
- "items": { "type": "number" }
- },
- "PromptRate": {
- "type": "array",
- "items": { "type": "number" }
- },
- "RandomRate": {
- "type": "array",
- "items": { "type": "number" }
- },
- "SinglesRate": {
- "type": "array",
- "items": { "type": "number" }
- },
- "CogAtlasID": { "$ref": "common_definitions.json#/definitions/CogAtlasID" },
- "CogPOID": { "$ref": "common_definitions.json#/definitions/CogPOID" },
- "TaskName": {
- "type": "string"
- },
- "TaskDescription": {
- "$ref": "common_definitions.json#/definitions/TaskDescription"
- },
- "Instructions": {
- "$ref": "common_definitions.json#/definitions/Instructions"
- }
- },
-
- "required": [
- "Manufacturer",
- "ManufacturersModelName",
- "Units",
- "TracerName",
- "TracerRadionuclide",
-
- "ModeOfAdministration",
- "InjectedRadioactivity",
- "InjectedRadioactivityUnits",
- "InjectedMass",
- "InjectedMassUnits",
- "SpecificRadioactivity",
- "SpecificRadioactivityUnits",
-
- "TimeZero",
- "ScanStart",
- "InjectionStart",
- "FrameTimesStart",
- "FrameDuration",
-
- "AcquisitionMode",
- "ImageDecayCorrected",
- "ImageDecayCorrectionTime",
- "ReconMethodName",
- "ReconMethodParameterLabels",
- "ReconFilterType",
- "AttenuationCorrection"
- ],
- "allOf": [
- {
- "$ref": "#/dependency-definitions/if-ReconMethodParameterLabels-then-Units-and-Values"
- },
- {
- "$ref": "#/dependency-definitions/if-bolus-infusion-then-infusion-details"
- },
- {
- "$ref": "#/dependency-definitions/if-ReconFilterType-then-ReconFilterSize"
- }
- ],
- "dependencies": {
- "TracerMolecularWeight": ["TracerMolecularWeightUnits"],
- "InjectedRadioactivity": ["InjectedRadioactivityUnits"],
- "InjectedMassPerWeight": ["InjectedMassPerWeightUnits"],
- "MolarActivity": ["MolarActivityUnits"],
- "InfusionSpeed": ["InfusionSpeedUnits"],
- "ReconMethodParameterLabels": [
- "ReconMethodParameterUnits",
- "ReconMethodParameterValues"
- ]
- },
- "dependency-definitions": {
- "if-ReconMethodParameterLabels-then-Units-and-Values": {
- "if": {
- "type": "object",
- "properties": {
- "ReconMethodParameterLabels": { "const": "none" }
- },
- "required": ["ReconMethodParameterLabels"]
- },
- "then": {},
- "else": {
- "required": ["ReconMethodParameterUnits", "ReconMethodParameterValues"]
- }
- },
- "if-bolus-infusion-then-infusion-details": {
- "if": {
- "type": "object",
- "properties": {
- "ModeOfAdministration": { "const": "bolus-infusion" }
- },
- "required": ["ModeOfAdministration"]
- },
- "then": {
- "required": [
- "InfusionRadioactivity",
- "InfusionStart",
- "InfusionSpeed",
- "InfusionSpeedUnits",
- "InjectedVolume"
- ]
- }
- },
- "if-ReconFilterType-then-ReconFilterSize": {
- "if": {
- "type": "object",
- "properties": {
- "ReconFilterType": { "const": "none" }
- },
- "required": ["ReconFilterType"]
- },
- "then": {},
- "else": { "required": ["ReconFilterSize"] }
- }
- }
-}
diff --git a/legacy/bids-validator/validators/json/schemas/pet_blood.json b/legacy/bids-validator/validators/json/schemas/pet_blood.json
deleted file mode 100644
index a3a4deb5..00000000
--- a/legacy/bids-validator/validators/json/schemas/pet_blood.json
+++ /dev/null
@@ -1,64 +0,0 @@
-{
- "type": "object",
- "properties": {
- "PlasmaAvail": {
- "default": false,
- "type": "boolean",
- "requires_tsv_non_custom_columns": ["plasma_radioactivity"]
- },
- "PlasmaFreeFraction": {
- "type": "number",
- "min": 0,
- "max": 1
- },
- "PlasmaFreeFractionMethod": { "type": "string", "minLength": 1 },
-
- "MetaboliteAvail": {
- "default": false,
- "type": "boolean",
- "requires_tsv_non_custom_columns": ["metabolite_parent_fraction"]
- },
- "MetaboliteMethod": { "type": "string", "minLength": 1 },
- "MetaboliteRecoveryCorrectionApplied": {
- "type": "boolean",
- "requires_tsv_non_custom_columns": ["hplc_recovery_fractions"]
- },
-
- "WithdrawalRate": { "type": "number" },
-
- "TubingType": { "type": "string" },
- "TubingLength": { "type": "number" },
- "TubingLengthUnits": { "type": "string" },
- "DispersionConstant": { "type": "number" },
- "DispersionCorrected": { "type": "boolean" },
-
- "WholeBloodAvail": {
- "default": false,
- "type": "boolean",
- "requires_tsv_non_custom_columns": ["whole_blood_radioactivity"]
- },
- "Haematocrit": { "type": "number" },
-
- "BloodDensity": { "type": "number" }
- },
- "allOf": [
- {
- "if": {
- "properties": {
- "MetaboliteAvail": {
- "enum": [true]
- }
- }
- },
- "then": {
- "required": ["MetaboliteMethod", "MetaboliteRecoveryCorrectionApplied"]
- }
- }
- ],
- "required": [
- "MetaboliteAvail",
- "PlasmaAvail",
- "WholeBloodAvail",
- "DispersionCorrected"
- ]
-}
diff --git a/legacy/bids-validator/validators/json/schemas/physio.json b/legacy/bids-validator/validators/json/schemas/physio.json
deleted file mode 100644
index c9c6ccd7..00000000
--- a/legacy/bids-validator/validators/json/schemas/physio.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "type": "object",
- "properties": {
- "SamplingFrequency": { "type": "number", "exclusiveMinimum": 0 },
- "StartTime": { "type": "number" },
- "Columns": {
- "type": "array",
- "items": {
- "type": "string",
- "minLength": 1
- }
- },
- "Manufacturer": { "type": "string" },
- "ManufacturersModelName": { "type": "string" },
- "SoftwareVersions": { "type": "string" },
- "DeviceSerialNumber": { "type": "string" }
- },
- "required": ["SamplingFrequency", "StartTime", "Columns"]
-}
diff --git a/legacy/bids-validator/validators/json/validate.js b/legacy/bids-validator/validators/json/validate.js
deleted file mode 100644
index 7cbddf4a..00000000
--- a/legacy/bids-validator/validators/json/validate.js
+++ /dev/null
@@ -1,59 +0,0 @@
-import json from './json'
-import utils from '../../utils'
-const Issue = utils.issues.Issue
-
-const validate = (jsonFiles, fileList, jsonContentsDict, summary) => {
- let issues = []
- const jsonValidationPromises = jsonFiles.map(function (file) {
- return utils.limit(
- () =>
- new Promise((resolve) => {
- checkForAccompanyingDataFile(file, fileList, issues)
- json(file, jsonContentsDict, (jsonIssues, jsObj) => {
- issues = issues.concat(jsonIssues)
- collectTaskSummary(file, jsObj, summary)
- return resolve()
- })
- }),
- )
- })
-
- return new Promise((resolve) =>
- Promise.all(jsonValidationPromises).then(() => resolve(issues)),
- )
-}
-
-const collectTaskSummary = (file, jsObj, summary) => {
- // collect task summary
- if (file.name.indexOf('task') > -1) {
- if (
- jsObj &&
- jsObj.TaskName &&
- summary.tasks.indexOf(jsObj.TaskName) === -1
- ) {
- summary.tasks.push(jsObj.TaskName)
- }
- }
-}
-
-const checkForAccompanyingDataFile = (file, fileList, issues) => {
- // Verify that the json file has an accompanying data file
- // Need to limit checks to files in sub-*/**/ - Not all data dictionaries are sidecars
- const pathArgs = file.relativePath.split('/')
- const isSidecar =
- pathArgs[1].includes('sub-') && pathArgs.length > 3 ? true : false
- if (isSidecar) {
- // Check for suitable datafile accompanying this sidecar
- const dataFile = utils.bids_files.checkSidecarForDatafiles(file, fileList)
- if (!dataFile) {
- issues.push(
- new Issue({
- code: 90,
- file: file,
- }),
- )
- }
- }
-}
-
-export default validate
diff --git a/legacy/bids-validator/validators/microscopy/__tests__/checkJSONAndField.spec.js b/legacy/bids-validator/validators/microscopy/__tests__/checkJSONAndField.spec.js
deleted file mode 100644
index 60d211fc..00000000
--- a/legacy/bids-validator/validators/microscopy/__tests__/checkJSONAndField.spec.js
+++ /dev/null
@@ -1,95 +0,0 @@
-import checkJSONAndField from '../checkJSONAndField'
-
-describe('checkJSONAndField()', () => {
- const emptyJsonContentsDict = {
- 'test.json': {},
- }
- it('returns no issues with empty arguments', () => {
- const issues = checkJSONAndField({}, {})
- expect(issues.length).toBe(0)
- })
-
- it('returns issue 225 with no json for ome files', () => {
- const files = {
- ome: [{ relativePath: 'test.ome.tif' }],
- }
- const issues = checkJSONAndField(files, emptyJsonContentsDict)
- expect(issues.length).toBe(1)
- expect(issues[0].code).toBe(225)
- })
-
- it('returns issue 225 with no json for tif files', () => {
- const files = {
- tif: [{ relativePath: 'test.tif' }],
- }
- const issues = checkJSONAndField(files, emptyJsonContentsDict)
- expect(issues.length).toBe(1)
- expect(issues[0].code).toBe(225)
- })
-
- it('returns issue 225 with no json for png files', () => {
- const files = {
- png: [{ relativePath: '/test.png' }],
- }
- const issues = checkJSONAndField(files, emptyJsonContentsDict)
- expect(issues.length).toBe(1)
- expect(issues[0].code).toBe(225)
- })
-
- it('returns warning 223 if chunk entity present but missing metadata', () => {
- const files = {
- ome: [{ relativePath: '/test_chunk-01.ome.tif' }],
- }
- const jsonContentsDict = {
- '/test_chunk-01.json': { testKey: 'testValue' },
- }
- const issues = checkJSONAndField(files, jsonContentsDict)
- expect(issues.length).toBe(1)
- expect(issues[0].code).toBe(223)
- })
-
- it('IntendedFor check detects non-existent file', () => {
- const files = {
- png: [
- {
- relativePath: '/sub-01/ses-01/micr/sub-01_ses-01_sample-A_photo.png',
- },
- ],
- }
-
- const jsonContentsDict = {
- '/sub-01/ses-01/micr/sub-01_ses-01_sample-A_photo.json': {
- IntendedFor: 'ses-01/micr/sub-01_ses-01_sample-A_SEM.png',
- },
- }
-
- const fileList = [
- { relativePath: '/sub-01/ses-01/micr/sub-01_ses-01_sample-B_SEM.png' },
- ]
-
- const issues = checkJSONAndField(files, jsonContentsDict, fileList)
- expect(issues.length).toBe(1)
- expect(issues[0].code).toBe(37)
- })
-
- it('intededfor check detects existing file', () => {
- const files = {
- png: [
- { relativePath: '/sub-01/ses-01/micr/sub-01_ses-01_sample-A_SEM.png' },
- ],
- }
-
- const jsonContentsDict = {
- '/sub-01/ses-01/micr/sub-01_ses-01_sample-A_SEM.json': {
- IntendedFor: 'ses-01/micr/sub-01_ses-01_sample-A_SEM.png',
- },
- }
-
- const fileList = [
- { relativePath: '/sub-01/ses-01/micr/sub-01_ses-01_sample-A_SEM.png' },
- ]
-
- const issues = checkJSONAndField(files, jsonContentsDict, fileList)
- expect(issues.length).toBe(0)
- })
-})
diff --git a/legacy/bids-validator/validators/microscopy/__tests__/checkSample.spec.js b/legacy/bids-validator/validators/microscopy/__tests__/checkSample.spec.js
deleted file mode 100644
index 3194d44c..00000000
--- a/legacy/bids-validator/validators/microscopy/__tests__/checkSample.spec.js
+++ /dev/null
@@ -1,19 +0,0 @@
-import checkSamples from '../checkSamples'
-describe('checkSamples()', () => {
- it('returns issue 214 when no samples.tsv is present', () => {
- const fileList = {
- 0: { relativePath: '/test.tsv' },
- }
- const issues = checkSamples(fileList)
- expect(issues.length).toBe(1)
- expect(issues[0].code).toBe(214)
- })
-
- it('doesnt return issue 214 when samples.tsv is present', () => {
- const fileList = {
- 0: { relativePath: '/samples.tsv' },
- }
- const issues = checkSamples(fileList)
- expect(issues.length).toBe(0)
- })
-})
diff --git a/legacy/bids-validator/validators/microscopy/__tests__/data/btif_id.ome.tif b/legacy/bids-validator/validators/microscopy/__tests__/data/btif_id.ome.tif
deleted file mode 100644
index f6294616..00000000
Binary files a/legacy/bids-validator/validators/microscopy/__tests__/data/btif_id.ome.tif and /dev/null differ
diff --git a/legacy/bids-validator/validators/microscopy/__tests__/data/invalid_id.ome.tif b/legacy/bids-validator/validators/microscopy/__tests__/data/invalid_id.ome.tif
deleted file mode 100644
index 96973db5..00000000
Binary files a/legacy/bids-validator/validators/microscopy/__tests__/data/invalid_id.ome.tif and /dev/null differ
diff --git a/legacy/bids-validator/validators/microscopy/__tests__/data/tif_id.ome.btf b/legacy/bids-validator/validators/microscopy/__tests__/data/tif_id.ome.btf
deleted file mode 100644
index 416a1d8e..00000000
Binary files a/legacy/bids-validator/validators/microscopy/__tests__/data/tif_id.ome.btf and /dev/null differ
diff --git a/legacy/bids-validator/validators/microscopy/__tests__/data/tif_id.ome.tif b/legacy/bids-validator/validators/microscopy/__tests__/data/tif_id.ome.tif
deleted file mode 100644
index 416a1d8e..00000000
Binary files a/legacy/bids-validator/validators/microscopy/__tests__/data/tif_id.ome.tif and /dev/null differ
diff --git a/legacy/bids-validator/validators/microscopy/__tests__/data/valid.ome.tif b/legacy/bids-validator/validators/microscopy/__tests__/data/valid.ome.tif
deleted file mode 100644
index 416a1d8e..00000000
Binary files a/legacy/bids-validator/validators/microscopy/__tests__/data/valid.ome.tif and /dev/null differ
diff --git a/legacy/bids-validator/validators/microscopy/__tests__/validate.spec.js b/legacy/bids-validator/validators/microscopy/__tests__/validate.spec.js
deleted file mode 100644
index e203454c..00000000
--- a/legacy/bids-validator/validators/microscopy/__tests__/validate.spec.js
+++ /dev/null
@@ -1,98 +0,0 @@
-import path from 'path'
-
-import validate from '../validate'
-
-const dataDir = path.join(__dirname, '/data')
-
-const jsonContent = {
- Manufacturer: 'Miltenyi Biotec',
- ManufacturersModelName: 'UltraMicroscope II',
- BodyPart: 'CSPINE',
- SampleEnvironment: 'ex vivo',
- SampleFixation: '4% paraformaldehyde, 2% glutaraldehyde',
- SampleStaining: 'Luxol fast blue',
- PixelSize: [1, 1, 1],
- PixelSizeUnits: 'um',
- Immersion: 'Oil',
- NumericalAperture: 1.4,
- Magnification: 40,
- ChunkTransformationMatrix: [
- [1, 0, 0, 0],
- [0, 2, 0, 0],
- [0, 0, 1, 0],
- [0, 0, 0, 1],
- ],
- ChunkTransformationMatrixAxis: ['X', 'Y', 'Z'],
-}
-
-describe('validate', () => {
- it('returns error 227 with extension/id mismatch', () => {
- const fileName = 'btif_id.ome.tif'
- const files = [
- {
- name: fileName,
- relativePath: `/bids-validator/validators/microscopy/__tests__/data/${fileName}`,
- path: path.join(dataDir, fileName),
- },
- ]
-
- expect.assertions(3)
- return validate(files, {}).then((issues) => {
- expect(issues.length).toBe(2)
- expect(issues[0].code).toBe(227)
- expect(issues[1].code).toBe(226)
- })
- })
-
- it('returns error 227 with incorrect id in magic number', () => {
- const fileName = 'invalid_id.ome.tif'
- const files = [
- {
- name: fileName,
- relativePath: `/bids-validator/validators/microscopy/__tests__/data/${fileName}`,
- path: path.join(dataDir, fileName),
- },
- ]
- expect.assertions(2)
- return validate(files, {}).then((issues) => {
- expect(issues.length).toBe(1)
- expect(issues[0].code).toBe(227)
- })
- })
-
- it('returns error 227 with tif id and btf extension', () => {
- const fileName = 'tif_id.ome.btf'
- const files = [
- {
- name: fileName,
- relativePath: `/bids-validator/validators/microscopy/__tests__/data/${fileName}`,
- path: path.join(dataDir, fileName),
- },
- ]
-
- expect.assertions(2)
- return validate(files, {}).then((issues) => {
- expect(issues.length).toBe(1)
- expect(issues[0].code).toBe(227)
- })
- })
-
- it('validates with valid data', () => {
- const fileName = 'valid.ome.tif'
- const relativePath = `/bids-validator/validators/microscopy/__tests__/data/${fileName}`
- const files = [
- {
- name: fileName,
- relativePath: relativePath,
- path: path.join(dataDir, fileName),
- },
- ]
- const jsonContentDict = {}
- jsonContentDict[relativePath.replace('.ome.tif', '.json')] = jsonContent
-
- expect.assertions(1)
- return validate(files, jsonContentDict).then((issues) => {
- expect(issues.length).toBe(0)
- })
- })
-})
diff --git a/legacy/bids-validator/validators/microscopy/checkJSONAndField.js b/legacy/bids-validator/validators/microscopy/checkJSONAndField.js
deleted file mode 100644
index 74984351..00000000
--- a/legacy/bids-validator/validators/microscopy/checkJSONAndField.js
+++ /dev/null
@@ -1,135 +0,0 @@
-import utils from '../../utils'
-const Issue = utils.issues.Issue
-
-const checkJSONAndField = (files, jsonContentsDict, fileList) => {
- let issues = []
- if (files.ome) {
- files.ome.forEach((file) => {
- let possibleJsonPath = file.relativePath
- .replace('.tif', '')
- .replace('.btf', '')
- .replace('.ome', '.json')
- issues = issues.concat(
- ifJsonExist(file, possibleJsonPath, jsonContentsDict, fileList),
- )
- })
- }
- if (files.png) {
- files.png.forEach((file) => {
- let possibleJsonPath = file.relativePath.replace('.png', '.json')
- issues = issues.concat(
- ifJsonExist(file, possibleJsonPath, jsonContentsDict, fileList),
- )
- })
- }
- if (files.tif) {
- files.tif.forEach((file) => {
- let possibleJsonPath = file.relativePath.replace('.tif', '.json')
- issues = issues.concat(
- ifJsonExist(file, possibleJsonPath, jsonContentsDict, fileList),
- )
- })
- }
- if (files.jpg) {
- files.jpg.forEach((file) => {
- let possibleJsonPath = file.relativePath.replace('.jpg', '.json')
- issues = issues.concat(
- ifJsonExist(file, possibleJsonPath, jsonContentsDict, fileList),
- )
- })
- }
- return issues
-}
-
-const ifJsonExist = (file, possibleJsonPath, jsonContentsDict, fileList) => {
- let potentialSidecars = utils.files.potentialLocations(possibleJsonPath)
- const chunkRegex = new RegExp('_chunk-[0-9]+')
-
- const jsonChunkFiles = potentialSidecars.filter(
- (name) => jsonContentsDict.hasOwnProperty(name) && chunkRegex.exec(name),
- )
- const chunkPresent =
- jsonChunkFiles.length || chunkRegex.exec(file.relativePath)
-
- const mergedDictionary = utils.files.generateMergedSidecarDict(
- potentialSidecars,
- jsonContentsDict,
- )
-
- if (utils.type.file.isMicroscopyPhoto(file.relativePath)) {
- if (mergedDictionary.hasOwnProperty('IntendedFor')) {
- const intendedFor =
- typeof mergedDictionary['IntendedFor'] == 'string'
- ? [mergedDictionary['IntendedFor']]
- : mergedDictionary['IntendedFor']
- return checkIfIntendedExists(intendedFor, fileList, file)
- }
- } else {
- // check if the given file has a corresponding JSON file
- if (Object.keys(mergedDictionary).length === 0) {
- return [
- new Issue({
- file: file,
- code: 225,
- }),
- ]
- }
-
- if (chunkPresent) {
- return checkMatrixField(file, mergedDictionary)
- }
- }
- return []
-}
-
-const checkMatrixField = (file, mergedDictionary) => {
- let issues = []
- if (!mergedDictionary.hasOwnProperty('ChunkTransformationMatrix')) {
- issues.push(
- new Issue({
- file: file,
- code: 223,
- }),
- )
- }
- return issues
-}
-
-const checkIfIntendedExists = (intendedFor, fileList, file) => {
- let issues = []
- for (let key = 0; key < intendedFor.length; key++) {
- const intendedForFile = intendedFor[key]
- const intendedForFileFull =
- '/' +
- (intendedForFile.startsWith('bids::')
- ? intendedForFile.split('::')[1]
- : file.relativePath.split('/')[1] + '/' + intendedForFile)
- const onTheList = Object.values(fileList).some(
- (f) =>
- f.relativePath === intendedForFileFull ||
- // Consider .ome.zarr/ files
- f.relativePath.startsWith(`${intendedForFileFull}/`),
- )
- if (!onTheList) {
- issues.push(
- new Issue({
- file: file,
- code: 37,
- reason:
- "'IntendedFor' property of this photo ('" +
- file.relativePath +
- "') does not point to an existing file ('" +
- intendedForFile +
- "'). Please mind that this value should not include subject level directory " +
- "('/" +
- file.relativePath.split('/')[1] +
- "/').",
- evidence: intendedForFile,
- }),
- )
- }
- }
- return issues
-}
-
-export default checkJSONAndField
diff --git a/legacy/bids-validator/validators/microscopy/checkSamples.js b/legacy/bids-validator/validators/microscopy/checkSamples.js
deleted file mode 100644
index 750c448c..00000000
--- a/legacy/bids-validator/validators/microscopy/checkSamples.js
+++ /dev/null
@@ -1,13 +0,0 @@
-const Issue = require('../../utils').issues.Issue
-
-const checkSamples = (fileList) => {
- const issues = []
- const samplesFile = Array.from(Object.values(fileList)).find(
- (file) => file.relativePath && file.relativePath == '/samples.tsv',
- )
- if (!samplesFile) {
- issues.push(new Issue({ code: 214 }))
- }
- return issues
-}
-export default checkSamples
diff --git a/legacy/bids-validator/validators/microscopy/index.js b/legacy/bids-validator/validators/microscopy/index.js
deleted file mode 100644
index ab3895a9..00000000
--- a/legacy/bids-validator/validators/microscopy/index.js
+++ /dev/null
@@ -1,11 +0,0 @@
-import ometiff from './ometiff'
-import validate from './validate'
-import checkSamples from './checkSamples'
-import checkJSONAndField from './checkJSONAndField'
-
-export default {
- ometiff,
- validate,
- checkSamples,
- checkJSONAndField,
-}
diff --git a/legacy/bids-validator/validators/microscopy/ometiff.js b/legacy/bids-validator/validators/microscopy/ometiff.js
deleted file mode 100644
index 48a5539c..00000000
--- a/legacy/bids-validator/validators/microscopy/ometiff.js
+++ /dev/null
@@ -1,184 +0,0 @@
-import utils from '../../utils'
-const Issue = utils.issues.Issue
-
-/**
- * ometiff
- *
- * Takes an ometiff file, its omedata as an object
- * and a callback as arguments. Callback
- * with any issues it finds while validating
- * against the BIDS specification.
- */
-export default function ometiff(file, omeData, jsonContentsDict, callback) {
- let issues = []
-
- let mergedDictionary = getMergedDictionary(file, jsonContentsDict)
-
- let rootKey = Object.keys(omeData)[0]
- let namespace = ''
- if (rootKey.includes(':OME')) {
- namespace = rootKey.split(':OME')[0].concat(':')
- }
-
- // Check for consistency with optional OME-TIFF metadata if present for
- // Immersion, NumericalAperture and Magnification
- let optionalFieldsIssues = checkOptionalFields(
- file.relativePath,
- omeData,
- namespace,
- mergedDictionary,
- )
-
- // Check for consistency for PixelSize between JSON and OME-TIFF metadata
- let pixelSizeIssues = checkPixelSize(omeData, namespace, mergedDictionary)
-
- issues = issues.concat(optionalFieldsIssues).concat(pixelSizeIssues)
-
- callback(issues)
-}
-
-const convertFactor = (omeUnit, jsonUnit) => {
- if (omeUnit === jsonUnit || (omeUnit === 'Β΅m' && jsonUnit === 'um')) return 1
-
- if (jsonUnit === 'um') {
- if (omeUnit === 'mm') {
- return 1000
- } else if (omeUnit === 'nm') {
- return 0.001
- }
- } else if (jsonUnit === 'mm') {
- if (omeUnit === 'Β΅m') {
- return 0.001
- } else if (omeUnit === 'nm') {
- return 0.000001
- }
- } else if (jsonUnit === 'nm') {
- if (omeUnit === 'mm') {
- return 1000000
- } else if (omeUnit === 'Β΅m') {
- return 1000
- }
- }
-}
-
-const getMergedDictionary = (file, jsonContentsDict) => {
- let possibleJsonPath = file.relativePath
- .replace('.tif', '')
- .replace('.ome', '.json')
-
- let potentialSidecars = utils.files.potentialLocations(possibleJsonPath)
-
- return utils.files.generateMergedSidecarDict(
- potentialSidecars,
- jsonContentsDict,
- )
-}
-
-const checkOptionalFields = (omePath, omeData, namespace, jsonData) => {
- let issues = []
-
- let fields = {
- Immersion: 'Immersion',
- NumericalAperture: 'LensNA',
- Magnification: 'NominalMagnification',
- }
-
- if (
- omeData[`${namespace}OME`][`${namespace}Instrument`] &&
- omeData[`${namespace}OME`][`${namespace}Instrument`][0][
- `${namespace}Objective`
- ]
- ) {
- let objective =
- omeData[`${namespace}OME`][`${namespace}Instrument`][0][
- `${namespace}Objective`
- ][0]['$']
- for (let field in fields) {
- if (!fields.hasOwnProperty(field)) {
- continue
- }
- let property = fields[field]
- if (jsonData.hasOwnProperty(field) && objective[property]) {
- if (objective[property] != jsonData[field]) {
- issues.push(
- new Issue({
- file: {
- relativePath: omePath,
- path: omePath,
- },
- evidence: `JSON field '${field}' is inconsistent`,
- code: 224,
- }),
- )
- }
- }
- }
- }
-
- return issues
-}
-
-const checkPixelSize = (omeData, namespace, jsonData) => {
- let issues = []
- let validUnits = ['um', 'Β΅m', 'nm', 'mm']
-
- const PhysicalSizeX =
- omeData[`${namespace}OME`][`${namespace}Image`][0][`${namespace}Pixels`][0][
- '$'
- ]['PhysicalSizeX']
- const physicalSizeXUnit =
- omeData[`${namespace}OME`][`${namespace}Image`][0][`${namespace}Pixels`][0][
- '$'
- ]['PhysicalSizeXUnit']
- const PhysicalSizeY =
- omeData[`${namespace}OME`][`${namespace}Image`][0][`${namespace}Pixels`][0][
- '$'
- ]['PhysicalSizeY']
- const physicalSizeYUnit =
- omeData[`${namespace}OME`][`${namespace}Image`][0][`${namespace}Pixels`][0][
- '$'
- ]['PhysicalSizeYUnit']
- const PhysicalSizeZ =
- omeData[`${namespace}OME`][`${namespace}Image`][0][`${namespace}Pixels`][0][
- '$'
- ]['PhysicalSizeZ']
- const physicalSizeZUnit =
- omeData[`${namespace}OME`][`${namespace}Image`][0][`${namespace}Pixels`][0][
- '$'
- ]['PhysicalSizeZUnit']
-
- // if no corresponding json file, skip the consistency check
- if (Object.keys(jsonData).length === 0) return []
-
- let unitsPendToCheck = [
- physicalSizeXUnit,
- physicalSizeYUnit,
- physicalSizeZUnit,
- ]
-
- unitsPendToCheck.forEach((unit) => {
- if (!validUnits.includes(unit)) {
- issues.push(new Issue({ code: 222 }))
- }
- })
-
- // if any physicalSizeUnit is not valid or no valid json file, skip the consistency check
- if (issues.length > 0) return issues
-
- let pixelSize = jsonData['PixelSize']
- let physicalSizeUnit = jsonData['PixelSizeUnits']
-
- let factorX = convertFactor(physicalSizeXUnit, physicalSizeUnit)
- let factorY = convertFactor(physicalSizeYUnit, physicalSizeUnit)
- let factorZ = convertFactor(physicalSizeZUnit, physicalSizeUnit)
-
- if (
- PhysicalSizeX * factorX !== pixelSize[0] ||
- PhysicalSizeY * factorY !== pixelSize[1] ||
- PhysicalSizeZ * factorZ !== pixelSize[2]
- ) {
- issues.push(new Issue({ code: 221 }))
- }
-
- return issues
-}
diff --git a/legacy/bids-validator/validators/microscopy/validate.js b/legacy/bids-validator/validators/microscopy/validate.js
deleted file mode 100644
index 46b1408b..00000000
--- a/legacy/bids-validator/validators/microscopy/validate.js
+++ /dev/null
@@ -1,80 +0,0 @@
-import utils from '../../utils'
-const Issue = utils.issues.Issue
-import ometiff from './ometiff'
-import validateTiffSignature from './validateTiffSignature'
-
-const TIFF_ID = 0x2a
-const BIG_TIFF_ID = 0x2b
-
-const validate = (files, jsonContentsDict) => {
- let issues = []
- // validate ometiff
- const omePromises = files.map(function (file) {
- return utils.limit(
- () =>
- new Promise((resolve, reject) => {
- utils.files.readBuffer(file).then((buffer) => {
- if (validateTiffSignature(buffer, TIFF_ID)) {
- if (file.relativePath.endsWith('.ome.btf')) {
- issues.push(
- new Issue({
- code: 227,
- file: file,
- evidence: `Inconsistent TIFF file type and extension, given .ome.btf but should be .ome.tif`,
- }),
- )
- }
- utils.files
- .readOMEFile(buffer)
- .then((omeData) => {
- ometiff(
- file,
- omeData,
- jsonContentsDict,
- function (omeIssues) {
- issues = issues.concat(omeIssues)
- resolve()
- },
- )
- })
- .catch((err) =>
- utils.issues.redirect(err, reject, () => {
- issues.push(err)
- resolve()
- }),
- )
- } else if (validateTiffSignature(buffer, BIG_TIFF_ID)) {
- if (file.relativePath.endsWith('.ome.tif')) {
- issues.push(
- new Issue({
- code: 227,
- file: file,
- evidence: `Inconsistent TIFF file type and extension, given .ome.tif but should be .ome.btf`,
- }),
- )
- }
- issues.push(
- new Issue({
- code: 226,
- file: file,
- }),
- )
- resolve()
- } else {
- issues.push(
- new Issue({
- code: 227,
- file: file,
- evidence: `3rd byte of file does not identify file as tiff.`,
- }),
- )
- resolve()
- }
- })
- }),
- )
- })
- return Promise.all(omePromises).then(() => issues)
-}
-
-export default validate
diff --git a/legacy/bids-validator/validators/microscopy/validateTiffSignature.js b/legacy/bids-validator/validators/microscopy/validateTiffSignature.js
deleted file mode 100644
index 9a056a2f..00000000
--- a/legacy/bids-validator/validators/microscopy/validateTiffSignature.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import isNode from '../../utils/isNode'
-
-const getDataView = (buffer) => {
- if (isNode) {
- const uint8arr = new Uint8Array(buffer.byteLength)
- buffer.copy(uint8arr, 0, 0, buffer.byteLength)
- return new DataView(uint8arr.buffer)
- } else {
- return new DataView(buffer)
- }
-}
-
-const validateTiffSignature = (buffer, tiffId) => {
- const dataView = getDataView(buffer)
- const littleEndian = dataView.getUint16(0) === 0x4949
-
- return dataView.getUint16(2, littleEndian) === tiffId
-}
-
-export default validateTiffSignature
diff --git a/legacy/bids-validator/validators/nifti/__tests__/duplicateFiles.spec.js b/legacy/bids-validator/validators/nifti/__tests__/duplicateFiles.spec.js
deleted file mode 100644
index b9ecf924..00000000
--- a/legacy/bids-validator/validators/nifti/__tests__/duplicateFiles.spec.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import { assert } from 'chai'
-import duplicateNiftis from '../duplicateFiles'
-
-describe('duplicateFiles', () => {
- describe('duplicateNiftis()', () => {
- const file1nii = { name: 'file1.nii' }
- const file1gz = { name: 'file1.nii.gz' }
- const file2nii = { name: 'file2.nii' }
- const file2gz = { name: 'file2.nii.gz' }
-
- it('throws no issues if there are no nifti files', () => {
- const files = []
- const issues = duplicateNiftis(files)
- assert.lengthOf(issues, 0)
- })
-
- it('allows nifti files with distinct names and extensions', () => {
- const files = [file1nii, file2gz]
- const issues = duplicateNiftis(files)
- assert.lengthOf(issues, 0)
- })
-
- it('allows nifti files with distinct names and the same extension', () => {
- const files = [file1nii, file2nii]
- const issues = duplicateNiftis(files)
- assert.lengthOf(issues, 0)
- })
-
- it('throws an error if a the same filename with .nii and .nii.gz extensions are present', () => {
- const files = [file1gz, file1nii]
- const issues = duplicateNiftis(files)
- assert.lengthOf(issues, 2)
- })
- })
-})
diff --git a/legacy/bids-validator/validators/nifti/__tests__/nii.spec.js b/legacy/bids-validator/validators/nifti/__tests__/nii.spec.js
deleted file mode 100644
index f5b44736..00000000
--- a/legacy/bids-validator/validators/nifti/__tests__/nii.spec.js
+++ /dev/null
@@ -1,204 +0,0 @@
-import { checkPetRequiredFields } from '../nii'
-
-describe('nifti checks', () => {
- describe('PET sidecar checks', () => {
- it('returns no issues for a correct file', () => {
- expect(
- checkPetRequiredFields(
- {},
- {
- Manufacturer: 'Siemens',
- ManufacturersModelName:
- 'High-Resolution Research Tomograph (HRRT, CTI/Siemens)',
- Units: 'Bq/mL',
- BodyPart: 'Brain',
- TracerName: 'SB',
- TracerRadionuclide: 'C11',
- TracerMolecularWeight: 339.8,
- TracerMolecularWeightUnits: 'g/mol',
- InjectedRadioactivity: 599.444,
- InjectedRadioactivityUnits: 'MBq',
- InjectedMass: 0.938403836472209,
- InjectedMassUnits: 'ug',
- MolarActivity: 217.7,
- MolarActivityUnits: 'GBq/umol',
- SpecificRadioactivity: 640.6709829311359,
- SpecificRadioactivityUnits: 'MBq/ug',
- ModeOfAdministration: 'bolus',
- TimeZero: '13:02:59',
- ScanStart: 0,
- InjectionStart: 0,
- FrameDuration: [
- 5, 5, 5, 5, 5, 5, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 30, 30,
- 30, 30, 120, 120, 120, 120, 120, 300, 300, 300, 300, 300, 600,
- 600, 600, 600, 600, 600, 600, 600,
- ],
- FrameTimesStart: [
- 0, 5, 10, 15, 20, 25, 30, 45, 60, 75, 90, 105, 120, 135, 150, 165,
- 180, 210, 240, 270, 300, 420, 540, 660, 780, 900, 1200, 1500,
- 1800, 2100, 2400, 3000, 3600, 4200, 4800, 5400, 6000, 6600,
- ],
- ReconMethodParameterLabels: [
- 'iterations',
- 'subsets',
- 'lower_threshold',
- 'upper_threshold',
- ],
- ReconMethodParameterUnits: ['none', 'none', 'keV', 'keV'],
- ReconMethodParameterValues: [10, 16, 0, 650],
- ScaleFactor: [
- 7.594985049763636e-7, 8.265859605671722e-7, 1.3820734920955147e-6,
- 1.5545690530416323e-6, 1.6220834595515043e-6,
- 2.4517744350305293e-6, 8.905253707780503e-7, 6.875428653074778e-7,
- 9.91522711046855e-7, 9.279470418732672e-7, 1.223937488248339e-6,
- 8.961077924141136e-7, 8.55694622714509e-7, 1.017058366414858e-6,
- 8.278300356323598e-7, 1.0040834013125277e-6,
- 3.9711613908366417e-7, 6.720089800182905e-7, 5.650269372381445e-7,
- 4.739523831176484e-7, 1.3938594634055335e-7,
- 1.5224574667627166e-7, 1.8099771637025697e-7,
- 1.9275844920230156e-7, 1.8285233238657383e-7,
- 1.0964477326069755e-7, 1.431431400078509e-7,
- 1.0884801326938032e-7, 1.3908149298913486e-7,
- 1.229657300427789e-7, 1.063033252535206e-7, 1.424941302730076e-7,
- 1.7276526875775744e-7, 2.49544115149547e-7, 3.827111640930525e-7,
- 4.0279633140016813e-7, 5.26599649219861e-7, 8.640701025797171e-7,
- ],
- ScatterFraction: [
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- ],
- DecayCorrectionFactor: [
- 1.0133966207504272, 1.0162700414657593, 1.0191516876220703,
- 1.0220414400100708, 1.0249395370483398, 1.0278457403182983,
- 1.0336800813674927, 1.042497992515564, 1.0513912439346313,
- 1.0603601932525635, 1.0694057941436768, 1.0785285234451294,
- 1.0877289772033691, 1.0970079898834229, 1.1063661575317383,
- 1.1158041954040527, 1.1301021575927734, 1.1494654417037964,
- 1.1691603660583496, 1.189192771911621, 1.2405647039413452,
- 1.3277983665466309, 1.4211663007736206, 1.52109956741333,
- 1.6280598640441895, 1.8318043947219849, 2.1710057258605957,
- 2.5730178356170654, 3.0494720935821533, 3.6141531467437744,
- 4.646376132965088, 6.526466369628906, 9.16730785369873,
- 12.876729011535645, 18.087114334106445, 25.405807495117188,
- 35.68590545654297, 50.12569808959961,
- ],
- PromptRate: [
- 404051.8125, 658088.1875, 864563.375, 796124.8125, 943511.8125,
- 1076238.375, 1070334.375, 1040693.5625, 1014857.0625, 1000047.75,
- 990555.3125, 984797.3125, 973534.4375, 965597.1875, 957793.625,
- 949785.25, 937090.75, 922220.25, 908199.3125, 892214.3125, 852962,
- 791172.75, 728458.8125, 668295.9375, 611953.8125, 521658.5625,
- 412611.78125, 325005.21875, 257148.546875, 204296.75, 146452.875,
- 93791.5703125, 61174.44921875, 40212.1953125, 26685.357421875,
- 17859.39453125, 12070.83984375, 8262.0771484375,
- ],
- RandomRate: [
- 377909.8125, 603776.8125, 758694.375, 626551.625, 641821.375,
- 654678, 601687.5625, 548878.9375, 511943.34375, 488057.875,
- 475567.46875, 466758.0625, 452795.53125, 444436.53125,
- 435499.28125, 427796.53125, 415149.71875, 401917.0625,
- 388928.65625, 374526.6875, 343422.90625, 299093.34375,
- 258024.6875, 222395.1875, 191260.9375, 146921.265625,
- 99678.5390625, 67509.90625, 46172.7265625, 31686.0625,
- 18721.779296875, 9416.8115234375, 5033.39990234375, 2889.75,
- 1794.48828125, 1211.5799560546875, 884.481689453125,
- 695.5399780273438,
- ],
- SinglesRate: [
- 16000, 20328, 27796, 26643, 25349, 25819, 25367, 23966, 23166,
- 22530, 22208, 21936, 21673, 21437, 21203, 21042, 20707, 20368,
- 20016, 19663, 18800, 17536, 16276, 15098, 13990, 12232, 10057,
- 8268, 6831, 5656, 4332, 3075, 2253, 1712, 1354, 1114, 955, 849,
- ],
- AcquisitionMode: 'list mode',
- ImageDecayCorrected: true,
- ImageDecayCorrectionTime: 0,
- ReconMethodName: '3D-OP-OSEM',
- ReconFilterType: 'none',
- ReconFilterSize: 0,
- AttenuationCorrection: '10-min transmission scan',
- },
- '',
- ),
- ).toHaveLength(0)
- })
- })
- it('returns expected issues for some missing sidecar fields', () => {
- expect(
- checkPetRequiredFields(
- {},
- {
- Manufacturer: 'Siemens',
- ManufacturersModelName:
- 'High-Resolution Research Tomograph (HRRT, CTI/Siemens)',
- Units: 'Bq/mL',
- BodyPart: 'Brain',
- TracerName: 'SB',
- TracerRadionuclide: 'C11',
- TracerMolecularWeight: 339.8,
- TracerMolecularWeightUnits: 'g/mol',
- ScanStart: 0,
- InjectionStart: 0,
- },
- '',
- ),
- ).toHaveLength(17)
- })
- it('returns expected issues count for missing sidecar', () => {
- expect(checkPetRequiredFields({}, {}, '')).toHaveLength(24)
- })
- it('returns expected issues count if conditional field ModeOfAdministration is present', () => {
- const fieldIssues = checkPetRequiredFields(
- {},
- { ModeOfAdministration: 'bolus-infusion' },
- '',
- )
- expect(fieldIssues).toHaveLength(28)
- expect(fieldIssues).not.toEqual(
- expect.arrayContaining([
- expect.objectContaining({
- code: 237,
- reason: expect.stringContaining(
- 'You must define ReconFilterSize for this file.',
- ),
- }),
- ]),
- )
- })
- it('returns expected issues count if conditional field ReconFilterType is present', () => {
- const checkReconFilterType = checkPetRequiredFields(
- {},
- { ReconFilterType: 'something' },
- '',
- )
- expect(checkReconFilterType).toHaveLength(26)
- expect(checkReconFilterType).toEqual(
- expect.arrayContaining([
- expect.objectContaining({
- code: 237,
- reason: expect.stringContaining(
- 'You must define ReconFilterSize for this file.',
- ),
- }),
- ]),
- )
- })
- it('returns expected issues count if reconFilterType includes ["none"]', () => {
- const checkReconFilterType = checkPetRequiredFields(
- {},
- { ReconFilterType: ['none', 'test'] },
- '',
- )
- expect(checkReconFilterType).toHaveLength(23)
- expect(checkReconFilterType).not.toEqual(
- expect.arrayContaining([
- expect.objectContaining({
- code: 237,
- reason: expect.stringContaining(
- 'You must define ReconFilterSize for this file.',
- ),
- }),
- ]),
- )
- })
-})
diff --git a/legacy/bids-validator/validators/nifti/duplicateFiles.js b/legacy/bids-validator/validators/nifti/duplicateFiles.js
deleted file mode 100644
index 0d194f23..00000000
--- a/legacy/bids-validator/validators/nifti/duplicateFiles.js
+++ /dev/null
@@ -1,36 +0,0 @@
-const Issue = require('../../utils').issues.Issue
-
-const duplicateNiftis = (files) => {
- // check if same file with .nii and .nii.gz extensions is present
- const issues = []
- const niftiCounts = files
- .map(function (val) {
- return { count: 1, val: val.name.split('.')[0] }
- })
- .reduce(function (a, b) {
- a[b.val] = (a[b.val] || 0) + b.count
- return a
- }, {})
-
- const duplicates = Object.keys(niftiCounts).filter(function (a) {
- return niftiCounts[a] > 1
- })
-
- for (let key of duplicates) {
- const duplicateFiles = files.filter(function (a) {
- return a.name.split('.')[0] === key
- })
- for (let file of duplicateFiles) {
- issues.push(
- new Issue({
- code: 74,
- file: file,
- }),
- )
- }
- }
-
- return issues
-}
-
-export default duplicateNiftis
diff --git a/legacy/bids-validator/validators/nifti/fieldmapWithoutMagnitude.js b/legacy/bids-validator/validators/nifti/fieldmapWithoutMagnitude.js
deleted file mode 100644
index a9bda558..00000000
--- a/legacy/bids-validator/validators/nifti/fieldmapWithoutMagnitude.js
+++ /dev/null
@@ -1,27 +0,0 @@
-const Issue = require('../../utils').issues.Issue
-
-const fieldmapWithoutMagnitude = (files) => {
- // Check for _fieldmap nifti exists without corresponding _magnitude
- const issues = []
- const niftiNames = files.map((nifti) => nifti.name)
- const fieldmaps = niftiNames.filter(
- (nifti) => nifti.indexOf('_fieldmap') > -1,
- )
- const magnitudes = niftiNames.filter(
- (nifti) => nifti.indexOf('_magnitude') > -1,
- )
- fieldmaps.map((nifti) => {
- const associatedMagnitudeFile = nifti.replace('fieldmap', 'magnitude')
- if (magnitudes.indexOf(associatedMagnitudeFile) === -1) {
- issues.push(
- new Issue({
- code: 91,
- file: files.find((niftiFile) => niftiFile.name == nifti),
- }),
- )
- }
- })
- return issues
-}
-
-export default fieldmapWithoutMagnitude
diff --git a/legacy/bids-validator/validators/nifti/index.js b/legacy/bids-validator/validators/nifti/index.js
deleted file mode 100644
index db07e1f6..00000000
--- a/legacy/bids-validator/validators/nifti/index.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import nifti from './nii'
-import duplicateFiles from './duplicateFiles'
-import fieldmapWithoutMagnitude from './fieldmapWithoutMagnitude'
-import phasediffWithoutMagnitude from './phasediffWithoutMagnitude'
-import validate from './validate'
-
-export const NIFTI = nifti
-
-export default {
- nifti,
- duplicateFiles,
- fieldmapWithoutMagnitude,
- phasediffWithoutMagnitude,
- validate,
-}
diff --git a/legacy/bids-validator/validators/nifti/nii.js b/legacy/bids-validator/validators/nifti/nii.js
deleted file mode 100644
index 8e96a711..00000000
--- a/legacy/bids-validator/validators/nifti/nii.js
+++ /dev/null
@@ -1,1484 +0,0 @@
-import utils from '../../utils'
-const Issue = utils.issues.Issue
-
-/**
- * NIFTI
- *
- * Takes a NifTi header, a file path and a callback
- * as arguments. And calls back with any issues
- * it finds while validating against the BIDS
- * specification.
- */
-export default function NIFTI(
- header,
- file,
- jsonContentsDict,
- bContentsDict,
- fileList,
- events,
- callback,
-) {
- const path = file.relativePath
- const issues = []
- const potentialSidecars = utils.files.potentialLocations(
- path.replace('.gz', '').replace('.nii', '.json'),
- )
- const potentialEvents = utils.files.potentialLocations(
- path.replace('.gz', '').replace('bold.nii', 'events.tsv'),
- )
- const potentialM0Scans = path.replace('_asl.nii', '_m0scan.nii')
-
- const mergedDictionary = utils.files.generateMergedSidecarDict(
- potentialSidecars,
- jsonContentsDict,
- )
- const sidecarMessage =
- 'It can be included one of the following locations: ' +
- potentialSidecars.join(', ')
- const eventsMessage =
- 'It can be included one of the following locations: ' +
- potentialEvents.join(', ')
-
- if (path.includes('_asl.nii')) {
- if (!mergedDictionary.hasOwnProperty('MagneticFieldStrength')) {
- issues.push(
- new Issue({
- file: file,
- code: 182,
- reason:
- "You must define 'MagneticFieldStrength' for this file. It is required for perfusion quantification, to infer default relaxation values for blood/tissue." +
- sidecarMessage,
- }),
- )
- }
-
- if (!mergedDictionary.hasOwnProperty('Manufacturer')) {
- issues.push(
- new Issue({
- file: file,
- code: 164,
- reason:
- "You should define 'Manufacturer' for this file. This may reflect site differences in multi-site study (especially readout differences, but perhaps also labeling differences). " +
- sidecarMessage,
- }),
- )
- }
- if (!mergedDictionary.hasOwnProperty('ArterialSpinLabelingType')) {
- issues.push(
- new Issue({
- file: file,
- code: 133,
- reason:
- "You should define 'ArterialSpinLabelingType' for this file. If you don't provide this information CBF quantification will not be possible. " +
- sidecarMessage,
- }),
- )
- }
- if (!mergedDictionary.hasOwnProperty('MRAcquisitionType')) {
- issues.push(
- new Issue({
- file: file,
- code: 155,
- reason:
- "You should define 'MRAcquisitionType' for this file. If you don't provide this information CBF quantification will not be possible. " +
- sidecarMessage,
- }),
- )
- }
- if (
- mergedDictionary.hasOwnProperty('ArterialSpinLabelingType') &&
- mergedDictionary['ArterialSpinLabelingType'].constructor === String
- ) {
- const ArterialSpinLabelingTypeString =
- mergedDictionary['ArterialSpinLabelingType']
-
- if (ArterialSpinLabelingTypeString == 'PASL') {
- if (!mergedDictionary.hasOwnProperty('LabelingSlabThickness')) {
- issues.push(
- new Issue({
- file: file,
- code: 142,
- reason:
- "You should define 'LabelingSlabThickness' for this file. " +
- sidecarMessage,
- }),
- )
- }
- if (!mergedDictionary.hasOwnProperty('BolusCutOffFlag')) {
- issues.push(
- new Issue({
- file: file,
- code: 147,
- reason:
- "You should define 'BolusCutOffFlag' for this file. " +
- sidecarMessage,
- }),
- )
- }
- if (
- mergedDictionary.hasOwnProperty('BolusCutOffFlag') &&
- mergedDictionary['BolusCutOffFlag'].constructor === Boolean
- ) {
- const BolusCutOffFlagBoolean = mergedDictionary['BolusCutOffFlag']
-
- if (
- BolusCutOffFlagBoolean === true &&
- !mergedDictionary.hasOwnProperty('BolusCutOffDelayTime')
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 149,
- reason:
- "You should define 'BolusCutOffDelayTime' for this file." +
- sidecarMessage,
- }),
- )
- } else if (
- BolusCutOffFlagBoolean === true &&
- mergedDictionary.hasOwnProperty('BolusCutOffDelayTime') &&
- mergedDictionary['BolusCutOffDelayTime'].constructor === Number &&
- mergedDictionary['BolusCutOffDelayTime'] > 10
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 186,
- reason:
- "'BolusCutOffDelayTime' is greater than 10, are you sure it's expressed in seconds? ",
- }),
- )
- } else if (
- BolusCutOffFlagBoolean === true &&
- mergedDictionary.hasOwnProperty('BolusCutOffDelayTime') &&
- mergedDictionary['BolusCutOffDelayTime'].constructor === Array
- ) {
- let BolusCutOffDelayTime = mergedDictionary['BolusCutOffDelayTime']
- const BolusCutOffDelayTimeWarning = BolusCutOffDelayTime.filter(
- (x) => x > 10,
- )
- if (BolusCutOffDelayTimeWarning.length > 0) {
- issues.push(
- new Issue({
- file: file,
- code: 186,
- reason:
- "Some values of the 'BolusCutOffDelayTime' array you defined are greater than 10, are you sure they are expressed in seconds? ",
- }),
- )
- }
- }
-
- if (
- mergedDictionary.hasOwnProperty('BolusCutOffDelayTime') &&
- mergedDictionary['BolusCutOffDelayTime'].constructor === Array
- ) {
- let BolusCutOffDelayTime = mergedDictionary['BolusCutOffDelayTime']
- const MonotonicallyIncreasingBolusCutOffDelayTime =
- isMonotonicIncreasingArray(BolusCutOffDelayTime)
- if (!MonotonicallyIncreasingBolusCutOffDelayTime) {
- issues.push(
- new Issue({
- file: file,
- code: 192,
- reason:
- "'BolusCutOffDelayTime' should be monotonically increasing.",
- }),
- )
- }
- }
-
- if (
- BolusCutOffFlagBoolean === true &&
- !mergedDictionary.hasOwnProperty('BolusCutOffTechnique')
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 150,
- reason:
- "You should define 'BolusCutOffTechnique' for this file." +
- sidecarMessage,
- }),
- )
- }
- }
-
- if (
- mergedDictionary.hasOwnProperty('CASLType') ||
- mergedDictionary.hasOwnProperty('PCASLType') ||
- mergedDictionary.hasOwnProperty('LabelingPulseAverageGradient') ||
- mergedDictionary.hasOwnProperty('LabelingPulseMaximumGradient') ||
- mergedDictionary.hasOwnProperty('LabelingPulseAverageB1') ||
- mergedDictionary.hasOwnProperty('LabelingPulseDuration') ||
- mergedDictionary.hasOwnProperty('LabelingPulseFlipAngle') ||
- mergedDictionary.hasOwnProperty('LabelingPulseInterval') ||
- mergedDictionary.hasOwnProperty('LabelingDuration')
- ) {
- var CASLTypeString = ''
- var PCASLTypeString = ''
- var LabelingPulseAverageGradientString = ''
- var LabelingPulseMaximumGradientString = ''
- var LabelingPulseAverageB1String = ''
- var LabelingPulseDurationString = ''
- var LabelingPulseFlipAngleString = ''
- var LabelingPulseIntervalString = ''
- var LabelingDurationString = ''
-
- if (mergedDictionary.hasOwnProperty('CASLType'))
- CASLTypeString = "'CASLType', "
- if (mergedDictionary.hasOwnProperty('PCASLType'))
- PCASLTypeString = "'PCASLType', "
- if (mergedDictionary.hasOwnProperty('LabelingPulseAverageGradient'))
- LabelingPulseAverageGradientString =
- "'LabelingPulseAverageGradient', "
- if (mergedDictionary.hasOwnProperty('LabelingPulseMaximumGradient'))
- LabelingPulseMaximumGradientString =
- "'LabelingPulseMaximumGradient', "
- if (mergedDictionary.hasOwnProperty('LabelingPulseAverageB1'))
- LabelingPulseAverageB1String = "'LabelingPulseAverageB1', "
- if (mergedDictionary.hasOwnProperty('LabelingPulseDuration'))
- LabelingPulseDurationString = "'LabelingPulseDuration', "
- if (mergedDictionary.hasOwnProperty('LabelingPulseFlipAngle'))
- LabelingPulseFlipAngleString = "'LabelingPulseFlipAngle', "
- if (mergedDictionary.hasOwnProperty('LabelingPulseInterval'))
- LabelingPulseIntervalString = "'LabelingPulseInterval', "
- if (mergedDictionary.hasOwnProperty('LabelingDuration'))
- LabelingDurationString = "'LabelingDuration', "
-
- issues.push(
- new Issue({
- file: file,
- code: 190,
- reason:
- "You defined one of the not allowed fields in case PASL 'ArterialSpinLabelingType'. Please verify " +
- CASLTypeString +
- PCASLTypeString +
- LabelingPulseAverageGradientString +
- LabelingPulseMaximumGradientString +
- LabelingPulseAverageB1String +
- LabelingPulseDurationString +
- LabelingPulseFlipAngleString +
- LabelingPulseIntervalString +
- LabelingDurationString +
- ' and change accordingly.',
- }),
- )
- }
- }
-
- if (
- ArterialSpinLabelingTypeString == 'CASL' ||
- ArterialSpinLabelingTypeString == 'PCASL'
- ) {
- if (
- ArterialSpinLabelingTypeString == 'CASL' &&
- mergedDictionary.hasOwnProperty('PCASLType')
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 191,
- reason:
- "You defined the 'PCASLType' with a CASL 'LabellingType'. This is not allowed.",
- }),
- )
- }
- if (
- ArterialSpinLabelingTypeString == 'PCASL' &&
- mergedDictionary.hasOwnProperty('CASLType')
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 191,
- reason:
- "You defined the 'CASLType' with a PCASL 'LabellingType'. This is not allowed.",
- }),
- )
- }
- if (
- mergedDictionary.hasOwnProperty('PASLType') ||
- mergedDictionary.hasOwnProperty('LabelingSlabThickness') ||
- mergedDictionary.hasOwnProperty('BolusCutOffFlag') ||
- mergedDictionary.hasOwnProperty('BolusCutOffTimingSequence') ||
- mergedDictionary.hasOwnProperty('BolusCutOffDelayTime') ||
- mergedDictionary.hasOwnProperty('BolusCutOffTechnique')
- ) {
- var PASLTypeString = ''
- var LabelingSlabThicknessString = ''
- var BolusCutOffFlagString = ''
- var BolusCutOffTimingSequenceString = ''
- var BolusCutOffDelayTimeString = ''
- var BolusCutOffTechniqueString = ''
-
- if (mergedDictionary.hasOwnProperty('PASLType'))
- PASLTypeString = " 'PASLType', "
- if (mergedDictionary.hasOwnProperty('LabelingSlabThickness'))
- LabelingSlabThicknessString = " 'LabelingSlabThickness', "
- if (mergedDictionary.hasOwnProperty('BolusCutOffFlag'))
- BolusCutOffFlagString = " 'BolusCutOffFlag', "
- if (mergedDictionary.hasOwnProperty('BolusCutOffTimingSequence'))
- BolusCutOffTimingSequenceString = " 'BolusCutOffTimingSequence', "
- if (mergedDictionary.hasOwnProperty('BolusCutOffDelayTime'))
- BolusCutOffDelayTimeString = " 'BolusCutOffDelayTime', "
- if (mergedDictionary.hasOwnProperty('BolusCutOffTechnique'))
- BolusCutOffTechniqueString = " 'BolusCutOffTechnique', "
-
- issues.push(
- new Issue({
- file: file,
- code: 189,
- reason:
- "You defined one of the not allowed fields in case of CASL or PCASL 'ArterialSpinLabelingType'. Please verify " +
- PASLTypeString +
- LabelingSlabThicknessString +
- BolusCutOffFlagString +
- BolusCutOffTimingSequenceString +
- BolusCutOffDelayTimeString +
- BolusCutOffTechniqueString +
- ' and change accordingly.',
- }),
- )
- }
-
- if (!mergedDictionary.hasOwnProperty('LabelingDuration')) {
- issues.push(
- new Issue({
- file: file,
- code: 134,
- reason:
- "You should define 'LabelingDuration' for this file. If you don't provide this information CBF quantification will not be possible. " +
- 'LabelingDuration is the total duration, in seconds, of the labeling pulse train. ' +
- sidecarMessage,
- }),
- )
- } else {
- if (
- header &&
- mergedDictionary['LabelingDuration'].constructor === Array
- ) {
- let LabelingDuration = mergedDictionary['LabelingDuration']
- const LabelingDurationLength = LabelingDuration.length
- const kDim = header.dim[4]
- if (LabelingDurationLength !== kDim) {
- issues.push(
- new Issue({
- file: file,
- code: 157,
- reason:
- "'LabelingDuration' for this file does not match the 4th dimension of the NIFTI header. ",
- }),
- )
- }
- const LabelingDurationWarning = LabelingDuration.filter(
- (x) => x > 10,
- )
- if (LabelingDurationWarning.length > 0) {
- issues.push(
- new Issue({
- file: file,
- code: 187,
- reason:
- "In the 'LabelingDuration' array some values are greater than 10, are you sure they are expressed in seconds? ",
- }),
- )
- }
- }
- if (
- mergedDictionary['LabelingDuration'].constructor === Number &&
- mergedDictionary['LabelingDuration'] > 10
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 187,
- reason:
- "'LabelingDuration' is greater than 10, are you sure it's expressed in seconds?",
- }),
- )
- }
- }
- }
- }
-
- if (!mergedDictionary.hasOwnProperty('PostLabelingDelay')) {
- issues.push(
- new Issue({
- file: file,
- code: 135,
- reason:
- "You should define 'PostLabelingDelay' for this file. If you don't provide this information CBF quantification will not be possible. " +
- sidecarMessage,
- }),
- )
- } else {
- if (
- mergedDictionary['PostLabelingDelay'].constructor === Number &&
- mergedDictionary['PostLabelingDelay'] > 10
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 184,
- reason:
- "'PostLabelingDelay' is greater than 10, are you sure it's expressed in seconds?",
- }),
- )
- }
-
- if (
- header &&
- mergedDictionary['PostLabelingDelay'].constructor === Array
- ) {
- let PostLabelingDelay = mergedDictionary['PostLabelingDelay']
- const PostLabelingDelayLength = PostLabelingDelay.length
- const kDim = header.dim[4]
- if (PostLabelingDelayLength !== kDim) {
- issues.push(
- new Issue({
- file: file,
- code: 173,
- reason:
- "'PostLabelingDelay' for this file does not match the 4th dimension of the NIFTI header. ",
- }),
- )
- }
- const PostLabelingDelayWarning = PostLabelingDelay.filter((x) => x > 10)
- if (PostLabelingDelayWarning.length > 0) {
- issues.push(
- new Issue({
- file: file,
- code: 184,
- reason:
- "In the 'PostLabelingDelay' array some values are greater than 10, are you sure they are expressed in seconds? ",
- }),
- )
- }
- }
- }
-
- if (!mergedDictionary.hasOwnProperty('BackgroundSuppression')) {
- issues.push(
- new Issue({
- file: file,
- code: 136,
- reason:
- "You should define 'BackgroundSuppression' for this file. If you don't provide this information CBF quantification will be biased. " +
- sidecarMessage,
- }),
- )
- }
- if (mergedDictionary.hasOwnProperty('BackgroundSuppression')) {
- if (mergedDictionary['BackgroundSuppression'] == true) {
- if (
- !mergedDictionary.hasOwnProperty('BackgroundSuppressionPulseTime')
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 144,
- reason:
- "You should define 'BackgroundSuppressionPulseTime' for this file. " +
- sidecarMessage,
- }),
- )
- }
- if (
- !mergedDictionary.hasOwnProperty('BackgroundSuppressionNumberPulses')
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 179,
- reason:
- "You should define 'BackgroundSuppressionNumberPulses' for this file. " +
- sidecarMessage,
- }),
- )
- }
- }
- if (
- mergedDictionary.hasOwnProperty('BackgroundSuppressionNumberPulses') &&
- mergedDictionary.hasOwnProperty('BackgroundSuppressionPulseTime')
- ) {
- var BackgroundSuppressionNumberPulses =
- mergedDictionary['BackgroundSuppressionNumberPulses']
- var BackgroundSuppressionPulseTime =
- mergedDictionary['BackgroundSuppressionPulseTime']
- const kDim = BackgroundSuppressionPulseTime.length
- if (BackgroundSuppressionNumberPulses !== kDim) {
- issues.push(
- new Issue({
- file: file,
- code: 180,
- reason:
- 'The BackgroundSuppressionNumberPulses is ' +
- BackgroundSuppressionNumberPulses +
- ' however the array BackgroundSuppressionPulseTime array has ' +
- kDim +
- ' values. Please check the discrepancy between this two values that must coincides.' +
- sidecarMessage,
- }),
- )
- }
- }
- }
- if (!mergedDictionary.hasOwnProperty('VascularCrushing')) {
- issues.push(
- new Issue({
- file: file,
- code: 137,
- reason:
- "You should define 'VascularCrushing' for this file. It indicates if an ASL crusher method has been used. If you don't provide this information CBF quantification could be biased. " +
- sidecarMessage,
- }),
- )
- }
- if (
- mergedDictionary.hasOwnProperty('VascularCrushing') &&
- mergedDictionary['VascularCrushing'].constructor === Boolean &&
- mergedDictionary['VascularCrushing'] &&
- !mergedDictionary.hasOwnProperty['VascularCrushingVENC']
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 145,
- reason:
- "You should define 'VascularCrushingVENC' for this file. " +
- sidecarMessage,
- }),
- )
- }
- if (!mergedDictionary.hasOwnProperty('PulseSequenceDetails')) {
- issues.push(
- new Issue({
- file: file,
- code: 138,
- reason:
- "You should define 'PulseSequenceDetails' for this file including information beyond pulse sequence type that identifies the specific pulse sequence used. " +
- sidecarMessage,
- }),
- )
- }
- if (!mergedDictionary.hasOwnProperty('M0Type')) {
- issues.push(
- new Issue({
- file: file,
- code: 153,
- reason:
- "You should define 'M0Type' for this file. " + sidecarMessage,
- }),
- )
- } else if (
- mergedDictionary.hasOwnProperty('M0Type') &&
- mergedDictionary['M0Type'].constructor === String
- ) {
- const M0String = mergedDictionary['M0Type']
- switch (M0String) {
- case 'Separate':
- // check if an m0 scan file is available and if it is valid
-
- if (
- !checkIfSeparateM0scanExists(
- potentialM0Scans,
- fileList,
- issues,
- file,
- )
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 202,
- reason:
- "'M0Type' property of this asl ('" +
- file.relativePath +
- "') does not point to an existing file('" +
- potentialM0Scans +
- "'). Please mind that this value should not include subject level directory " +
- "('/" +
- file.relativePath.split('/')[1] +
- "/').",
- evidence: potentialM0Scans,
- }),
- )
- }
-
- checkIfValidFiletype(potentialM0Scans, issues, file)
- break
- case 'Included':
- // Here we need to check if the tsv includes m0scan -> move this to validateTsvColumns
- break
- case 'Estimate':
- // Check if there is an estimated value in the json file
- if (!mergedDictionary.hasOwnProperty('M0Estimate')) {
- issues.push(
- new Issue({
- file: file,
- code: 195,
- reason:
- "You set the 'M0Type' to 'Estimate', therefore you should also define 'M0Estimate' for this file. " +
- sidecarMessage,
- }),
- )
- }
- break
- case 'Absent':
- if (
- checkIfSeparateM0scanExists(
- potentialM0Scans,
- fileList,
- issues,
- file,
- ) ||
- mergedDictionary.hasOwnProperty('M0Estimate')
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 198,
- reason:
- "You set the 'M0Type' to 'Absent', you should avoid to define 'M0Estimate' or to include an [_m0scan.nii.gz] for this file. " +
- sidecarMessage,
- }),
- )
- }
- break
- }
- }
-
- if (!mergedDictionary.hasOwnProperty('FlipAngle')) {
- if (
- mergedDictionary.hasOwnProperty('LookLocker') &&
- mergedDictionary['LookLocker']
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 166,
- reason:
- "In case of a LookLocker acquisition you must define 'FlipAngle' for this file. " +
- sidecarMessage,
- }),
- )
- } else {
- issues.push(
- new Issue({
- file: file,
- code: 167,
- reason:
- "You should define 'FlipAngle' for this file. " + sidecarMessage,
- }),
- )
- }
- } else {
- if (header && mergedDictionary['FlipAngle'].constructor === Array) {
- let FlipAngle = mergedDictionary['FlipAngle']
- const FlipAngleLength = FlipAngle.length
- const kDim = header.dim[4]
- if (FlipAngleLength !== kDim) {
- issues.push(
- new Issue({
- file: file,
- code: 168,
- reason:
- "'FlipAngle' for this file do not match the 4th dimension of the NIFTI header. " +
- sidecarMessage,
- }),
- )
- }
- }
- }
- }
- if (path.includes('_asl.nii') || path.includes('_m0scan.nii')) {
- if (!mergedDictionary.hasOwnProperty('AcquisitionVoxelSize')) {
- issues.push(
- new Issue({
- file: file,
- code: 143,
- reason:
- "You should define 'AcquisitionVoxelSize' for this file. " +
- sidecarMessage,
- }),
- )
- } else {
- var AcquisitionVoxelSize = mergedDictionary['AcquisitionVoxelSize']
- if (AcquisitionVoxelSize.length != 3) {
- issues.push(
- new Issue({
- file: file,
- code: 156,
- reason:
- "The 'AcquisitionVoxelSize' field length is not 3. AcquisitionVoxelSize must be defined as a vector of length 3. " +
- sidecarMessage,
- }),
- )
- }
- }
- if (!mergedDictionary.hasOwnProperty('RepetitionTimePreparation')) {
- issues.push(
- new Issue({
- file: file,
- code: 200,
- reason:
- "'RepetitionTimePreparation' must be defined for this file. " +
- sidecarMessage,
- }),
- )
- } else if (
- header &&
- mergedDictionary.hasOwnProperty('RepetitionTimePreparation') &&
- mergedDictionary['RepetitionTimePreparation'].constructor === Array
- ) {
- const RepetitionTimePreparationArray =
- mergedDictionary['RepetitionTimePreparation']
- const kDim = header.dim[4]
- if (RepetitionTimePreparationArray.length !== kDim) {
- issues.push(
- new Issue({
- file: file,
- code: 201,
- evidence:
- 'RepetitionTimePreparation array is of length ' +
- RepetitionTimePreparationArray.length +
- ' for this file and does not match the 4th dimension of the NIFTI header.' +
- sidecarMessage,
- }),
- )
- }
- }
- }
-
- if (path.includes('_dwi.nii')) {
- const potentialBvecs = utils.files.potentialLocations(
- path.replace('.gz', '').replace('.nii', '.bvec'),
- )
- const potentialBvals = utils.files.potentialLocations(
- path.replace('.gz', '').replace('.nii', '.bval'),
- )
- const bvec = utils.files.getBFileContent(potentialBvecs, bContentsDict)
- const bval = utils.files.getBFileContent(potentialBvals, bContentsDict)
- const bvecMessage =
- 'It can be included in one of the following locations: ' +
- potentialBvecs.join(', ')
- const bvalMessage =
- 'It can be included in one of the following locations: ' +
- potentialBvals.join(', ')
-
- if (!bvec) {
- issues.push(
- new Issue({
- code: 32,
- file: file,
- reason:
- '_dwi scans should have a corresponding .bvec file. ' + bvecMessage,
- }),
- )
- }
- if (!bval) {
- issues.push(
- new Issue({
- code: 33,
- file: file,
- reason:
- '_dwi scans should have a corresponding .bval file. ' + bvalMessage,
- }),
- )
- }
-
- if (bval && bvec && header) {
- /*
- bvec length ==3 is checked at bvec.spec.js hence following if loop does not have else block
- */
- if (bvec.replace(/^\s+|\s+$/g, '').split('\n').length === 3) {
- const volumes = [
- bvec
- .split('\n')[0]
- .replace(/^\s+|\s+$/g, '')
- .split(' ').length, // bvec row 1 length
- bvec
- .split('\n')[1]
- .replace(/^\s+|\s+$/g, '')
- .split(' ').length, // bvec row 2 length
- bvec
- .split('\n')[2]
- .replace(/^\s+|\s+$/g, '')
- .split(' ').length, // bvec row 3 length
- bval.replace(/^\s+|\s+$/g, '').split(' ').length, // bval row length
- header.dim[4], // header 4th dimension
- ]
-
- if (
- !volumes.every(function (v) {
- return v === volumes[0]
- })
- ) {
- issues.push(
- new Issue({
- code: 29,
- file: file,
- }),
- )
- }
- }
- }
- }
-
- if (missingEvents(path, potentialEvents, events)) {
- issues.push(
- new Issue({
- code: 25,
- file: file,
- reason:
- 'Task scans should have a corresponding events.tsv file. ' +
- eventsMessage,
- }),
- )
- }
-
- let repetitionTime, repetitionUnit
- if (header) {
- // Define repetition time from header and coerce to seconds.
- repetitionTime = header.pixdim[4]
- repetitionUnit =
- header.xyzt_units && header.xyzt_units[3] ? header.xyzt_units[3] : null
- if (repetitionUnit === 'ms') {
- repetitionTime = repetitionTime / 1000
- repetitionUnit = 's'
- }
- if (repetitionUnit === 'us') {
- repetitionTime = repetitionTime / 1000000
- repetitionUnit = 's'
- }
- }
-
- if (!mergedDictionary.invalid) {
- // task scan checks
- if (
- path.includes('_task-') &&
- !path.includes('_defacemask.nii') &&
- !path.includes('_sbref.nii')
- ) {
- if (!mergedDictionary.hasOwnProperty('TaskName')) {
- issues.push(
- new Issue({
- file: file,
- code: 50,
- reason:
- "You have to define 'TaskName' for this file. " + sidecarMessage,
- }),
- )
- }
- }
-
- // field map checks
- if (
- path.includes('_bold.nii') ||
- path.includes('_sbref.nii') ||
- path.includes('_dwi.nii') ||
- path.includes('_asl.nii') ||
- path.includes('_m0scan.nii')
- ) {
- if (!mergedDictionary.hasOwnProperty('EchoTime')) {
- if (path.includes('_asl.nii') || path.includes('_m0scan.nii')) {
- issues.push(
- new Issue({
- file: file,
- code: 193,
- reason:
- "You must define 'EchoTime' for this file. If you don't provide this information a correct CBF quantification will not be possible." +
- sidecarMessage,
- }),
- )
- } else {
- issues.push(
- new Issue({
- file: file,
- code: 6,
- reason:
- "You should define 'EchoTime' for this file. If you don't provide this information field map correction will not be possible. " +
- sidecarMessage,
- }),
- )
- }
- } else {
- if (
- header &&
- mergedDictionary.hasOwnProperty('EchoTime') &&
- mergedDictionary['EchoTime'].constructor === Array
- ) {
- const EchoTimeArray = mergedDictionary['EchoTime']
- const kDim = header.dim[3]
- if (EchoTimeArray.length !== kDim) {
- issues.push(
- new Issue({
- file: file,
- code: 197,
- evidence:
- 'EchoTime array is of length ' +
- EchoTimeArray.length +
- " and the value of the 'k' dimension is " +
- kDim +
- ' for the corresponding nifti header.',
- }),
- )
- }
- }
- }
- if (!mergedDictionary.hasOwnProperty('PhaseEncodingDirection')) {
- issues.push(
- new Issue({
- file: file,
- code: 7,
- reason:
- "You should define 'PhaseEncodingDirection' for this file. If you don't provide this information field map correction will not be possible. " +
- sidecarMessage,
- }),
- )
- }
- if (!mergedDictionary.hasOwnProperty('EffectiveEchoSpacing')) {
- issues.push(
- new Issue({
- file: file,
- code: 8,
- reason:
- "You should define 'EffectiveEchoSpacing' for this file. If you don't provide this information field map correction will not be possible. " +
- sidecarMessage,
- }),
- )
- }
- }
- if (path.includes('_dwi.nii')) {
- if (!mergedDictionary.hasOwnProperty('TotalReadoutTime')) {
- issues.push(
- new Issue({
- file: file,
- code: 9,
- reason:
- "You should define 'TotalReadoutTime' for this file. If you don't provide this information field map correction using TOPUP might not be possible. " +
- sidecarMessage,
- }),
- )
- }
- }
- if (path.includes('_bold.nii') || path.includes('_asl.nii')) {
- // check that slice timing is defined
- if (!mergedDictionary.hasOwnProperty('SliceTiming')) {
- // case of ASL with 3D sequence - slice timing is not necessary
- if (
- !(
- mergedDictionary.hasOwnProperty('MRAcquisitionType') &&
- mergedDictionary.MRAcquisitionType === '3D' &&
- path.includes('_asl.nii')
- )
- ) {
- if (
- mergedDictionary.hasOwnProperty('MRAcquisitionType') &&
- mergedDictionary.MRAcquisitionType === '2D' &&
- path.includes('_asl.nii')
- ) {
- // case of ASL with 2D sequence - slice timing is required
- issues.push(
- new Issue({
- file: file,
- code: 183,
- reason:
- "You should define 'SliceTiming' for this file. " +
- "If you don't provide this information slice time correction will not be possible. " +
- sidecarMessage,
- }),
- )
- } else {
- issues.push(
- new Issue({
- file: file,
- code: 13,
- reason:
- "You should define 'SliceTiming' for this file. " +
- "If you don't provide this information slice time correction will not be possible. " +
- sidecarMessage,
- }),
- )
- }
- }
- }
- // check that slice timing has the proper length
- if (
- header &&
- mergedDictionary.hasOwnProperty('SliceTiming') &&
- mergedDictionary['SliceTiming'].constructor === Array
- ) {
- const sliceTimingArray = mergedDictionary['SliceTiming']
- const kDim = header.dim[3]
- if (sliceTimingArray.length !== kDim) {
- issues.push(
- new Issue({
- file: file,
- code: 87,
- evidence:
- 'SliceTiming array is of length ' +
- sliceTimingArray.length +
- " and the value of the 'k' dimension is " +
- kDim +
- ' for the corresponding nifti header.',
- }),
- )
- }
- }
- }
- // we don't need slice timing or repetition time for SBref
- if (path.includes('_bold.nii')) {
- if (
- !mergedDictionary.hasOwnProperty('RepetitionTime') &&
- !mergedDictionary.hasOwnProperty('VolumeTiming')
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 10,
- reason:
- "You have to define 'RepetitionTime' or 'VolumeTiming' for this file. " +
- sidecarMessage,
- }),
- )
- } else if (
- header &&
- mergedDictionary.RepetitionTime &&
- mergedDictionary.EffectiveEchoSpacing &&
- mergedDictionary.PhaseEncodingDirection &&
- !mergedDictionary.hasOwnProperty('VolumeTiming')
- ) {
- var axes = { i: 1, j: 2, k: 3 }
- if (
- mergedDictionary.EffectiveEchoSpacing *
- header.dim[axes[mergedDictionary.PhaseEncodingDirection[0]]] >
- mergedDictionary.RepetitionTime
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 76,
- reason:
- "Abnormally high value of 'EffectiveEchoSpacing' (" +
- mergedDictionary.EffectiveEchoSpacing +
- ' seconds).',
- }),
- )
- }
- } else if (
- mergedDictionary.hasOwnProperty('VolumeTiming') &&
- mergedDictionary.hasOwnProperty('RepetitionTime')
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 178,
- reason:
- "'VolumeTiming' and 'RepetitionTime' for this file are mutually exclusive." +
- sidecarMessage,
- }),
- )
- } else if (
- mergedDictionary.hasOwnProperty('VolumeTiming') &&
- !mergedDictionary.hasOwnProperty('RepetitionTime')
- ) {
- if (
- mergedDictionary.hasOwnProperty('VolumeTiming') &&
- !mergedDictionary.hasOwnProperty('SliceTiming') &&
- !mergedDictionary.hasOwnProperty('AcquisitionDuration')
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 171,
- }),
- )
- }
- let VolumeTiming = mergedDictionary['VolumeTiming']
- const MonotonicallyIncreasingVolumeTiming =
- isMonotonicIncreasingArray(VolumeTiming)
- if (!MonotonicallyIncreasingVolumeTiming) {
- issues.push(
- new Issue({
- file: file,
- code: 188,
- reason: "'VolumeTiming' should be monotonically increasing.",
- }),
- )
- }
- }
- if (typeof repetitionTime === 'undefined' && header) {
- issues.push(
- new Issue({
- file: file,
- code: 75,
- }),
- )
- } else if (mergedDictionary.RepetitionTime && header) {
- if (repetitionUnit !== 's') {
- issues.push(
- new Issue({
- file: file,
- code: 11,
- }),
- )
- }
-
- const niftiTR = Number(repetitionTime).toFixed(3)
- const jsonTR = Number(mergedDictionary.RepetitionTime).toFixed(3)
- if (niftiTR !== jsonTR) {
- issues.push(
- new Issue({
- file: file,
- code: 12,
- reason:
- 'Repetition time defined in the JSON (' +
- jsonTR +
- ' sec.) did not match the one defined in the NIFTI header (' +
- niftiTR +
- ' sec.)',
- }),
- )
- }
- }
-
- // check that slice timing values are greater than repetition time
- if (
- mergedDictionary.hasOwnProperty('SliceTiming') &&
- mergedDictionary['SliceTiming'].constructor === Array
- ) {
- const SliceTimingArray = mergedDictionary['SliceTiming']
- const valuesGreaterThanRepetitionTime =
- sliceTimingGreaterThanRepetitionTime(
- SliceTimingArray,
- mergedDictionary['RepetitionTime'],
- )
- if (valuesGreaterThanRepetitionTime.length > 0) {
- issues.push(
- new Issue({
- file: file,
- code: 66,
- evidence: valuesGreaterThanRepetitionTime.join(', '),
- }),
- )
- }
- }
- } else if (path.includes('_phasediff.nii')) {
- if (
- !mergedDictionary.hasOwnProperty('EchoTime1') ||
- !mergedDictionary.hasOwnProperty('EchoTime2')
- ) {
- issues.push(
- new Issue({
- file: file,
- code: 15,
- reason:
- "You have to define 'EchoTime1' and 'EchoTime2' for this file. " +
- sidecarMessage,
- }),
- )
- }
- if (
- mergedDictionary.hasOwnProperty('EchoTime1') &&
- mergedDictionary.hasOwnProperty('EchoTime2')
- ) {
- const echoTimeDifference =
- mergedDictionary['EchoTime2'] - mergedDictionary['EchoTime1']
- if (echoTimeDifference < 0.0001 || echoTimeDifference > 0.01) {
- issues.push(
- new Issue({
- file: file,
- code: 83,
- reason:
- 'The value of (EchoTime2 - EchoTime1) should be within the range of 0.0001 - 0.01. ' +
- sidecarMessage,
- }),
- )
- }
- }
- } else if (path.includes('_phase1.nii') || path.includes('_phase2.nii')) {
- if (!mergedDictionary.hasOwnProperty('EchoTime')) {
- issues.push(
- new Issue({
- file: file,
- code: 16,
- reason:
- "You have to define 'EchoTime' for this file. " + sidecarMessage,
- }),
- )
- }
- } else if (path.includes('_fieldmap.nii')) {
- if (!mergedDictionary.hasOwnProperty('Units')) {
- issues.push(
- new Issue({
- file: file,
- code: 17,
- reason:
- "You have to define 'Units' for this file. " + sidecarMessage,
- }),
- )
- }
- } else if (path.includes('_epi.nii')) {
- if (!mergedDictionary.hasOwnProperty('PhaseEncodingDirection')) {
- issues.push(
- new Issue({
- file: file,
- code: 18,
- reason:
- "You have to define 'PhaseEncodingDirection' for this file. " +
- sidecarMessage,
- }),
- )
- }
- if (!mergedDictionary.hasOwnProperty('TotalReadoutTime')) {
- issues.push(
- new Issue({
- file: file,
- code: 19,
- reason:
- "You have to define 'TotalReadoutTime' for this file. " +
- sidecarMessage,
- }),
- )
- }
- }
-
- if (
- (path.includes('_m0scan.nii') ||
- utils.type.file.isFieldMapMainNii(path)) &&
- mergedDictionary.hasOwnProperty('IntendedFor')
- ) {
- const intendedFor =
- typeof mergedDictionary['IntendedFor'] == 'string'
- ? [mergedDictionary['IntendedFor']]
- : mergedDictionary['IntendedFor']
-
- for (let key = 0; key < intendedFor.length; key++) {
- const intendedForFile = intendedFor[key]
- // Only check for presence of IntendedFor files if not a BIDS-URI
- // https://github.com/bids-standard/bids-validator/issues/1393
- if (!intendedForFile.startsWith('bids:')) {
- checkIfIntendedExists(intendedForFile, fileList, issues, file)
- checkIfValidFiletype(intendedForFile, issues, file)
- }
- }
- }
- }
-
- if (path.includes('_pet.nii')) {
- issues.push(
- ...checkPetRequiredFields(file, mergedDictionary, sidecarMessage),
- )
- }
-
- callback(issues)
-}
-
-export function checkPetRequiredFields(file, mergedDictionary, sidecarMessage) {
- const issues = []
- const requiredFields = [
- 'TracerName',
- 'TracerRadionuclide',
- 'InjectedRadioactivity',
- 'InjectedRadioactivityUnits',
- 'InjectedMass',
- 'InjectedMassUnits',
- 'SpecificRadioactivity',
- 'SpecificRadioactivityUnits',
- 'ModeOfAdministration',
- 'TimeZero',
- 'ScanStart',
- 'InjectionStart',
- 'FrameTimesStart',
- 'FrameDuration',
- 'AcquisitionMode',
- 'ImageDecayCorrected',
- 'ImageDecayCorrectionTime',
- 'ReconMethodName',
- 'ReconMethodParameterLabels',
- 'ReconFilterType',
- 'AttenuationCorrection',
- 'Manufacturer',
- 'ManufacturersModelName',
- 'Units',
- ]
- if (
- mergedDictionary.hasOwnProperty('ModeOfAdministration') &&
- mergedDictionary['ModeOfAdministration'] === 'bolus-infusion'
- ) {
- requiredFields.push(
- 'InfusionRadioactivity',
- 'InfusionStart',
- 'InfusionSpeed',
- 'InfusionSpeedUnits',
- 'InjectedVolume',
- )
- }
- if (mergedDictionary.hasOwnProperty('ReconFilterType')) {
- if (
- typeof mergedDictionary['ReconFilterType'] === 'string' &&
- mergedDictionary['ReconFilterType'] !== 'none'
- ) {
- requiredFields.push(
- 'ReconMethodParameterUnits',
- 'ReconMethodParameterValues',
- 'ReconFilterSize',
- )
- } else if (
- typeof mergedDictionary['ReconFilterType'] !== 'string' &&
- Array.isArray(mergedDictionary['ReconFilterType']) &&
- mergedDictionary['ReconFilterType'].every(
- (filterType) => filterType !== 'none',
- )
- ) {
- requiredFields.push(
- 'ReconMethodParameterUnits',
- 'ReconMethodParameterValues',
- 'ReconFilterSize',
- )
- }
- }
- for (const field of requiredFields) {
- if (!mergedDictionary.hasOwnProperty(field)) {
- issues.push(
- new Issue({
- file: file,
- code: 237,
- reason: `You must define ${field} for this file. ${sidecarMessage}`,
- }),
- )
- }
- }
- return issues
-}
-
-function missingEvents(path, potentialEvents, events) {
- let hasEvent = false,
- isRest = false
-
- // check if is a rest file
- const pathParts = path.split('/')
- const filenameParts = pathParts[pathParts.length - 1].split('_')
- for (let i = 0; i < filenameParts.length; i++) {
- const part = filenameParts[i]
- if (part.toLowerCase().indexOf('task') === 0 && part.indexOf('rest') > -1) {
- isRest = true
- }
- }
-
- // check for event file
- for (let j = 0; j < potentialEvents.length; j++) {
- const event = potentialEvents[j]
- if (events.find((e) => e.path == event)) {
- hasEvent = true
- }
- }
-
- return !isRest && path.includes('_bold.nii') && !hasEvent
-}
-
-/**
- * Function to check each SliceTime from SliceTiming Array
- *
- */
-
-function sliceTimingGreaterThanRepetitionTime(array, repetitionTime) {
- const invalid_timesArray = []
- for (let t = 0; t < array.length; t++) {
- if (array[t] > repetitionTime) {
- invalid_timesArray.push(array[t])
- }
- }
- return invalid_timesArray
-}
-
-function checkIfIntendedExists(intendedForFile, fileList, issues, file) {
- const intendedForFileFull =
- '/' +
- (intendedForFile.startsWith('bids::')
- ? intendedForFile.split('::')[1]
- : file.relativePath.split('/')[1] + '/' + intendedForFile)
- const onTheList = Object.values(fileList).some(
- (f) => f.relativePath === intendedForFileFull,
- )
- if (!onTheList) {
- issues.push(
- new Issue({
- file: file,
- code: 37,
- reason:
- "'IntendedFor' property of this fieldmap ('" +
- file.relativePath +
- "') does not point to an existing file('" +
- intendedForFile +
- "'). Please mind that this value should not include subject level directory " +
- "('/" +
- file.relativePath.split('/')[1] +
- "/').",
- evidence: intendedForFile,
- }),
- )
- }
-}
-
-/**
- * Functions to check if m0scan is present in various sub-types, be aware of the '-dir' pattern that could be subject to changes in future versions
- *
- */
-
-function checkIfSeparateM0scanExists(m0scanFile, fileList) {
- let rule = m0scanFile.replace('_m0scan.nii', '').replace('.gz', '')
- let m0scanFile_nii = m0scanFile.replace('.nii.gz', '.nii')
- let m0scanFile_niigz = m0scanFile
-
- let onTheList = false
- for (let key2 in fileList) {
- if (key2) {
- const filePath = fileList[key2].relativePath
- if (
- matchRule_m0scan(filePath, rule + '_dir-*') ||
- filePath === m0scanFile_nii ||
- filePath === m0scanFile_niigz
- ) {
- onTheList = true
- }
- }
- }
- return onTheList
-}
-
-function matchRule_m0scan(str, rule) {
- var escapeRegex = (str) => str.replace(/([.*+?^=!:${}()|[]\/\\])/g, '\\$1')
- return new RegExp(
- rule.split('*').map(escapeRegex).join('.*') + '_m0scan.nii',
- ).test(str)
-}
-
-function checkIfValidFiletype(intendedForFile, issues, file) {
- const validFiletype = new RegExp('.nii(.gz)?$')
- const isValidFiletype = validFiletype.test(intendedForFile)
- if (!isValidFiletype) {
- issues.push(
- new Issue({
- file: file,
- code: 37,
- reason: `Invalid filetype: IntendedFor should point to the .nii[.gz] files.`,
- evidence: intendedForFile,
- }),
- )
- }
-}
-
-function isMonotonicIncreasingArray(A) {
- let isInc = false
- for (let i = 1; i < A.length; i++) {
- if (A[i] > A[i - 1]) {
- isInc = true
- } else {
- return false
- }
- }
- return isInc
-}
diff --git a/legacy/bids-validator/validators/nifti/phasediffWithoutMagnitude.js b/legacy/bids-validator/validators/nifti/phasediffWithoutMagnitude.js
deleted file mode 100644
index 909e876f..00000000
--- a/legacy/bids-validator/validators/nifti/phasediffWithoutMagnitude.js
+++ /dev/null
@@ -1,27 +0,0 @@
-const Issue = require('../../utils').issues.Issue
-
-const phasediffWithoutMagnitude = (files) => {
- // check to see if each phasediff is associated with magnitude
- const issues = []
- const niftiNames = files.map((nifti) => nifti.name)
- const phaseDiffNiftis = niftiNames.filter(
- (nifti) => nifti.indexOf('phasediff') > -1,
- )
- const magnitude1Niftis = niftiNames.filter(
- (nifti) => nifti.indexOf('magnitude1') > -1,
- )
- phaseDiffNiftis.map((nifti) => {
- const associatedMagnitudeFile = nifti.replace('phasediff', 'magnitude1')
- if (magnitude1Niftis.indexOf(associatedMagnitudeFile) === -1) {
- issues.push(
- new Issue({
- code: 92,
- file: files.find((niftiFile) => niftiFile.name == nifti),
- }),
- )
- }
- })
- return issues
-}
-
-export default phasediffWithoutMagnitude
diff --git a/legacy/bids-validator/validators/nifti/validate.js b/legacy/bids-validator/validators/nifti/validate.js
deleted file mode 100644
index a3503cfe..00000000
--- a/legacy/bids-validator/validators/nifti/validate.js
+++ /dev/null
@@ -1,77 +0,0 @@
-import utils from '../../utils'
-import nifti from './nii'
-import phaseDiffWithoutMagnitude from './phasediffWithoutMagnitude'
-import fieldmapWithoutMagnitude from './fieldmapWithoutMagnitude'
-import duplicateFiles from './duplicateFiles'
-
-const validate = (
- files,
- fileList,
- options,
- jsonContentsDict,
- bContentsDict,
- events,
- headers,
- annexed,
- dir,
-) => {
- let issues = []
- const niftiPromises = files.map(function (file) {
- return new Promise((resolve) => {
- if (options.ignoreNiftiHeaders) {
- nifti(
- null,
- file,
- jsonContentsDict,
- bContentsDict,
- fileList,
- events,
- function (niftiIssues) {
- issues = issues.concat(niftiIssues)
- resolve()
- },
- )
- } else {
- utils.files.readNiftiHeader(file, annexed, dir, function (header) {
- // check if header could be read
- if (header && header.hasOwnProperty('error')) {
- issues.push(header.error)
- resolve()
- } else {
- headers.push([file, header])
- nifti(
- header,
- file,
- jsonContentsDict,
- bContentsDict,
- fileList,
- events,
- function (niftiIssues) {
- issues = issues.concat(niftiIssues)
- resolve()
- },
- )
- }
- })
- }
- })
- })
-
- return new Promise((resolve) => {
- // check for duplicate nifti files
- const duplicateNiftisIssues = duplicateFiles(files)
- issues = issues.concat(duplicateNiftisIssues)
-
- // Check for _fieldmap nifti exists without corresponding _magnitude
- const magnitudeIssues = fieldmapWithoutMagnitude(files)
- issues = issues.concat(magnitudeIssues)
-
- // phase diff without magnitude test
- const phaseDiffWithoutMagnitudeIssues = phaseDiffWithoutMagnitude(files)
- issues = issues.concat(phaseDiffWithoutMagnitudeIssues)
-
- Promise.all(niftiPromises).then(() => resolve(issues))
- })
-}
-
-export default validate
diff --git a/legacy/bids-validator/validators/options.js b/legacy/bids-validator/validators/options.js
deleted file mode 100644
index b1b08d34..00000000
--- a/legacy/bids-validator/validators/options.js
+++ /dev/null
@@ -1,74 +0,0 @@
-// ESM import for yargs does not work for mysterious reasons
-const yargs = require('yargs')
-
-export function parseOptions(argumentOverride) {
- return yargs(argumentOverride)
- .usage('Usage: $0 [options]')
- .help('help')
- .alias('help', 'h')
- .version(require('../package.json').version)
- .alias('version', 'v')
- .demand(1, 1)
- .boolean('ignoreWarnings')
- .describe('ignoreWarnings', 'Disregard non-critical issues')
- .boolean('ignoreNiftiHeaders')
- .describe(
- 'ignoreNiftiHeaders',
- 'Disregard NIfTI header content during validation',
- )
- .boolean('ignoreSubjectConsistency')
- .describe(
- 'ignoreSubjectConsistency',
- 'Skip checking that any given file for one subject is present for all other subjects.',
- )
- .option('blacklistModalities', {
- default: [],
- describe: 'Array of modalities to error on if detected.',
- array: true,
- choices: ['MRI', 'PET', 'MEG', 'EEG', 'iEEG', 'Microscopy', 'NIRS'],
- })
- .boolean('verbose')
- .describe('verbose', 'Log more extensive information about issues')
- .boolean('json')
- .describe('json', 'Output results as JSON')
- .boolean('no-color')
- .describe('no-color', 'Disable colors in output text.')
- .default('no-color', false)
- .boolean('ignoreSymlinks')
- .describe(
- 'ignoreSymlinks',
- 'Skip any symlinked directories when validating a dataset',
- )
- .boolean('remoteFiles')
- .describe('remoteFiles', 'Validate remote files.')
- .default('remoteFiles', false)
- .boolean('gitTreeMode')
- .describe(
- 'gitTreeMode',
- 'Improve performance using git metadata. Does not capture changes not known to git.',
- )
- .option('gitRef', {
- describe:
- 'Targets files at a given branch, tag, or commit hash. Use with --gitTreeMode. [default: "HEAD"]',
- type: 'string',
- })
- .implies('gitRef', 'gitTreeMode')
- .option('config', {
- alias: 'c',
- describe:
- 'Optional configuration file. See https://github.com/bids-standard/bids-validator for more info',
- default: '.bids-validator-config.json',
- })
- .boolean('filenames')
- .default('filenames', false)
- .describe(
- 'filenames',
- 'A less accurate check that reads filenames one per line from stdin.',
- )
- .hide('filenames')
- .epilogue(
- 'This tool checks if a dataset in a given directory is \
-compatible with the Brain Imaging Data Structure specification. To learn \
-more about Brain Imaging Data Structure visit http://bids.neuroimaging.io',
- ).argv
-}
diff --git a/legacy/bids-validator/validators/session.js b/legacy/bids-validator/validators/session.js
deleted file mode 100644
index a17f2371..00000000
--- a/legacy/bids-validator/validators/session.js
+++ /dev/null
@@ -1,253 +0,0 @@
-import utils from '../utils'
-const sesUtils = utils.files.sessions
-var Issue = utils.issues.Issue
-import isNode from '../utils/isNode'
-
-/**
- * session
- *
- * Takes a list of files and creates a set of file names that occur in subject
- * directories. Then generates a warning if a given subject is missing any
- * files from the set.
- */
-const session = function missingSessionFiles(fileList) {
- const { subjects, sessions } = getDataOrganization(fileList)
- const subject_files = getSubjectFiles(subjects)
- return [
- ...missingSessionWarnings(subjects, sessions),
- ...missingFileWarnings(subjects, subject_files),
- ]
-}
-
-/**
- * getDataOrganization
- *
- * takes a list of files and returns a dictionary of subjects and a list of sessions
- */
-function getDataOrganization(fileList) {
- const subjects = {}
- const sessions = []
-
- for (let key in fileList) {
- if (fileList.hasOwnProperty(key)) {
- const file = fileList[key]
-
- if (!file || (!isNode && !file.webkitRelativePath)) continue
-
- const path = file.relativePath
- if (!utils.type.isBIDS(path) || utils.type.file.isStimuliData(path))
- continue
-
- //match the subject identifier up to the '/' in the full path to a file.
- let subjKey
- const match = path.match(/sub-(.*?)(?=\/)/)
- if (match === null) continue
- else subjKey = match[0]
-
- // suppress inconsistent subject warnings for sub-emptyroom scans
- // in MEG data
- if (subjKey == 'sub-emptyroom') continue
-
- // initialize a subject object if we haven't seen this subject before
- subjects[subjKey] = subjects[subjKey] || new sesUtils.Subject()
-
- let filename = getFilename(path, subjKey)
- subjects[subjKey].files.push(filename)
-
- const sessionMatch = filename.match(sesUtils.sessionMatcher)
- if (sessionMatch) {
- // extract session name
- const sessionName = sessionMatch[1]
- // add session to sessions if not already there
- if (!sessions.includes(sessionName)) {
- sessions.push(sessionName)
- }
- if (!subjects[subjKey].sessions.includes(sessionName))
- subjects[subjKey].sessions.push(sessionName)
- }
- }
- }
-
- return { subjects, sessions }
-}
-
-/**
- * getFilename
- *
- * takes a filepath and a subject key and
- * returns file name
- */
-function getFilename(path, subjKey) {
- // files are prepended with subject name, the following two commands
- // remove the subject from the file name to allow filenames to be more
- // easily compared
- let filename = path.substring(path.match(subjKey).index + subjKey.length)
- filename = filename.replace(subjKey, '')
- return filename
-}
-
-/**
- * missingSessionWarnings
- *
- * take subjects and sessions
- * pushes missing session warnings to issues list
- * and returns issues
- */
-function missingSessionWarnings(subjects, sessions) {
- const issues = []
- for (let subjKey in subjects) {
- if (subjects.hasOwnProperty(subjKey)) {
- const subject = subjects[subjKey]
-
- // push warning to issues if missing session
- if (sessions.length > 0) {
- sessions.forEach((commonSession) => {
- if (!subject.sessions.includes(commonSession)) {
- subject.missingSessions.push(commonSession)
- const path = `/${subjKey}/${commonSession}`
- issues.push(
- new Issue({
- file: {
- relativePath: path,
- webkitRelativePath: path,
- name: commonSession,
- path,
- },
- reason:
- 'A session is missing from one subject that is present in at least one other subject',
- evidence: `Subject: ${subjKey}; Missing session: ${commonSession}`,
- code: 97,
- }),
- )
- }
- })
- }
- }
- }
- return issues
-}
-
-/**
- * getSubjectFiles
- *
- * takes a list of subjects and returns a list of each file
- */
-
-function getSubjectFiles(subjects) {
- const subject_files = []
- for (let subjKey in subjects) {
- if (subjects.hasOwnProperty(subjKey)) {
- const subject = subjects[subjKey]
-
- // add files to subject_files if not already listed
- subject.files.forEach((file) => {
- if (subject_files.indexOf(file) < 0) {
- subject_files.push(file)
- }
- })
- }
- }
- return subject_files
-}
-
-/**
- * missingFileWarnings
- *
- * takes a list of subjects and a list of common files and
- * generates an issue for each file missing from each subject
- * returns list of issues
- */
-function missingFileWarnings(subjects, subject_files) {
- const issues = []
- var subjectKeys = Object.keys(subjects).sort()
- subjectKeys.forEach((subjKey) => {
- subject_files.forEach((filename) => {
- const fileInMissingSession = checkFileInMissingSession(
- filename,
- subjects[subjKey],
- )
-
- if (!fileInMissingSession) {
- const missingFileWarning = checkMissingFile(
- subjects[subjKey],
- subjKey,
- filename,
- )
- if (missingFileWarning) issues.push(missingFileWarning)
- }
- })
- })
- return issues
-}
-
-/**
- * checkFileInMissingSession
- *
- * takes a file(path) and the subject object it should belong to and
- * returns whether or not the file is in a missing session
- */
-function checkFileInMissingSession(filePath, subject) {
- let fileSession
- const sessionMatch = filePath.match(sesUtils.sessionMatcher)
-
- // if sessions are in use, extract session name from file
- // and test if
- if (sessionMatch) {
- fileSession = sessionMatch[1]
- return subject.missingSessions.includes(fileSession)
- } else {
- return false
- }
-}
-
-/**
- * checkMissingFile
- *
- * takes a list of subjects, the subject key, and the expected file and
- * returns an issue if the file is missing
- */
-function checkMissingFile(subject, subjKey, filename) {
- const subjectMissingFile = subject.files.indexOf(filename) === -1
-
- if (subjectMissingFile) {
- var fileThatsMissing = '/' + subjKey + filename.replace('', subjKey)
- const fileName = fileThatsMissing.substr(
- fileThatsMissing.lastIndexOf('/') + 1,
- )
- return new Issue({
- file: {
- relativePath: fileThatsMissing,
- webkitRelativePath: fileThatsMissing,
- name: fileName,
- path: fileThatsMissing,
- },
- evidence: `Subject: ${subjKey}; Missing file: ${fileName}`,
- reason:
- 'This file is missing for subject ' +
- subjKey +
- ', but is present for at least one other subject.',
- code: 38,
- })
- }
-}
-
-export {
- session,
- getDataOrganization,
- getFilename,
- missingSessionWarnings,
- getSubjectFiles,
- missingFileWarnings,
- checkFileInMissingSession,
- checkMissingFile,
-}
-export default {
- session,
- getDataOrganization,
- getFilename,
- missingSessionWarnings,
- getSubjectFiles,
- missingFileWarnings,
- checkFileInMissingSession,
- checkMissingFile,
-}
diff --git a/legacy/bids-validator/validators/tsv/__tests__/checkAge89.spec.js b/legacy/bids-validator/validators/tsv/__tests__/checkAge89.spec.js
deleted file mode 100644
index 22cad0e8..00000000
--- a/legacy/bids-validator/validators/tsv/__tests__/checkAge89.spec.js
+++ /dev/null
@@ -1,14 +0,0 @@
-import { checkAge89 } from '../checkAge89'
-
-describe('checkAge89()', () => {
- it('returns evidence in the expected string format', () => {
- // Evidence should always be a human-readable string
- const issues = []
- const exampleParticipants = [['age'], [90]]
- const mockFile = {}
- checkAge89(exampleParticipants, mockFile, issues)
- expect(issues).toHaveLength(1)
- expect(issues[0]).toHaveProperty('evidence')
- expect(typeof issues[0].evidence).toBe('string')
- })
-})
diff --git a/legacy/bids-validator/validators/tsv/__tests__/checkHeaders.spec.js b/legacy/bids-validator/validators/tsv/__tests__/checkHeaders.spec.js
deleted file mode 100644
index 446a48c7..00000000
--- a/legacy/bids-validator/validators/tsv/__tests__/checkHeaders.spec.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import checkHeaders from '../checkHeaders'
-
-describe('checkHeaders()', () => {
- it('generates issue on duplicate', () => {
- const issues = []
- const headers = ['hdr1', 'hdr2', 'hdr1']
- const mockFile = {}
- checkHeaders(headers, mockFile, issues)
- expect(issues).toHaveLength(1)
- expect(issues[0].code).toBe(231)
- })
- it('No issue for unique headers array', () => {
- const issues = []
- const headers = ['hdr1', 'hdr2', 'hdr3']
- const mockFile = {}
- checkHeaders(headers, mockFile, issues)
- expect(issues).toHaveLength(0)
- })
- it('generates issue on n/a', () => {
- const issues = []
- const headers = ['n/a']
- const mockFile = {}
- checkHeaders(headers, mockFile, issues)
- expect(issues).toHaveLength(1)
- expect(issues[0].code).toBe(232)
- })
- it('generates issue on empty header', () => {
- const issues = []
- const headers = ['normal', ' ', 'fine']
- const mockFile = {}
- checkHeaders(headers, mockFile, issues)
- expect(issues).toHaveLength(1)
- expect(issues[0].code).toBe(23)
- })
-})
diff --git a/legacy/bids-validator/validators/tsv/__tests__/checkMotionComponent.js b/legacy/bids-validator/validators/tsv/__tests__/checkMotionComponent.js
deleted file mode 100644
index 0f9fe63d..00000000
--- a/legacy/bids-validator/validators/tsv/__tests__/checkMotionComponent.js
+++ /dev/null
@@ -1,43 +0,0 @@
-import { assert } from 'chai'
-import checkMotionComponent from '../checkMotionComponent'
-
-describe('checkMotionComponent', () => {
- it('returns no issue if components is in correct location and values are valid', () => {
- const issues = []
- checkMotionComponent(
- [
- ['test', 'component'],
- [0, 'x'],
- ],
- 'testfile.tsv',
- issues,
- )
- assert.lengthOf(issues, 0)
- })
- it('returns issue if components are in wrong column', () => {
- const issues = []
- checkMotionComponent(
- [
- ['component', 'test'],
- ['x', 0],
- ],
- 'testfile.tsv',
- issues,
- )
- assert.lengthOf(issues, 1)
- assert(issues[0].code === 235)
- })
- it('returns issue if components are incorrect value', () => {
- const issues = []
- checkMotionComponent(
- [
- ['test', 'component'],
- [0, 0],
- ],
- 'testfile.tsv',
- issues,
- )
- assert.lengthOf(issues, 1)
- assert(issues[0].code === 236)
- })
-})
diff --git a/legacy/bids-validator/validators/tsv/__tests__/checkPhenotype.spec.js b/legacy/bids-validator/validators/tsv/__tests__/checkPhenotype.spec.js
deleted file mode 100644
index fc8ee6ed..00000000
--- a/legacy/bids-validator/validators/tsv/__tests__/checkPhenotype.spec.js
+++ /dev/null
@@ -1,31 +0,0 @@
-import { assert } from 'chai'
-import checkPhenotype from '../checkPhenotype'
-
-describe('checkPhenotype', () => {
- const summary = { subjects: ['01', '02'] }
-
- it('returns no issue if there are no phenotype participants provided', () => {
- const issues = checkPhenotype([], [])
- assert.lengthOf(issues, 0)
- })
- it('returns no issues if all phenotype participants are included in the summary object', () => {
- const phenotypeParticipants = [{ list: ['01', '02'] }]
- const issues = checkPhenotype(phenotypeParticipants, summary)
- assert.lengthOf(issues, 0)
- })
- it('returns issue code 51 if phenotype participants are not the same as subjects', () => {
- const phenotypeParticipants = [
- { file: 'phenotype/test.tsv', list: ['01', '06'] },
- ]
- const issues = checkPhenotype(phenotypeParticipants, summary)
- assert.lengthOf(issues, 1)
- })
- it('returns issues for any mismatched participants.tsv files', () => {
- const phenotypeParticipants = [
- { file: 'phenotype/test_1.tsv', list: ['01', '06'] },
- { file: 'phenotype/test_2.tsv', list: ['01', '07'] },
- ]
- const issues = checkPhenotype(phenotypeParticipants, summary)
- assert.lengthOf(issues, 2)
- })
-})
diff --git a/legacy/bids-validator/validators/tsv/__tests__/validateTsvColumns.spec.js b/legacy/bids-validator/validators/tsv/__tests__/validateTsvColumns.spec.js
deleted file mode 100644
index c2fcfc72..00000000
--- a/legacy/bids-validator/validators/tsv/__tests__/validateTsvColumns.spec.js
+++ /dev/null
@@ -1,150 +0,0 @@
-import { assert } from 'chai'
-import validateTsvColumns, {
- validatePetBloodHeaders,
-} from '../validateTsvColumns'
-
-describe('validateTsvColumns', () => {
- describe('for participants.tsv', () => {
- const file = {
- name: 'participants.tsv',
- relativePath: '/participants.tsv',
- }
- const jsonContentsDict = {
- '/participants.json': { NewColumn: 'description' },
- }
-
- it('allows for tabular files with columns that are described in the bids spec', () => {
- const tsvs = [
- {
- contents: 'participant_id\n',
- file: file,
- },
- ]
- const issues = validateTsvColumns(tsvs, {}, [])
- assert.lengthOf(issues, 0)
- })
- it('checks for tabular files with custom columns not described in a data dictionary', () => {
- const tsvs = [
- {
- contents: 'header1\n',
- file: file,
- },
- ]
- const issues = validateTsvColumns(tsvs, {}, [])
- assert.lengthOf(issues, 1)
- assert.equal(issues[0].code, 82)
- })
- it('allows custom columns if they are described in a data dictionary', () => {
- const tsvs = [
- {
- contents: 'NewColumn\n',
- file: file,
- },
- ]
- const issues = validateTsvColumns(tsvs, jsonContentsDict, [])
- assert.lengthOf(issues, 0)
- })
- it('should trim the new line carriages created by windows tabular files,', () => {
- const tsvs = [
- {
- contents: 'participant_id\t\r\n',
- file: file,
- },
- {
- contents: 'participant_id\r\n',
- file: file,
- },
- ]
- const issues = validateTsvColumns(tsvs, {}, [])
- assert.lengthOf(issues, 0)
- })
- })
-
- describe('requires_tsv_non_custom_columns for validatePetBloodHeaders', () => {
- let tsv, mergedDict, schema
- beforeEach(() => {
- tsv = {
- contents: 'col_A\tcol_B\n',
- file: { name: 'test_blood.tsv' },
- }
- // associated json sidecar to tsv
- mergedDict = {
- PropA: true,
- PropB: true,
- PropC: '',
- }
- // minimal subset of bids-validator/validators/json/schemas/pet_blood.json
- schema = {
- properties: {
- PropA: {
- type: 'boolean',
- requires_tsv_non_custom_columns: ['col_A'],
- },
- PropB: {
- type: 'boolean',
- requires_tsv_non_custom_columns: ['col_A', 'col_B'],
- },
- PropC: { type: 'string' },
- },
- }
- })
- it('passes when required columns are present', () => {
- const issues = validatePetBloodHeaders(tsv, mergedDict, schema)
- assert.isEmpty(issues)
- })
- it('does not require columns when associated JSON properties are false', () => {
- tsv.contents = '\n'
- mergedDict.PropA = false
- mergedDict.PropB = false
- const issues = validatePetBloodHeaders(tsv, mergedDict, schema)
- assert.isEmpty(issues)
- })
- it('requires column when JSON property is true', () => {
- tsv.contents = 'col_A'
- const issues = validatePetBloodHeaders(tsv, mergedDict, schema)
- assert.lengthOf(issues, 1)
- assert.equal(issues[0].key, 'TSV_MISSING_REQUIRED_COLUMN')
- assert.equal(issues[0].file.name, tsv.file.name)
- assert.equal(issues[0].severity, 'error')
- assert.include(issues[0].evidence, 'missing header "col_B"')
- })
- it('produces errors for each missing column', () => {
- tsv.contents = '\n'
- const issues = validatePetBloodHeaders(tsv, mergedDict, schema)
- assert.lengthOf(issues, 2)
- })
- })
- it('should strip byte order marks from the start of TSV files', () => {
- const tsvs = [
- {
- contents: '\uFEFFparticipant_id\t\r\n',
- file: {
- name: 'participants.tsv',
- relativePath: './participants.tsv',
- },
- },
- ]
- const issues = validateTsvColumns(tsvs, {}, [])
- assert.lengthOf(issues, 0)
- })
- it('should generate error with empty columns', () => {
- const tsvs = [
- {
- contents: '\t',
- file: {
- name: 'test.tsv',
- relativePath: './test.tsv',
- },
- },
- {
- contents: '\t\t',
- file: {
- name: 'test.tsv',
- relativePath: './test.tsv',
- },
- },
- ]
- const issues = validateTsvColumns(tsvs, {}, [])
- assert.lengthOf(issues, 2)
- })
-})
diff --git a/legacy/bids-validator/validators/tsv/checkAcqTimeFormat.js b/legacy/bids-validator/validators/tsv/checkAcqTimeFormat.js
deleted file mode 100644
index e4df5d5a..00000000
--- a/legacy/bids-validator/validators/tsv/checkAcqTimeFormat.js
+++ /dev/null
@@ -1,32 +0,0 @@
-const Issue = require('../../utils').issues.Issue
-import { isValid as dateIsValid, parseISO } from 'date-fns'
-
-const checkAcqTimeFormat = function (rows, file, issues) {
- const rfc3339ish = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(.\d+)?Z?$/
- const header = rows[0]
- const acqTimeColumn = header.indexOf('acq_time')
- const testRows = rows.slice(1)
- testRows.map((line, i) => {
- const lineValues = line
- const acqTime = lineValues[acqTimeColumn]
- let isValid = dateIsValid(parseISO(acqTime)) && rfc3339ish.test(acqTime)
-
- if (acqTime === 'n/a') {
- isValid = true
- }
-
- if (acqTime && !isValid) {
- issues.push(
- new Issue({
- file: file,
- evidence: acqTime,
- line: i + 2,
- reason: 'acq_time is not in the format yyyy-MM-ddTHH:mm:ss[.000000]',
- code: 84,
- }),
- )
- }
- })
-}
-
-export default checkAcqTimeFormat
diff --git a/legacy/bids-validator/validators/tsv/checkAge89.js b/legacy/bids-validator/validators/tsv/checkAge89.js
deleted file mode 100644
index 7ab1254d..00000000
--- a/legacy/bids-validator/validators/tsv/checkAge89.js
+++ /dev/null
@@ -1,24 +0,0 @@
-const Issue = require('../../utils').issues.Issue
-
-export const checkAge89 = function (rows, file, issues) {
- const header = rows[0]
- const ageIdColumn = header.indexOf('age')
- for (let a = 0; a < rows.length; a++) {
- const line = rows[a]
- const line_values = line
- const age = line_values[ageIdColumn]
- if (age >= 89) {
- issues.push(
- new Issue({
- file: file,
- evidence: line.join(','),
- line: a + 1,
- reason: 'age of participant is above 89 ',
- code: 56,
- }),
- )
- }
- }
-}
-
-export default checkAge89
diff --git a/legacy/bids-validator/validators/tsv/checkHeaders.js b/legacy/bids-validator/validators/tsv/checkHeaders.js
deleted file mode 100644
index b2ecbbe7..00000000
--- a/legacy/bids-validator/validators/tsv/checkHeaders.js
+++ /dev/null
@@ -1,42 +0,0 @@
-import Issue from '../../utils/issues/issue'
-import { headersEvidence } from './tsv'
-
-const checkHeaders = (headers, file, issues) => {
- headers.map((header, i) => {
- if (i !== headers.findIndex((x) => x === header)) {
- issues.push(
- new Issue({
- file: file,
- evidence: headersEvidence(headers),
- line: 1,
- reason: 'Duplicate value at column #' + (i + 1),
- code: 231,
- }),
- )
- }
- if (/^\s*$/.test(header)) {
- issues.push(
- new Issue({
- file: file,
- evidence: headersEvidence(headers),
- line: 1,
- reason: 'Missing value at column # ' + (i + 1),
- code: 23,
- }),
- )
- }
- if (header === 'n/a') {
- issues.push(
- new Issue({
- file: file,
- evidence: headersEvidence(headers),
- line: 1,
- reason: 'n/a value in header at column #' + (i + 1),
- code: 232,
- }),
- )
- }
- })
-}
-
-export default checkHeaders
diff --git a/legacy/bids-validator/validators/tsv/checkMotionComponent.js b/legacy/bids-validator/validators/tsv/checkMotionComponent.js
deleted file mode 100644
index 07a967ae..00000000
--- a/legacy/bids-validator/validators/tsv/checkMotionComponent.js
+++ /dev/null
@@ -1,46 +0,0 @@
-const Issue = require('../../utils').issues.Issue
-
-const componentEnum = [
- 'x',
- 'y',
- 'z',
- 'quat_x',
- 'quat_y',
- 'quat_z',
- 'quat_w',
- 'n/a',
-]
-
-export const checkMotionComponent = function (rows, file, issues) {
- const header = rows[0]
- const componentIndex = header.indexOf('component')
- if (componentIndex != 1) {
- issues.push(
- new Issue({
- file: file,
- evidence: header.join(','),
- line: 0,
- reason: `Component found on column ${componentIndex + 1}.`,
- code: 235,
- }),
- )
- }
-
- for (let a = 1; a < rows.length; a++) {
- const line = rows[a]
- const component = line[componentIndex]
- if (!componentEnum.includes(component)) {
- issues.push(
- new Issue({
- file: file,
- evidence: line.join(','),
- line: a + 1,
- reason: `Found value ${component}`,
- code: 236,
- }),
- )
- }
- }
-}
-
-export default checkMotionComponent
diff --git a/legacy/bids-validator/validators/tsv/checkPhenotype.js b/legacy/bids-validator/validators/tsv/checkPhenotype.js
deleted file mode 100644
index 74a1fb10..00000000
--- a/legacy/bids-validator/validators/tsv/checkPhenotype.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import utils from '../../utils'
-const Issue = utils.issues.Issue
-
-const checkPhenotype = (phenotypeParticipants, summary) => {
- const issues = []
- for (let j = 0; j < phenotypeParticipants.length; j++) {
- const fileParticipants = phenotypeParticipants[j]
- const participantList = fileParticipants.list.sort()
- const summarySubjects = summary.subjects.sort()
- if (!utils.array.equals(participantList, summarySubjects)) {
- const evidence = constructMissingPhenotypeEvidence(
- participantList,
- summarySubjects,
- )
- issues.push(
- new Issue({
- code: 51,
- evidence: evidence,
- file: fileParticipants.file,
- }),
- )
- }
- }
- return issues
-}
-
-const constructMissingPhenotypeEvidence = (fileParticipants, subjects) => {
- const subjectsClone = subjects.slice()
- const diffs = utils.array.diff(fileParticipants, subjectsClone)
- const subjectsNotInSummarySubjects = diffs[0]
- const subjectsNotInFileParticipants = diffs[1]
- const evidenceOfMissingParticipants = subjectsNotInFileParticipants.length
- ? 'Subjects ' +
- subjectsNotInFileParticipants.join(', ') +
- ' were found in the folder structure but are missing in phenotype/ .tsv. '
- : ''
- const evidenceOfMissingSubjects = subjectsNotInSummarySubjects.length
- ? 'Subjects ' +
- subjectsNotInSummarySubjects.join(', ') +
- ' were found in phenotype/ .tsv file but are not present in the folder structure. '
- : ''
- const evidence = evidenceOfMissingParticipants + evidenceOfMissingSubjects
- return evidence
-}
-
-export default checkPhenotype
diff --git a/legacy/bids-validator/validators/tsv/checkStatusCol.js b/legacy/bids-validator/validators/tsv/checkStatusCol.js
deleted file mode 100644
index de9368ef..00000000
--- a/legacy/bids-validator/validators/tsv/checkStatusCol.js
+++ /dev/null
@@ -1,37 +0,0 @@
-const Issue = require('../../utils').issues.Issue
-
-/**
- * Checks status column in a electroencephalography _channels.tsv file to
- * ensure its values are only * 'good', 'bad', or 'n/a'
- * @param {string[]} rows - Each row of a tsv file to be checked.
- * @param {Object} file - File of rows being checked, used for error message if
- * problem is found.
- * @param {Object[]} issues - Array of issue objects to add to if problem is
- * found.
- * @returns {null} Results of this function are stored in issues.
- */
-const checkStatusCol = function (rows, file, issues) {
- const header = rows[0]
- const statusColumn = header.indexOf('status')
- if (statusColumn !== -1) {
- for (let i = 1; i < rows.length; i++) {
- const line = rows[i]
- const status = line[statusColumn]
- if (status !== 'good' && status !== 'bad' && status != 'n/a') {
- issues.push(
- new Issue({
- file: file,
- evidence: line.toString(),
- line: i + 1,
- reason:
- 'the status column values should either be good, bad, or n/a',
- code: 125,
- }),
- )
- }
- }
- }
- return
-}
-
-export default checkStatusCol
diff --git a/legacy/bids-validator/validators/tsv/checkTypeCol.js b/legacy/bids-validator/validators/tsv/checkTypeCol.js
deleted file mode 100644
index adac1bcd..00000000
--- a/legacy/bids-validator/validators/tsv/checkTypeCol.js
+++ /dev/null
@@ -1,122 +0,0 @@
-const Issue = require('../../utils').issues.Issue
-
-// allowable 'type' values from the BIDS specification
-const allowedMEEGTypes = [
- /* (i)EEG */
- 'EEG',
- 'ECOG',
- 'SEEG',
- 'DBS',
- 'PD',
- 'OTHER',
- /* physio */
- 'EOG',
- 'ECG',
- 'EMG',
- 'EYEGAZE',
- 'GSR',
- 'HEOG',
- 'MISC',
- 'PUPIL',
- 'RESP',
- 'TEMP',
- 'VEOG',
- 'PPG',
- /* system */
- 'AUDIO',
- 'REF',
- 'SYSCLOCK',
- 'TRIG',
- 'ADC',
- 'DAC',
- /* MEG */
- 'MEGMAG',
- 'MEGGRADAXIAL',
- 'MEGGRADPLANAR',
- 'MEGREFMAG',
- 'MEGREFGRADAXIAL',
- 'MEGREFGRADPLANAR',
- 'MEGOTHER',
- 'HLU',
- 'FITERR',
- /* MOTION */
- 'POS',
- 'ORNT',
- 'VEL',
- 'GYRO',
- 'ACCEL',
- 'ANGACCEL',
- 'JNTANG',
- 'MAGN',
- 'LATENCY',
- 'MISC',
- /* NIRS */
- 'NIRSCWAMPLITUDE',
- 'NIRSCWFLUORESCENSEAMPLITUDE',
- 'NIRSCWOPTICALDENSITY',
- 'NIRSCWHBO',
- 'NIRSCWHBR',
- 'NIRSCWMUA',
-]
-
-/**
- * Checks type column in an ephys _channels.tsv file to
- * ensure its values are only in an acceptable set of values and fires off a
- * warning to the user if the characters are not all upper-case.
- * @param {string[]} rows - Each row of a tsv file to be checked.
- * @param {Object} file - File of rows being checked, used for error message if
- * problem is found.
- * @param {Object[]} issues - Array of issue objects to add to if problem is
- * found.
- * @returns {null} Results of this function are stored in issues.
- */
-const checkTypeCol = function (rows, file, issues) {
- const header = rows[0]
- const typeColumn = header.indexOf('type')
- if (typeColumn !== -1) {
- for (let i = 1; i < rows.length; i++) {
- const line = rows[i]
- let type = line[typeColumn]
-
- if (type === 'n/a') {
- continue
- }
- // check type casing
- let isUpperCase = true
- if (type != type.toUpperCase()) {
- // The character is lowercase
- isUpperCase = false
- }
- // only deal with upper casing when validating for errors
- type = type.toUpperCase()
-
- // check if an error, or a warning is needed
- if (!allowedMEEGTypes.includes(type)) {
- issues.push(
- new Issue({
- file: file,
- evidence: line.join(', '),
- line: i + 1,
- reason:
- 'the type column values should only consist of values specified for *_channels.tsv file',
- code: 131,
- }),
- )
- } else if (!isUpperCase) {
- // not upper case, then warn user to use upper-casing
- issues.push(
- new Issue({
- file: file,
- evidence: line.join(', '),
- line: i + 1,
- reason: 'the type column values upper-cased',
- code: 130,
- }),
- )
- }
- }
- }
- return
-}
-
-export default checkTypeCol
diff --git a/legacy/bids-validator/validators/tsv/index.js b/legacy/bids-validator/validators/tsv/index.js
deleted file mode 100644
index 8135da0e..00000000
--- a/legacy/bids-validator/validators/tsv/index.js
+++ /dev/null
@@ -1,19 +0,0 @@
-/* eslint-disable no-unused-vars */
-import TSV from './tsv'
-
-import checkPhenotype from './checkPhenotype'
-import validateTsvColumns from './validateTsvColumns'
-import validate from './validate'
-import checkAge89 from './checkAge89'
-import checkAcqTimeFormat from './checkAcqTimeFormat'
-import validateContRec from './validateContRecordings'
-
-export default {
- TSV: TSV,
- checkPhenotype: checkPhenotype,
- validateTsvColumns: validateTsvColumns,
- validate: validate,
- checkAge89: checkAge89,
- checkAcqTimeFormat: checkAcqTimeFormat,
- validateContRec: validateContRec,
-}
diff --git a/legacy/bids-validator/validators/tsv/tsv.js b/legacy/bids-validator/validators/tsv/tsv.js
deleted file mode 100644
index fa48b83b..00000000
--- a/legacy/bids-validator/validators/tsv/tsv.js
+++ /dev/null
@@ -1,643 +0,0 @@
-import Issue from '../../utils/issues/issue'
-import checkAcqTimeFormat from './checkAcqTimeFormat'
-import checkAge89 from './checkAge89'
-import checkHeaders from './checkHeaders'
-import checkStatusCol from './checkStatusCol'
-import checkTypecol from './checkTypeCol'
-import parseTSV from './tsvParser'
-import checkMotionComponent from './checkMotionComponent'
-var path = require('path')
-
-/**
- * Format TSV headers for evidence string
- * @param {Array[string]} headers
- * @returns {string}
- */
-export const headersEvidence = (headers) =>
- `Column headers: ${headers.join(', ')}`
-
-/**
- * Format TSV filename for evidence string
- * @param {Array[string]} filename
- * @returns {string}
- */
-const filenameEvidence = (filename) => `Filename: ${filename}`
-
-/**
- * TSV
- *
- * Takes a TSV file as a string and a callback
- * as arguments. And callsback with any issues
- * it finds while validating against the BIDS
- * specification.
- */
-
-const TSV = (file, contents, fileList, callback) => {
- const issues = []
- const stimPaths = []
- if (contents.includes('\r') && !contents.includes('\n')) {
- issues.push(
- new Issue({
- file: file,
- evidence: contents,
- code: 70,
- }),
- )
- callback(issues, null)
- return
- }
-
- // TSV Parser -----------------------------------------------------------
- const { headers, rows } = parseTSV(contents)
-
- // generic checks -----------------------------------------------------------
- let columnMismatch = false
- let emptyCells = false
- let NACells = false
-
- // motion tsvs don't have headers
- if (!file.name.endsWith('_motion.tsv')) {
- checkHeaders(headers, file, issues)
- }
-
- for (let i = 1; i < rows.length; i++) {
- const values = rows[i]
- const evidence = `row ${i}: ${values.join('\t')}`
- if (values.length === 1 && /^\s*$/.test(values[0])) continue
- if (columnMismatch && emptyCells && NACells) break
- // check for different length rows
- if (values.length !== headers.length && !columnMismatch) {
- columnMismatch = true
- issues.push(
- new Issue({
- file: file,
- evidence,
- line: i + 1,
- code: 22,
- }),
- )
- }
- // iterate values
- for (let j = 0; j < values.length; j++) {
- const value = values[j]
- if (columnMismatch && emptyCells && NACells) break
- if (value === '' && !emptyCells) {
- emptyCells = true
- // empty cell should raise an error
- issues.push(
- new Issue({
- file: file,
- evidence,
- line: i + 1,
- reason: 'Missing value at column # ' + (j + 1),
- code: 23,
- }),
- )
- } else if (
- (value === 'NA' ||
- value === 'na' ||
- value === 'nan' ||
- value === 'NaN') &&
- !NACells
- ) {
- NACells = true
- // check if missing value is properly labeled as 'n/a'
- issues.push(
- new Issue({
- file: file,
- evidence,
- line: i + 1,
- reason: 'Missing value at column # ' + (j + 1),
- code: 24,
- }),
- )
- }
- }
- }
-
- // specific file checks -----------------------------------------------------
- const checkheader = function checkheader(
- headername,
- idx,
- file,
- missingCode,
- orderCode = null,
- ) {
- let code = missingCode
- if (headers.includes(headername) && orderCode) {
- code = orderCode
- }
-
- if (headers[idx] !== headername) {
- issues.push(
- new Issue({
- file: file,
- evidence: headersEvidence(headers),
- line: 1,
- character: rows[0].indexOf(headers[idx]),
- code: code,
- }),
- )
- }
- }
-
- // events.tsv
- if (file.name.endsWith('_events.tsv')) {
- if (headers.length == 0 || headers[0] !== 'onset') {
- issues.push(
- new Issue({
- file: file,
- evidence: headersEvidence(headers),
- line: 1,
- code: 20,
- }),
- )
- }
- if (headers.length < 2 || headers[1].trim() !== 'duration') {
- issues.push(
- new Issue({
- file: file,
- evidence: headersEvidence(headers),
- line: 1,
- code: 21,
- }),
- )
- }
-
- // create full dataset path list
- const pathList = []
- for (let f in fileList) {
- if (fileList.hasOwnProperty(f)) {
- pathList.push(fileList[f].relativePath)
- }
- }
-
- // check for stimuli file
- const stimFiles = []
- if (headers.indexOf('stim_file') > -1) {
- for (let k = 0; k < rows.length; k++) {
- const stimFile = rows[k][headers.indexOf('stim_file')]
- const stimPath = '/stimuli/' + stimFile
- if (
- stimFile &&
- stimFile !== 'n/a' &&
- stimFile !== 'stim_file' &&
- stimFiles.indexOf(stimFile) == -1
- ) {
- stimFiles.push(stimFile)
- stimPaths.push(stimPath)
- if (pathList.indexOf(stimPath) == -1) {
- issues.push(
- new Issue({
- file: file,
- evidence: stimFile,
- reason:
- 'A stimulus file (' +
- stimFile +
- ') was declared but not found in /stimuli.',
- line: k + 1,
- character: rows[k].indexOf(stimFile),
- code: 52,
- }),
- )
- }
- }
- }
- }
- }
-
- // participants.tsv
- let participants = null
- if (
- file.name === 'participants.tsv' ||
- file.relativePath.includes('phenotype/')
- ) {
- const participantIdColumn = headers.indexOf('participant_id')
-
- // if the participant_id column is missing, an error
- // will be raised
- if (participantIdColumn === -1) {
- issues.push(
- new Issue({
- file: file,
- evidence: headersEvidence(headers),
- line: 1,
- code: 48,
- }),
- )
- } else {
- // otherwise, the participants should comprise of
- // sub- and one subject per row
- participants = []
- for (let l = 1; l < rows.length; l++) {
- const row = rows[l]
- // skip empty rows
- if (!row || /^\s*$/.test(row)) {
- continue
- }
-
- // check if any incorrect patterns in participant_id column
- if (!row[participantIdColumn].startsWith('sub-')) {
- issues.push(
- new Issue({
- file: file,
- evidence: headersEvidence(headers),
- reason:
- 'Participant_id column should be named ' +
- 'as sub-.',
- line: l,
- code: 212,
- }),
- )
- }
-
- // obtain a list of the subject IDs in the participants.tsv file
- const participant = row[participantIdColumn].replace('sub-', '')
- if (participant == 'emptyroom') {
- continue
- }
- participants.push(participant)
- }
- }
- }
-
- // samples.tsv
- let samples = null
- if (file.name === 'samples.tsv') {
- const sampleIssues = []
- const sampleIdColumnValues = []
- const participantIdColumnValues = []
- const sampleIdColumn = headers.indexOf('sample_id')
- const participantIdColumn = headers.indexOf('participant_id')
- const sampleTypeColumn = headers.indexOf('sample_type')
-
- // if the sample_id column is missing, an error
- // will be raised
- if (sampleIdColumn === -1) {
- sampleIssues.push(
- new Issue({
- file: file,
- evidence: headersEvidence(headers),
- line: 1,
- code: 216,
- }),
- )
- }
- // if the participant_id column is missing, an error
- // will be raised
- if (participantIdColumn === -1) {
- sampleIssues.push(
- new Issue({
- file: file,
- evidence: headersEvidence(headers),
- line: 1,
- code: 217,
- }),
- )
- }
- // if the sample_type column is missing, an error
- // will be raised
- if (sampleTypeColumn === -1) {
- sampleIssues.push(
- new Issue({
- file: file,
- evidence: headersEvidence(headers),
- line: 1,
- code: 218,
- }),
- )
- }
- // Fold sampleIssues into main issue array, only needed it for this
- // conditional.
- issues.push(...sampleIssues)
- if (sampleIssues.length === 0) {
- // otherwise, the samples should comprise of
- // sample- and one sample per row
- samples = []
- for (let l = 1; l < rows.length; l++) {
- const row = rows[l]
- // skip empty rows
- if (!row || /^\s*$/.test(row)) {
- continue
- }
- sampleIdColumnValues.push(row[sampleIdColumn])
-
- // check if any incorrect patterns in sample_id column
- if (!row[sampleIdColumn].startsWith('sample-')) {
- issues.push(
- new Issue({
- file: file,
- evidence: row[sampleIdColumn],
- reason:
- 'sample_id column should be named ' + 'as sample-.',
- line: l,
- code: 215,
- }),
- )
- }
- }
- // The participants should comprise of
- // sub- and one subject per row
- participants = []
- for (let l = 1; l < rows.length; l++) {
- const row = rows[l]
- // skip empty rows
- if (!row || /^\s*$/.test(row)) {
- continue
- }
- participantIdColumnValues.push(row[participantIdColumn])
-
- // check if any incorrect patterns in participant_id column
- if (!row[participantIdColumn].startsWith('sub-')) {
- issues.push(
- new Issue({
- file: file,
- evidence: row[participantIdColumn],
- reason:
- 'Participant_id column should be named ' +
- 'as sub-.',
- line: l,
- code: 212,
- }),
- )
- }
-
- // obtain a list of the sample IDs in the samples.tsv file
- const sample = row[sampleIdColumn].replace('sample-', '')
- if (sample == 'emptyroom') {
- continue
- }
- samples.push(sample)
- }
-
- // check if a sample from same subject is described by one and only one row
- let samplePartIdsSet = new Set()
- for (let r = 0; r < rows.length - 1; r++) {
- let uniqueString = sampleIdColumnValues[r].concat(
- participantIdColumnValues[r],
- )
- // check if SampleId Have Duplicate
- if (samplePartIdsSet.has(uniqueString)) {
- issues.push(
- new Issue({
- file: file,
- evidence: sampleIdColumnValues,
- reason:
- 'Each sample from a same subject MUST be described by one and only one row.',
- line: 1,
- code: 220,
- }),
- )
- break
- } else samplePartIdsSet.add(uniqueString)
- }
- }
-
- if (sampleTypeColumn !== -1) {
- // check if any incorrect patterns in sample_type column
- const validSampleTypes = [
- 'cell line',
- 'in vitro differentiated cells',
- 'primary cell',
- 'cell-free sample',
- 'cloning host',
- 'tissue',
- 'whole organisms',
- 'organoid',
- 'technical sample',
- ]
- for (let c = 1; c < rows.length; c++) {
- const row = rows[c]
- if (!validSampleTypes.includes(row[sampleTypeColumn])) {
- issues.push(
- new Issue({
- file: file,
- evidence: row[sampleTypeColumn],
- reason: "sample_type can't be any value.",
- line: c + 1,
- code: 219,
- }),
- )
- }
- }
- }
- }
-
- if (
- file.relativePath.includes('/meg/') &&
- file.name.endsWith('_channels.tsv')
- ) {
- checkheader('name', 0, file, 71, 230)
- checkheader('type', 1, file, 71, 230)
- checkheader('units', 2, file, 71, 230)
- checkStatusCol(rows, file, issues)
- checkTypecol(rows, file, issues)
- }
-
- if (
- file.relativePath.includes('/eeg/') &&
- file.name.endsWith('_channels.tsv')
- ) {
- checkheader('name', 0, file, 71, 230)
- checkheader('type', 1, file, 71, 230)
- checkheader('units', 2, file, 71, 230)
- checkStatusCol(rows, file, issues)
- checkTypecol(rows, file, issues)
- }
-
- if (
- file.relativePath.includes('/ieeg/') &&
- file.name.endsWith('_channels.tsv')
- ) {
- checkheader('name', 0, file, 72, 229)
- checkheader('type', 1, file, 72, 229)
- checkheader('units', 2, file, 72, 229)
- checkheader('low_cutoff', 3, file, 72, 229)
- checkheader('high_cutoff', 4, file, 72, 229)
- checkStatusCol(rows, file, issues)
- checkTypecol(rows, file, issues)
- }
-
- if (
- file.relativePath.includes('/motion/') &&
- file.name.endsWith('_channels.tsv')
- ) {
- const required = ['component', 'name', 'tracked_point', 'type', 'units']
- const missing = required.filter((x) => !headers.includes(x))
- if (missing.length) {
- issues.push(
- new Issue({
- line: 1,
- file: file,
- code: 129,
- evidence: `Missing Columns: ${missing.join(', ')}`,
- }),
- )
- }
- checkStatusCol(rows, file, issues)
- checkTypecol(rows, file, issues)
- checkMotionComponent(rows, file, issues)
- }
- if (
- file.relativePath.includes('/nirs/') &&
- file.name.endsWith('_channels.tsv')
- ) {
- checkheader('name', 0, file, 234)
- checkheader('type', 1, file, 234)
- checkheader('source', 2, file, 234)
- checkheader('detector', 3, file, 234)
- checkheader('wavelength_nominal', 4, file, 234)
- checkheader('units', 5, file, 234)
- checkStatusCol(rows, file, issues)
- checkTypecol(rows, file, issues)
- }
-
- // electrodes.tsv
- if (
- file.relativePath.includes('/eeg/') &&
- file.name.endsWith('_electrodes.tsv')
- ) {
- checkheader('name', 0, file, 96)
- checkheader('x', 1, file, 96)
- checkheader('y', 2, file, 96)
- checkheader('z', 3, file, 96)
- }
-
- if (
- file.relativePath.includes('/ieeg/') &&
- file.name.endsWith('_electrodes.tsv')
- ) {
- checkheader('name', 0, file, 73)
- checkheader('x', 1, file, 73)
- checkheader('y', 2, file, 73)
- checkheader('z', 3, file, 73)
- checkheader('size', 4, file, 73)
- }
-
- if (
- file.relativePath.includes('/nirs/') &&
- file.name.endsWith('_optodes.tsv')
- ) {
- checkheader('name', 0, file, 233)
- checkheader('type', 1, file, 233)
- checkheader('x', 2, file, 233)
- checkheader('y', 3, file, 233)
- checkheader('z', 4, file, 233)
- }
-
- // blood.tsv
- if (file.relativePath.includes('/pet/') && file.name.endsWith('_blood.tsv')) {
- // Validate fields here
- checkheader('time', 0, file, 126)
- }
-
- // check for valid SI units
- /*
- * Commenting out call to validation until it is inline with spec:
- * https://github.com/bids-standard/bids-specification/pull/411
- if (headers.includes('units')) {
- const unitIndex = headers.indexOf('units')
- rows
- // discard headers
- .slice(1)
- // extract unit values
- .map((row, i) => ({
- unit: row[unitIndex],
- line: i + 2,
- }))
- .forEach(({ unit, line }) => {
- const { isValid, evidence } = utils.unit.validate(unit)
- if (!isValid)
- issues.push(
- new Issue({
- line,
- file,
- code: 124,
- evidence,
- }),
- )
- })
- }
- */
-
- // check participants.tsv for age 89+
- if (file.name === 'participants.tsv') {
- checkAge89(rows, file, issues)
- }
-
- if (file.name.endsWith('_scans.tsv')) {
- // get the directory path for the scans.tsv
- const scanDirPath = path.dirname(file.relativePath)
-
- // get the subject and session for this scans.tsv file
- const subject = file.name.split('_').slice(0, 1)
-
- // get the relative subject path
- const subRelativePath = '/' + subject
-
- // get list of file paths for this subject and session
- const pathList = []
- for (let file of Object.values(fileList)) {
- const fPath = file.relativePath
-
- // XXX: needs to be improved, since this currently allows arbitrary directory nesting
- // dataset file needs to be within the subject
- // and session directory
- if (fPath.startsWith(subRelativePath)) {
- if (fPath.includes('.ds/') || fPath.includes('_meg/')) {
- // CTF or BTI data
- const fDir = path.dirname(fPath)
- pathList.push(fDir)
- } else if (fPath.includes('_ieeg.mefd/')) {
- // MEF3 data
- const fDir = fPath.substring(0, fPath.indexOf('_ieeg.mefd/') + 10)
- if (!pathList.includes(fDir)) {
- pathList.push(fDir)
- }
- } else {
- // all other data kinds
- pathList.push(fPath)
- }
- }
- }
-
- // check _scans.tsv for column filename
- if (!(headers.indexOf('filename') > -1)) {
- issues.push(
- new Issue({
- line: 1,
- file: file,
- evidence: headersEvidence(headers),
- code: 68,
- }),
- )
- } else {
- // check scans filenames match pathList
- const filenameColumn = headers.indexOf('filename')
- for (let l = 1; l < rows.length; l++) {
- const row = rows[l]
- const scanRelativePath = row[filenameColumn]
- const scanFullPath = scanDirPath + '/' + scanRelativePath
-
- // check if scan matches full dataset path list
- if (!pathList.includes(scanFullPath)) {
- issues.push(
- new Issue({
- line: l,
- file: file,
- code: 129,
- evidence: filenameEvidence(scanFullPath),
- }),
- )
- }
- }
- }
-
- // if _scans.tsv has the acq_time header, check datetime format
- if (headers.indexOf('acq_time') > -1) {
- checkAcqTimeFormat(rows, file, issues)
- }
- }
- callback(issues, participants, stimPaths)
-}
-export default TSV
diff --git a/legacy/bids-validator/validators/tsv/tsvParser.js b/legacy/bids-validator/validators/tsv/tsvParser.js
deleted file mode 100644
index 06343a8c..00000000
--- a/legacy/bids-validator/validators/tsv/tsvParser.js
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * TSV
- * Module for parsing TSV (and eventually other formats)
- */
-
-const stripBOM = (str) => str.replace(/^\uFEFF/, '')
-const normalizeEOL = (str) => str.replace(/\r\n/g, '\n').replace(/\r/g, '\n')
-const isContentfulRow = (row) => row && !/^\s*$/.test(row)
-
-function parseTSV(contents) {
- const content = {
- headers: [],
- rows: [],
- }
- contents = stripBOM(contents)
- content.rows = normalizeEOL(contents)
- .split('\n')
- .filter(isContentfulRow)
- .map((str) => str.split('\t'))
- content.headers = content.rows.length ? content.rows[0] : []
- return content
-}
-
-export default parseTSV
diff --git a/legacy/bids-validator/validators/tsv/validate.js b/legacy/bids-validator/validators/tsv/validate.js
deleted file mode 100644
index dba18e7a..00000000
--- a/legacy/bids-validator/validators/tsv/validate.js
+++ /dev/null
@@ -1,69 +0,0 @@
-import utils from '../../utils'
-import tsv from './tsv'
-
-const validate = (
- files,
- fileList,
- tsvs,
- events,
- participants,
- phenotypeParticipants,
- stimuli,
- annexed,
- dir,
-) => {
- let issues = []
- let participantsTsvContent = ''
- // validate tsv
- const tsvPromises = files.map(function (file) {
- return utils.limit(() =>
- utils.files.readFile(file, annexed, dir).then((contents) => {
- // Push TSV to list for custom column verification after all data dictionaries have been read
- tsvs.push({
- file: file,
- contents: contents,
- })
- if (file.name.endsWith('_events.tsv')) {
- events.push({
- file: file,
- path: file.relativePath,
- contents: contents,
- })
- }
- tsv(
- file,
- contents,
- fileList,
- function (tsvIssues, participantList, stimFiles) {
- if (participantList) {
- if (file.name.endsWith('participants.tsv')) {
- participants = {
- list: participantList,
- file: file,
- }
- // save content for metadata extraction
- participantsTsvContent = contents
- } else if (file.relativePath.includes('phenotype/')) {
- phenotypeParticipants.push({
- list: participantList,
- file: file,
- })
- }
- }
- if (stimFiles && stimFiles.length) {
- // add unique new events to the stimuli.events array
- stimuli.events = [...new Set([...stimuli.events, ...stimFiles])]
- }
- issues = issues.concat(tsvIssues)
- },
- )
- }),
- )
- })
- return Promise.all(tsvPromises).then(() => ({
- tsvIssues: issues,
- participantsTsvContent,
- }))
-}
-
-export default validate
diff --git a/legacy/bids-validator/validators/tsv/validateContRecordings.js b/legacy/bids-validator/validators/tsv/validateContRecordings.js
deleted file mode 100644
index 1b8725ea..00000000
--- a/legacy/bids-validator/validators/tsv/validateContRecordings.js
+++ /dev/null
@@ -1,40 +0,0 @@
-import utils from '../../utils'
-const Issue = utils.issues.Issue
-
-/**
- * Ensures that all continuous recording files have a corresponding json
- * file. The required fields are verified during json validation.
- * Further validation could be done here by extracting the tsv and
- * checking that the column count matches the length of the Names array
- * from the metadata.
- *
- * @param {Object[]} contRecordings - Array of continuous recording file
- * objects.
- * @param {Object[]} jsonContentsDict - content of all json files found.
- * @returns {Object[]} Array of issues generated during validation.
- */
-const validateContRec = function (contRecordings, jsonContentsDict) {
- const issues = []
- contRecordings.map((contRecording) => {
- // Get merged data dictionary for this file
- const potentialSidecars = utils.files.potentialLocations(
- contRecording.relativePath.replace('.tsv.gz', '.json'),
- )
-
- const mergedDictionary = utils.files.generateMergedSidecarDict(
- potentialSidecars,
- jsonContentsDict,
- )
- if (Object.values(mergedDictionary).length === 0) {
- issues.push(
- new Issue({
- file: contRecording,
- code: 170,
- }),
- )
- }
- })
- return issues
-}
-
-export default validateContRec
diff --git a/legacy/bids-validator/validators/tsv/validateTsvColumns.js b/legacy/bids-validator/validators/tsv/validateTsvColumns.js
deleted file mode 100644
index 9d511479..00000000
--- a/legacy/bids-validator/validators/tsv/validateTsvColumns.js
+++ /dev/null
@@ -1,419 +0,0 @@
-import utils from '../../utils'
-const Issue = utils.issues.Issue
-import nonCustomColumns from '../../bids_validator/tsv/non_custom_columns.json'
-
-/**
- * @param {Object} file - BIDS file object
- * Accepts file object and returns a type based on file path
- */
-export const getTsvType = function (file) {
- let tsvType = 'misc'
- if (file.relativePath.includes('phenotype/')) {
- tsvType = 'phenotype'
- } else if (file.name === 'participants.tsv') {
- tsvType = 'participants'
- } else if (
- file.name.endsWith('_channels.tsv') ||
- file.name.endsWith('_electrodes.tsv') ||
- file.name.endsWith('_events.tsv') ||
- file.name.endsWith('_scans.tsv') ||
- file.name.endsWith('_sessions.tsv') ||
- file.name.endsWith('_aslcontext.tsv') ||
- file.name.endsWith('_blood.tsv') ||
- file.name.endsWith('_optodes.tsv')
- ) {
- const split = file.name.split('_')
- tsvType = split[split.length - 1].replace('.tsv', '')
- }
- return tsvType
-}
-
-const getHeaders = (tsvContents) =>
- tsvContents
- .replace(/^\uefff/, '')
- .split('\n')[0]
- .trim()
- .split('\t')
-
-/**
- *
- * @param {array} headers -Array of column names
- * @param {string} type - Type from getTsvType
- * Checks TSV column names to determine if they're core or custom
- * Returns array of custom column names
- */
-const getCustomColumns = function (headers, type) {
- const customCols = []
- // Iterate column headers
- for (let col of headers) {
- // If it's a custom column
- if (!nonCustomColumns[type].includes(col)) {
- customCols.push(col)
- }
- }
- return customCols
-}
-const commaSeparatedStringOf = (items) =>
- items.map((item) => `"${item}"`).join(', ')
-
-/**
- * Loads relevant JSON schema for given tsv modalities.
- * Currently only required for pet_blood.
- * @param {*} tsvs
- * @returns
- */
-const loadSchemas = (tsvs) => {
- const schemas = {}
- const getSchemaByType = {
- blood: () => require('../json/schemas/pet_blood.json'),
- }
- const types = new Set(tsvs.map((tsv) => getTsvType(tsv.file)))
- types.forEach((type) => {
- if (getSchemaByType.hasOwnProperty(type)) {
- schemas[type] = getSchemaByType[type]()
- }
- })
- return schemas
-}
-
-/**
- *
- * @param {array} tsvs - Array of objects containing TSV file objects and contents
- * @param {Object} jsonContentsDict
- */
-const validateTsvColumns = function (tsvs, jsonContentsDict, headers) {
- const tsvIssues = []
- const schemas = loadSchemas(tsvs)
-
- tsvs.map((tsv) => {
- const tsvType = getTsvType(tsv.file)
- const customColumns = getCustomColumns(getHeaders(tsv.contents), tsvType)
- const isPetBlood = tsvType === 'blood'
- if (customColumns.length > 0 || isPetBlood) {
- // Get merged data dictionary for this file
- const potentialSidecars = utils.files.potentialLocations(
- tsv.file.relativePath.replace('.tsv', '.json'),
- )
- const mergedDict = utils.files.generateMergedSidecarDict(
- potentialSidecars,
- jsonContentsDict,
- )
- const keys = Object.keys(mergedDict)
- // Gather undefined columns for the file
- const undefinedCols = customColumns.filter((col) => !keys.includes(col))
- // Create an issue for all undefined columns in this file
- undefinedCols.length &&
- tsvIssues.push(
- customColumnIssue(
- tsv.file,
- undefinedCols.join(', '),
- potentialSidecars,
- ),
- )
-
- if (isPetBlood) {
- // Check PET tsv headers required by json sidecar
- const petBloodHeaderIssues = validatePetBloodHeaders(
- tsv,
- mergedDict,
- schemas['blood'],
- )
- tsvIssues.push(...petBloodHeaderIssues)
- }
- }
- })
- // Return array of all instances of undescribed custom columns
-
- // Manage custom instances made from asl_context
- const aslTsvIssues = validateASL(tsvs, jsonContentsDict, headers)
- tsvIssues.push(...aslTsvIssues)
-
- return tsvIssues
-}
-
-/**
- * Validates that tsv columns required by
- * @param {*} tsv
- * @param {*} mergedDict
- * @param {*} schema
- * @returns
- */
-export const validatePetBloodHeaders = (tsv, mergedDict, schema) => {
- const tsvIssues = []
- const headers = getHeaders(tsv.contents)
-
- // Collect required headers and the JSON sidecar properties that require them.
- const requiredHeaders = {}
- Object.entries(schema.properties).forEach(([property, subSchema]) => {
- if (
- subSchema.hasOwnProperty('requires_tsv_non_custom_columns') &&
- mergedDict[property] === true
- ) {
- subSchema.requires_tsv_non_custom_columns.forEach((header) => {
- if (header in requiredHeaders) {
- requiredHeaders[header].push(property)
- } else {
- requiredHeaders[header] = [property]
- }
- })
- }
- })
- Object.entries(requiredHeaders).forEach(([requiredHeader, requiredBy]) => {
- if (!headers.includes(requiredHeader)) {
- tsvIssues.push(
- new Issue({
- code: 211,
- file: tsv.file,
- evidence: `${tsv.file.name} has headers: ${commaSeparatedStringOf(
- headers,
- )}; missing header "${requiredHeader}", which is required when any of the properties (${commaSeparatedStringOf(
- requiredBy,
- )}) are true in the associated JSON sidecar.`,
- }),
- )
- }
- })
- return tsvIssues
-}
-
-const validateASL = (tsvs, jsonContentsDict, headers) => {
- const tsvIssues = []
- // Manage custom instances from asl_context tsv files
- // get all headers associated with asl_context data
- tsvs.map((tsv) => {
- const aslHeaders = headers.filter((header) => {
- const file = header[0]
- return file.relativePath.includes('_asl')
- })
-
- aslHeaders.forEach((aslHeader) => {
- // extract the fourth element of 'dim' field of header - this is the
- // number of volumes that were obtained during scan (numVols)
- const file = aslHeader[0]
- const header = aslHeader[1]
- const dim = header.dim
- const numVols = dim[4]
-
- // get the _asl_context.tsv associated with this asl scan
- const potentialAslContext = utils.files.potentialLocations(
- file.relativePath
- .replace('.gz', '')
- .replace('asl.nii', 'aslcontext.tsv'),
- )
- const associatedAslContext = potentialAslContext.indexOf(
- tsv.file.relativePath,
- )
-
- if (associatedAslContext > -1) {
- const rows = tsv.contents
- .replace(/[\r]+/g, '')
- .split('\n')
- .filter((row) => !(!row || /^\s*$/.test(row)))
-
- const m0scan_filters = ['m0scan']
- const filtered_m0scan_rows = rows.filter((row) =>
- m0scan_filters.includes(row),
- )
-
- const asl_filters = [
- 'cbf',
- 'm0scan',
- 'label',
- 'control',
- 'deltam',
- 'volume_type',
- ]
- const filtered_tsv_rows = rows.filter((row) =>
- asl_filters.includes(row),
- )
- if (rows.length != filtered_tsv_rows.length) {
- tsvIssues.push(
- new Issue({
- code: 176,
- file: file,
- }),
- )
- }
-
- if (rows.length - 1 != numVols) {
- tsvIssues.push(
- new Issue({
- code: 165,
- file: file,
- }),
- )
- }
-
- // get the json sidecar dictionary associated with that nifti scan
- var potentialSidecars = utils.files.potentialLocations(
- tsv.file.relativePath.replace('aslcontext.tsv', 'asl.json'),
- )
-
- // get merged data dictionary for this file
- const mergedDict = utils.files.generateMergedSidecarDict(
- potentialSidecars,
- jsonContentsDict,
- )
-
- // check M0Type and tsv list for m0scan in case of an Included M0Type
- if (
- mergedDict.hasOwnProperty('M0Type') &&
- mergedDict['M0Type'] === 'Included' &&
- filtered_m0scan_rows.length < 1
- ) {
- tsvIssues.push(
- new Issue({
- file: file,
- code: 154,
- reason:
- "''M0Type' is set to 'Included' however the tsv file does not contain any m0scan volume.",
- }),
- )
- }
- // check M0Type and tsv list for m0scan in case of an Absent M0Type
- if (
- mergedDict.hasOwnProperty('M0Type') &&
- mergedDict['M0Type'] === 'Absent' &&
- filtered_m0scan_rows.length >= 1
- ) {
- tsvIssues.push(
- new Issue({
- file: file,
- code: 199,
- reason:
- "''M0Type' is set to 'Absent' however the tsv file contains an m0scan volume. This should be avoided.",
- }),
- )
- }
-
- // check Flip Angle requirements with LookLocker acquisitions
- if (
- mergedDict.hasOwnProperty('FlipAngle') &&
- mergedDict['FlipAngle'].constructor === Array
- ) {
- let FlipAngle = mergedDict['FlipAngle']
- const FlipAngleLength = FlipAngle.length
- if (FlipAngleLength !== rows.length - 1) {
- tsvIssues.push(
- new Issue({
- file: file,
- code: 172,
- reason:
- "''FlipAngle' for this file does not match the TSV length. Please make sure that the size of the FlipAngle array in the json corresponds to the number of volume listed in the tsv file.",
- }),
- )
- }
- }
- // check Labelling Duration matching with TSV length only for PCASL or CASL
- if (
- mergedDict.hasOwnProperty('LabelingDuration') &&
- mergedDict['LabelingDuration'].constructor === Array &&
- mergedDict.hasOwnProperty('ArterialSpinLabelingType') &&
- (mergedDict['ArterialSpinLabelingType'] == 'CASL' ||
- mergedDict['ArterialSpinLabelingType'] == 'PCASL')
- ) {
- let LabelingDuration = mergedDict['LabelingDuration']
- const LabelingDurationLength = LabelingDuration.length
- if (LabelingDurationLength !== rows.length - 1) {
- tsvIssues.push(
- new Issue({
- file: file,
- code: 175,
- reason:
- "''LabelingDuration' for this file does not match the TSV length. Please be sure that the size of the LabelingDuration array in the json corresponds to the number of volume listed in the tsv file.",
- }),
- )
- }
- }
-
- // check VolumeTiming with TSV length
- if (
- mergedDict.hasOwnProperty('RepetitionTimePreparation') &&
- mergedDict['RepetitionTimePreparation'].constructor === Array
- ) {
- let RepetitionTimePreparation =
- mergedDict['RepetitionTimePreparation']
- const RepetitionTimePreparationLength =
- RepetitionTimePreparation.length
- if (RepetitionTimePreparationLength !== rows.length - 1) {
- tsvIssues.push(
- new Issue({
- file: file,
- code: 177,
- reason:
- "''RepetitionTimePreparation' for this file do not match the TSV length. Please be sure that the size of the RepetitionTimePreparation array in the json corresponds to the number of volume listed in the tsv file.",
- }),
- )
- }
- }
-
- // check Post Labelling Delays matching with TSV length
- if (
- mergedDict.hasOwnProperty('PostLabelingDelay') &&
- mergedDict['PostLabelingDelay'].constructor === Array
- ) {
- let PostLabelingDelay = mergedDict['PostLabelingDelay']
- const PostLabelingDelayLength = PostLabelingDelay.length
- if (PostLabelingDelayLength !== rows.length - 1) {
- tsvIssues.push(
- new Issue({
- file: file,
- code: 174,
- reason:
- "''PostLabelingDelay' for this file do not match the TSV length. Please be sure that the size of the PostLabelingDelay array in the json corresponds to the number of volume listed in the tsv file.",
- }),
- )
- }
- }
-
- if (mergedDict.hasOwnProperty('TotalAcquiredVolumes')) {
- let TotalAcquiredVolumes = mergedDict['TotalAcquiredVolumes']
- const TotalAcquiredVolumesLength = TotalAcquiredVolumes.length
- if (TotalAcquiredVolumesLength !== rows.length - 1) {
- tsvIssues.push(
- new Issue({
- file: file,
- code: 181,
- reason:
- "''TotalAcquiredVolumes' for this file do not match the TSV length. Please be sure that the size of the TotalAcquiredVolumes array in the json corresponds to the number of volume listed in the tsv file.",
- }),
- )
- }
- }
-
- if (
- mergedDict.hasOwnProperty('EchoTime') &&
- mergedDict['EchoTime'].constructor === Array
- ) {
- let EchoTime = mergedDict['EchoTime']
- const EchoTimeLength = EchoTime.length
- if (EchoTimeLength !== rows.length - 1) {
- tsvIssues.push(
- new Issue({
- file: file,
- code: 196,
- reason:
- "''EchoTime' for this file do not match the TSV length. Please be sure that the size of the EchoTime array in the json corresponds to the number of volume listed in the tsv file.",
- }),
- )
- }
- }
- }
- })
- })
- return tsvIssues
-}
-
-const customColumnIssue = function (file, col, locations) {
- return new Issue({
- code: 82,
- file: file,
- evidence:
- 'Columns: ' +
- col +
- ' not defined, please define in: ' +
- locations.toString().replace(',', ', '),
- })
-}
-
-export default validateTsvColumns
diff --git a/legacy/lerna.json b/legacy/lerna.json
deleted file mode 100644
index 4ae55d50..00000000
--- a/legacy/lerna.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "packages": ["bids-validator", "bids-validator-web"],
- "version": "1.14.15-dev.0"
-}
diff --git a/legacy/package-lock.json b/legacy/package-lock.json
deleted file mode 100644
index 11c68edd..00000000
--- a/legacy/package-lock.json
+++ /dev/null
@@ -1,33407 +0,0 @@
-{
- "name": "bids-validator-monorepo",
- "lockfileVersion": 2,
- "requires": true,
- "packages": {
- "": {
- "name": "bids-validator-monorepo",
- "workspaces": [
- "bids-validator",
- "bids-validator-web"
- ],
- "devDependencies": {
- "@babel/core": "^7.22.10",
- "@babel/preset-env": "^7.22.10",
- "codecov": "^3.8.1",
- "eslint": "^8.57.0",
- "eslint-config-prettier": "^9.1.0",
- "eslint-plugin-prettier": "^5.2.1",
- "husky": "^9.1.6",
- "jest": "^29.7.0",
- "jest-environment-jsdom": "^29.7.0",
- "jest-environment-node": "^29.7.0",
- "lerna": "^8.1.8",
- "prettier": "^3.3.3",
- "pretty-quick": "^4.0.0"
- }
- },
- "bids-validator": {
- "version": "1.14.15-dev.0",
- "license": "MIT",
- "dependencies": {
- "@aws-sdk/client-s3": "^3.637.0",
- "ajv": "^6.5.2",
- "bytes": "^3.1.2",
- "colors": "^1.4.0",
- "cross-fetch": "^4.0.0",
- "date-fns": "^4.1.0",
- "events": "^3.3.0",
- "exifreader": "^4.23.7",
- "hed-validator": "^3.15.4",
- "ignore": "^6.0.2",
- "is-utf8": "^0.2.1",
- "jest": "^29.7.0",
- "jshint": "^2.13.6",
- "lerna": "^8.1.8",
- "lodash": "^4.17.21",
- "minimatch": "3.0.5",
- "next": "14.2.13",
- "nifti-js": "^1.0.1",
- "p-limit": "^2.1.0",
- "pako": "^1.0.6",
- "path": "^0.12.7",
- "pluralize": "^8.0.0",
- "semver": "^7.6.3",
- "stream-browserify": "^3.0.0",
- "table": "^6.8.2",
- "util": "^0.12.5",
- "xml2js": "^0.6.2",
- "yaml": "^2.3.1",
- "yargs": "^17.7.2"
- },
- "bin": {
- "bids-validator": "bin/bids-validator"
- },
- "devDependencies": {
- "adm-zip": "",
- "chai": "",
- "esbuild": "^0.24.0",
- "esbuild-plugin-globals": "^0.2.0",
- "esbuild-runner": "^2.2.2",
- "eslint": "^8.57.0",
- "eslint-config-prettier": "^9.1.0",
- "eslint-plugin-prettier": "^5.2.1",
- "husky": "^9.1.6",
- "lockfile": "^1.0.4",
- "sync-request": "6.1.0"
- },
- "engines": {
- "node": ">=18.0.0"
- }
- },
- "bids-validator-web": {
- "version": "1.14.15-dev.0",
- "license": "MIT",
- "dependencies": {
- "@babel/runtime": "^7.22.10",
- "bootstrap": "^5.3.3",
- "eslint-config-next": "^14.2.13",
- "next": "^14.0.0",
- "pluralize": "^8.0.0",
- "react": "^18.3.1",
- "react-bootstrap": "^2.10.5",
- "react-dom": "^18.3.1",
- "sass": "^1.79.4"
- },
- "devDependencies": {
- "@next/eslint-plugin-next": "^14.2.13"
- }
- },
- "bids-validator/node_modules/date-fns": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.1.0.tgz",
- "integrity": "sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg==",
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/kossnocorp"
- }
- },
- "bids-validator/node_modules/ignore": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-6.0.2.tgz",
- "integrity": "sha512-InwqeHHN2XpumIkMvpl/DCJVrAHgCsG5+cn1XlnLWGwtZBm8QJfSusItfrwx81CTp5agNZqpKU2J/ccC5nGT4A==",
- "engines": {
- "node": ">= 4"
- }
- },
- "bids-validator/node_modules/yaml": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.1.tgz",
- "integrity": "sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==",
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@aashutoshrathi/word-wrap": {
- "version": "1.2.6",
- "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz",
- "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/@ampproject/remapping": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz",
- "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==",
- "dependencies": {
- "@jridgewell/gen-mapping": "^0.3.0",
- "@jridgewell/trace-mapping": "^0.3.9"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/@aws-crypto/crc32": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-5.2.0.tgz",
- "integrity": "sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg==",
- "dependencies": {
- "@aws-crypto/util": "^5.2.0",
- "@aws-sdk/types": "^3.222.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-crypto/crc32c": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-5.2.0.tgz",
- "integrity": "sha512-+iWb8qaHLYKrNvGRbiYRHSdKRWhto5XlZUEBwDjYNf+ly5SVYG6zEoYIdxvf5R3zyeP16w4PLBn3rH1xc74Rag==",
- "dependencies": {
- "@aws-crypto/util": "^5.2.0",
- "@aws-sdk/types": "^3.222.0",
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@aws-crypto/sha1-browser": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-5.2.0.tgz",
- "integrity": "sha512-OH6lveCFfcDjX4dbAvCFSYUjJZjDr/3XJ3xHtjn3Oj5b9RjojQo8npoLeA/bNwkOkrSQ0wgrHzXk4tDRxGKJeg==",
- "dependencies": {
- "@aws-crypto/supports-web-crypto": "^5.2.0",
- "@aws-crypto/util": "^5.2.0",
- "@aws-sdk/types": "^3.222.0",
- "@aws-sdk/util-locate-window": "^3.0.0",
- "@smithy/util-utf8": "^2.0.0",
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/is-array-buffer": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
- "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=14.0.0"
- }
- },
- "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-buffer-from": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
- "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
- "dependencies": {
- "@smithy/is-array-buffer": "^2.2.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=14.0.0"
- }
- },
- "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-utf8": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
- "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
- "dependencies": {
- "@smithy/util-buffer-from": "^2.2.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=14.0.0"
- }
- },
- "node_modules/@aws-crypto/sha256-browser": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz",
- "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==",
- "dependencies": {
- "@aws-crypto/sha256-js": "^5.2.0",
- "@aws-crypto/supports-web-crypto": "^5.2.0",
- "@aws-crypto/util": "^5.2.0",
- "@aws-sdk/types": "^3.222.0",
- "@aws-sdk/util-locate-window": "^3.0.0",
- "@smithy/util-utf8": "^2.0.0",
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
- "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=14.0.0"
- }
- },
- "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
- "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
- "dependencies": {
- "@smithy/is-array-buffer": "^2.2.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=14.0.0"
- }
- },
- "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
- "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
- "dependencies": {
- "@smithy/util-buffer-from": "^2.2.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=14.0.0"
- }
- },
- "node_modules/@aws-crypto/sha256-js": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz",
- "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==",
- "dependencies": {
- "@aws-crypto/util": "^5.2.0",
- "@aws-sdk/types": "^3.222.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-crypto/supports-web-crypto": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz",
- "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==",
- "dependencies": {
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@aws-crypto/util": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz",
- "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==",
- "dependencies": {
- "@aws-sdk/types": "^3.222.0",
- "@smithy/util-utf8": "^2.0.0",
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
- "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=14.0.0"
- }
- },
- "node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
- "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
- "dependencies": {
- "@smithy/is-array-buffer": "^2.2.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=14.0.0"
- }
- },
- "node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
- "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
- "dependencies": {
- "@smithy/util-buffer-from": "^2.2.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=14.0.0"
- }
- },
- "node_modules/@aws-sdk/client-s3": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.637.0.tgz",
- "integrity": "sha512-y6UC94fsMvhKbf0dzfnjVP1HePeGjplfcYfilZU1COIJLyTkMcUv4XcT4I407CGIrvgEafONHkiC09ygqUauNA==",
- "dependencies": {
- "@aws-crypto/sha1-browser": "5.2.0",
- "@aws-crypto/sha256-browser": "5.2.0",
- "@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/client-sso-oidc": "3.637.0",
- "@aws-sdk/client-sts": "3.637.0",
- "@aws-sdk/core": "3.635.0",
- "@aws-sdk/credential-provider-node": "3.637.0",
- "@aws-sdk/middleware-bucket-endpoint": "3.620.0",
- "@aws-sdk/middleware-expect-continue": "3.620.0",
- "@aws-sdk/middleware-flexible-checksums": "3.620.0",
- "@aws-sdk/middleware-host-header": "3.620.0",
- "@aws-sdk/middleware-location-constraint": "3.609.0",
- "@aws-sdk/middleware-logger": "3.609.0",
- "@aws-sdk/middleware-recursion-detection": "3.620.0",
- "@aws-sdk/middleware-sdk-s3": "3.635.0",
- "@aws-sdk/middleware-ssec": "3.609.0",
- "@aws-sdk/middleware-user-agent": "3.637.0",
- "@aws-sdk/region-config-resolver": "3.614.0",
- "@aws-sdk/signature-v4-multi-region": "3.635.0",
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-endpoints": "3.637.0",
- "@aws-sdk/util-user-agent-browser": "3.609.0",
- "@aws-sdk/util-user-agent-node": "3.614.0",
- "@aws-sdk/xml-builder": "3.609.0",
- "@smithy/config-resolver": "^3.0.5",
- "@smithy/core": "^2.4.0",
- "@smithy/eventstream-serde-browser": "^3.0.6",
- "@smithy/eventstream-serde-config-resolver": "^3.0.3",
- "@smithy/eventstream-serde-node": "^3.0.5",
- "@smithy/fetch-http-handler": "^3.2.4",
- "@smithy/hash-blob-browser": "^3.1.2",
- "@smithy/hash-node": "^3.0.3",
- "@smithy/hash-stream-node": "^3.1.2",
- "@smithy/invalid-dependency": "^3.0.3",
- "@smithy/md5-js": "^3.0.3",
- "@smithy/middleware-content-length": "^3.0.5",
- "@smithy/middleware-endpoint": "^3.1.0",
- "@smithy/middleware-retry": "^3.0.15",
- "@smithy/middleware-serde": "^3.0.3",
- "@smithy/middleware-stack": "^3.0.3",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/node-http-handler": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/url-parser": "^3.0.3",
- "@smithy/util-base64": "^3.0.0",
- "@smithy/util-body-length-browser": "^3.0.0",
- "@smithy/util-body-length-node": "^3.0.0",
- "@smithy/util-defaults-mode-browser": "^3.0.15",
- "@smithy/util-defaults-mode-node": "^3.0.15",
- "@smithy/util-endpoints": "^2.0.5",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-retry": "^3.0.3",
- "@smithy/util-stream": "^3.1.3",
- "@smithy/util-utf8": "^3.0.0",
- "@smithy/util-waiter": "^3.1.2",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/client-sso": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.637.0.tgz",
- "integrity": "sha512-+KjLvgX5yJYROWo3TQuwBJlHCY0zz9PsLuEolmXQn0BVK1L/m9GteZHtd+rEdAoDGBpE0Xqjy1oz5+SmtsaRUw==",
- "dependencies": {
- "@aws-crypto/sha256-browser": "5.2.0",
- "@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/core": "3.635.0",
- "@aws-sdk/middleware-host-header": "3.620.0",
- "@aws-sdk/middleware-logger": "3.609.0",
- "@aws-sdk/middleware-recursion-detection": "3.620.0",
- "@aws-sdk/middleware-user-agent": "3.637.0",
- "@aws-sdk/region-config-resolver": "3.614.0",
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-endpoints": "3.637.0",
- "@aws-sdk/util-user-agent-browser": "3.609.0",
- "@aws-sdk/util-user-agent-node": "3.614.0",
- "@smithy/config-resolver": "^3.0.5",
- "@smithy/core": "^2.4.0",
- "@smithy/fetch-http-handler": "^3.2.4",
- "@smithy/hash-node": "^3.0.3",
- "@smithy/invalid-dependency": "^3.0.3",
- "@smithy/middleware-content-length": "^3.0.5",
- "@smithy/middleware-endpoint": "^3.1.0",
- "@smithy/middleware-retry": "^3.0.15",
- "@smithy/middleware-serde": "^3.0.3",
- "@smithy/middleware-stack": "^3.0.3",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/node-http-handler": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/url-parser": "^3.0.3",
- "@smithy/util-base64": "^3.0.0",
- "@smithy/util-body-length-browser": "^3.0.0",
- "@smithy/util-body-length-node": "^3.0.0",
- "@smithy/util-defaults-mode-browser": "^3.0.15",
- "@smithy/util-defaults-mode-node": "^3.0.15",
- "@smithy/util-endpoints": "^2.0.5",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-retry": "^3.0.3",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/client-sso-oidc": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.637.0.tgz",
- "integrity": "sha512-27bHALN6Qb6m6KZmPvRieJ/QRlj1lyac/GT2Rn5kJpre8Mpp+yxrtvp3h9PjNBty4lCeFEENfY4dGNSozBuBcw==",
- "dependencies": {
- "@aws-crypto/sha256-browser": "5.2.0",
- "@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/core": "3.635.0",
- "@aws-sdk/credential-provider-node": "3.637.0",
- "@aws-sdk/middleware-host-header": "3.620.0",
- "@aws-sdk/middleware-logger": "3.609.0",
- "@aws-sdk/middleware-recursion-detection": "3.620.0",
- "@aws-sdk/middleware-user-agent": "3.637.0",
- "@aws-sdk/region-config-resolver": "3.614.0",
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-endpoints": "3.637.0",
- "@aws-sdk/util-user-agent-browser": "3.609.0",
- "@aws-sdk/util-user-agent-node": "3.614.0",
- "@smithy/config-resolver": "^3.0.5",
- "@smithy/core": "^2.4.0",
- "@smithy/fetch-http-handler": "^3.2.4",
- "@smithy/hash-node": "^3.0.3",
- "@smithy/invalid-dependency": "^3.0.3",
- "@smithy/middleware-content-length": "^3.0.5",
- "@smithy/middleware-endpoint": "^3.1.0",
- "@smithy/middleware-retry": "^3.0.15",
- "@smithy/middleware-serde": "^3.0.3",
- "@smithy/middleware-stack": "^3.0.3",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/node-http-handler": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/url-parser": "^3.0.3",
- "@smithy/util-base64": "^3.0.0",
- "@smithy/util-body-length-browser": "^3.0.0",
- "@smithy/util-body-length-node": "^3.0.0",
- "@smithy/util-defaults-mode-browser": "^3.0.15",
- "@smithy/util-defaults-mode-node": "^3.0.15",
- "@smithy/util-endpoints": "^2.0.5",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-retry": "^3.0.3",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "@aws-sdk/client-sts": "^3.637.0"
- }
- },
- "node_modules/@aws-sdk/client-sts": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.637.0.tgz",
- "integrity": "sha512-xUi7x4qDubtA8QREtlblPuAcn91GS/09YVEY/RwU7xCY0aqGuFwgszAANlha4OUIqva8oVj2WO4gJuG+iaSnhw==",
- "dependencies": {
- "@aws-crypto/sha256-browser": "5.2.0",
- "@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/client-sso-oidc": "3.637.0",
- "@aws-sdk/core": "3.635.0",
- "@aws-sdk/credential-provider-node": "3.637.0",
- "@aws-sdk/middleware-host-header": "3.620.0",
- "@aws-sdk/middleware-logger": "3.609.0",
- "@aws-sdk/middleware-recursion-detection": "3.620.0",
- "@aws-sdk/middleware-user-agent": "3.637.0",
- "@aws-sdk/region-config-resolver": "3.614.0",
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-endpoints": "3.637.0",
- "@aws-sdk/util-user-agent-browser": "3.609.0",
- "@aws-sdk/util-user-agent-node": "3.614.0",
- "@smithy/config-resolver": "^3.0.5",
- "@smithy/core": "^2.4.0",
- "@smithy/fetch-http-handler": "^3.2.4",
- "@smithy/hash-node": "^3.0.3",
- "@smithy/invalid-dependency": "^3.0.3",
- "@smithy/middleware-content-length": "^3.0.5",
- "@smithy/middleware-endpoint": "^3.1.0",
- "@smithy/middleware-retry": "^3.0.15",
- "@smithy/middleware-serde": "^3.0.3",
- "@smithy/middleware-stack": "^3.0.3",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/node-http-handler": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/url-parser": "^3.0.3",
- "@smithy/util-base64": "^3.0.0",
- "@smithy/util-body-length-browser": "^3.0.0",
- "@smithy/util-body-length-node": "^3.0.0",
- "@smithy/util-defaults-mode-browser": "^3.0.15",
- "@smithy/util-defaults-mode-node": "^3.0.15",
- "@smithy/util-endpoints": "^2.0.5",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-retry": "^3.0.3",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/core": {
- "version": "3.635.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.635.0.tgz",
- "integrity": "sha512-i1x/E/sgA+liUE1XJ7rj1dhyXpAKO1UKFUcTTHXok2ARjWTvszHnSXMOsB77aPbmn0fUp1JTx2kHUAZ1LVt5Bg==",
- "dependencies": {
- "@smithy/core": "^2.4.0",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/signature-v4": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-middleware": "^3.0.3",
- "fast-xml-parser": "4.4.1",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/credential-provider-env": {
- "version": "3.620.1",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.620.1.tgz",
- "integrity": "sha512-ExuILJ2qLW5ZO+rgkNRj0xiAipKT16Rk77buvPP8csR7kkCflT/gXTyzRe/uzIiETTxM7tr8xuO9MP/DQXqkfg==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/credential-provider-http": {
- "version": "3.635.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.635.0.tgz",
- "integrity": "sha512-iJyRgEjOCQlBMXqtwPLIKYc7Bsc6nqjrZybdMDenPDa+kmLg7xh8LxHsu9088e+2/wtLicE34FsJJIfzu3L82g==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/fetch-http-handler": "^3.2.4",
- "@smithy/node-http-handler": "^3.1.4",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-stream": "^3.1.3",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/credential-provider-ini": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.637.0.tgz",
- "integrity": "sha512-h+PFCWfZ0Q3Dx84SppET/TFpcQHmxFW8/oV9ArEvMilw4EBN+IlxgbL0CnHwjHW64szcmrM0mbebjEfHf4FXmw==",
- "dependencies": {
- "@aws-sdk/credential-provider-env": "3.620.1",
- "@aws-sdk/credential-provider-http": "3.635.0",
- "@aws-sdk/credential-provider-process": "3.620.1",
- "@aws-sdk/credential-provider-sso": "3.637.0",
- "@aws-sdk/credential-provider-web-identity": "3.621.0",
- "@aws-sdk/types": "3.609.0",
- "@smithy/credential-provider-imds": "^3.2.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "@aws-sdk/client-sts": "^3.637.0"
- }
- },
- "node_modules/@aws-sdk/credential-provider-node": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.637.0.tgz",
- "integrity": "sha512-yoEhoxJJfs7sPVQ6Is939BDQJZpZCoUgKr/ySse4YKOZ24t4VqgHA6+wV7rYh+7IW24Rd91UTvEzSuHYTlxlNA==",
- "dependencies": {
- "@aws-sdk/credential-provider-env": "3.620.1",
- "@aws-sdk/credential-provider-http": "3.635.0",
- "@aws-sdk/credential-provider-ini": "3.637.0",
- "@aws-sdk/credential-provider-process": "3.620.1",
- "@aws-sdk/credential-provider-sso": "3.637.0",
- "@aws-sdk/credential-provider-web-identity": "3.621.0",
- "@aws-sdk/types": "3.609.0",
- "@smithy/credential-provider-imds": "^3.2.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/credential-provider-process": {
- "version": "3.620.1",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.620.1.tgz",
- "integrity": "sha512-hWqFMidqLAkaV9G460+1at6qa9vySbjQKKc04p59OT7lZ5cO5VH5S4aI05e+m4j364MBROjjk2ugNvfNf/8ILg==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/credential-provider-sso": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.637.0.tgz",
- "integrity": "sha512-Mvz+h+e62/tl+dVikLafhv+qkZJ9RUb8l2YN/LeKMWkxQylPT83CPk9aimVhCV89zth1zpREArl97+3xsfgQvA==",
- "dependencies": {
- "@aws-sdk/client-sso": "3.637.0",
- "@aws-sdk/token-providers": "3.614.0",
- "@aws-sdk/types": "3.609.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/credential-provider-web-identity": {
- "version": "3.621.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.621.0.tgz",
- "integrity": "sha512-w7ASSyfNvcx7+bYGep3VBgC3K6vEdLmlpjT7nSIHxxQf+WSdvy+HynwJosrpZax0sK5q0D1Jpn/5q+r5lwwW6w==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "@aws-sdk/client-sts": "^3.621.0"
- }
- },
- "node_modules/@aws-sdk/middleware-bucket-endpoint": {
- "version": "3.620.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.620.0.tgz",
- "integrity": "sha512-eGLL0W6L3HDb3OACyetZYOWpHJ+gLo0TehQKeQyy2G8vTYXqNTeqYhuI6up9HVjBzU9eQiULVQETmgQs7TFaRg==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-arn-parser": "3.568.0",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-config-provider": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/middleware-expect-continue": {
- "version": "3.620.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.620.0.tgz",
- "integrity": "sha512-QXeRFMLfyQ31nAHLbiTLtk0oHzG9QLMaof5jIfqcUwnOkO8YnQdeqzakrg1Alpy/VQ7aqzIi8qypkBe2KXZz0A==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/middleware-flexible-checksums": {
- "version": "3.620.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.620.0.tgz",
- "integrity": "sha512-ftz+NW7qka2sVuwnnO1IzBku5ccP+s5qZGeRTPgrKB7OzRW85gthvIo1vQR2w+OwHFk7WJbbhhWwbCbktnP4UA==",
- "dependencies": {
- "@aws-crypto/crc32": "5.2.0",
- "@aws-crypto/crc32c": "5.2.0",
- "@aws-sdk/types": "3.609.0",
- "@smithy/is-array-buffer": "^3.0.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/middleware-host-header": {
- "version": "3.620.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.620.0.tgz",
- "integrity": "sha512-VMtPEZwqYrII/oUkffYsNWY9PZ9xpNJpMgmyU0rlDQ25O1c0Hk3fJmZRe6pEkAJ0omD7kLrqGl1DUjQVxpd/Rg==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/middleware-location-constraint": {
- "version": "3.609.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.609.0.tgz",
- "integrity": "sha512-xzsdoTkszGVqGVPjUmgoP7TORiByLueMHieI1fhQL888WPdqctwAx3ES6d/bA9Q/i8jnc6hs+Fjhy8UvBTkE9A==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/middleware-logger": {
- "version": "3.609.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.609.0.tgz",
- "integrity": "sha512-S62U2dy4jMDhDFDK5gZ4VxFdWzCtLzwbYyFZx2uvPYTECkepLUfzLic2BHg2Qvtu4QjX+oGE3P/7fwaGIsGNuQ==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/middleware-recursion-detection": {
- "version": "3.620.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.620.0.tgz",
- "integrity": "sha512-nh91S7aGK3e/o1ck64sA/CyoFw+gAYj2BDOnoNa6ouyCrVJED96ZXWbhye/fz9SgmNUZR2g7GdVpiLpMKZoI5w==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/middleware-sdk-s3": {
- "version": "3.635.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.635.0.tgz",
- "integrity": "sha512-RLdYJPEV4JL/7NBoFUs7VlP90X++5FlJdxHz0DzCjmiD3qCviKy+Cym3qg1gBgHwucs5XisuClxDrGokhAdTQw==",
- "dependencies": {
- "@aws-sdk/core": "3.635.0",
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-arn-parser": "3.568.0",
- "@smithy/core": "^2.4.0",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/signature-v4": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-config-provider": "^3.0.0",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-stream": "^3.1.3",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/middleware-ssec": {
- "version": "3.609.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.609.0.tgz",
- "integrity": "sha512-GZSD1s7+JswWOTamVap79QiDaIV7byJFssBW68GYjyRS5EBjNfwA/8s+6uE6g39R3ojyTbYOmvcANoZEhSULXg==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/middleware-user-agent": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.637.0.tgz",
- "integrity": "sha512-EYo0NE9/da/OY8STDsK2LvM4kNa79DBsf4YVtaG4P5pZ615IeFsD8xOHZeuJmUrSMlVQ8ywPRX7WMucUybsKug==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-endpoints": "3.637.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/region-config-resolver": {
- "version": "3.614.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.614.0.tgz",
- "integrity": "sha512-vDCeMXvic/LU0KFIUjpC3RiSTIkkvESsEfbVHiHH0YINfl8HnEqR5rj+L8+phsCeVg2+LmYwYxd5NRz4PHxt5g==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "@smithy/util-config-provider": "^3.0.0",
- "@smithy/util-middleware": "^3.0.3",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/signature-v4-multi-region": {
- "version": "3.635.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.635.0.tgz",
- "integrity": "sha512-J6QY4/invOkpogCHjSaDON1hF03viPpOnsrzVuCvJMmclS/iG62R4EY0wq1alYll0YmSdmKlpJwHMWwGtqK63Q==",
- "dependencies": {
- "@aws-sdk/middleware-sdk-s3": "3.635.0",
- "@aws-sdk/types": "3.609.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/signature-v4": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/token-providers": {
- "version": "3.614.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.614.0.tgz",
- "integrity": "sha512-okItqyY6L9IHdxqs+Z116y5/nda7rHxLvROxtAJdLavWTYDydxrZstImNgGWTeVdmc0xX2gJCI77UYUTQWnhRw==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "@aws-sdk/client-sso-oidc": "^3.614.0"
- }
- },
- "node_modules/@aws-sdk/types": {
- "version": "3.609.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz",
- "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/util-arn-parser": {
- "version": "3.568.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.568.0.tgz",
- "integrity": "sha512-XUKJWWo+KOB7fbnPP0+g/o5Ulku/X53t7i/h+sPHr5xxYTJJ9CYnbToo95mzxe7xWvkLrsNtJ8L+MnNn9INs2w==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/util-endpoints": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.637.0.tgz",
- "integrity": "sha512-pAqOKUHeVWHEXXDIp/qoMk/6jyxIb6GGjnK1/f8dKHtKIEs4tKsnnL563gceEvdad53OPXIt86uoevCcCzmBnw==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-endpoints": "^2.0.5",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/util-locate-window": {
- "version": "3.568.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.568.0.tgz",
- "integrity": "sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@aws-sdk/util-user-agent-browser": {
- "version": "3.609.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.609.0.tgz",
- "integrity": "sha512-fojPU+mNahzQ0YHYBsx0ZIhmMA96H+ZIZ665ObU9tl+SGdbLneVZVikGve+NmHTQwHzwkFsZYYnVKAkreJLAtA==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/types": "^3.3.0",
- "bowser": "^2.11.0",
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@aws-sdk/util-user-agent-node": {
- "version": "3.614.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.614.0.tgz",
- "integrity": "sha512-15ElZT88peoHnq5TEoEtZwoXTXRxNrk60TZNdpl/TUBJ5oNJ9Dqb5Z4ryb8ofN6nm9aFf59GVAerFDz8iUoHBA==",
- "dependencies": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "aws-crt": ">=1.0.0"
- },
- "peerDependenciesMeta": {
- "aws-crt": {
- "optional": true
- }
- }
- },
- "node_modules/@aws-sdk/xml-builder": {
- "version": "3.609.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.609.0.tgz",
- "integrity": "sha512-l9XxNcA4HX98rwCC2/KoiWcmEiRfZe4G+mYwDbCFT87JIMj6GBhLDkAzr/W8KAaA2IDr8Vc6J8fZPgVulxxfMA==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@babel/code-frame": {
- "version": "7.22.13",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz",
- "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==",
- "dependencies": {
- "@babel/highlight": "^7.22.13",
- "chalk": "^2.4.2"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/compat-data": {
- "version": "7.22.9",
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz",
- "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/core": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz",
- "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==",
- "dependencies": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.22.10",
- "@babel/generator": "^7.22.10",
- "@babel/helper-compilation-targets": "^7.22.10",
- "@babel/helper-module-transforms": "^7.22.9",
- "@babel/helpers": "^7.22.10",
- "@babel/parser": "^7.22.10",
- "@babel/template": "^7.22.5",
- "@babel/traverse": "^7.22.10",
- "@babel/types": "^7.22.10",
- "convert-source-map": "^1.7.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.2",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/babel"
- }
- },
- "node_modules/@babel/core/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/@babel/generator": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz",
- "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==",
- "dependencies": {
- "@babel/types": "^7.23.0",
- "@jridgewell/gen-mapping": "^0.3.2",
- "@jridgewell/trace-mapping": "^0.3.17",
- "jsesc": "^2.5.1"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-annotate-as-pure": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz",
- "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.5.tgz",
- "integrity": "sha512-m1EP3lVOPptR+2DwD125gziZNcmoNSHGmJROKoy87loWUQyJaVXDgpmruWqDARZSmtYQ+Dl25okU8+qhVzuykw==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-compilation-targets": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz",
- "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==",
- "dependencies": {
- "@babel/compat-data": "^7.22.9",
- "@babel/helper-validator-option": "^7.22.5",
- "browserslist": "^4.21.9",
- "lru-cache": "^5.1.1",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
- "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
- "dependencies": {
- "yallist": "^3.0.2"
- }
- },
- "node_modules/@babel/helper-compilation-targets/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/@babel/helper-compilation-targets/node_modules/yallist": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
- "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="
- },
- "node_modules/@babel/helper-create-class-features-plugin": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.5.tgz",
- "integrity": "sha512-xkb58MyOYIslxu3gKmVXmjTtUPvBU4odYzbiIQbWwLKIHCsx6UGZGX6F1IznMFVnDdirseUZopzN+ZRt8Xb33Q==",
- "dev": true,
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.22.5",
- "@babel/helper-environment-visitor": "^7.22.5",
- "@babel/helper-function-name": "^7.22.5",
- "@babel/helper-member-expression-to-functions": "^7.22.5",
- "@babel/helper-optimise-call-expression": "^7.22.5",
- "@babel/helper-replace-supers": "^7.22.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5",
- "@babel/helper-split-export-declaration": "^7.22.5",
- "semver": "^6.3.0"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true,
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/@babel/helper-create-regexp-features-plugin": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.5.tgz",
- "integrity": "sha512-1VpEFOIbMRaXyDeUwUfmTIxExLwQ+zkW+Bh5zXpApA3oQedBx9v/updixWxnx/bZpKw7u8VxWjb/qWpIcmPq8A==",
- "dev": true,
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.22.5",
- "regexpu-core": "^5.3.1",
- "semver": "^6.3.0"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true,
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/@babel/helper-define-polyfill-provider": {
- "version": "0.4.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz",
- "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-compilation-targets": "^7.22.6",
- "@babel/helper-plugin-utils": "^7.22.5",
- "debug": "^4.1.1",
- "lodash.debounce": "^4.0.8",
- "resolve": "^1.14.2"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
- },
- "node_modules/@babel/helper-environment-visitor": {
- "version": "7.22.20",
- "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz",
- "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-function-name": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz",
- "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==",
- "dependencies": {
- "@babel/template": "^7.22.15",
- "@babel/types": "^7.23.0"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-hoist-variables": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz",
- "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",
- "dependencies": {
- "@babel/types": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-member-expression-to-functions": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz",
- "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-module-imports": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz",
- "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==",
- "dependencies": {
- "@babel/types": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-module-transforms": {
- "version": "7.22.9",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz",
- "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==",
- "dependencies": {
- "@babel/helper-environment-visitor": "^7.22.5",
- "@babel/helper-module-imports": "^7.22.5",
- "@babel/helper-simple-access": "^7.22.5",
- "@babel/helper-split-export-declaration": "^7.22.6",
- "@babel/helper-validator-identifier": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-optimise-call-expression": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz",
- "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-plugin-utils": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz",
- "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-remap-async-to-generator": {
- "version": "7.22.9",
- "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz",
- "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.22.5",
- "@babel/helper-environment-visitor": "^7.22.5",
- "@babel/helper-wrap-function": "^7.22.9"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-replace-supers": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.5.tgz",
- "integrity": "sha512-aLdNM5I3kdI/V9xGNyKSF3X/gTyMUBohTZ+/3QdQKAA9vxIiy12E+8E2HoOP1/DjeqU+g6as35QHJNMDDYpuCg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-environment-visitor": "^7.22.5",
- "@babel/helper-member-expression-to-functions": "^7.22.5",
- "@babel/helper-optimise-call-expression": "^7.22.5",
- "@babel/template": "^7.22.5",
- "@babel/traverse": "^7.22.5",
- "@babel/types": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-simple-access": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz",
- "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==",
- "dependencies": {
- "@babel/types": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-skip-transparent-expression-wrappers": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz",
- "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-split-export-declaration": {
- "version": "7.22.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz",
- "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==",
- "dependencies": {
- "@babel/types": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-string-parser": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz",
- "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-validator-identifier": {
- "version": "7.22.20",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
- "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-validator-option": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz",
- "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-wrap-function": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz",
- "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-function-name": "^7.22.5",
- "@babel/template": "^7.22.5",
- "@babel/types": "^7.22.10"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helpers": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz",
- "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==",
- "dependencies": {
- "@babel/template": "^7.22.5",
- "@babel/traverse": "^7.22.10",
- "@babel/types": "^7.22.10"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/highlight": {
- "version": "7.22.20",
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz",
- "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==",
- "dependencies": {
- "@babel/helper-validator-identifier": "^7.22.20",
- "chalk": "^2.4.2",
- "js-tokens": "^4.0.0"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/parser": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz",
- "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==",
- "bin": {
- "parser": "bin/babel-parser.js"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz",
- "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz",
- "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5",
- "@babel/plugin-transform-optional-chaining": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.13.0"
- }
- },
- "node_modules/@babel/plugin-proposal-private-property-in-object": {
- "version": "7.21.0-placeholder-for-preset-env.2",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz",
- "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==",
- "dev": true,
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-async-generators": {
- "version": "7.8.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
- "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-bigint": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz",
- "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-class-properties": {
- "version": "7.12.13",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
- "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.12.13"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-class-static-block": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz",
- "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-dynamic-import": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
- "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-export-namespace-from": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz",
- "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.3"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-import-assertions": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz",
- "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-import-attributes": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz",
- "integrity": "sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-import-meta": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
- "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.10.4"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-json-strings": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
- "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-jsx": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz",
- "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-logical-assignment-operators": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
- "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.10.4"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
- "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-numeric-separator": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
- "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.10.4"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-object-rest-spread": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
- "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-optional-catch-binding": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
- "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-optional-chaining": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
- "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-private-property-in-object": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz",
- "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-top-level-await": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz",
- "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-typescript": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz",
- "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-unicode-sets-regex": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz",
- "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.18.6",
- "@babel/helper-plugin-utils": "^7.18.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/plugin-transform-arrow-functions": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz",
- "integrity": "sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-async-generator-functions": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz",
- "integrity": "sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==",
- "dev": true,
- "dependencies": {
- "@babel/helper-environment-visitor": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-remap-async-to-generator": "^7.22.9",
- "@babel/plugin-syntax-async-generators": "^7.8.4"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-async-to-generator": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz",
- "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-module-imports": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-remap-async-to-generator": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-block-scoped-functions": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz",
- "integrity": "sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-block-scoping": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz",
- "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-class-properties": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz",
- "integrity": "sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-class-static-block": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz",
- "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-class-static-block": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.12.0"
- }
- },
- "node_modules/@babel/plugin-transform-classes": {
- "version": "7.22.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz",
- "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.22.5",
- "@babel/helper-compilation-targets": "^7.22.6",
- "@babel/helper-environment-visitor": "^7.22.5",
- "@babel/helper-function-name": "^7.22.5",
- "@babel/helper-optimise-call-expression": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-replace-supers": "^7.22.5",
- "@babel/helper-split-export-declaration": "^7.22.6",
- "globals": "^11.1.0"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-computed-properties": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz",
- "integrity": "sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/template": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-destructuring": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz",
- "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-dotall-regex": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz",
- "integrity": "sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-duplicate-keys": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz",
- "integrity": "sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-dynamic-import": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz",
- "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-exponentiation-operator": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz",
- "integrity": "sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==",
- "dev": true,
- "dependencies": {
- "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-export-namespace-from": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz",
- "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-for-of": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz",
- "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-function-name": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz",
- "integrity": "sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-compilation-targets": "^7.22.5",
- "@babel/helper-function-name": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-json-strings": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz",
- "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-json-strings": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-literals": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz",
- "integrity": "sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-logical-assignment-operators": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz",
- "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-member-expression-literals": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz",
- "integrity": "sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-modules-amd": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz",
- "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-module-transforms": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-modules-commonjs": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz",
- "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-module-transforms": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-simple-access": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-modules-systemjs": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz",
- "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-hoist-variables": "^7.22.5",
- "@babel/helper-module-transforms": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-validator-identifier": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-modules-umd": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz",
- "integrity": "sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-module-transforms": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-named-capturing-groups-regex": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz",
- "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/plugin-transform-new-target": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz",
- "integrity": "sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-nullish-coalescing-operator": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz",
- "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-numeric-separator": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz",
- "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-object-rest-spread": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz",
- "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==",
- "dev": true,
- "dependencies": {
- "@babel/compat-data": "^7.22.5",
- "@babel/helper-compilation-targets": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-transform-parameters": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-object-super": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz",
- "integrity": "sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-replace-supers": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-optional-catch-binding": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz",
- "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-optional-chaining": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz",
- "integrity": "sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-parameters": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz",
- "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-private-methods": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz",
- "integrity": "sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-private-property-in-object": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz",
- "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.22.5",
- "@babel/helper-create-class-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-property-literals": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz",
- "integrity": "sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-regenerator": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz",
- "integrity": "sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "regenerator-transform": "^0.15.2"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-reserved-words": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz",
- "integrity": "sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-shorthand-properties": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz",
- "integrity": "sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-spread": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz",
- "integrity": "sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-sticky-regex": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz",
- "integrity": "sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-template-literals": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz",
- "integrity": "sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-typeof-symbol": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz",
- "integrity": "sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-unicode-escapes": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz",
- "integrity": "sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-unicode-property-regex": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz",
- "integrity": "sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-unicode-regex": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz",
- "integrity": "sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-unicode-sets-regex": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz",
- "integrity": "sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/preset-env": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.10.tgz",
- "integrity": "sha512-riHpLb1drNkpLlocmSyEg4oYJIQFeXAK/d7rI6mbD0XsvoTOOweXDmQPG/ErxsEhWk3rl3Q/3F6RFQlVFS8m0A==",
- "dev": true,
- "dependencies": {
- "@babel/compat-data": "^7.22.9",
- "@babel/helper-compilation-targets": "^7.22.10",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-validator-option": "^7.22.5",
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5",
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5",
- "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2",
- "@babel/plugin-syntax-async-generators": "^7.8.4",
- "@babel/plugin-syntax-class-properties": "^7.12.13",
- "@babel/plugin-syntax-class-static-block": "^7.14.5",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3",
- "@babel/plugin-syntax-import-assertions": "^7.22.5",
- "@babel/plugin-syntax-import-attributes": "^7.22.5",
- "@babel/plugin-syntax-import-meta": "^7.10.4",
- "@babel/plugin-syntax-json-strings": "^7.8.3",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5",
- "@babel/plugin-syntax-top-level-await": "^7.14.5",
- "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6",
- "@babel/plugin-transform-arrow-functions": "^7.22.5",
- "@babel/plugin-transform-async-generator-functions": "^7.22.10",
- "@babel/plugin-transform-async-to-generator": "^7.22.5",
- "@babel/plugin-transform-block-scoped-functions": "^7.22.5",
- "@babel/plugin-transform-block-scoping": "^7.22.10",
- "@babel/plugin-transform-class-properties": "^7.22.5",
- "@babel/plugin-transform-class-static-block": "^7.22.5",
- "@babel/plugin-transform-classes": "^7.22.6",
- "@babel/plugin-transform-computed-properties": "^7.22.5",
- "@babel/plugin-transform-destructuring": "^7.22.10",
- "@babel/plugin-transform-dotall-regex": "^7.22.5",
- "@babel/plugin-transform-duplicate-keys": "^7.22.5",
- "@babel/plugin-transform-dynamic-import": "^7.22.5",
- "@babel/plugin-transform-exponentiation-operator": "^7.22.5",
- "@babel/plugin-transform-export-namespace-from": "^7.22.5",
- "@babel/plugin-transform-for-of": "^7.22.5",
- "@babel/plugin-transform-function-name": "^7.22.5",
- "@babel/plugin-transform-json-strings": "^7.22.5",
- "@babel/plugin-transform-literals": "^7.22.5",
- "@babel/plugin-transform-logical-assignment-operators": "^7.22.5",
- "@babel/plugin-transform-member-expression-literals": "^7.22.5",
- "@babel/plugin-transform-modules-amd": "^7.22.5",
- "@babel/plugin-transform-modules-commonjs": "^7.22.5",
- "@babel/plugin-transform-modules-systemjs": "^7.22.5",
- "@babel/plugin-transform-modules-umd": "^7.22.5",
- "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5",
- "@babel/plugin-transform-new-target": "^7.22.5",
- "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5",
- "@babel/plugin-transform-numeric-separator": "^7.22.5",
- "@babel/plugin-transform-object-rest-spread": "^7.22.5",
- "@babel/plugin-transform-object-super": "^7.22.5",
- "@babel/plugin-transform-optional-catch-binding": "^7.22.5",
- "@babel/plugin-transform-optional-chaining": "^7.22.10",
- "@babel/plugin-transform-parameters": "^7.22.5",
- "@babel/plugin-transform-private-methods": "^7.22.5",
- "@babel/plugin-transform-private-property-in-object": "^7.22.5",
- "@babel/plugin-transform-property-literals": "^7.22.5",
- "@babel/plugin-transform-regenerator": "^7.22.10",
- "@babel/plugin-transform-reserved-words": "^7.22.5",
- "@babel/plugin-transform-shorthand-properties": "^7.22.5",
- "@babel/plugin-transform-spread": "^7.22.5",
- "@babel/plugin-transform-sticky-regex": "^7.22.5",
- "@babel/plugin-transform-template-literals": "^7.22.5",
- "@babel/plugin-transform-typeof-symbol": "^7.22.5",
- "@babel/plugin-transform-unicode-escapes": "^7.22.10",
- "@babel/plugin-transform-unicode-property-regex": "^7.22.5",
- "@babel/plugin-transform-unicode-regex": "^7.22.5",
- "@babel/plugin-transform-unicode-sets-regex": "^7.22.5",
- "@babel/preset-modules": "0.1.6-no-external-plugins",
- "@babel/types": "^7.22.10",
- "babel-plugin-polyfill-corejs2": "^0.4.5",
- "babel-plugin-polyfill-corejs3": "^0.8.3",
- "babel-plugin-polyfill-regenerator": "^0.5.2",
- "core-js-compat": "^3.31.0",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/preset-env/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true,
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/@babel/preset-modules": {
- "version": "0.1.6-no-external-plugins",
- "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz",
- "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/types": "^7.4.4",
- "esutils": "^2.0.2"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0"
- }
- },
- "node_modules/@babel/regjsgen": {
- "version": "0.8.0",
- "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz",
- "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==",
- "dev": true
- },
- "node_modules/@babel/runtime": {
- "version": "7.24.8",
- "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.8.tgz",
- "integrity": "sha512-5F7SDGs1T72ZczbRwbGO9lQi0NLjQxzl6i4lJxLxfW9U5UluCSyEJeniWvnhl3/euNiqQVbo8zruhsDfid0esA==",
- "dependencies": {
- "regenerator-runtime": "^0.14.0"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/template": {
- "version": "7.22.15",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz",
- "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==",
- "dependencies": {
- "@babel/code-frame": "^7.22.13",
- "@babel/parser": "^7.22.15",
- "@babel/types": "^7.22.15"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/traverse": {
- "version": "7.23.2",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz",
- "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==",
- "dependencies": {
- "@babel/code-frame": "^7.22.13",
- "@babel/generator": "^7.23.0",
- "@babel/helper-environment-visitor": "^7.22.20",
- "@babel/helper-function-name": "^7.23.0",
- "@babel/helper-hoist-variables": "^7.22.5",
- "@babel/helper-split-export-declaration": "^7.22.6",
- "@babel/parser": "^7.23.0",
- "@babel/types": "^7.23.0",
- "debug": "^4.1.0",
- "globals": "^11.1.0"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/types": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz",
- "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==",
- "dependencies": {
- "@babel/helper-string-parser": "^7.22.5",
- "@babel/helper-validator-identifier": "^7.22.20",
- "to-fast-properties": "^2.0.0"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@bcoe/v8-coverage": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz",
- "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw=="
- },
- "node_modules/@emnapi/core": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.2.0.tgz",
- "integrity": "sha512-E7Vgw78I93we4ZWdYCb4DGAwRROGkMIXk7/y87UmANR+J6qsWusmC3gLt0H+O0KOt5e6O38U8oJamgbudrES/w==",
- "dependencies": {
- "@emnapi/wasi-threads": "1.0.1",
- "tslib": "^2.4.0"
- }
- },
- "node_modules/@emnapi/runtime": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.2.0.tgz",
- "integrity": "sha512-bV21/9LQmcQeCPEg3BDFtvwL6cwiTMksYNWQQ4KOxCZikEGalWtenoZ0wCiukJINlGCIi2KXx01g4FoH/LxpzQ==",
- "dependencies": {
- "tslib": "^2.4.0"
- }
- },
- "node_modules/@emnapi/wasi-threads": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.0.1.tgz",
- "integrity": "sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw==",
- "dependencies": {
- "tslib": "^2.4.0"
- }
- },
- "node_modules/@esbuild/aix-ppc64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.0.tgz",
- "integrity": "sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==",
- "cpu": [
- "ppc64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "aix"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/android-arm": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.0.tgz",
- "integrity": "sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==",
- "cpu": [
- "arm"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "android"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/android-arm64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.0.tgz",
- "integrity": "sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "android"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/android-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.0.tgz",
- "integrity": "sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "android"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/darwin-arm64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.0.tgz",
- "integrity": "sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/darwin-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.0.tgz",
- "integrity": "sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/freebsd-arm64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.0.tgz",
- "integrity": "sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "freebsd"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/freebsd-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.0.tgz",
- "integrity": "sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "freebsd"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/linux-arm": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.0.tgz",
- "integrity": "sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==",
- "cpu": [
- "arm"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/linux-arm64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.0.tgz",
- "integrity": "sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/linux-ia32": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.0.tgz",
- "integrity": "sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==",
- "cpu": [
- "ia32"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/linux-loong64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.0.tgz",
- "integrity": "sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==",
- "cpu": [
- "loong64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/linux-mips64el": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.0.tgz",
- "integrity": "sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==",
- "cpu": [
- "mips64el"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/linux-ppc64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.0.tgz",
- "integrity": "sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==",
- "cpu": [
- "ppc64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/linux-riscv64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.0.tgz",
- "integrity": "sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==",
- "cpu": [
- "riscv64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/linux-s390x": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.0.tgz",
- "integrity": "sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==",
- "cpu": [
- "s390x"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/linux-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.0.tgz",
- "integrity": "sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/netbsd-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.0.tgz",
- "integrity": "sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "netbsd"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/openbsd-arm64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.0.tgz",
- "integrity": "sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "openbsd"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/openbsd-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.0.tgz",
- "integrity": "sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "openbsd"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/sunos-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.0.tgz",
- "integrity": "sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "sunos"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/win32-arm64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.0.tgz",
- "integrity": "sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/win32-ia32": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.0.tgz",
- "integrity": "sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==",
- "cpu": [
- "ia32"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/win32-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.0.tgz",
- "integrity": "sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@eslint-community/eslint-utils": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
- "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
- "dependencies": {
- "eslint-visitor-keys": "^3.3.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "peerDependencies": {
- "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
- }
- },
- "node_modules/@eslint-community/regexpp": {
- "version": "4.11.1",
- "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.1.tgz",
- "integrity": "sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==",
- "engines": {
- "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
- }
- },
- "node_modules/@eslint/eslintrc": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
- "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
- "dependencies": {
- "ajv": "^6.12.4",
- "debug": "^4.3.2",
- "espree": "^9.6.0",
- "globals": "^13.19.0",
- "ignore": "^5.2.0",
- "import-fresh": "^3.2.1",
- "js-yaml": "^4.1.0",
- "minimatch": "^3.1.2",
- "strip-json-comments": "^3.1.1"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- },
- "node_modules/@eslint/eslintrc/node_modules/globals": {
- "version": "13.23.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz",
- "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==",
- "dependencies": {
- "type-fest": "^0.20.2"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "dependencies": {
- "argparse": "^2.0.1"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@eslint/js": {
- "version": "8.57.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
- "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==",
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- }
- },
- "node_modules/@humanwhocodes/config-array": {
- "version": "0.11.14",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz",
- "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==",
- "dependencies": {
- "@humanwhocodes/object-schema": "^2.0.2",
- "debug": "^4.3.1",
- "minimatch": "^3.0.5"
- },
- "engines": {
- "node": ">=10.10.0"
- }
- },
- "node_modules/@humanwhocodes/module-importer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
- "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
- "engines": {
- "node": ">=12.22"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/nzakas"
- }
- },
- "node_modules/@humanwhocodes/object-schema": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz",
- "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw=="
- },
- "node_modules/@hutson/parse-repository-url": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz",
- "integrity": "sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@isaacs/cliui": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
- "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
- "dependencies": {
- "string-width": "^5.1.2",
- "string-width-cjs": "npm:string-width@^4.2.0",
- "strip-ansi": "^7.0.1",
- "strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
- "wrap-ansi": "^8.1.0",
- "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@isaacs/cliui/node_modules/ansi-regex": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
- "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-regex?sponsor=1"
- }
- },
- "node_modules/@isaacs/cliui/node_modules/ansi-styles": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz",
- "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/@isaacs/cliui/node_modules/emoji-regex": {
- "version": "9.2.2",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
- "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg=="
- },
- "node_modules/@isaacs/cliui/node_modules/string-width": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
- "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
- "dependencies": {
- "eastasianwidth": "^0.2.0",
- "emoji-regex": "^9.2.2",
- "strip-ansi": "^7.0.1"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@isaacs/cliui/node_modules/strip-ansi": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
- "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
- "dependencies": {
- "ansi-regex": "^6.0.1"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/strip-ansi?sponsor=1"
- }
- },
- "node_modules/@isaacs/cliui/node_modules/wrap-ansi": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
- "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
- "dependencies": {
- "ansi-styles": "^6.1.0",
- "string-width": "^5.0.1",
- "strip-ansi": "^7.0.1"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
- }
- },
- "node_modules/@isaacs/string-locale-compare": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz",
- "integrity": "sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ=="
- },
- "node_modules/@istanbuljs/load-nyc-config": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
- "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
- "dependencies": {
- "camelcase": "^5.3.1",
- "find-up": "^4.1.0",
- "get-package-type": "^0.1.0",
- "js-yaml": "^3.13.1",
- "resolve-from": "^5.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@istanbuljs/schema": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
- "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@jest/console": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz",
- "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "jest-message-util": "^29.7.0",
- "jest-util": "^29.7.0",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/console/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/@jest/console/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/@jest/console/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/@jest/console/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/@jest/console/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@jest/console/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@jest/core": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz",
- "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==",
- "dependencies": {
- "@jest/console": "^29.7.0",
- "@jest/reporters": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "ansi-escapes": "^4.2.1",
- "chalk": "^4.0.0",
- "ci-info": "^3.2.0",
- "exit": "^0.1.2",
- "graceful-fs": "^4.2.9",
- "jest-changed-files": "^29.7.0",
- "jest-config": "^29.7.0",
- "jest-haste-map": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-regex-util": "^29.6.3",
- "jest-resolve": "^29.7.0",
- "jest-resolve-dependencies": "^29.7.0",
- "jest-runner": "^29.7.0",
- "jest-runtime": "^29.7.0",
- "jest-snapshot": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-validate": "^29.7.0",
- "jest-watcher": "^29.7.0",
- "micromatch": "^4.0.4",
- "pretty-format": "^29.7.0",
- "slash": "^3.0.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
- },
- "peerDependenciesMeta": {
- "node-notifier": {
- "optional": true
- }
- }
- },
- "node_modules/@jest/core/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/@jest/core/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/@jest/core/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/@jest/core/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/@jest/core/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@jest/core/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@jest/environment": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz",
- "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==",
- "dependencies": {
- "@jest/fake-timers": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "jest-mock": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/expect": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz",
- "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==",
- "dependencies": {
- "expect": "^29.7.0",
- "jest-snapshot": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/expect-utils": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz",
- "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==",
- "dependencies": {
- "jest-get-type": "^29.6.3"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/fake-timers": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz",
- "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "@sinonjs/fake-timers": "^10.0.2",
- "@types/node": "*",
- "jest-message-util": "^29.7.0",
- "jest-mock": "^29.7.0",
- "jest-util": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/globals": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz",
- "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==",
- "dependencies": {
- "@jest/environment": "^29.7.0",
- "@jest/expect": "^29.7.0",
- "@jest/types": "^29.6.3",
- "jest-mock": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/reporters": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz",
- "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==",
- "dependencies": {
- "@bcoe/v8-coverage": "^0.2.3",
- "@jest/console": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@jridgewell/trace-mapping": "^0.3.18",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "collect-v8-coverage": "^1.0.0",
- "exit": "^0.1.2",
- "glob": "^7.1.3",
- "graceful-fs": "^4.2.9",
- "istanbul-lib-coverage": "^3.0.0",
- "istanbul-lib-instrument": "^6.0.0",
- "istanbul-lib-report": "^3.0.0",
- "istanbul-lib-source-maps": "^4.0.0",
- "istanbul-reports": "^3.1.3",
- "jest-message-util": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-worker": "^29.7.0",
- "slash": "^3.0.0",
- "string-length": "^4.0.1",
- "strip-ansi": "^6.0.0",
- "v8-to-istanbul": "^9.0.1"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
- },
- "peerDependenciesMeta": {
- "node-notifier": {
- "optional": true
- }
- }
- },
- "node_modules/@jest/reporters/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/@jest/reporters/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/@jest/reporters/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/@jest/reporters/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/@jest/reporters/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@jest/reporters/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@jest/schemas": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz",
- "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==",
- "dependencies": {
- "@sinclair/typebox": "^0.27.8"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/source-map": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz",
- "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==",
- "dependencies": {
- "@jridgewell/trace-mapping": "^0.3.18",
- "callsites": "^3.0.0",
- "graceful-fs": "^4.2.9"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/test-result": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz",
- "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==",
- "dependencies": {
- "@jest/console": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/istanbul-lib-coverage": "^2.0.0",
- "collect-v8-coverage": "^1.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/test-sequencer": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz",
- "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==",
- "dependencies": {
- "@jest/test-result": "^29.7.0",
- "graceful-fs": "^4.2.9",
- "jest-haste-map": "^29.7.0",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/transform": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz",
- "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==",
- "dependencies": {
- "@babel/core": "^7.11.6",
- "@jest/types": "^29.6.3",
- "@jridgewell/trace-mapping": "^0.3.18",
- "babel-plugin-istanbul": "^6.1.1",
- "chalk": "^4.0.0",
- "convert-source-map": "^2.0.0",
- "fast-json-stable-stringify": "^2.1.0",
- "graceful-fs": "^4.2.9",
- "jest-haste-map": "^29.7.0",
- "jest-regex-util": "^29.6.3",
- "jest-util": "^29.7.0",
- "micromatch": "^4.0.4",
- "pirates": "^4.0.4",
- "slash": "^3.0.0",
- "write-file-atomic": "^4.0.2"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/transform/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/@jest/transform/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/@jest/transform/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/@jest/transform/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/@jest/transform/node_modules/convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg=="
- },
- "node_modules/@jest/transform/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@jest/transform/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@jest/types": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz",
- "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==",
- "dependencies": {
- "@jest/schemas": "^29.6.3",
- "@types/istanbul-lib-coverage": "^2.0.0",
- "@types/istanbul-reports": "^3.0.0",
- "@types/node": "*",
- "@types/yargs": "^17.0.8",
- "chalk": "^4.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/types/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/@jest/types/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/@jest/types/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/@jest/types/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/@jest/types/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@jest/types/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@jridgewell/gen-mapping": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
- "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==",
- "dependencies": {
- "@jridgewell/set-array": "^1.0.1",
- "@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/@jridgewell/resolve-uri": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz",
- "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==",
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/@jridgewell/set-array": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
- "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/@jridgewell/sourcemap-codec": {
- "version": "1.4.15",
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
- "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
- },
- "node_modules/@jridgewell/trace-mapping": {
- "version": "0.3.18",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz",
- "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==",
- "dependencies": {
- "@jridgewell/resolve-uri": "3.1.0",
- "@jridgewell/sourcemap-codec": "1.4.14"
- }
- },
- "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": {
- "version": "1.4.14",
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
- "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw=="
- },
- "node_modules/@lerna/create": {
- "version": "8.1.8",
- "resolved": "https://registry.npmjs.org/@lerna/create/-/create-8.1.8.tgz",
- "integrity": "sha512-wi72R01tgjBjzG2kjRyTHl4yCTKDfDMIXRyKz9E/FBa9SkFvUOAE4bdyY9MhEsRZmSWL7+CYE8Flv/HScRpBbA==",
- "dependencies": {
- "@npmcli/arborist": "7.5.4",
- "@npmcli/package-json": "5.2.0",
- "@npmcli/run-script": "8.1.0",
- "@nx/devkit": ">=17.1.2 < 20",
- "@octokit/plugin-enterprise-rest": "6.0.1",
- "@octokit/rest": "19.0.11",
- "aproba": "2.0.0",
- "byte-size": "8.1.1",
- "chalk": "4.1.0",
- "clone-deep": "4.0.1",
- "cmd-shim": "6.0.3",
- "color-support": "1.1.3",
- "columnify": "1.6.0",
- "console-control-strings": "^1.1.0",
- "conventional-changelog-core": "5.0.1",
- "conventional-recommended-bump": "7.0.1",
- "cosmiconfig": "^8.2.0",
- "dedent": "1.5.3",
- "execa": "5.0.0",
- "fs-extra": "^11.2.0",
- "get-stream": "6.0.0",
- "git-url-parse": "14.0.0",
- "glob-parent": "6.0.2",
- "globby": "11.1.0",
- "graceful-fs": "4.2.11",
- "has-unicode": "2.0.1",
- "ini": "^1.3.8",
- "init-package-json": "6.0.3",
- "inquirer": "^8.2.4",
- "is-ci": "3.0.1",
- "is-stream": "2.0.0",
- "js-yaml": "4.1.0",
- "libnpmpublish": "9.0.9",
- "load-json-file": "6.2.0",
- "lodash": "^4.17.21",
- "make-dir": "4.0.0",
- "minimatch": "3.0.5",
- "multimatch": "5.0.0",
- "node-fetch": "2.6.7",
- "npm-package-arg": "11.0.2",
- "npm-packlist": "8.0.2",
- "npm-registry-fetch": "^17.1.0",
- "nx": ">=17.1.2 < 20",
- "p-map": "4.0.0",
- "p-map-series": "2.1.0",
- "p-queue": "6.6.2",
- "p-reduce": "^2.1.0",
- "pacote": "^18.0.6",
- "pify": "5.0.0",
- "read-cmd-shim": "4.0.0",
- "resolve-from": "5.0.0",
- "rimraf": "^4.4.1",
- "semver": "^7.3.4",
- "set-blocking": "^2.0.0",
- "signal-exit": "3.0.7",
- "slash": "^3.0.0",
- "ssri": "^10.0.6",
- "string-width": "^4.2.3",
- "strip-ansi": "^6.0.1",
- "strong-log-transformer": "2.1.0",
- "tar": "6.2.1",
- "temp-dir": "1.0.0",
- "upath": "2.0.1",
- "uuid": "^10.0.0",
- "validate-npm-package-license": "^3.0.4",
- "validate-npm-package-name": "5.0.1",
- "wide-align": "1.1.5",
- "write-file-atomic": "5.0.1",
- "write-pkg": "4.0.0",
- "yargs": "17.7.2",
- "yargs-parser": "21.1.1"
- },
- "engines": {
- "node": ">=18.0.0"
- }
- },
- "node_modules/@lerna/create/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/@lerna/create/node_modules/argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- },
- "node_modules/@lerna/create/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/@lerna/create/node_modules/chalk": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
- "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/@lerna/create/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/@lerna/create/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/@lerna/create/node_modules/glob": {
- "version": "9.3.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz",
- "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==",
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "minimatch": "^8.0.2",
- "minipass": "^4.2.4",
- "path-scurry": "^1.6.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@lerna/create/node_modules/glob-parent": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
- "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
- "dependencies": {
- "is-glob": "^4.0.3"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/@lerna/create/node_modules/glob/node_modules/minimatch": {
- "version": "8.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz",
- "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@lerna/create/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@lerna/create/node_modules/js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "dependencies": {
- "argparse": "^2.0.1"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/@lerna/create/node_modules/minipass": {
- "version": "4.2.8",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz",
- "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@lerna/create/node_modules/rimraf": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz",
- "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==",
- "dependencies": {
- "glob": "^9.2.0"
- },
- "bin": {
- "rimraf": "dist/cjs/src/bin.js"
- },
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@lerna/create/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@lerna/create/node_modules/uuid": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz",
- "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==",
- "funding": [
- "https://github.com/sponsors/broofa",
- "https://github.com/sponsors/ctavan"
- ],
- "bin": {
- "uuid": "dist/bin/uuid"
- }
- },
- "node_modules/@lerna/create/node_modules/write-file-atomic": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
- "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
- "dependencies": {
- "imurmurhash": "^0.1.4",
- "signal-exit": "^4.0.1"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@lerna/create/node_modules/write-file-atomic/node_modules/signal-exit": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
- "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@napi-rs/wasm-runtime": {
- "version": "0.2.4",
- "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.4.tgz",
- "integrity": "sha512-9zESzOO5aDByvhIAsOy9TbpZ0Ur2AJbUI7UT73kcUTS2mxAMHOBaa1st/jAymNoCtvrit99kkzT1FZuXVcgfIQ==",
- "dependencies": {
- "@emnapi/core": "^1.1.0",
- "@emnapi/runtime": "^1.1.0",
- "@tybys/wasm-util": "^0.9.0"
- }
- },
- "node_modules/@next/env": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.13.tgz",
- "integrity": "sha512-s3lh6K8cbW1h5Nga7NNeXrbe0+2jIIYK9YaA9T7IufDWnZpozdFUp6Hf0d5rNWUKu4fEuSX2rCKlGjCrtylfDw=="
- },
- "node_modules/@next/eslint-plugin-next": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.13.tgz",
- "integrity": "sha512-z8Mk0VljxhIzsSiZUSdt3wp+t2lKd+jk5a9Jsvh3zDGkItgDMfjv/ZbET6HsxEl/fSihVoHGsXV6VLyDH0lfTQ==",
- "dependencies": {
- "glob": "10.3.10"
- }
- },
- "node_modules/@next/eslint-plugin-next/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/@next/eslint-plugin-next/node_modules/glob": {
- "version": "10.3.10",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz",
- "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==",
- "dependencies": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^2.3.5",
- "minimatch": "^9.0.1",
- "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0",
- "path-scurry": "^1.10.1"
- },
- "bin": {
- "glob": "dist/esm/bin.mjs"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@next/eslint-plugin-next/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@next/swc-darwin-arm64": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.13.tgz",
- "integrity": "sha512-IkAmQEa2Htq+wHACBxOsslt+jMoV3msvxCn0WFSfJSkv/scy+i/EukBKNad36grRxywaXUYJc9mxEGkeIs8Bzg==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-darwin-x64": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.13.tgz",
- "integrity": "sha512-Dv1RBGs2TTjkwEnFMVL5XIfJEavnLqqwYSD6LXgTPdEy/u6FlSrLBSSfe1pcfqhFEXRAgVL3Wpjibe5wXJzWog==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-linux-arm64-gnu": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.13.tgz",
- "integrity": "sha512-yB1tYEFFqo4ZNWkwrJultbsw7NPAAxlPXURXioRl9SdW6aIefOLS+0TEsKrWBtbJ9moTDgU3HRILL6QBQnMevg==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-linux-arm64-musl": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.13.tgz",
- "integrity": "sha512-v5jZ/FV/eHGoWhMKYrsAweQ7CWb8xsWGM/8m1mwwZQ/sutJjoFaXchwK4pX8NqwImILEvQmZWyb8pPTcP7htWg==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-linux-x64-gnu": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.13.tgz",
- "integrity": "sha512-aVc7m4YL7ViiRv7SOXK3RplXzOEe/qQzRA5R2vpXboHABs3w8vtFslGTz+5tKiQzWUmTmBNVW0UQdhkKRORmGA==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-linux-x64-musl": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.13.tgz",
- "integrity": "sha512-4wWY7/OsSaJOOKvMsu1Teylku7vKyTuocvDLTZQq0TYv9OjiYYWt63PiE1nTuZnqQ4RPvME7Xai+9enoiN0Wrg==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-win32-arm64-msvc": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.13.tgz",
- "integrity": "sha512-uP1XkqCqV2NVH9+g2sC7qIw+w2tRbcMiXFEbMihkQ8B1+V6m28sshBwAB0SDmOe0u44ne1vFU66+gx/28RsBVQ==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-win32-ia32-msvc": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.13.tgz",
- "integrity": "sha512-V26ezyjPqQpDBV4lcWIh8B/QICQ4v+M5Bo9ykLN+sqeKKBxJVDpEc6biDVyluTXTC40f5IqCU0ttth7Es2ZuMw==",
- "cpu": [
- "ia32"
- ],
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-win32-x64-msvc": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.13.tgz",
- "integrity": "sha512-WwzOEAFBGhlDHE5Z73mNU8CO8mqMNLqaG+AO9ETmzdCQlJhVtWZnOl2+rqgVQS+YHunjOWptdFmNfbpwcUuEsw==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@nodelib/fs.scandir": {
- "version": "2.1.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
- "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
- "dependencies": {
- "@nodelib/fs.stat": "2.0.5",
- "run-parallel": "^1.1.9"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/@nodelib/fs.stat": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
- "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/@nodelib/fs.walk": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
- "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
- "dependencies": {
- "@nodelib/fs.scandir": "2.1.5",
- "fastq": "^1.6.0"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/@npmcli/agent": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz",
- "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==",
- "dependencies": {
- "agent-base": "^7.1.0",
- "http-proxy-agent": "^7.0.0",
- "https-proxy-agent": "^7.0.1",
- "lru-cache": "^10.0.1",
- "socks-proxy-agent": "^8.0.3"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/agent/node_modules/agent-base": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz",
- "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==",
- "dependencies": {
- "debug": "^4.3.4"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@npmcli/agent/node_modules/http-proxy-agent": {
- "version": "7.0.2",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz",
- "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==",
- "dependencies": {
- "agent-base": "^7.1.0",
- "debug": "^4.3.4"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@npmcli/agent/node_modules/https-proxy-agent": {
- "version": "7.0.5",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz",
- "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==",
- "dependencies": {
- "agent-base": "^7.0.2",
- "debug": "4"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@npmcli/arborist": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-7.5.4.tgz",
- "integrity": "sha512-nWtIc6QwwoUORCRNzKx4ypHqCk3drI+5aeYdMTQQiRCcn4lOOgfQh7WyZobGYTxXPSq1VwV53lkpN/BRlRk08g==",
- "dependencies": {
- "@isaacs/string-locale-compare": "^1.1.0",
- "@npmcli/fs": "^3.1.1",
- "@npmcli/installed-package-contents": "^2.1.0",
- "@npmcli/map-workspaces": "^3.0.2",
- "@npmcli/metavuln-calculator": "^7.1.1",
- "@npmcli/name-from-folder": "^2.0.0",
- "@npmcli/node-gyp": "^3.0.0",
- "@npmcli/package-json": "^5.1.0",
- "@npmcli/query": "^3.1.0",
- "@npmcli/redact": "^2.0.0",
- "@npmcli/run-script": "^8.1.0",
- "bin-links": "^4.0.4",
- "cacache": "^18.0.3",
- "common-ancestor-path": "^1.0.1",
- "hosted-git-info": "^7.0.2",
- "json-parse-even-better-errors": "^3.0.2",
- "json-stringify-nice": "^1.1.4",
- "lru-cache": "^10.2.2",
- "minimatch": "^9.0.4",
- "nopt": "^7.2.1",
- "npm-install-checks": "^6.2.0",
- "npm-package-arg": "^11.0.2",
- "npm-pick-manifest": "^9.0.1",
- "npm-registry-fetch": "^17.0.1",
- "pacote": "^18.0.6",
- "parse-conflict-json": "^3.0.0",
- "proc-log": "^4.2.0",
- "proggy": "^2.0.0",
- "promise-all-reject-late": "^1.0.0",
- "promise-call-limit": "^3.0.1",
- "read-package-json-fast": "^3.0.2",
- "semver": "^7.3.7",
- "ssri": "^10.0.6",
- "treeverse": "^3.0.0",
- "walk-up-path": "^3.0.1"
- },
- "bin": {
- "arborist": "bin/index.js"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/arborist/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/@npmcli/arborist/node_modules/json-parse-even-better-errors": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz",
- "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/arborist/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@npmcli/fs": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz",
- "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==",
- "dependencies": {
- "semver": "^7.3.5"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/git": {
- "version": "5.0.8",
- "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.8.tgz",
- "integrity": "sha512-liASfw5cqhjNW9UFd+ruwwdEf/lbOAQjLL2XY2dFW/bkJheXDYZgOyul/4gVvEV4BWkTXjYGmDqMw9uegdbJNQ==",
- "dependencies": {
- "@npmcli/promise-spawn": "^7.0.0",
- "ini": "^4.1.3",
- "lru-cache": "^10.0.1",
- "npm-pick-manifest": "^9.0.0",
- "proc-log": "^4.0.0",
- "promise-inflight": "^1.0.1",
- "promise-retry": "^2.0.1",
- "semver": "^7.3.5",
- "which": "^4.0.0"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/git/node_modules/ini": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz",
- "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/git/node_modules/isexe": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz",
- "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==",
- "engines": {
- "node": ">=16"
- }
- },
- "node_modules/@npmcli/git/node_modules/which": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz",
- "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==",
- "dependencies": {
- "isexe": "^3.1.1"
- },
- "bin": {
- "node-which": "bin/which.js"
- },
- "engines": {
- "node": "^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/installed-package-contents": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz",
- "integrity": "sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w==",
- "dependencies": {
- "npm-bundled": "^3.0.0",
- "npm-normalize-package-bin": "^3.0.0"
- },
- "bin": {
- "installed-package-contents": "bin/index.js"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/map-workspaces": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.6.tgz",
- "integrity": "sha512-tkYs0OYnzQm6iIRdfy+LcLBjcKuQCeE5YLb8KnrIlutJfheNaPvPpgoFEyEFgbjzl5PLZ3IA/BWAwRU0eHuQDA==",
- "dependencies": {
- "@npmcli/name-from-folder": "^2.0.0",
- "glob": "^10.2.2",
- "minimatch": "^9.0.0",
- "read-package-json-fast": "^3.0.0"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/map-workspaces/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/@npmcli/map-workspaces/node_modules/glob": {
- "version": "10.4.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
- "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
- "dependencies": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^3.1.2",
- "minimatch": "^9.0.4",
- "minipass": "^7.1.2",
- "package-json-from-dist": "^1.0.0",
- "path-scurry": "^1.11.1"
- },
- "bin": {
- "glob": "dist/esm/bin.mjs"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@npmcli/map-workspaces/node_modules/jackspeak": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz",
- "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
- "dependencies": {
- "@isaacs/cliui": "^8.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- },
- "optionalDependencies": {
- "@pkgjs/parseargs": "^0.11.0"
- }
- },
- "node_modules/@npmcli/map-workspaces/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@npmcli/map-workspaces/node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/@npmcli/metavuln-calculator": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-7.1.1.tgz",
- "integrity": "sha512-Nkxf96V0lAx3HCpVda7Vw4P23RILgdi/5K1fmj2tZkWIYLpXAN8k2UVVOsW16TsS5F8Ws2I7Cm+PU1/rsVF47g==",
- "dependencies": {
- "cacache": "^18.0.0",
- "json-parse-even-better-errors": "^3.0.0",
- "pacote": "^18.0.0",
- "proc-log": "^4.1.0",
- "semver": "^7.3.5"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/metavuln-calculator/node_modules/json-parse-even-better-errors": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz",
- "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/name-from-folder": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz",
- "integrity": "sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/node-gyp": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz",
- "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/package-json": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.2.0.tgz",
- "integrity": "sha512-qe/kiqqkW0AGtvBjL8TJKZk/eBBSpnJkUWvHdQ9jM2lKHXRYYJuyNpJPlJw3c8QjC2ow6NZYiLExhUaeJelbxQ==",
- "dependencies": {
- "@npmcli/git": "^5.0.0",
- "glob": "^10.2.2",
- "hosted-git-info": "^7.0.0",
- "json-parse-even-better-errors": "^3.0.0",
- "normalize-package-data": "^6.0.0",
- "proc-log": "^4.0.0",
- "semver": "^7.5.3"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/package-json/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/@npmcli/package-json/node_modules/glob": {
- "version": "10.4.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
- "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
- "dependencies": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^3.1.2",
- "minimatch": "^9.0.4",
- "minipass": "^7.1.2",
- "package-json-from-dist": "^1.0.0",
- "path-scurry": "^1.11.1"
- },
- "bin": {
- "glob": "dist/esm/bin.mjs"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@npmcli/package-json/node_modules/jackspeak": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz",
- "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
- "dependencies": {
- "@isaacs/cliui": "^8.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- },
- "optionalDependencies": {
- "@pkgjs/parseargs": "^0.11.0"
- }
- },
- "node_modules/@npmcli/package-json/node_modules/json-parse-even-better-errors": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz",
- "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/package-json/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@npmcli/package-json/node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/@npmcli/promise-spawn": {
- "version": "7.0.2",
- "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz",
- "integrity": "sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ==",
- "dependencies": {
- "which": "^4.0.0"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/promise-spawn/node_modules/isexe": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz",
- "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==",
- "engines": {
- "node": ">=16"
- }
- },
- "node_modules/@npmcli/promise-spawn/node_modules/which": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz",
- "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==",
- "dependencies": {
- "isexe": "^3.1.1"
- },
- "bin": {
- "node-which": "bin/which.js"
- },
- "engines": {
- "node": "^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/query": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@npmcli/query/-/query-3.1.0.tgz",
- "integrity": "sha512-C/iR0tk7KSKGldibYIB9x8GtO/0Bd0I2mhOaDb8ucQL/bQVTmGoeREaFj64Z5+iCBRf3dQfed0CjJL7I8iTkiQ==",
- "dependencies": {
- "postcss-selector-parser": "^6.0.10"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/redact": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-2.0.1.tgz",
- "integrity": "sha512-YgsR5jCQZhVmTJvjduTOIHph0L73pK8xwMVaDY0PatySqVM9AZj93jpoXYSJqfHFxFkN9dmqTw6OiqExsS3LPw==",
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/run-script": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-8.1.0.tgz",
- "integrity": "sha512-y7efHHwghQfk28G2z3tlZ67pLG0XdfYbcVG26r7YIXALRsrVQcTq4/tdenSmdOrEsNahIYA/eh8aEVROWGFUDg==",
- "dependencies": {
- "@npmcli/node-gyp": "^3.0.0",
- "@npmcli/package-json": "^5.0.0",
- "@npmcli/promise-spawn": "^7.0.0",
- "node-gyp": "^10.0.0",
- "proc-log": "^4.0.0",
- "which": "^4.0.0"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@npmcli/run-script/node_modules/isexe": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz",
- "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==",
- "engines": {
- "node": ">=16"
- }
- },
- "node_modules/@npmcli/run-script/node_modules/which": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz",
- "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==",
- "dependencies": {
- "isexe": "^3.1.1"
- },
- "bin": {
- "node-which": "bin/which.js"
- },
- "engines": {
- "node": "^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/@nrwl/devkit": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nrwl/devkit/-/devkit-19.6.2.tgz",
- "integrity": "sha512-1caQTLJBcvOLDZpB3yHY0zczcaaOh044MeegS0oyllPYYbCi6PiJK33HC8qoH1TGiahT6+VxSFN7OYnD3QK4vQ==",
- "dependencies": {
- "@nx/devkit": "19.6.2"
- }
- },
- "node_modules/@nrwl/tao": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nrwl/tao/-/tao-19.6.2.tgz",
- "integrity": "sha512-DcqpaKpkUbF+J2kVRoLtYZOFpr8mu4+fHiKIjrdliKVabSOzekwRAx0DN+VZdpUoaZ2+5W+F8RFhSak1216ZCg==",
- "dependencies": {
- "nx": "19.6.2",
- "tslib": "^2.3.0"
- },
- "bin": {
- "tao": "index.js"
- }
- },
- "node_modules/@nx/devkit": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/devkit/-/devkit-19.6.2.tgz",
- "integrity": "sha512-fyZ+z0CnpXsGbnOTgsxwjOJH/K1cgSkhyHSOW3BcIvncx4Q4o8Y74flRz2mrZLJeURBs+IelYI2REkCPdba2cg==",
- "dependencies": {
- "@nrwl/devkit": "19.6.2",
- "ejs": "^3.1.7",
- "enquirer": "~2.3.6",
- "ignore": "^5.0.4",
- "minimatch": "9.0.3",
- "semver": "^7.5.3",
- "tmp": "~0.2.1",
- "tslib": "^2.3.0",
- "yargs-parser": "21.1.1"
- },
- "peerDependencies": {
- "nx": ">= 17 <= 20"
- }
- },
- "node_modules/@nx/devkit/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/@nx/devkit/node_modules/minimatch": {
- "version": "9.0.3",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz",
- "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@nx/nx-darwin-arm64": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-darwin-arm64/-/nx-darwin-arm64-19.6.2.tgz",
- "integrity": "sha512-WCt9bK5CiuXiiE/8ivoeOEy3J2xYx2Eduea+8PdyK+21FzWakSV4GK0DUfC/dmLPyc+osx2kpmVO+l4HVBIEJw==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@nx/nx-darwin-x64": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-darwin-x64/-/nx-darwin-x64-19.6.2.tgz",
- "integrity": "sha512-jCB4yTE97/UkUd1V7ttFLJkVRx2vkQgHAqcmU0l8pAPRWKplYkO43J4g4M3M8SyLsX6arPIlfIT3uBh8TzqxXA==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@nx/nx-freebsd-x64": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-freebsd-x64/-/nx-freebsd-x64-19.6.2.tgz",
- "integrity": "sha512-ZBFTHO9vhaSpzuopAww9xznseNjE2CUXGSq5be0CUBoIvGn4TWvjOfv+tinIbKSYiWdfL1PYMqnE2FIqyxscNA==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "freebsd"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@nx/nx-linux-arm-gnueabihf": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-19.6.2.tgz",
- "integrity": "sha512-Aubnlvx/47zAOIlp+ZWxe6Xq3cX9sSMRsB7xZhLkGnpcKwsKEh+uDWi6yfdnmLBp02ZY16qwcpAeYlyBRHZRUA==",
- "cpu": [
- "arm"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@nx/nx-linux-arm64-gnu": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-19.6.2.tgz",
- "integrity": "sha512-LorZsjhaz7vajwzGVAGUMtMpu5232UvJceB7XzUXF1TEWM2FZfSUCdLKdQgR2YZHeALYzVoEQgU/j6zKldMqpw==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@nx/nx-linux-arm64-musl": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-19.6.2.tgz",
- "integrity": "sha512-+s4BD6NkmsrnxYHWpJ84Lm49rsTa5tY4Zpz09kpMCc7NNQdIYtWimexGmaHGiIY9FmwqaQCx54lCxSXUXQ3hoQ==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@nx/nx-linux-x64-gnu": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-19.6.2.tgz",
- "integrity": "sha512-O7ao0x7j7mwgPS8DkWmMtewTRyharQSURq2kUgWwyCJgVbr5ggV8RySmt/uLT9Tv/2LUDerWdBnd30oDr70M5g==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@nx/nx-linux-x64-musl": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-19.6.2.tgz",
- "integrity": "sha512-7tVOQoorw8o1n5CAtLTlJx9oI/py+V3NX0PTdX/Pa7tA6gxyrZW51HlpODssRZ5PM9171G8VAZVROP9eDLfntQ==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@nx/nx-win32-arm64-msvc": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-19.6.2.tgz",
- "integrity": "sha512-l12NsHLaCAYdZPOP8KrXnSWxrytcJuifBJTejy7Xu9rFQMEDWI7dKap8vKJrYIRUtJjOsF8Yjq38064noZkLdw==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@nx/nx-win32-x64-msvc": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-19.6.2.tgz",
- "integrity": "sha512-B+80FY1kDWHMCOZubt786BtQOZn+LJ6CzjDGHSocqVMVqJDvBzrlf4qwmHeOIACWAsbZtJmWu+do3FriZ53ovA==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@octokit/auth-token": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.4.tgz",
- "integrity": "sha512-TWFX7cZF2LXoCvdmJWY7XVPi74aSY0+FfBZNSXEXFkMpjcqsQwDSYVv5FhRFaI0V1ECnwbz4j59T/G+rXNWaIQ==",
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/core": {
- "version": "4.2.4",
- "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.4.tgz",
- "integrity": "sha512-rYKilwgzQ7/imScn3M9/pFfUf4I1AZEH3KhyJmtPdE2zfaXAn2mFfUy4FbKewzc2We5y/LlKLj36fWJLKC2SIQ==",
- "dependencies": {
- "@octokit/auth-token": "^3.0.0",
- "@octokit/graphql": "^5.0.0",
- "@octokit/request": "^6.0.0",
- "@octokit/request-error": "^3.0.0",
- "@octokit/types": "^9.0.0",
- "before-after-hook": "^2.2.0",
- "universal-user-agent": "^6.0.0"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/endpoint": {
- "version": "7.0.6",
- "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.6.tgz",
- "integrity": "sha512-5L4fseVRUsDFGR00tMWD/Trdeeihn999rTMGRMC1G/Ldi1uWlWJzI98H4Iak5DB/RVvQuyMYKqSK/R6mbSOQyg==",
- "dependencies": {
- "@octokit/types": "^9.0.0",
- "is-plain-object": "^5.0.0",
- "universal-user-agent": "^6.0.0"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/graphql": {
- "version": "5.0.6",
- "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.6.tgz",
- "integrity": "sha512-Fxyxdy/JH0MnIB5h+UQ3yCoh1FG4kWXfFKkpWqjZHw/p+Kc8Y44Hu/kCgNBT6nU1shNumEchmW/sUO1JuQnPcw==",
- "dependencies": {
- "@octokit/request": "^6.0.0",
- "@octokit/types": "^9.0.0",
- "universal-user-agent": "^6.0.0"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/openapi-types": {
- "version": "18.1.1",
- "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.1.1.tgz",
- "integrity": "sha512-VRaeH8nCDtF5aXWnjPuEMIYf1itK/s3JYyJcWFJT8X9pSNnBtriDf7wlEWsGuhPLl4QIH4xM8fqTXDwJ3Mu6sw=="
- },
- "node_modules/@octokit/plugin-enterprise-rest": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz",
- "integrity": "sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw=="
- },
- "node_modules/@octokit/plugin-paginate-rest": {
- "version": "6.1.2",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.1.2.tgz",
- "integrity": "sha512-qhrmtQeHU/IivxucOV1bbI/xZyC/iOBhclokv7Sut5vnejAIAEXVcGQeRpQlU39E0WwK9lNvJHphHri/DB6lbQ==",
- "dependencies": {
- "@octokit/tsconfig": "^1.0.2",
- "@octokit/types": "^9.2.3"
- },
- "engines": {
- "node": ">= 14"
- },
- "peerDependencies": {
- "@octokit/core": ">=4"
- }
- },
- "node_modules/@octokit/plugin-request-log": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz",
- "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==",
- "peerDependencies": {
- "@octokit/core": ">=3"
- }
- },
- "node_modules/@octokit/plugin-rest-endpoint-methods": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-7.2.3.tgz",
- "integrity": "sha512-I5Gml6kTAkzVlN7KCtjOM+Ruwe/rQppp0QU372K1GP7kNOYEKe8Xn5BW4sE62JAHdwpq95OQK/qGNyKQMUzVgA==",
- "dependencies": {
- "@octokit/types": "^10.0.0"
- },
- "engines": {
- "node": ">= 14"
- },
- "peerDependencies": {
- "@octokit/core": ">=3"
- }
- },
- "node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/types": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@octokit/types/-/types-10.0.0.tgz",
- "integrity": "sha512-Vm8IddVmhCgU1fxC1eyinpwqzXPEYu0NrYzD3YZjlGjyftdLBTeqNblRC0jmJmgxbJIsQlyogVeGnrNaaMVzIg==",
- "dependencies": {
- "@octokit/openapi-types": "^18.0.0"
- }
- },
- "node_modules/@octokit/request": {
- "version": "6.2.8",
- "resolved": "https://registry.npmjs.org/@octokit/request/-/request-6.2.8.tgz",
- "integrity": "sha512-ow4+pkVQ+6XVVsekSYBzJC0VTVvh/FCTUUgTsboGq+DTeWdyIFV8WSCdo0RIxk6wSkBTHqIK1mYuY7nOBXOchw==",
- "dependencies": {
- "@octokit/endpoint": "^7.0.0",
- "@octokit/request-error": "^3.0.0",
- "@octokit/types": "^9.0.0",
- "is-plain-object": "^5.0.0",
- "node-fetch": "^2.6.7",
- "universal-user-agent": "^6.0.0"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/request-error": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.3.tgz",
- "integrity": "sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ==",
- "dependencies": {
- "@octokit/types": "^9.0.0",
- "deprecation": "^2.0.0",
- "once": "^1.4.0"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/rest": {
- "version": "19.0.11",
- "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.11.tgz",
- "integrity": "sha512-m2a9VhaP5/tUw8FwfnW2ICXlXpLPIqxtg3XcAiGMLj/Xhw3RSBfZ8le/466ktO1Gcjr8oXudGnHhxV1TXJgFxw==",
- "dependencies": {
- "@octokit/core": "^4.2.1",
- "@octokit/plugin-paginate-rest": "^6.1.2",
- "@octokit/plugin-request-log": "^1.0.4",
- "@octokit/plugin-rest-endpoint-methods": "^7.1.2"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/tsconfig": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@octokit/tsconfig/-/tsconfig-1.0.2.tgz",
- "integrity": "sha512-I0vDR0rdtP8p2lGMzvsJzbhdOWy405HcGovrspJ8RRibHnyRgggUSNO5AIox5LmqiwmatHKYsvj6VGFHkqS7lA=="
- },
- "node_modules/@octokit/types": {
- "version": "9.3.2",
- "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.3.2.tgz",
- "integrity": "sha512-D4iHGTdAnEEVsB8fl95m1hiz7D5YiRdQ9b/OEb3BYRVwbLsGHcRVPz+u+BgRLNk0Q0/4iZCBqDN96j2XNxfXrA==",
- "dependencies": {
- "@octokit/openapi-types": "^18.0.0"
- }
- },
- "node_modules/@pkgjs/parseargs": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
- "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
- "optional": true,
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/@pkgr/core": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.0.tgz",
- "integrity": "sha512-Zwq5OCzuwJC2jwqmpEQt7Ds1DTi6BWSwoGkbb1n9pO3hzb35BoJELx7c0T23iDkBGkh2e7tvOtjF3tr3OaQHDQ==",
- "engines": {
- "node": "^12.20.0 || ^14.18.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/unts"
- }
- },
- "node_modules/@popperjs/core": {
- "version": "2.11.8",
- "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
- "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==",
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/popperjs"
- }
- },
- "node_modules/@react-aria/ssr": {
- "version": "3.9.4",
- "resolved": "https://registry.npmjs.org/@react-aria/ssr/-/ssr-3.9.4.tgz",
- "integrity": "sha512-4jmAigVq409qcJvQyuorsmBR4+9r3+JEC60wC+Y0MZV0HCtTmm8D9guYXlJMdx0SSkgj0hHAyFm/HvPNFofCoQ==",
- "dependencies": {
- "@swc/helpers": "^0.5.0"
- },
- "engines": {
- "node": ">= 12"
- },
- "peerDependencies": {
- "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0"
- }
- },
- "node_modules/@restart/hooks": {
- "version": "0.4.16",
- "resolved": "https://registry.npmjs.org/@restart/hooks/-/hooks-0.4.16.tgz",
- "integrity": "sha512-f7aCv7c+nU/3mF7NWLtVVr0Ra80RqsO89hO72r+Y/nvQr5+q0UFGkocElTH6MJApvReVh6JHUFYn2cw1WdHF3w==",
- "dependencies": {
- "dequal": "^2.0.3"
- },
- "peerDependencies": {
- "react": ">=16.8.0"
- }
- },
- "node_modules/@restart/ui": {
- "version": "1.6.9",
- "resolved": "https://registry.npmjs.org/@restart/ui/-/ui-1.6.9.tgz",
- "integrity": "sha512-mUbygUsJcRurjZCt1f77gg4DpheD1D+Sc7J3JjAkysUj7t8m4EBJVOqWC9788Qtbc69cJ+HlJc6jBguKwS8Mcw==",
- "dependencies": {
- "@babel/runtime": "^7.21.0",
- "@popperjs/core": "^2.11.6",
- "@react-aria/ssr": "^3.5.0",
- "@restart/hooks": "^0.4.9",
- "@types/warning": "^3.0.0",
- "dequal": "^2.0.3",
- "dom-helpers": "^5.2.0",
- "uncontrollable": "^8.0.1",
- "warning": "^4.0.3"
- },
- "peerDependencies": {
- "react": ">=16.14.0",
- "react-dom": ">=16.14.0"
- }
- },
- "node_modules/@restart/ui/node_modules/uncontrollable": {
- "version": "8.0.4",
- "resolved": "https://registry.npmjs.org/uncontrollable/-/uncontrollable-8.0.4.tgz",
- "integrity": "sha512-ulRWYWHvscPFc0QQXvyJjY6LIXU56f0h8pQFvhxiKk5V1fcI8gp9Ht9leVAhrVjzqMw0BgjspBINx9r6oyJUvQ==",
- "peerDependencies": {
- "react": ">=16.14.0"
- }
- },
- "node_modules/@rushstack/eslint-patch": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.5.1.tgz",
- "integrity": "sha512-6i/8UoL0P5y4leBIGzvkZdS85RDMG9y1ihZzmTZQ5LdHUYmZ7pKFoj8X0236s3lusPs1Fa5HTQUpwI+UfTcmeA=="
- },
- "node_modules/@sigstore/bundle": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.3.2.tgz",
- "integrity": "sha512-wueKWDk70QixNLB363yHc2D2ItTgYiMTdPwK8D9dKQMR3ZQ0c35IxP5xnwQ8cNLoCgCRcHf14kE+CLIvNX1zmA==",
- "dependencies": {
- "@sigstore/protobuf-specs": "^0.3.2"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@sigstore/core": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-1.1.0.tgz",
- "integrity": "sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg==",
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@sigstore/protobuf-specs": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.2.tgz",
- "integrity": "sha512-c6B0ehIWxMI8wiS/bj6rHMPqeFvngFV7cDU/MY+B16P9Z3Mp9k8L93eYZ7BYzSickzuqAQqAq0V956b3Ju6mLw==",
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@sigstore/sign": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.2.tgz",
- "integrity": "sha512-5Vz5dPVuunIIvC5vBb0APwo7qKA4G9yM48kPWJT+OEERs40md5GoUR1yedwpekWZ4m0Hhw44m6zU+ObsON+iDA==",
- "dependencies": {
- "@sigstore/bundle": "^2.3.2",
- "@sigstore/core": "^1.0.0",
- "@sigstore/protobuf-specs": "^0.3.2",
- "make-fetch-happen": "^13.0.1",
- "proc-log": "^4.2.0",
- "promise-retry": "^2.0.1"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@sigstore/tuf": {
- "version": "2.3.4",
- "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz",
- "integrity": "sha512-44vtsveTPUpqhm9NCrbU8CWLe3Vck2HO1PNLw7RIajbB7xhtn5RBPm1VNSCMwqGYHhDsBJG8gDF0q4lgydsJvw==",
- "dependencies": {
- "@sigstore/protobuf-specs": "^0.3.2",
- "tuf-js": "^2.2.1"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@sigstore/verify": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.1.tgz",
- "integrity": "sha512-8iKx79/F73DKbGfRf7+t4dqrc0bRr0thdPrxAtCKWRm/F0tG71i6O1rvlnScncJLLBZHn3h8M3c1BSUAb9yu8g==",
- "dependencies": {
- "@sigstore/bundle": "^2.3.2",
- "@sigstore/core": "^1.1.0",
- "@sigstore/protobuf-specs": "^0.3.2"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@sinclair/typebox": {
- "version": "0.27.8",
- "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz",
- "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA=="
- },
- "node_modules/@sinonjs/commons": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz",
- "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==",
- "dependencies": {
- "type-detect": "4.0.8"
- }
- },
- "node_modules/@sinonjs/fake-timers": {
- "version": "10.3.0",
- "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz",
- "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==",
- "dependencies": {
- "@sinonjs/commons": "^3.0.0"
- }
- },
- "node_modules/@smithy/abort-controller": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.1.tgz",
- "integrity": "sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/chunked-blob-reader": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-3.0.0.tgz",
- "integrity": "sha512-sbnURCwjF0gSToGlsBiAmd1lRCmSn72nu9axfJu5lIx6RUEgHu6GwTMbqCdhQSi0Pumcm5vFxsi9XWXb2mTaoA==",
- "dependencies": {
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@smithy/chunked-blob-reader-native": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.0.tgz",
- "integrity": "sha512-VDkpCYW+peSuM4zJip5WDfqvg2Mo/e8yxOv3VF1m11y7B8KKMKVFtmZWDe36Fvk8rGuWrPZHHXZ7rR7uM5yWyg==",
- "dependencies": {
- "@smithy/util-base64": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@smithy/config-resolver": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.5.tgz",
- "integrity": "sha512-SkW5LxfkSI1bUC74OtfBbdz+grQXYiPYolyu8VfpLIjEoN/sHVBlLeGXMQ1vX4ejkgfv6sxVbQJ32yF2cl1veA==",
- "dependencies": {
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "@smithy/util-config-provider": "^3.0.0",
- "@smithy/util-middleware": "^3.0.3",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/core": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.4.0.tgz",
- "integrity": "sha512-cHXq+FneIF/KJbt4q4pjN186+Jf4ZB0ZOqEaZMBhT79srEyGDDBV31NqBRBjazz8ppQ1bJbDJMY9ba5wKFV36w==",
- "dependencies": {
- "@smithy/middleware-endpoint": "^3.1.0",
- "@smithy/middleware-retry": "^3.0.15",
- "@smithy/middleware-serde": "^3.0.3",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-body-length-browser": "^3.0.0",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/credential-provider-imds": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.0.tgz",
- "integrity": "sha512-0SCIzgd8LYZ9EJxUjLXBmEKSZR/P/w6l7Rz/pab9culE/RWuqelAKGJvn5qUOl8BgX8Yj5HWM50A5hiB/RzsgA==",
- "dependencies": {
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/types": "^3.3.0",
- "@smithy/url-parser": "^3.0.3",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/eventstream-codec": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.1.2.tgz",
- "integrity": "sha512-0mBcu49JWt4MXhrhRAlxASNy0IjDRFU+aWNDRal9OtUJvJNiwDuyKMUONSOjLjSCeGwZaE0wOErdqULer8r7yw==",
- "dependencies": {
- "@aws-crypto/crc32": "5.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-hex-encoding": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@smithy/eventstream-serde-browser": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.6.tgz",
- "integrity": "sha512-2hM54UWQUOrki4BtsUI1WzmD13/SeaqT/AB3EUJKbcver/WgKNaiJ5y5F5XXuVe6UekffVzuUDrBZVAA3AWRpQ==",
- "dependencies": {
- "@smithy/eventstream-serde-universal": "^3.0.5",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/eventstream-serde-config-resolver": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.3.tgz",
- "integrity": "sha512-NVTYjOuYpGfrN/VbRQgn31x73KDLfCXCsFdad8DiIc3IcdxL+dYA9zEQPyOP7Fy2QL8CPy2WE4WCUD+ZsLNfaQ==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/eventstream-serde-node": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.5.tgz",
- "integrity": "sha512-+upXvnHNyZP095s11jF5dhGw/Ihzqwl5G+/KtMnoQOpdfC3B5HYCcDVG9EmgkhJMXJlM64PyN5gjJl0uXFQehQ==",
- "dependencies": {
- "@smithy/eventstream-serde-universal": "^3.0.5",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/eventstream-serde-universal": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.5.tgz",
- "integrity": "sha512-5u/nXbyoh1s4QxrvNre9V6vfyoLWuiVvvd5TlZjGThIikc3G+uNiG9uOTCWweSRjv1asdDIWK7nOmN7le4RYHQ==",
- "dependencies": {
- "@smithy/eventstream-codec": "^3.1.2",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/fetch-http-handler": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.4.tgz",
- "integrity": "sha512-kBprh5Gs5h7ug4nBWZi1FZthdqSM+T7zMmsZxx0IBvWUn7dK3diz2SHn7Bs4dQGFDk8plDv375gzenDoNwrXjg==",
- "dependencies": {
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/querystring-builder": "^3.0.3",
- "@smithy/types": "^3.3.0",
- "@smithy/util-base64": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@smithy/hash-blob-browser": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.2.tgz",
- "integrity": "sha512-hAbfqN2UbISltakCC2TP0kx4LqXBttEv2MqSPE98gVuDFMf05lU+TpC41QtqGP3Ff5A3GwZMPfKnEy0VmEUpmg==",
- "dependencies": {
- "@smithy/chunked-blob-reader": "^3.0.0",
- "@smithy/chunked-blob-reader-native": "^3.0.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@smithy/hash-node": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.3.tgz",
- "integrity": "sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "@smithy/util-buffer-from": "^3.0.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/hash-stream-node": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.1.2.tgz",
- "integrity": "sha512-PBgDMeEdDzi6JxKwbfBtwQG9eT9cVwsf0dZzLXoJF4sHKHs5HEo/3lJWpn6jibfJwT34I1EBXpBnZE8AxAft6g==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/invalid-dependency": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.3.tgz",
- "integrity": "sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@smithy/is-array-buffer": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-3.0.0.tgz",
- "integrity": "sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/md5-js": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.3.tgz",
- "integrity": "sha512-O/SAkGVwpWmelpj/8yDtsaVe6sINHLB1q8YE/+ZQbDxIw3SRLbTZuRaI10K12sVoENdnHqzPp5i3/H+BcZ3m3Q==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@smithy/middleware-content-length": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.5.tgz",
- "integrity": "sha512-ILEzC2eyxx6ncej3zZSwMpB5RJ0zuqH7eMptxC4KN3f+v9bqT8ohssKbhNR78k/2tWW+KS5Spw+tbPF4Ejyqvw==",
- "dependencies": {
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/middleware-endpoint": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.1.0.tgz",
- "integrity": "sha512-5y5aiKCEwg9TDPB4yFE7H6tYvGFf1OJHNczeY10/EFF8Ir8jZbNntQJxMWNfeQjC1mxPsaQ6mR9cvQbf+0YeMw==",
- "dependencies": {
- "@smithy/middleware-serde": "^3.0.3",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "@smithy/url-parser": "^3.0.3",
- "@smithy/util-middleware": "^3.0.3",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/middleware-retry": {
- "version": "3.0.15",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.15.tgz",
- "integrity": "sha512-iTMedvNt1ApdvkaoE8aSDuwaoc+BhvHqttbA/FO4Ty+y/S5hW6Ci/CTScG7vam4RYJWZxdTElc3MEfHRVH6cgQ==",
- "dependencies": {
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/service-error-classification": "^3.0.3",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-retry": "^3.0.3",
- "tslib": "^2.6.2",
- "uuid": "^9.0.1"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/middleware-retry/node_modules/uuid": {
- "version": "9.0.1",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
- "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
- "funding": [
- "https://github.com/sponsors/broofa",
- "https://github.com/sponsors/ctavan"
- ],
- "bin": {
- "uuid": "dist/bin/uuid"
- }
- },
- "node_modules/@smithy/middleware-serde": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.3.tgz",
- "integrity": "sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/middleware-stack": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.3.tgz",
- "integrity": "sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/node-config-provider": {
- "version": "3.1.4",
- "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.4.tgz",
- "integrity": "sha512-YvnElQy8HR4vDcAjoy7Xkx9YT8xZP4cBXcbJSgm/kxmiQu08DwUwj8rkGnyoJTpfl/3xYHH+d8zE+eHqoDCSdQ==",
- "dependencies": {
- "@smithy/property-provider": "^3.1.3",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/node-http-handler": {
- "version": "3.1.4",
- "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.1.4.tgz",
- "integrity": "sha512-+UmxgixgOr/yLsUxcEKGH0fMNVteJFGkmRltYFHnBMlogyFdpzn2CwqWmxOrfJELhV34v0WSlaqG1UtE1uXlJg==",
- "dependencies": {
- "@smithy/abort-controller": "^3.1.1",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/querystring-builder": "^3.0.3",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/property-provider": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.3.tgz",
- "integrity": "sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/protocol-http": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.1.0.tgz",
- "integrity": "sha512-dPVoHYQ2wcHooGXg3LQisa1hH0e4y0pAddPMeeUPipI1tEOqL6A4N0/G7abeq+K8wrwSgjk4C0wnD1XZpJm5aA==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/querystring-builder": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.3.tgz",
- "integrity": "sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "@smithy/util-uri-escape": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/querystring-parser": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.3.tgz",
- "integrity": "sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/service-error-classification": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.3.tgz",
- "integrity": "sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==",
- "dependencies": {
- "@smithy/types": "^3.3.0"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/shared-ini-file-loader": {
- "version": "3.1.4",
- "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.4.tgz",
- "integrity": "sha512-qMxS4hBGB8FY2GQqshcRUy1K6k8aBWP5vwm8qKkCT3A9K2dawUwOIJfqh9Yste/Bl0J2lzosVyrXDj68kLcHXQ==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/signature-v4": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-4.1.0.tgz",
- "integrity": "sha512-aRryp2XNZeRcOtuJoxjydO6QTaVhxx/vjaR+gx7ZjaFgrgPRyZ3HCTbfwqYj6ZWEBHkCSUfcaymKPURaByukag==",
- "dependencies": {
- "@smithy/is-array-buffer": "^3.0.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-hex-encoding": "^3.0.0",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-uri-escape": "^3.0.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/smithy-client": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.2.0.tgz",
- "integrity": "sha512-pDbtxs8WOhJLJSeaF/eAbPgXg4VVYFlRcL/zoNYA5WbG3wBL06CHtBSg53ppkttDpAJ/hdiede+xApip1CwSLw==",
- "dependencies": {
- "@smithy/middleware-endpoint": "^3.1.0",
- "@smithy/middleware-stack": "^3.0.3",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-stream": "^3.1.3",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/types": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.3.0.tgz",
- "integrity": "sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/url-parser": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.3.tgz",
- "integrity": "sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==",
- "dependencies": {
- "@smithy/querystring-parser": "^3.0.3",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@smithy/util-base64": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz",
- "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==",
- "dependencies": {
- "@smithy/util-buffer-from": "^3.0.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/util-body-length-browser": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz",
- "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==",
- "dependencies": {
- "tslib": "^2.6.2"
- }
- },
- "node_modules/@smithy/util-body-length-node": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz",
- "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/util-buffer-from": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz",
- "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==",
- "dependencies": {
- "@smithy/is-array-buffer": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/util-config-provider": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-3.0.0.tgz",
- "integrity": "sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/util-defaults-mode-browser": {
- "version": "3.0.15",
- "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.15.tgz",
- "integrity": "sha512-FZ4Psa3vjp8kOXcd3HJOiDPBCWtiilLl57r0cnNtq/Ga9RSDrM5ERL6xt+tO43+2af6Pn5Yp92x2n5vPuduNfg==",
- "dependencies": {
- "@smithy/property-provider": "^3.1.3",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "bowser": "^2.11.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">= 10.0.0"
- }
- },
- "node_modules/@smithy/util-defaults-mode-node": {
- "version": "3.0.15",
- "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.15.tgz",
- "integrity": "sha512-KSyAAx2q6d0t6f/S4XB2+3+6aQacm3aLMhs9aLMqn18uYGUepbdssfogW5JQZpc6lXNBnp0tEnR5e9CEKmEd7A==",
- "dependencies": {
- "@smithy/config-resolver": "^3.0.5",
- "@smithy/credential-provider-imds": "^3.2.0",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">= 10.0.0"
- }
- },
- "node_modules/@smithy/util-endpoints": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.5.tgz",
- "integrity": "sha512-ReQP0BWihIE68OAblC/WQmDD40Gx+QY1Ez8mTdFMXpmjfxSyz2fVQu3A4zXRfQU9sZXtewk3GmhfOHswvX+eNg==",
- "dependencies": {
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/util-hex-encoding": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-3.0.0.tgz",
- "integrity": "sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/util-middleware": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.3.tgz",
- "integrity": "sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==",
- "dependencies": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/util-retry": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.3.tgz",
- "integrity": "sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==",
- "dependencies": {
- "@smithy/service-error-classification": "^3.0.3",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/util-stream": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.1.3.tgz",
- "integrity": "sha512-FIv/bRhIlAxC0U7xM1BCnF2aDRPq0UaelqBHkM2lsCp26mcBbgI0tCVTv+jGdsQLUmAMybua/bjDsSu8RQHbmw==",
- "dependencies": {
- "@smithy/fetch-http-handler": "^3.2.4",
- "@smithy/node-http-handler": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "@smithy/util-base64": "^3.0.0",
- "@smithy/util-buffer-from": "^3.0.0",
- "@smithy/util-hex-encoding": "^3.0.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/util-uri-escape": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-3.0.0.tgz",
- "integrity": "sha512-LqR7qYLgZTD7nWLBecUi4aqolw8Mhza9ArpNEQ881MJJIU2sE5iHCK6TdyqqzcDLy0OPe10IY4T8ctVdtynubg==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/util-utf8": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz",
- "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==",
- "dependencies": {
- "@smithy/util-buffer-from": "^3.0.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@smithy/util-waiter": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.1.2.tgz",
- "integrity": "sha512-4pP0EV3iTsexDx+8PPGAKCQpd/6hsQBaQhqWzU4hqKPHN5epPsxKbvUTIiYIHTxaKt6/kEaqPBpu/ufvfbrRzw==",
- "dependencies": {
- "@smithy/abort-controller": "^3.1.1",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@swc/counter": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz",
- "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ=="
- },
- "node_modules/@swc/helpers": {
- "version": "0.5.5",
- "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz",
- "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==",
- "dependencies": {
- "@swc/counter": "^0.1.3",
- "tslib": "^2.4.0"
- }
- },
- "node_modules/@tootallnate/once": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz",
- "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==",
- "dev": true,
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/@tufjs/canonical-json": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz",
- "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==",
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@tufjs/models": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.1.tgz",
- "integrity": "sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg==",
- "dependencies": {
- "@tufjs/canonical-json": "2.0.0",
- "minimatch": "^9.0.4"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/@tufjs/models/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/@tufjs/models/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@tybys/wasm-util": {
- "version": "0.9.0",
- "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz",
- "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==",
- "dependencies": {
- "tslib": "^2.4.0"
- }
- },
- "node_modules/@types/babel__core": {
- "version": "7.20.3",
- "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.3.tgz",
- "integrity": "sha512-54fjTSeSHwfan8AyHWrKbfBWiEUrNTZsUwPTDSNaaP1QDQIZbeNUg3a59E9D+375MzUw/x1vx2/0F5LBz+AeYA==",
- "dependencies": {
- "@babel/parser": "^7.20.7",
- "@babel/types": "^7.20.7",
- "@types/babel__generator": "*",
- "@types/babel__template": "*",
- "@types/babel__traverse": "*"
- }
- },
- "node_modules/@types/babel__generator": {
- "version": "7.6.6",
- "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.6.tgz",
- "integrity": "sha512-66BXMKb/sUWbMdBNdMvajU7i/44RkrA3z/Yt1c7R5xejt8qh84iU54yUWCtm0QwGJlDcf/gg4zd/x4mpLAlb/w==",
- "dependencies": {
- "@babel/types": "^7.0.0"
- }
- },
- "node_modules/@types/babel__template": {
- "version": "7.4.3",
- "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.3.tgz",
- "integrity": "sha512-ciwyCLeuRfxboZ4isgdNZi/tkt06m8Tw6uGbBSBgWrnnZGNXiEyM27xc/PjXGQLqlZ6ylbgHMnm7ccF9tCkOeQ==",
- "dependencies": {
- "@babel/parser": "^7.1.0",
- "@babel/types": "^7.0.0"
- }
- },
- "node_modules/@types/babel__traverse": {
- "version": "7.20.3",
- "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.3.tgz",
- "integrity": "sha512-Lsh766rGEFbaxMIDH7Qa+Yha8cMVI3qAK6CHt3OR0YfxOIn5Z54iHiyDRycHrBqeIiqGa20Kpsv1cavfBKkRSw==",
- "dependencies": {
- "@babel/types": "^7.20.7"
- }
- },
- "node_modules/@types/concat-stream": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/@types/concat-stream/-/concat-stream-1.6.1.tgz",
- "integrity": "sha512-eHE4cQPoj6ngxBZMvVf6Hw7Mh4jMW4U9lpGmS5GBPB9RYxlFg+CHaVN7ErNY4W9XfLIEn20b4VDYaIrbq0q4uA==",
- "dev": true,
- "dependencies": {
- "@types/node": "*"
- }
- },
- "node_modules/@types/form-data": {
- "version": "0.0.33",
- "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-0.0.33.tgz",
- "integrity": "sha1-yayFsqX9GENbjIXZ7LUObWyJP/g=",
- "dev": true,
- "dependencies": {
- "@types/node": "*"
- }
- },
- "node_modules/@types/graceful-fs": {
- "version": "4.1.8",
- "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.8.tgz",
- "integrity": "sha512-NhRH7YzWq8WiNKVavKPBmtLYZHxNY19Hh+az28O/phfp68CF45pMFud+ZzJ8ewnxnC5smIdF3dqFeiSUQ5I+pw==",
- "dependencies": {
- "@types/node": "*"
- }
- },
- "node_modules/@types/istanbul-lib-coverage": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz",
- "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g=="
- },
- "node_modules/@types/istanbul-lib-report": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
- "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==",
- "dependencies": {
- "@types/istanbul-lib-coverage": "*"
- }
- },
- "node_modules/@types/istanbul-reports": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
- "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
- "dependencies": {
- "@types/istanbul-lib-report": "*"
- }
- },
- "node_modules/@types/jsdom": {
- "version": "20.0.1",
- "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.1.tgz",
- "integrity": "sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==",
- "dev": true,
- "dependencies": {
- "@types/node": "*",
- "@types/tough-cookie": "*",
- "parse5": "^7.0.0"
- }
- },
- "node_modules/@types/json5": {
- "version": "0.0.29",
- "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
- "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ=="
- },
- "node_modules/@types/minimatch": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
- "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ=="
- },
- "node_modules/@types/minimist": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz",
- "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag=="
- },
- "node_modules/@types/node": {
- "version": "16.7.9",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.9.tgz",
- "integrity": "sha512-KktxVzS4FPDFVHUUOWyZMvRo//8vqOLITtLMhFSW9IdLsYT/sPyXj3wXtaTcR7A7olCe7R2Xy7R+q5pg2bU46g=="
- },
- "node_modules/@types/normalize-package-data": {
- "version": "2.4.4",
- "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz",
- "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA=="
- },
- "node_modules/@types/prop-types": {
- "version": "15.7.5",
- "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz",
- "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w=="
- },
- "node_modules/@types/qs": {
- "version": "6.9.7",
- "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz",
- "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==",
- "dev": true
- },
- "node_modules/@types/react": {
- "version": "18.2.14",
- "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.14.tgz",
- "integrity": "sha512-A0zjq+QN/O0Kpe30hA1GidzyFjatVvrpIvWLxD+xv67Vt91TWWgco9IvrJBkeyHm1trGaFS/FSGqPlhyeZRm0g==",
- "dependencies": {
- "@types/prop-types": "*",
- "@types/scheduler": "*",
- "csstype": "^3.0.2"
- }
- },
- "node_modules/@types/react-transition-group": {
- "version": "4.4.6",
- "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.6.tgz",
- "integrity": "sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew==",
- "dependencies": {
- "@types/react": "*"
- }
- },
- "node_modules/@types/scheduler": {
- "version": "0.16.3",
- "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz",
- "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ=="
- },
- "node_modules/@types/stack-utils": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.2.tgz",
- "integrity": "sha512-g7CK9nHdwjK2n0ymT2CW698FuWJRIx+RP6embAzZ2Qi8/ilIrA1Imt2LVSeHUzKvpoi7BhmmQcXz95eS0f2JXw=="
- },
- "node_modules/@types/tough-cookie": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz",
- "integrity": "sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==",
- "dev": true
- },
- "node_modules/@types/warning": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@types/warning/-/warning-3.0.3.tgz",
- "integrity": "sha512-D1XC7WK8K+zZEveUPY+cf4+kgauk8N4eHr/XIHXGlGYkHLud6hK9lYfZk1ry1TNh798cZUCgb6MqGEG8DkJt6Q=="
- },
- "node_modules/@types/yargs": {
- "version": "17.0.24",
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz",
- "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==",
- "dependencies": {
- "@types/yargs-parser": "*"
- }
- },
- "node_modules/@types/yargs-parser": {
- "version": "21.0.0",
- "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz",
- "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA=="
- },
- "node_modules/@typescript-eslint/eslint-plugin": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.6.0.tgz",
- "integrity": "sha512-UOaz/wFowmoh2G6Mr9gw60B1mm0MzUtm6Ic8G2yM1Le6gyj5Loi/N+O5mocugRGY+8OeeKmkMmbxNqUCq3B4Sg==",
- "dependencies": {
- "@eslint-community/regexpp": "^4.10.0",
- "@typescript-eslint/scope-manager": "8.6.0",
- "@typescript-eslint/type-utils": "8.6.0",
- "@typescript-eslint/utils": "8.6.0",
- "@typescript-eslint/visitor-keys": "8.6.0",
- "graphemer": "^1.4.0",
- "ignore": "^5.3.1",
- "natural-compare": "^1.4.0",
- "ts-api-utils": "^1.3.0"
- },
- "engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependencies": {
- "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0",
- "eslint": "^8.57.0 || ^9.0.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/parser": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.6.0.tgz",
- "integrity": "sha512-eQcbCuA2Vmw45iGfcyG4y6rS7BhWfz9MQuk409WD47qMM+bKCGQWXxvoOs1DUp+T7UBMTtRTVT+kXr7Sh4O9Ow==",
- "dependencies": {
- "@typescript-eslint/scope-manager": "8.6.0",
- "@typescript-eslint/types": "8.6.0",
- "@typescript-eslint/typescript-estree": "8.6.0",
- "@typescript-eslint/visitor-keys": "8.6.0",
- "debug": "^4.3.4"
- },
- "engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependencies": {
- "eslint": "^8.57.0 || ^9.0.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/scope-manager": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.6.0.tgz",
- "integrity": "sha512-ZuoutoS5y9UOxKvpc/GkvF4cuEmpokda4wRg64JEia27wX+PysIE9q+lzDtlHHgblwUWwo5/Qn+/WyTUvDwBHw==",
- "dependencies": {
- "@typescript-eslint/types": "8.6.0",
- "@typescript-eslint/visitor-keys": "8.6.0"
- },
- "engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
- "node_modules/@typescript-eslint/type-utils": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.6.0.tgz",
- "integrity": "sha512-dtePl4gsuenXVwC7dVNlb4mGDcKjDT/Ropsk4za/ouMBPplCLyznIaR+W65mvCvsyS97dymoBRrioEXI7k0XIg==",
- "dependencies": {
- "@typescript-eslint/typescript-estree": "8.6.0",
- "@typescript-eslint/utils": "8.6.0",
- "debug": "^4.3.4",
- "ts-api-utils": "^1.3.0"
- },
- "engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/types": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.6.0.tgz",
- "integrity": "sha512-rojqFZGd4MQxw33SrOy09qIDS8WEldM8JWtKQLAjf/X5mGSeEFh5ixQlxssMNyPslVIk9yzWqXCsV2eFhYrYUw==",
- "engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
- "node_modules/@typescript-eslint/typescript-estree": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.6.0.tgz",
- "integrity": "sha512-MOVAzsKJIPIlLK239l5s06YXjNqpKTVhBVDnqUumQJja5+Y94V3+4VUFRA0G60y2jNnTVwRCkhyGQpavfsbq/g==",
- "dependencies": {
- "@typescript-eslint/types": "8.6.0",
- "@typescript-eslint/visitor-keys": "8.6.0",
- "debug": "^4.3.4",
- "fast-glob": "^3.3.2",
- "is-glob": "^4.0.3",
- "minimatch": "^9.0.4",
- "semver": "^7.6.0",
- "ts-api-utils": "^1.3.0"
- },
- "engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@typescript-eslint/utils": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.6.0.tgz",
- "integrity": "sha512-eNp9cWnYf36NaOVjkEUznf6fEgVy1TWpE0o52e4wtojjBx7D1UV2WAWGzR+8Y5lVFtpMLPwNbC67T83DWSph4A==",
- "dependencies": {
- "@eslint-community/eslint-utils": "^4.4.0",
- "@typescript-eslint/scope-manager": "8.6.0",
- "@typescript-eslint/types": "8.6.0",
- "@typescript-eslint/typescript-estree": "8.6.0"
- },
- "engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependencies": {
- "eslint": "^8.57.0 || ^9.0.0"
- }
- },
- "node_modules/@typescript-eslint/visitor-keys": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.6.0.tgz",
- "integrity": "sha512-wapVFfZg9H0qOYh4grNVQiMklJGluQrOUiOhYRrQWhx7BY/+I1IYb8BczWNbbUpO+pqy0rDciv3lQH5E1bCLrg==",
- "dependencies": {
- "@typescript-eslint/types": "8.6.0",
- "eslint-visitor-keys": "^3.4.3"
- },
- "engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
- "node_modules/@ungap/structured-clone": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
- "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ=="
- },
- "node_modules/@xmldom/xmldom": {
- "version": "0.8.10",
- "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz",
- "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==",
- "optional": true,
- "engines": {
- "node": ">=10.0.0"
- }
- },
- "node_modules/@yarnpkg/lockfile": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz",
- "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ=="
- },
- "node_modules/@yarnpkg/parsers": {
- "version": "3.0.0-rc.46",
- "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.46.tgz",
- "integrity": "sha512-aiATs7pSutzda/rq8fnuPwTglyVwjM22bNnK2ZgjrpAjQHSSl3lztd2f9evst1W/qnC58DRz7T7QndUDumAR4Q==",
- "dependencies": {
- "js-yaml": "^3.10.0",
- "tslib": "^2.4.0"
- },
- "engines": {
- "node": ">=14.15.0"
- }
- },
- "node_modules/@zkochan/js-yaml": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.7.tgz",
- "integrity": "sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==",
- "dependencies": {
- "argparse": "^2.0.1"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/@zkochan/js-yaml/node_modules/argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- },
- "node_modules/abab": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz",
- "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==",
- "dev": true
- },
- "node_modules/abbrev": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz",
- "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/acorn": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.9.0.tgz",
- "integrity": "sha512-jaVNAFBHNLXspO543WnNNPZFRtavh3skAkITqD0/2aeMkKZTN+254PyhwxFYrk3vQ1xfY+2wbesJMs/JC8/PwQ==",
- "bin": {
- "acorn": "bin/acorn"
- },
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/acorn-globals": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz",
- "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==",
- "dev": true,
- "dependencies": {
- "acorn": "^8.1.0",
- "acorn-walk": "^8.0.2"
- }
- },
- "node_modules/acorn-jsx": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
- "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
- "peerDependencies": {
- "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
- }
- },
- "node_modules/acorn-walk": {
- "version": "8.2.0",
- "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz",
- "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==",
- "dev": true,
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/add-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz",
- "integrity": "sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ=="
- },
- "node_modules/adm-zip": {
- "version": "0.5.16",
- "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz",
- "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==",
- "dev": true,
- "engines": {
- "node": ">=12.0"
- }
- },
- "node_modules/agent-base": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
- "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
- "dev": true,
- "dependencies": {
- "debug": "4"
- },
- "engines": {
- "node": ">= 6.0.0"
- }
- },
- "node_modules/aggregate-error": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
- "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
- "dependencies": {
- "clean-stack": "^2.0.0",
- "indent-string": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/ajv": {
- "version": "6.12.6",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
- "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
- "dependencies": {
- "fast-deep-equal": "^3.1.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
- "uri-js": "^4.2.2"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/epoberezkin"
- }
- },
- "node_modules/ansi-colors": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz",
- "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/ansi-escapes": {
- "version": "4.3.2",
- "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
- "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
- "dependencies": {
- "type-fest": "^0.21.3"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/ansi-regex": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
- "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dependencies": {
- "color-convert": "^1.9.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/anymatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
- "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
- "dependencies": {
- "normalize-path": "^3.0.0",
- "picomatch": "^2.0.4"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/aproba": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz",
- "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ=="
- },
- "node_modules/argparse": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
- "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
- "dependencies": {
- "sprintf-js": "~1.0.2"
- }
- },
- "node_modules/argv": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/argv/-/argv-0.0.2.tgz",
- "integrity": "sha1-7L0W+JSbFXGDcRsb2jNPN4QBhas=",
- "dev": true,
- "engines": {
- "node": ">=0.6.10"
- }
- },
- "node_modules/aria-query": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz",
- "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==",
- "dependencies": {
- "dequal": "^2.0.3"
- }
- },
- "node_modules/array-buffer-byte-length": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz",
- "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "is-array-buffer": "^3.0.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array-differ": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz",
- "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/array-ify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz",
- "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng=="
- },
- "node_modules/array-includes": {
- "version": "3.1.7",
- "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz",
- "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "get-intrinsic": "^1.2.1",
- "is-string": "^1.0.7"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array-union": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
- "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/array.prototype.findlastindex": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz",
- "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "es-shim-unscopables": "^1.0.0",
- "get-intrinsic": "^1.2.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array.prototype.flat": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz",
- "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "es-shim-unscopables": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array.prototype.flatmap": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz",
- "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "es-shim-unscopables": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array.prototype.tosorted": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.2.tgz",
- "integrity": "sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "es-shim-unscopables": "^1.0.0",
- "get-intrinsic": "^1.2.1"
- }
- },
- "node_modules/arraybuffer.prototype.slice": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz",
- "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==",
- "dependencies": {
- "array-buffer-byte-length": "^1.0.0",
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "get-intrinsic": "^1.2.1",
- "is-array-buffer": "^3.0.2",
- "is-shared-array-buffer": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/arrify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
- "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/asap": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
- "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=",
- "dev": true
- },
- "node_modules/assertion-error": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz",
- "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==",
- "dev": true,
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/ast-types-flow": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz",
- "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag=="
- },
- "node_modules/astral-regex": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
- "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/async": {
- "version": "3.2.6",
- "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz",
- "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA=="
- },
- "node_modules/asynciterator.prototype": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz",
- "integrity": "sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==",
- "dependencies": {
- "has-symbols": "^1.0.3"
- }
- },
- "node_modules/asynckit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
- "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
- },
- "node_modules/available-typed-arrays": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz",
- "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/axe-core": {
- "version": "4.7.2",
- "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.2.tgz",
- "integrity": "sha512-zIURGIS1E1Q4pcrMjp+nnEh+16G56eG/MUllJH8yEvw7asDo7Ac9uhC9KIH5jzpITueEZolfYglnCGIuSBz39g==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/axios": {
- "version": "1.7.5",
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.5.tgz",
- "integrity": "sha512-fZu86yCo+svH3uqJ/yTdQ0QHpQu5oL+/QE+QPSv6BZSkDAoky9vytxp7u5qk83OJFS3kEBcesWni9WTZAv3tSw==",
- "dependencies": {
- "follow-redirects": "^1.15.6",
- "form-data": "^4.0.0",
- "proxy-from-env": "^1.1.0"
- }
- },
- "node_modules/axobject-query": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz",
- "integrity": "sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==",
- "dependencies": {
- "dequal": "^2.0.3"
- }
- },
- "node_modules/babel-jest": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz",
- "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==",
- "dependencies": {
- "@jest/transform": "^29.7.0",
- "@types/babel__core": "^7.1.14",
- "babel-plugin-istanbul": "^6.1.1",
- "babel-preset-jest": "^29.6.3",
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.9",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.8.0"
- }
- },
- "node_modules/babel-jest/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/babel-jest/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/babel-jest/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/babel-jest/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/babel-jest/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/babel-jest/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/babel-plugin-istanbul": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz",
- "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@istanbuljs/load-nyc-config": "^1.0.0",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-instrument": "^5.0.4",
- "test-exclude": "^6.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz",
- "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==",
- "dependencies": {
- "@babel/core": "^7.12.3",
- "@babel/parser": "^7.14.7",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-coverage": "^3.2.0",
- "semver": "^6.3.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/babel-plugin-istanbul/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/babel-plugin-jest-hoist": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz",
- "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==",
- "dependencies": {
- "@babel/template": "^7.3.3",
- "@babel/types": "^7.3.3",
- "@types/babel__core": "^7.1.14",
- "@types/babel__traverse": "^7.0.6"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/babel-plugin-polyfill-corejs2": {
- "version": "0.4.5",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz",
- "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==",
- "dev": true,
- "dependencies": {
- "@babel/compat-data": "^7.22.6",
- "@babel/helper-define-polyfill-provider": "^0.4.2",
- "semver": "^6.3.1"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
- },
- "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true,
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/babel-plugin-polyfill-corejs3": {
- "version": "0.8.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz",
- "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-define-polyfill-provider": "^0.4.2",
- "core-js-compat": "^3.31.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
- },
- "node_modules/babel-plugin-polyfill-regenerator": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz",
- "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-define-polyfill-provider": "^0.4.2"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
- },
- "node_modules/babel-preset-current-node-syntax": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz",
- "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==",
- "dependencies": {
- "@babel/plugin-syntax-async-generators": "^7.8.4",
- "@babel/plugin-syntax-bigint": "^7.8.3",
- "@babel/plugin-syntax-class-properties": "^7.8.3",
- "@babel/plugin-syntax-import-meta": "^7.8.3",
- "@babel/plugin-syntax-json-strings": "^7.8.3",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
- "@babel/plugin-syntax-numeric-separator": "^7.8.3",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3",
- "@babel/plugin-syntax-top-level-await": "^7.8.3"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/babel-preset-jest": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz",
- "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==",
- "dependencies": {
- "babel-plugin-jest-hoist": "^29.6.3",
- "babel-preset-current-node-syntax": "^1.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/balanced-match": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
- "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
- },
- "node_modules/base64-js": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
- "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ]
- },
- "node_modules/before-after-hook": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz",
- "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ=="
- },
- "node_modules/bids-validator": {
- "resolved": "bids-validator",
- "link": true
- },
- "node_modules/bids-validator-web": {
- "resolved": "bids-validator-web",
- "link": true
- },
- "node_modules/bin-links": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/bin-links/-/bin-links-4.0.4.tgz",
- "integrity": "sha512-cMtq4W5ZsEwcutJrVId+a/tjt8GSbS+h0oNkdl6+6rBuEv8Ot33Bevj5KPm40t309zuhVic8NjpuL42QCiJWWA==",
- "dependencies": {
- "cmd-shim": "^6.0.0",
- "npm-normalize-package-bin": "^3.0.0",
- "read-cmd-shim": "^4.0.0",
- "write-file-atomic": "^5.0.0"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/bin-links/node_modules/signal-exit": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
- "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/bin-links/node_modules/write-file-atomic": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
- "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
- "dependencies": {
- "imurmurhash": "^0.1.4",
- "signal-exit": "^4.0.1"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/bl": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
- "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==",
- "dependencies": {
- "buffer": "^5.5.0",
- "inherits": "^2.0.4",
- "readable-stream": "^3.4.0"
- }
- },
- "node_modules/bootstrap": {
- "version": "5.3.3",
- "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz",
- "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/twbs"
- },
- {
- "type": "opencollective",
- "url": "https://opencollective.com/bootstrap"
- }
- ],
- "peerDependencies": {
- "@popperjs/core": "^2.11.8"
- }
- },
- "node_modules/bowser": {
- "version": "2.11.0",
- "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz",
- "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA=="
- },
- "node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/braces": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
- "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
- "dependencies": {
- "fill-range": "^7.1.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/browserslist": {
- "version": "4.21.9",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz",
- "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==",
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/browserslist"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/browserslist"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
- "dependencies": {
- "caniuse-lite": "^1.0.30001503",
- "electron-to-chromium": "^1.4.431",
- "node-releases": "^2.0.12",
- "update-browserslist-db": "^1.0.11"
- },
- "bin": {
- "browserslist": "cli.js"
- },
- "engines": {
- "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
- }
- },
- "node_modules/browserslist/node_modules/node-releases": {
- "version": "2.0.12",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz",
- "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ=="
- },
- "node_modules/bser": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
- "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==",
- "dependencies": {
- "node-int64": "^0.4.0"
- }
- },
- "node_modules/buffer": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
- "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "dependencies": {
- "base64-js": "^1.3.1",
- "ieee754": "^1.1.13"
- }
- },
- "node_modules/buffer-from": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
- "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ=="
- },
- "node_modules/busboy": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
- "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==",
- "dependencies": {
- "streamsearch": "^1.1.0"
- },
- "engines": {
- "node": ">=10.16.0"
- }
- },
- "node_modules/byte-size": {
- "version": "8.1.1",
- "resolved": "https://registry.npmjs.org/byte-size/-/byte-size-8.1.1.tgz",
- "integrity": "sha512-tUkzZWK0M/qdoLEqikxBWe4kumyuwjl3HO6zHTr4yEI23EojPtLYXdG1+AQY7MN0cGyNDvEaJ8wiYQm6P2bPxg==",
- "engines": {
- "node": ">=12.17"
- }
- },
- "node_modules/bytes": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
- "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/cacache": {
- "version": "18.0.4",
- "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz",
- "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==",
- "dependencies": {
- "@npmcli/fs": "^3.1.0",
- "fs-minipass": "^3.0.0",
- "glob": "^10.2.2",
- "lru-cache": "^10.0.1",
- "minipass": "^7.0.3",
- "minipass-collect": "^2.0.1",
- "minipass-flush": "^1.0.5",
- "minipass-pipeline": "^1.2.4",
- "p-map": "^4.0.0",
- "ssri": "^10.0.0",
- "tar": "^6.1.11",
- "unique-filename": "^3.0.0"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/cacache/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/cacache/node_modules/glob": {
- "version": "10.4.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
- "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
- "dependencies": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^3.1.2",
- "minimatch": "^9.0.4",
- "minipass": "^7.1.2",
- "package-json-from-dist": "^1.0.0",
- "path-scurry": "^1.11.1"
- },
- "bin": {
- "glob": "dist/esm/bin.mjs"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/cacache/node_modules/jackspeak": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz",
- "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
- "dependencies": {
- "@isaacs/cliui": "^8.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- },
- "optionalDependencies": {
- "@pkgjs/parseargs": "^0.11.0"
- }
- },
- "node_modules/cacache/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/cacache/node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/call-bind": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz",
- "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==",
- "dependencies": {
- "function-bind": "^1.1.2",
- "get-intrinsic": "^1.2.1",
- "set-function-length": "^1.1.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/callsites": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
- "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/camelcase-keys": {
- "version": "6.2.2",
- "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz",
- "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==",
- "dependencies": {
- "camelcase": "^5.3.1",
- "map-obj": "^4.0.0",
- "quick-lru": "^4.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/caniuse-lite": {
- "version": "1.0.30001581",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001581.tgz",
- "integrity": "sha512-whlTkwhqV2tUmP3oYhtNfaWGYHDdS3JYFQBKXxcUR9qqPWsRhFHhoISO2Xnl/g0xyKzht9mI1LZpiNWfMzHixQ==",
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/browserslist"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ]
- },
- "node_modules/caseless": {
- "version": "0.12.0",
- "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
- "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
- "dev": true
- },
- "node_modules/chai": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.1.tgz",
- "integrity": "sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==",
- "dev": true,
- "dependencies": {
- "assertion-error": "^2.0.1",
- "check-error": "^2.1.1",
- "deep-eql": "^5.0.1",
- "loupe": "^3.1.0",
- "pathval": "^2.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/chalk": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
- "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
- "dependencies": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/char-regex": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz",
- "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/chardet": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
- "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA=="
- },
- "node_modules/check-error": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz",
- "integrity": "sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==",
- "dev": true,
- "engines": {
- "node": ">= 16"
- }
- },
- "node_modules/chokidar": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz",
- "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==",
- "dependencies": {
- "readdirp": "^4.0.1"
- },
- "engines": {
- "node": ">= 14.16.0"
- },
- "funding": {
- "url": "https://paulmillr.com/funding/"
- }
- },
- "node_modules/chownr": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
- "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/ci-info": {
- "version": "3.9.0",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz",
- "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/sibiraj-s"
- }
- ],
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/cjs-module-lexer": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz",
- "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ=="
- },
- "node_modules/classnames": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz",
- "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw=="
- },
- "node_modules/clean-stack": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
- "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/cli": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz",
- "integrity": "sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=",
- "dependencies": {
- "exit": "0.1.2",
- "glob": "^7.1.1"
- },
- "engines": {
- "node": ">=0.2.5"
- }
- },
- "node_modules/cli-cursor": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
- "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
- "dependencies": {
- "restore-cursor": "^3.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/cli-spinners": {
- "version": "2.6.1",
- "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz",
- "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==",
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/cli-width": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz",
- "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==",
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/client-only": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
- "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA=="
- },
- "node_modules/cliui": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
- "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
- "dependencies": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.1",
- "wrap-ansi": "^7.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/clone": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
- "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==",
- "engines": {
- "node": ">=0.8"
- }
- },
- "node_modules/clone-deep": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
- "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
- "dependencies": {
- "is-plain-object": "^2.0.4",
- "kind-of": "^6.0.2",
- "shallow-clone": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/clone-deep/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "dependencies": {
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/cmd-shim": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-6.0.3.tgz",
- "integrity": "sha512-FMabTRlc5t5zjdenF6mS0MBeFZm0XqHqeOkcskKFb/LYCcRQ5fVgLOHVc4Lq9CqABd9zhjwPjMBCJvMCziSVtA==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/co": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
- "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==",
- "engines": {
- "iojs": ">= 1.0.0",
- "node": ">= 0.12.0"
- }
- },
- "node_modules/code-point-at": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
- "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
- "optional": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/codecov": {
- "version": "3.8.3",
- "resolved": "https://registry.npmjs.org/codecov/-/codecov-3.8.3.tgz",
- "integrity": "sha512-Y8Hw+V3HgR7V71xWH2vQ9lyS358CbGCldWlJFR0JirqoGtOoas3R3/OclRTvgUYFK29mmJICDPauVKmpqbwhOA==",
- "dev": true,
- "dependencies": {
- "argv": "0.0.2",
- "ignore-walk": "3.0.4",
- "js-yaml": "3.14.1",
- "teeny-request": "7.1.1",
- "urlgrey": "1.0.0"
- },
- "bin": {
- "codecov": "bin/codecov"
- },
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/collect-v8-coverage": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz",
- "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q=="
- },
- "node_modules/color-convert": {
- "version": "1.9.3",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
- "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
- "dependencies": {
- "color-name": "1.1.3"
- }
- },
- "node_modules/color-name": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
- },
- "node_modules/color-support": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
- "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==",
- "bin": {
- "color-support": "bin.js"
- }
- },
- "node_modules/colors": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz",
- "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==",
- "engines": {
- "node": ">=0.1.90"
- }
- },
- "node_modules/columnify": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz",
- "integrity": "sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q==",
- "dependencies": {
- "strip-ansi": "^6.0.1",
- "wcwidth": "^1.0.0"
- },
- "engines": {
- "node": ">=8.0.0"
- }
- },
- "node_modules/combined-stream": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
- "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
- "dependencies": {
- "delayed-stream": "~1.0.0"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/common-ancestor-path": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz",
- "integrity": "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w=="
- },
- "node_modules/compare-func": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz",
- "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==",
- "dependencies": {
- "array-ify": "^1.0.0",
- "dot-prop": "^5.1.0"
- }
- },
- "node_modules/concat-map": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
- },
- "node_modules/concat-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz",
- "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==",
- "engines": [
- "node >= 6.0"
- ],
- "dependencies": {
- "buffer-from": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^3.0.2",
- "typedarray": "^0.0.6"
- }
- },
- "node_modules/console-browserify": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz",
- "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=",
- "dependencies": {
- "date-now": "^0.1.4"
- }
- },
- "node_modules/console-control-strings": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
- "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ=="
- },
- "node_modules/conventional-changelog-angular": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-7.0.0.tgz",
- "integrity": "sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==",
- "dependencies": {
- "compare-func": "^2.0.0"
- },
- "engines": {
- "node": ">=16"
- }
- },
- "node_modules/conventional-changelog-core": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-5.0.1.tgz",
- "integrity": "sha512-Rvi5pH+LvgsqGwZPZ3Cq/tz4ty7mjijhr3qR4m9IBXNbxGGYgTVVO+duXzz9aArmHxFtwZ+LRkrNIMDQzgoY4A==",
- "dependencies": {
- "add-stream": "^1.0.0",
- "conventional-changelog-writer": "^6.0.0",
- "conventional-commits-parser": "^4.0.0",
- "dateformat": "^3.0.3",
- "get-pkg-repo": "^4.2.1",
- "git-raw-commits": "^3.0.0",
- "git-remote-origin-url": "^2.0.0",
- "git-semver-tags": "^5.0.0",
- "normalize-package-data": "^3.0.3",
- "read-pkg": "^3.0.0",
- "read-pkg-up": "^3.0.0"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/conventional-changelog-core/node_modules/hosted-git-info": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
- "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==",
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-core/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-core/node_modules/normalize-package-data": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz",
- "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==",
- "dependencies": {
- "hosted-git-info": "^4.0.1",
- "is-core-module": "^2.5.0",
- "semver": "^7.3.4",
- "validate-npm-package-license": "^3.0.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-preset-loader": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-3.0.0.tgz",
- "integrity": "sha512-qy9XbdSLmVnwnvzEisjxdDiLA4OmV3o8db+Zdg4WiFw14fP3B6XNz98X0swPPpkTd/pc1K7+adKgEDM1JCUMiA==",
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/conventional-changelog-writer": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-6.0.1.tgz",
- "integrity": "sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==",
- "dependencies": {
- "conventional-commits-filter": "^3.0.0",
- "dateformat": "^3.0.3",
- "handlebars": "^4.7.7",
- "json-stringify-safe": "^5.0.1",
- "meow": "^8.1.2",
- "semver": "^7.0.0",
- "split": "^1.0.1"
- },
- "bin": {
- "conventional-changelog-writer": "cli.js"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/conventional-commits-filter": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-3.0.0.tgz",
- "integrity": "sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==",
- "dependencies": {
- "lodash.ismatch": "^4.4.0",
- "modify-values": "^1.0.1"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/conventional-commits-parser": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-4.0.0.tgz",
- "integrity": "sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==",
- "dependencies": {
- "is-text-path": "^1.0.1",
- "JSONStream": "^1.3.5",
- "meow": "^8.1.2",
- "split2": "^3.2.2"
- },
- "bin": {
- "conventional-commits-parser": "cli.js"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/conventional-recommended-bump": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-7.0.1.tgz",
- "integrity": "sha512-Ft79FF4SlOFvX4PkwFDRnaNiIVX7YbmqGU0RwccUaiGvgp3S0a8ipR2/Qxk31vclDNM+GSdJOVs2KrsUCjblVA==",
- "dependencies": {
- "concat-stream": "^2.0.0",
- "conventional-changelog-preset-loader": "^3.0.0",
- "conventional-commits-filter": "^3.0.0",
- "conventional-commits-parser": "^4.0.0",
- "git-raw-commits": "^3.0.0",
- "git-semver-tags": "^5.0.0",
- "meow": "^8.1.2"
- },
- "bin": {
- "conventional-recommended-bump": "cli.js"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/convert-source-map": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
- "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
- "dependencies": {
- "safe-buffer": "~5.1.1"
- }
- },
- "node_modules/core-js-compat": {
- "version": "3.32.0",
- "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.0.tgz",
- "integrity": "sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==",
- "dev": true,
- "dependencies": {
- "browserslist": "^4.21.9"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/core-js"
- }
- },
- "node_modules/core-util-is": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
- "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
- },
- "node_modules/cosmiconfig": {
- "version": "8.3.6",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz",
- "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==",
- "dependencies": {
- "import-fresh": "^3.3.0",
- "js-yaml": "^4.1.0",
- "parse-json": "^5.2.0",
- "path-type": "^4.0.0"
- },
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/d-fischer"
- },
- "peerDependencies": {
- "typescript": ">=4.9.5"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/cosmiconfig/node_modules/argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- },
- "node_modules/cosmiconfig/node_modules/js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "dependencies": {
- "argparse": "^2.0.1"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/create-jest": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz",
- "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "chalk": "^4.0.0",
- "exit": "^0.1.2",
- "graceful-fs": "^4.2.9",
- "jest-config": "^29.7.0",
- "jest-util": "^29.7.0",
- "prompts": "^2.0.1"
- },
- "bin": {
- "create-jest": "bin/create-jest.js"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/create-jest/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/create-jest/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/create-jest/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/create-jest/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/create-jest/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/create-jest/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/cross-fetch": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz",
- "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==",
- "dependencies": {
- "node-fetch": "^2.6.12"
- }
- },
- "node_modules/cross-fetch/node_modules/node-fetch": {
- "version": "2.6.12",
- "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz",
- "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==",
- "dependencies": {
- "whatwg-url": "^5.0.0"
- },
- "engines": {
- "node": "4.x || >=6.0.0"
- },
- "peerDependencies": {
- "encoding": "^0.1.0"
- },
- "peerDependenciesMeta": {
- "encoding": {
- "optional": true
- }
- }
- },
- "node_modules/cross-fetch/node_modules/tr46": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
- "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
- },
- "node_modules/cross-fetch/node_modules/webidl-conversions": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
- "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
- },
- "node_modules/cross-fetch/node_modules/whatwg-url": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
- "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
- "dependencies": {
- "tr46": "~0.0.3",
- "webidl-conversions": "^3.0.0"
- }
- },
- "node_modules/cross-spawn": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
- "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
- "dependencies": {
- "path-key": "^3.1.0",
- "shebang-command": "^2.0.0",
- "which": "^2.0.1"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/cssesc": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
- "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
- "bin": {
- "cssesc": "bin/cssesc"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/cssom": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz",
- "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==",
- "dev": true
- },
- "node_modules/cssstyle": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz",
- "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==",
- "dev": true,
- "dependencies": {
- "cssom": "~0.3.6"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/cssstyle/node_modules/cssom": {
- "version": "0.3.8",
- "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz",
- "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==",
- "dev": true
- },
- "node_modules/csstype": {
- "version": "3.0.8",
- "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz",
- "integrity": "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw=="
- },
- "node_modules/damerau-levenshtein": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz",
- "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA=="
- },
- "node_modules/dargs": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz",
- "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/data-urls": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz",
- "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==",
- "dev": true,
- "dependencies": {
- "abab": "^2.0.6",
- "whatwg-mimetype": "^3.0.0",
- "whatwg-url": "^11.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/date-and-time": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/date-and-time/-/date-and-time-3.2.0.tgz",
- "integrity": "sha512-uI8c96oG3R8ZhtWeGy8SfJSN1POcwE7kjWLi7GB3+dmBqSYGG+KhGf4Vh25hUhg1Br6Kn3ikEf/mrXCxE0Pknw=="
- },
- "node_modules/date-fns": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.6.0.tgz",
- "integrity": "sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==",
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/kossnocorp"
- }
- },
- "node_modules/date-now": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz",
- "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs="
- },
- "node_modules/dateformat": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz",
- "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==",
- "engines": {
- "node": "*"
- }
- },
- "node_modules/debug": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
- "dependencies": {
- "ms": "2.1.2"
- },
- "engines": {
- "node": ">=6.0"
- },
- "peerDependenciesMeta": {
- "supports-color": {
- "optional": true
- }
- }
- },
- "node_modules/decamelize": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
- "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/decamelize-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz",
- "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==",
- "dependencies": {
- "decamelize": "^1.1.0",
- "map-obj": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/decamelize-keys/node_modules/map-obj": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
- "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/decimal.js": {
- "version": "10.4.3",
- "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz",
- "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==",
- "dev": true
- },
- "node_modules/dedent": {
- "version": "1.5.3",
- "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz",
- "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==",
- "peerDependencies": {
- "babel-plugin-macros": "^3.1.0"
- },
- "peerDependenciesMeta": {
- "babel-plugin-macros": {
- "optional": true
- }
- }
- },
- "node_modules/deep-eql": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.1.tgz",
- "integrity": "sha512-nwQCf6ne2gez3o1MxWifqkciwt0zhl0LO1/UwVu4uMBuPmflWM4oQ70XMqHqnBJA+nhzncaqL9HVL6KkHJ28lw==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/deep-is": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
- "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ="
- },
- "node_modules/deepmerge": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
- "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/defaults": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz",
- "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==",
- "dependencies": {
- "clone": "^1.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/define-data-property": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz",
- "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==",
- "dependencies": {
- "get-intrinsic": "^1.2.1",
- "gopd": "^1.0.1",
- "has-property-descriptors": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/define-lazy-prop": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz",
- "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/define-properties": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz",
- "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==",
- "dependencies": {
- "define-data-property": "^1.0.1",
- "has-property-descriptors": "^1.0.0",
- "object-keys": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/deprecation": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz",
- "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ=="
- },
- "node_modules/dequal": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
- "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/detect-indent": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz",
- "integrity": "sha512-rlpvsxUtM0PQvy9iZe640/IWwWYyBsTApREbA1pHOpmOUIl9MkP/U4z7vTtg4Oaojvqhxt7sdufnT0EzGaR31g==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/detect-newline": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz",
- "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/diff-sequences": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz",
- "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==",
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/dir-glob": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
- "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
- "dependencies": {
- "path-type": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/doctrine": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
- "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
- "dependencies": {
- "esutils": "^2.0.2"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/dom-helpers": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz",
- "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==",
- "dependencies": {
- "@babel/runtime": "^7.8.7",
- "csstype": "^3.0.2"
- }
- },
- "node_modules/dom-serializer": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz",
- "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==",
- "dependencies": {
- "domelementtype": "^2.0.1",
- "entities": "^2.0.0"
- }
- },
- "node_modules/dom-serializer/node_modules/domelementtype": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz",
- "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/fb55"
- }
- ]
- },
- "node_modules/domelementtype": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
- "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w=="
- },
- "node_modules/domexception": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz",
- "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==",
- "dev": true,
- "dependencies": {
- "webidl-conversions": "^7.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/domhandler": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz",
- "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=",
- "dependencies": {
- "domelementtype": "1"
- }
- },
- "node_modules/domutils": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
- "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
- "dependencies": {
- "dom-serializer": "0",
- "domelementtype": "1"
- }
- },
- "node_modules/dot-prop": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz",
- "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==",
- "dependencies": {
- "is-obj": "^2.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/dotenv": {
- "version": "16.4.5",
- "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz",
- "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://dotenvx.com"
- }
- },
- "node_modules/dotenv-expand": {
- "version": "11.0.6",
- "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.6.tgz",
- "integrity": "sha512-8NHi73otpWsZGBSZwwknTXS5pqMOrk9+Ssrna8xCaxkzEpU9OTf9R5ArQGVw03//Zmk9MOwLPng9WwndvpAJ5g==",
- "dependencies": {
- "dotenv": "^16.4.4"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://dotenvx.com"
- }
- },
- "node_modules/duplexer": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz",
- "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg=="
- },
- "node_modules/eastasianwidth": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
- "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA=="
- },
- "node_modules/ejs": {
- "version": "3.1.10",
- "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz",
- "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==",
- "dependencies": {
- "jake": "^10.8.5"
- },
- "bin": {
- "ejs": "bin/cli.js"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/electron-to-chromium": {
- "version": "1.4.443",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.443.tgz",
- "integrity": "sha512-QG+DKVaD7OkcCJ/0x/IHdVEcwU7cak9Vr9dXCNp7G9ojBZQWtwtRV77CBOrU49jsKygedFcNc/IHUrGljKV2Gw=="
- },
- "node_modules/emittery": {
- "version": "0.13.1",
- "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz",
- "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/emittery?sponsor=1"
- }
- },
- "node_modules/encoding": {
- "version": "0.1.13",
- "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz",
- "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
- "optional": true,
- "dependencies": {
- "iconv-lite": "^0.6.2"
- }
- },
- "node_modules/encoding/node_modules/iconv-lite": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
- "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
- "optional": true,
- "dependencies": {
- "safer-buffer": ">= 2.1.2 < 3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/end-of-stream": {
- "version": "1.4.4",
- "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
- "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
- "dependencies": {
- "once": "^1.4.0"
- }
- },
- "node_modules/enhanced-resolve": {
- "version": "5.15.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz",
- "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==",
- "dependencies": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/enquirer": {
- "version": "2.3.6",
- "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz",
- "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==",
- "dependencies": {
- "ansi-colors": "^4.1.1"
- },
- "engines": {
- "node": ">=8.6"
- }
- },
- "node_modules/entities": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
- "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==",
- "funding": {
- "url": "https://github.com/fb55/entities?sponsor=1"
- }
- },
- "node_modules/env-paths": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz",
- "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/envinfo": {
- "version": "7.13.0",
- "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz",
- "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==",
- "bin": {
- "envinfo": "dist/cli.js"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/err-code": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz",
- "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA=="
- },
- "node_modules/error-ex": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
- "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
- "dependencies": {
- "is-arrayish": "^0.2.1"
- }
- },
- "node_modules/es-abstract": {
- "version": "1.22.3",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz",
- "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==",
- "dependencies": {
- "array-buffer-byte-length": "^1.0.0",
- "arraybuffer.prototype.slice": "^1.0.2",
- "available-typed-arrays": "^1.0.5",
- "call-bind": "^1.0.5",
- "es-set-tostringtag": "^2.0.1",
- "es-to-primitive": "^1.2.1",
- "function.prototype.name": "^1.1.6",
- "get-intrinsic": "^1.2.2",
- "get-symbol-description": "^1.0.0",
- "globalthis": "^1.0.3",
- "gopd": "^1.0.1",
- "has-property-descriptors": "^1.0.0",
- "has-proto": "^1.0.1",
- "has-symbols": "^1.0.3",
- "hasown": "^2.0.0",
- "internal-slot": "^1.0.5",
- "is-array-buffer": "^3.0.2",
- "is-callable": "^1.2.7",
- "is-negative-zero": "^2.0.2",
- "is-regex": "^1.1.4",
- "is-shared-array-buffer": "^1.0.2",
- "is-string": "^1.0.7",
- "is-typed-array": "^1.1.12",
- "is-weakref": "^1.0.2",
- "object-inspect": "^1.13.1",
- "object-keys": "^1.1.1",
- "object.assign": "^4.1.4",
- "regexp.prototype.flags": "^1.5.1",
- "safe-array-concat": "^1.0.1",
- "safe-regex-test": "^1.0.0",
- "string.prototype.trim": "^1.2.8",
- "string.prototype.trimend": "^1.0.7",
- "string.prototype.trimstart": "^1.0.7",
- "typed-array-buffer": "^1.0.0",
- "typed-array-byte-length": "^1.0.0",
- "typed-array-byte-offset": "^1.0.0",
- "typed-array-length": "^1.0.4",
- "unbox-primitive": "^1.0.2",
- "which-typed-array": "^1.1.13"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/es-iterator-helpers": {
- "version": "1.0.15",
- "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz",
- "integrity": "sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==",
- "dependencies": {
- "asynciterator.prototype": "^1.0.0",
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.22.1",
- "es-set-tostringtag": "^2.0.1",
- "function-bind": "^1.1.1",
- "get-intrinsic": "^1.2.1",
- "globalthis": "^1.0.3",
- "has-property-descriptors": "^1.0.0",
- "has-proto": "^1.0.1",
- "has-symbols": "^1.0.3",
- "internal-slot": "^1.0.5",
- "iterator.prototype": "^1.1.2",
- "safe-array-concat": "^1.0.1"
- }
- },
- "node_modules/es-set-tostringtag": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz",
- "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==",
- "dependencies": {
- "get-intrinsic": "^1.1.3",
- "has": "^1.0.3",
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/es-shim-unscopables": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz",
- "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==",
- "dependencies": {
- "has": "^1.0.3"
- }
- },
- "node_modules/es-to-primitive": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
- "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
- "dependencies": {
- "is-callable": "^1.1.4",
- "is-date-object": "^1.0.1",
- "is-symbol": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/esbuild": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.0.tgz",
- "integrity": "sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==",
- "dev": true,
- "hasInstallScript": true,
- "bin": {
- "esbuild": "bin/esbuild"
- },
- "engines": {
- "node": ">=18"
- },
- "optionalDependencies": {
- "@esbuild/aix-ppc64": "0.24.0",
- "@esbuild/android-arm": "0.24.0",
- "@esbuild/android-arm64": "0.24.0",
- "@esbuild/android-x64": "0.24.0",
- "@esbuild/darwin-arm64": "0.24.0",
- "@esbuild/darwin-x64": "0.24.0",
- "@esbuild/freebsd-arm64": "0.24.0",
- "@esbuild/freebsd-x64": "0.24.0",
- "@esbuild/linux-arm": "0.24.0",
- "@esbuild/linux-arm64": "0.24.0",
- "@esbuild/linux-ia32": "0.24.0",
- "@esbuild/linux-loong64": "0.24.0",
- "@esbuild/linux-mips64el": "0.24.0",
- "@esbuild/linux-ppc64": "0.24.0",
- "@esbuild/linux-riscv64": "0.24.0",
- "@esbuild/linux-s390x": "0.24.0",
- "@esbuild/linux-x64": "0.24.0",
- "@esbuild/netbsd-x64": "0.24.0",
- "@esbuild/openbsd-arm64": "0.24.0",
- "@esbuild/openbsd-x64": "0.24.0",
- "@esbuild/sunos-x64": "0.24.0",
- "@esbuild/win32-arm64": "0.24.0",
- "@esbuild/win32-ia32": "0.24.0",
- "@esbuild/win32-x64": "0.24.0"
- }
- },
- "node_modules/esbuild-plugin-globals": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/esbuild-plugin-globals/-/esbuild-plugin-globals-0.2.0.tgz",
- "integrity": "sha512-y+6utQVWrETQWs0J8EGLV5gEOP59mmjX+fKWoQHn4TYwFMaj0FxQYflc566tHuokBCzl+uNW2iIlM1o1jfNy6w==",
- "dev": true,
- "engines": {
- "node": ">=7"
- }
- },
- "node_modules/esbuild-runner": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/esbuild-runner/-/esbuild-runner-2.2.2.tgz",
- "integrity": "sha512-fRFVXcmYVmSmtYm2mL8RlUASt2TDkGh3uRcvHFOKNr/T58VrfVeKD9uT9nlgxk96u0LS0ehS/GY7Da/bXWKkhw==",
- "dev": true,
- "dependencies": {
- "source-map-support": "0.5.21",
- "tslib": "2.4.0"
- },
- "bin": {
- "esr": "bin/esr.js"
- },
- "peerDependencies": {
- "esbuild": "*"
- }
- },
- "node_modules/esbuild-runner/node_modules/tslib": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
- "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
- "dev": true
- },
- "node_modules/escalade": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
- "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/escodegen": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz",
- "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==",
- "dev": true,
- "dependencies": {
- "esprima": "^4.0.1",
- "estraverse": "^5.2.0",
- "esutils": "^2.0.2",
- "optionator": "^0.8.1"
- },
- "bin": {
- "escodegen": "bin/escodegen.js",
- "esgenerate": "bin/esgenerate.js"
- },
- "engines": {
- "node": ">=6.0"
- },
- "optionalDependencies": {
- "source-map": "~0.6.1"
- }
- },
- "node_modules/eslint": {
- "version": "8.57.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz",
- "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==",
- "dependencies": {
- "@eslint-community/eslint-utils": "^4.2.0",
- "@eslint-community/regexpp": "^4.6.1",
- "@eslint/eslintrc": "^2.1.4",
- "@eslint/js": "8.57.0",
- "@humanwhocodes/config-array": "^0.11.14",
- "@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"
- },
- "bin": {
- "eslint": "bin/eslint.js"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/eslint-config-next": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.13.tgz",
- "integrity": "sha512-aro1EKAoyYchnO/3Tlo91hnNBO7QO7qnv/79MAFC+4Jq8TdUVKQlht5d2F+YjrePjdpOvfL+mV9JPfyYNwkk1g==",
- "dependencies": {
- "@next/eslint-plugin-next": "14.2.13",
- "@rushstack/eslint-patch": "^1.3.3",
- "@typescript-eslint/eslint-plugin": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0",
- "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0",
- "eslint-import-resolver-node": "^0.3.6",
- "eslint-import-resolver-typescript": "^3.5.2",
- "eslint-plugin-import": "^2.28.1",
- "eslint-plugin-jsx-a11y": "^6.7.1",
- "eslint-plugin-react": "^7.33.2",
- "eslint-plugin-react-hooks": "^4.5.0 || 5.0.0-canary-7118f5dd7-20230705"
- },
- "peerDependencies": {
- "eslint": "^7.23.0 || ^8.0.0",
- "typescript": ">=3.3.1"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/eslint-config-prettier": {
- "version": "9.1.0",
- "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz",
- "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==",
- "dev": true,
- "bin": {
- "eslint-config-prettier": "bin/cli.js"
- },
- "peerDependencies": {
- "eslint": ">=7.0.0"
- }
- },
- "node_modules/eslint-import-resolver-node": {
- "version": "0.3.9",
- "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz",
- "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==",
- "dependencies": {
- "debug": "^3.2.7",
- "is-core-module": "^2.13.0",
- "resolve": "^1.22.4"
- }
- },
- "node_modules/eslint-import-resolver-node/node_modules/debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "dependencies": {
- "ms": "^2.1.1"
- }
- },
- "node_modules/eslint-import-resolver-node/node_modules/resolve": {
- "version": "1.22.8",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
- "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
- "dependencies": {
- "is-core-module": "^2.13.0",
- "path-parse": "^1.0.7",
- "supports-preserve-symlinks-flag": "^1.0.0"
- },
- "bin": {
- "resolve": "bin/resolve"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/eslint-import-resolver-typescript": {
- "version": "3.5.5",
- "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.5.5.tgz",
- "integrity": "sha512-TdJqPHs2lW5J9Zpe17DZNQuDnox4xo2o+0tE7Pggain9Rbc19ik8kFtXdxZ250FVx2kF4vlt2RSf4qlUpG7bhw==",
- "dependencies": {
- "debug": "^4.3.4",
- "enhanced-resolve": "^5.12.0",
- "eslint-module-utils": "^2.7.4",
- "get-tsconfig": "^4.5.0",
- "globby": "^13.1.3",
- "is-core-module": "^2.11.0",
- "is-glob": "^4.0.3",
- "synckit": "^0.8.5"
- },
- "engines": {
- "node": "^14.18.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts"
- },
- "peerDependencies": {
- "eslint": "*",
- "eslint-plugin-import": "*"
- }
- },
- "node_modules/eslint-import-resolver-typescript/node_modules/globby": {
- "version": "13.2.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.0.tgz",
- "integrity": "sha512-jWsQfayf13NvqKUIL3Ta+CIqMnvlaIDFveWE/dpOZ9+3AMEJozsxDvKA02zync9UuvOM8rOXzsD5GqKP4OnWPQ==",
- "dependencies": {
- "dir-glob": "^3.0.1",
- "fast-glob": "^3.2.11",
- "ignore": "^5.2.0",
- "merge2": "^1.4.1",
- "slash": "^4.0.0"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/eslint-import-resolver-typescript/node_modules/slash": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz",
- "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/eslint-module-utils": {
- "version": "2.8.0",
- "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz",
- "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==",
- "dependencies": {
- "debug": "^3.2.7"
- },
- "engines": {
- "node": ">=4"
- },
- "peerDependenciesMeta": {
- "eslint": {
- "optional": true
- }
- }
- },
- "node_modules/eslint-module-utils/node_modules/debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "dependencies": {
- "ms": "^2.1.1"
- }
- },
- "node_modules/eslint-plugin-import": {
- "version": "2.29.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.0.tgz",
- "integrity": "sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==",
- "dependencies": {
- "array-includes": "^3.1.7",
- "array.prototype.findlastindex": "^1.2.3",
- "array.prototype.flat": "^1.3.2",
- "array.prototype.flatmap": "^1.3.2",
- "debug": "^3.2.7",
- "doctrine": "^2.1.0",
- "eslint-import-resolver-node": "^0.3.9",
- "eslint-module-utils": "^2.8.0",
- "hasown": "^2.0.0",
- "is-core-module": "^2.13.1",
- "is-glob": "^4.0.3",
- "minimatch": "^3.1.2",
- "object.fromentries": "^2.0.7",
- "object.groupby": "^1.0.1",
- "object.values": "^1.1.7",
- "semver": "^6.3.1",
- "tsconfig-paths": "^3.14.2"
- },
- "engines": {
- "node": ">=4"
- },
- "peerDependencies": {
- "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "dependencies": {
- "ms": "^2.1.1"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/doctrine": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
- "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
- "dependencies": {
- "esutils": "^2.0.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/json5": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
- "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
- "dependencies": {
- "minimist": "^1.2.0"
- },
- "bin": {
- "json5": "lib/cli.js"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/tsconfig-paths": {
- "version": "3.14.2",
- "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz",
- "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==",
- "dependencies": {
- "@types/json5": "^0.0.29",
- "json5": "^1.0.2",
- "minimist": "^1.2.6",
- "strip-bom": "^3.0.0"
- }
- },
- "node_modules/eslint-plugin-jsx-a11y": {
- "version": "6.7.1",
- "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.7.1.tgz",
- "integrity": "sha512-63Bog4iIethyo8smBklORknVjB0T2dwB8Mr/hIC+fBS0uyHdYYpzM/Ed+YC8VxTjlXHEWFOdmgwcDn1U2L9VCA==",
- "dependencies": {
- "@babel/runtime": "^7.20.7",
- "aria-query": "^5.1.3",
- "array-includes": "^3.1.6",
- "array.prototype.flatmap": "^1.3.1",
- "ast-types-flow": "^0.0.7",
- "axe-core": "^4.6.2",
- "axobject-query": "^3.1.1",
- "damerau-levenshtein": "^1.0.8",
- "emoji-regex": "^9.2.2",
- "has": "^1.0.3",
- "jsx-ast-utils": "^3.3.3",
- "language-tags": "=1.0.5",
- "minimatch": "^3.1.2",
- "object.entries": "^1.1.6",
- "object.fromentries": "^2.0.6",
- "semver": "^6.3.0"
- },
- "engines": {
- "node": ">=4.0"
- },
- "peerDependencies": {
- "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8"
- }
- },
- "node_modules/eslint-plugin-jsx-a11y/node_modules/emoji-regex": {
- "version": "9.2.2",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
- "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg=="
- },
- "node_modules/eslint-plugin-jsx-a11y/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/eslint-plugin-jsx-a11y/node_modules/semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/eslint-plugin-prettier": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.1.tgz",
- "integrity": "sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==",
- "dev": true,
- "dependencies": {
- "prettier-linter-helpers": "^1.0.0",
- "synckit": "^0.9.1"
- },
- "engines": {
- "node": "^14.18.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint-plugin-prettier"
- },
- "peerDependencies": {
- "@types/eslint": ">=8.0.0",
- "eslint": ">=8.0.0",
- "eslint-config-prettier": "*",
- "prettier": ">=3.0.0"
- },
- "peerDependenciesMeta": {
- "@types/eslint": {
- "optional": true
- },
- "eslint-config-prettier": {
- "optional": true
- }
- }
- },
- "node_modules/eslint-plugin-prettier/node_modules/synckit": {
- "version": "0.9.1",
- "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz",
- "integrity": "sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==",
- "dev": true,
- "dependencies": {
- "@pkgr/core": "^0.1.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": "^14.18.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/unts"
- }
- },
- "node_modules/eslint-plugin-react": {
- "version": "7.33.2",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz",
- "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==",
- "dependencies": {
- "array-includes": "^3.1.6",
- "array.prototype.flatmap": "^1.3.1",
- "array.prototype.tosorted": "^1.1.1",
- "doctrine": "^2.1.0",
- "es-iterator-helpers": "^1.0.12",
- "estraverse": "^5.3.0",
- "jsx-ast-utils": "^2.4.1 || ^3.0.0",
- "minimatch": "^3.1.2",
- "object.entries": "^1.1.6",
- "object.fromentries": "^2.0.6",
- "object.hasown": "^1.1.2",
- "object.values": "^1.1.6",
- "prop-types": "^15.8.1",
- "resolve": "^2.0.0-next.4",
- "semver": "^6.3.1",
- "string.prototype.matchall": "^4.0.8"
- },
- "engines": {
- "node": ">=4"
- },
- "peerDependencies": {
- "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8"
- }
- },
- "node_modules/eslint-plugin-react-hooks": {
- "version": "5.0.0-canary-7118f5dd7-20230705",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.0.0-canary-7118f5dd7-20230705.tgz",
- "integrity": "sha512-AZYbMo/NW9chdL7vk6HQzQhT+PvTAEVqWk9ziruUoW2kAOcN5qNyelv70e0F1VNQAbvutOC9oc+xfWycI9FxDw==",
- "engines": {
- "node": ">=10"
- },
- "peerDependencies": {
- "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0"
- }
- },
- "node_modules/eslint-plugin-react/node_modules/doctrine": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
- "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
- "dependencies": {
- "esutils": "^2.0.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/eslint-plugin-react/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/eslint-plugin-react/node_modules/resolve": {
- "version": "2.0.0-next.5",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz",
- "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==",
- "dependencies": {
- "is-core-module": "^2.13.0",
- "path-parse": "^1.0.7",
- "supports-preserve-symlinks-flag": "^1.0.0"
- },
- "bin": {
- "resolve": "bin/resolve"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/eslint-plugin-react/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/eslint-scope": {
- "version": "7.2.2",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz",
- "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==",
- "dependencies": {
- "esrecurse": "^4.3.0",
- "estraverse": "^5.2.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/eslint-visitor-keys": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
- "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/eslint/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/eslint/node_modules/argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- },
- "node_modules/eslint/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/eslint/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/eslint/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/eslint/node_modules/escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dependencies": {
- "is-glob": "^4.0.3"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/eslint/node_modules/find-up": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
- "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
- "dependencies": {
- "locate-path": "^6.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/eslint/node_modules/glob-parent": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
- "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
- "dependencies": {
- "is-glob": "^4.0.3"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/eslint/node_modules/globals": {
- "version": "13.20.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz",
- "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==",
- "dependencies": {
- "type-fest": "^0.20.2"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/eslint/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/eslint/node_modules/js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "dependencies": {
- "argparse": "^2.0.1"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/eslint/node_modules/levn": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
- "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
- "dependencies": {
- "prelude-ls": "^1.2.1",
- "type-check": "~0.4.0"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/eslint/node_modules/locate-path": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
- "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
- "dependencies": {
- "p-locate": "^5.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/eslint/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/eslint/node_modules/optionator": {
- "version": "0.9.3",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz",
- "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==",
- "dependencies": {
- "@aashutoshrathi/word-wrap": "^1.2.3",
- "deep-is": "^0.1.3",
- "fast-levenshtein": "^2.0.6",
- "levn": "^0.4.1",
- "prelude-ls": "^1.2.1",
- "type-check": "^0.4.0"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/eslint/node_modules/p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "dependencies": {
- "yocto-queue": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/eslint/node_modules/p-locate": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
- "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
- "dependencies": {
- "p-limit": "^3.0.2"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/eslint/node_modules/prelude-ls": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
- "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/eslint/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/eslint/node_modules/type-check": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
- "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
- "dependencies": {
- "prelude-ls": "^1.2.1"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/eslint/node_modules/type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/espree": {
- "version": "9.6.1",
- "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz",
- "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==",
- "dependencies": {
- "acorn": "^8.9.0",
- "acorn-jsx": "^5.3.2",
- "eslint-visitor-keys": "^3.4.1"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/esprima": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
- "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
- "bin": {
- "esparse": "bin/esparse.js",
- "esvalidate": "bin/esvalidate.js"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/esquery": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
- "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==",
- "dependencies": {
- "estraverse": "^5.1.0"
- },
- "engines": {
- "node": ">=0.10"
- }
- },
- "node_modules/esrecurse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
- "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
- "dependencies": {
- "estraverse": "^5.2.0"
- },
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/estraverse": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/esutils": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
- "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/eventemitter3": {
- "version": "4.0.7",
- "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz",
- "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw=="
- },
- "node_modules/events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "engines": {
- "node": ">=0.8.x"
- }
- },
- "node_modules/execa": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz",
- "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==",
- "dependencies": {
- "cross-spawn": "^7.0.3",
- "get-stream": "^6.0.0",
- "human-signals": "^2.1.0",
- "is-stream": "^2.0.0",
- "merge-stream": "^2.0.0",
- "npm-run-path": "^4.0.1",
- "onetime": "^5.1.2",
- "signal-exit": "^3.0.3",
- "strip-final-newline": "^2.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/execa?sponsor=1"
- }
- },
- "node_modules/exifreader": {
- "version": "4.23.7",
- "resolved": "https://registry.npmjs.org/exifreader/-/exifreader-4.23.7.tgz",
- "integrity": "sha512-yvyZFaZDqOa9QFHlV5/6tdq4rYBpNMPaRttl3VqthvYaS5QKrnaQBL1FKDaaTDpYO5bQanmsWnKLkUhoA0mSsg==",
- "hasInstallScript": true,
- "optionalDependencies": {
- "@xmldom/xmldom": "^0.8.10"
- }
- },
- "node_modules/exit": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
- "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/expect": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz",
- "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==",
- "dependencies": {
- "@jest/expect-utils": "^29.7.0",
- "jest-get-type": "^29.6.3",
- "jest-matcher-utils": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-util": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/exponential-backoff": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz",
- "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw=="
- },
- "node_modules/external-editor": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
- "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
- "dependencies": {
- "chardet": "^0.7.0",
- "iconv-lite": "^0.4.24",
- "tmp": "^0.0.33"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/external-editor/node_modules/tmp": {
- "version": "0.0.33",
- "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
- "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
- "dependencies": {
- "os-tmpdir": "~1.0.2"
- },
- "engines": {
- "node": ">=0.6.0"
- }
- },
- "node_modules/fast-deep-equal": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
- "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
- },
- "node_modules/fast-diff": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz",
- "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==",
- "dev": true
- },
- "node_modules/fast-glob": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
- "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
- "dependencies": {
- "@nodelib/fs.stat": "^2.0.2",
- "@nodelib/fs.walk": "^1.2.3",
- "glob-parent": "^5.1.2",
- "merge2": "^1.3.0",
- "micromatch": "^4.0.4"
- },
- "engines": {
- "node": ">=8.6.0"
- }
- },
- "node_modules/fast-json-stable-stringify": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
- "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
- },
- "node_modules/fast-levenshtein": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
- "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc="
- },
- "node_modules/fast-url-parser": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz",
- "integrity": "sha1-9K8+qfNNiicc9YrSs3WfQx8LMY0=",
- "dev": true,
- "dependencies": {
- "punycode": "^1.3.2"
- }
- },
- "node_modules/fast-url-parser/node_modules/punycode": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
- "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
- "dev": true
- },
- "node_modules/fast-xml-parser": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz",
- "integrity": "sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/NaturalIntelligence"
- },
- {
- "type": "paypal",
- "url": "https://paypal.me/naturalintelligence"
- }
- ],
- "dependencies": {
- "strnum": "^1.0.5"
- },
- "bin": {
- "fxparser": "src/cli/cli.js"
- }
- },
- "node_modules/fastq": {
- "version": "1.15.0",
- "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
- "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
- "dependencies": {
- "reusify": "^1.0.4"
- }
- },
- "node_modules/fb-watchman": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz",
- "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==",
- "dependencies": {
- "bser": "2.1.1"
- }
- },
- "node_modules/figures": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
- "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==",
- "dependencies": {
- "escape-string-regexp": "^1.0.5"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/file-entry-cache": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
- "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
- "dependencies": {
- "flat-cache": "^3.0.4"
- },
- "engines": {
- "node": "^10.12.0 || >=12.0.0"
- }
- },
- "node_modules/filelist": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz",
- "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==",
- "dependencies": {
- "minimatch": "^5.0.1"
- }
- },
- "node_modules/filelist/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/filelist/node_modules/minimatch": {
- "version": "5.1.6",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
- "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/fill-range": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
- "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
- "dependencies": {
- "to-regex-range": "^5.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dependencies": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/flat": {
- "version": "5.0.2",
- "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz",
- "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==",
- "bin": {
- "flat": "cli.js"
- }
- },
- "node_modules/flat-cache": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
- "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
- "dependencies": {
- "flatted": "^3.1.0",
- "rimraf": "^3.0.2"
- },
- "engines": {
- "node": "^10.12.0 || >=12.0.0"
- }
- },
- "node_modules/flatted": {
- "version": "3.2.5",
- "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz",
- "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg=="
- },
- "node_modules/follow-redirects": {
- "version": "1.15.6",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz",
- "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==",
- "funding": [
- {
- "type": "individual",
- "url": "https://github.com/sponsors/RubenVerborgh"
- }
- ],
- "engines": {
- "node": ">=4.0"
- },
- "peerDependenciesMeta": {
- "debug": {
- "optional": true
- }
- }
- },
- "node_modules/for-each": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz",
- "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==",
- "dependencies": {
- "is-callable": "^1.1.3"
- }
- },
- "node_modules/foreground-child": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
- "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
- "dependencies": {
- "cross-spawn": "^7.0.0",
- "signal-exit": "^4.0.1"
- },
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/foreground-child/node_modules/signal-exit": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz",
- "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==",
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/form-data": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
- "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
- "dependencies": {
- "asynckit": "^0.4.0",
- "combined-stream": "^1.0.8",
- "mime-types": "^2.1.12"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/front-matter": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-4.0.2.tgz",
- "integrity": "sha512-I8ZuJ/qG92NWX8i5x1Y8qyj3vizhXS31OxjKDu3LKP+7/qBgfIKValiZIEwoVoJKUHlhWtYrktkxV1XsX+pPlg==",
- "dependencies": {
- "js-yaml": "^3.13.1"
- }
- },
- "node_modules/fs-constants": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
- "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow=="
- },
- "node_modules/fs-extra": {
- "version": "11.2.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
- "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
- "dependencies": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^6.0.1",
- "universalify": "^2.0.0"
- },
- "engines": {
- "node": ">=14.14"
- }
- },
- "node_modules/fs-minipass": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz",
- "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==",
- "dependencies": {
- "minipass": "^7.0.3"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/fs-minipass/node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/fs.realpath": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
- },
- "node_modules/fsevents": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
- "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
- "hasInstallScript": true,
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
- }
- },
- "node_modules/function-bind": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
- "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/function.prototype.name": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz",
- "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "functions-have-names": "^1.2.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/functions-have-names": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
- "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/gensync": {
- "version": "1.0.0-beta.2",
- "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
- "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "engines": {
- "node": "6.* || 8.* || >= 10.*"
- }
- },
- "node_modules/get-func-name": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz",
- "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==",
- "dev": true,
- "engines": {
- "node": "*"
- }
- },
- "node_modules/get-intrinsic": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz",
- "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==",
- "dependencies": {
- "function-bind": "^1.1.2",
- "has-proto": "^1.0.1",
- "has-symbols": "^1.0.3",
- "hasown": "^2.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/get-package-type": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
- "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
- "engines": {
- "node": ">=8.0.0"
- }
- },
- "node_modules/get-pkg-repo": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz",
- "integrity": "sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA==",
- "dependencies": {
- "@hutson/parse-repository-url": "^3.0.0",
- "hosted-git-info": "^4.0.0",
- "through2": "^2.0.0",
- "yargs": "^16.2.0"
- },
- "bin": {
- "get-pkg-repo": "src/cli.js"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/get-pkg-repo/node_modules/cliui": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
- "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
- "dependencies": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^7.0.0"
- }
- },
- "node_modules/get-pkg-repo/node_modules/hosted-git-info": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
- "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==",
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/get-pkg-repo/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/get-pkg-repo/node_modules/y18n": {
- "version": "5.0.8",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
- "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/get-pkg-repo/node_modules/yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "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"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/get-pkg-repo/node_modules/yargs-parser": {
- "version": "20.2.9",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
- "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/get-port": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz",
- "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==",
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/get-stream": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz",
- "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/get-symbol-description": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz",
- "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/get-tsconfig": {
- "version": "4.6.2",
- "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.6.2.tgz",
- "integrity": "sha512-E5XrT4CbbXcXWy+1jChlZmrmCwd5KGx502kDCXJJ7y898TtWW9FwoG5HfOLVRKmlmDGkWN2HM9Ho+/Y8F0sJDg==",
- "dependencies": {
- "resolve-pkg-maps": "^1.0.0"
- },
- "funding": {
- "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1"
- }
- },
- "node_modules/git-raw-commits": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-3.0.0.tgz",
- "integrity": "sha512-b5OHmZ3vAgGrDn/X0kS+9qCfNKWe4K/jFnhwzVWWg0/k5eLa3060tZShrRg8Dja5kPc+YjS0Gc6y7cRr44Lpjw==",
- "dependencies": {
- "dargs": "^7.0.0",
- "meow": "^8.1.2",
- "split2": "^3.2.2"
- },
- "bin": {
- "git-raw-commits": "cli.js"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/git-remote-origin-url": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz",
- "integrity": "sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw==",
- "dependencies": {
- "gitconfiglocal": "^1.0.0",
- "pify": "^2.3.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/git-remote-origin-url/node_modules/pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/git-semver-tags": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-5.0.1.tgz",
- "integrity": "sha512-hIvOeZwRbQ+7YEUmCkHqo8FOLQZCEn18yevLHADlFPZY02KJGsu5FZt9YW/lybfK2uhWFI7Qg/07LekJiTv7iA==",
- "dependencies": {
- "meow": "^8.1.2",
- "semver": "^7.0.0"
- },
- "bin": {
- "git-semver-tags": "cli.js"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/git-up": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz",
- "integrity": "sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==",
- "dependencies": {
- "is-ssh": "^1.4.0",
- "parse-url": "^8.1.0"
- }
- },
- "node_modules/git-url-parse": {
- "version": "14.0.0",
- "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-14.0.0.tgz",
- "integrity": "sha512-NnLweV+2A4nCvn4U/m2AoYu0pPKlsmhK9cknG7IMwsjFY1S2jxM+mAhsDxyxfCIGfGaD+dozsyX4b6vkYc83yQ==",
- "dependencies": {
- "git-up": "^7.0.0"
- }
- },
- "node_modules/gitconfiglocal": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz",
- "integrity": "sha512-spLUXeTAVHxDtKsJc8FkFVgFtMdEN9qPGpL23VfSHx4fP4+Ds097IXLvymbnDH8FnmxX5Nr9bPw3A+AQ6mWEaQ==",
- "dependencies": {
- "ini": "^1.3.2"
- }
- },
- "node_modules/glob": {
- "version": "7.1.7",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
- "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/globals": {
- "version": "11.12.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
- "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/globalthis": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz",
- "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==",
- "dependencies": {
- "define-properties": "^1.1.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/globby": {
- "version": "11.1.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
- "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==",
- "dependencies": {
- "array-union": "^2.1.0",
- "dir-glob": "^3.0.1",
- "fast-glob": "^3.2.9",
- "ignore": "^5.2.0",
- "merge2": "^1.4.1",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/gopd": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
- "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
- "dependencies": {
- "get-intrinsic": "^1.1.3"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/graceful-fs": {
- "version": "4.2.11",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
- "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
- },
- "node_modules/graphemer": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
- "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag=="
- },
- "node_modules/handlebars": {
- "version": "4.7.8",
- "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz",
- "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==",
- "dependencies": {
- "minimist": "^1.2.5",
- "neo-async": "^2.6.2",
- "source-map": "^0.6.1",
- "wordwrap": "^1.0.0"
- },
- "bin": {
- "handlebars": "bin/handlebars"
- },
- "engines": {
- "node": ">=0.4.7"
- },
- "optionalDependencies": {
- "uglify-js": "^3.1.4"
- }
- },
- "node_modules/hard-rejection": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz",
- "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/has": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
- "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
- "dependencies": {
- "function-bind": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4.0"
- }
- },
- "node_modules/has-bigints": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz",
- "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/has-property-descriptors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz",
- "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==",
- "dependencies": {
- "get-intrinsic": "^1.1.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-proto": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz",
- "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-symbols": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
- "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-tostringtag": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz",
- "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==",
- "dependencies": {
- "has-symbols": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-unicode": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
- "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ=="
- },
- "node_modules/hasown": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz",
- "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==",
- "dependencies": {
- "function-bind": "^1.1.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/hed-validator": {
- "version": "3.15.4",
- "resolved": "https://registry.npmjs.org/hed-validator/-/hed-validator-3.15.4.tgz",
- "integrity": "sha512-40Jbd5CQ3mShQtJKQyYUiNB8Ym4FrLq21zzaQ067Mxj/9ILSJanx+Pmab4G1vVBl45NPLU9wLFvo+5YDomzlWA==",
- "dependencies": {
- "buffer": "^6.0.3",
- "cross-fetch": "^4.0.0",
- "date-and-time": "^3.1.1",
- "date-fns": "^3.6.0",
- "events": "^3.3.0",
- "lodash": "^4.17.21",
- "path": "^0.12.7",
- "pluralize": "^8.0.0",
- "semver": "^7.6.0",
- "string_decoder": "^1.3.0",
- "xml2js": "^0.6.2"
- },
- "engines": {
- "node": ">=18.0.0"
- }
- },
- "node_modules/hed-validator/node_modules/buffer": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
- "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "dependencies": {
- "base64-js": "^1.3.1",
- "ieee754": "^1.2.1"
- }
- },
- "node_modules/hosted-git-info": {
- "version": "7.0.2",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz",
- "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==",
- "dependencies": {
- "lru-cache": "^10.0.1"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/html-encoding-sniffer": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz",
- "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==",
- "dev": true,
- "dependencies": {
- "whatwg-encoding": "^2.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/html-escaper": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
- "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg=="
- },
- "node_modules/htmlparser2": {
- "version": "3.8.3",
- "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz",
- "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=",
- "dependencies": {
- "domelementtype": "1",
- "domhandler": "2.3",
- "domutils": "1.5",
- "entities": "1.0",
- "readable-stream": "1.1"
- }
- },
- "node_modules/htmlparser2/node_modules/entities": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz",
- "integrity": "sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY="
- },
- "node_modules/htmlparser2/node_modules/isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
- },
- "node_modules/htmlparser2/node_modules/readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
- }
- },
- "node_modules/htmlparser2/node_modules/string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ="
- },
- "node_modules/http-basic": {
- "version": "8.1.3",
- "resolved": "https://registry.npmjs.org/http-basic/-/http-basic-8.1.3.tgz",
- "integrity": "sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw==",
- "dev": true,
- "dependencies": {
- "caseless": "^0.12.0",
- "concat-stream": "^1.6.2",
- "http-response-object": "^3.0.1",
- "parse-cache-control": "^1.0.1"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/http-basic/node_modules/concat-stream": {
- "version": "1.6.2",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
- "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
- "dev": true,
- "engines": [
- "node >= 0.8"
- ],
- "dependencies": {
- "buffer-from": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^2.2.2",
- "typedarray": "^0.0.6"
- }
- },
- "node_modules/http-basic/node_modules/readable-stream": {
- "version": "2.3.7",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
- "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
- "dev": true,
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "node_modules/http-basic/node_modules/string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "dev": true,
- "dependencies": {
- "safe-buffer": "~5.1.0"
- }
- },
- "node_modules/http-cache-semantics": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz",
- "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ=="
- },
- "node_modules/http-proxy-agent": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz",
- "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==",
- "dev": true,
- "dependencies": {
- "@tootallnate/once": "1",
- "agent-base": "6",
- "debug": "4"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/http-response-object": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/http-response-object/-/http-response-object-3.0.2.tgz",
- "integrity": "sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==",
- "dev": true,
- "dependencies": {
- "@types/node": "^10.0.3"
- }
- },
- "node_modules/http-response-object/node_modules/@types/node": {
- "version": "10.17.60",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz",
- "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==",
- "dev": true
- },
- "node_modules/https-proxy-agent": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
- "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
- "dev": true,
- "dependencies": {
- "agent-base": "6",
- "debug": "4"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/human-signals": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
- "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==",
- "engines": {
- "node": ">=10.17.0"
- }
- },
- "node_modules/husky": {
- "version": "9.1.6",
- "resolved": "https://registry.npmjs.org/husky/-/husky-9.1.6.tgz",
- "integrity": "sha512-sqbjZKK7kf44hfdE94EoX8MZNk0n7HeW37O4YrVGCF4wzgQjp+akPAkfUK5LZ6KuR/6sqeAVuXHji+RzQgOn5A==",
- "dev": true,
- "bin": {
- "husky": "bin.js"
- },
- "engines": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://github.com/sponsors/typicode"
- }
- },
- "node_modules/iconv-lite": {
- "version": "0.4.24",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
- "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
- "dependencies": {
- "safer-buffer": ">= 2.1.2 < 3"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/ieee754": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
- "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ]
- },
- "node_modules/ignore": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
- "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
- "engines": {
- "node": ">= 4"
- }
- },
- "node_modules/ignore-walk": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz",
- "integrity": "sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==",
- "dev": true,
- "dependencies": {
- "minimatch": "^3.0.4"
- }
- },
- "node_modules/immutable": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz",
- "integrity": "sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg=="
- },
- "node_modules/import-fresh": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
- "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
- "dependencies": {
- "parent-module": "^1.0.0",
- "resolve-from": "^4.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/import-fresh/node_modules/resolve-from": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
- "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/import-local": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz",
- "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==",
- "dependencies": {
- "pkg-dir": "^4.2.0",
- "resolve-cwd": "^3.0.0"
- },
- "bin": {
- "import-local-fixture": "fixtures/cli.js"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/imurmurhash": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
- "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
- "engines": {
- "node": ">=0.8.19"
- }
- },
- "node_modules/indent-string": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
- "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/inflight": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
- "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
- "dependencies": {
- "once": "^1.3.0",
- "wrappy": "1"
- }
- },
- "node_modules/inherits": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
- },
- "node_modules/ini": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
- "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew=="
- },
- "node_modules/init-package-json": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/init-package-json/-/init-package-json-6.0.3.tgz",
- "integrity": "sha512-Zfeb5ol+H+eqJWHTaGca9BovufyGeIfr4zaaBorPmJBMrJ+KBnN+kQx2ZtXdsotUTgldHmHQV44xvUWOUA7E2w==",
- "dependencies": {
- "@npmcli/package-json": "^5.0.0",
- "npm-package-arg": "^11.0.0",
- "promzard": "^1.0.0",
- "read": "^3.0.1",
- "semver": "^7.3.5",
- "validate-npm-package-license": "^3.0.4",
- "validate-npm-package-name": "^5.0.0"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/inquirer": {
- "version": "8.2.6",
- "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.6.tgz",
- "integrity": "sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==",
- "dependencies": {
- "ansi-escapes": "^4.2.1",
- "chalk": "^4.1.1",
- "cli-cursor": "^3.1.0",
- "cli-width": "^3.0.0",
- "external-editor": "^3.0.3",
- "figures": "^3.0.0",
- "lodash": "^4.17.21",
- "mute-stream": "0.0.8",
- "ora": "^5.4.1",
- "run-async": "^2.4.0",
- "rxjs": "^7.5.5",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "through": "^2.3.6",
- "wrap-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=12.0.0"
- }
- },
- "node_modules/inquirer/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/inquirer/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/inquirer/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/inquirer/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/inquirer/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/inquirer/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/inquirer/node_modules/wrap-ansi": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
- "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/internal-slot": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz",
- "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==",
- "dependencies": {
- "get-intrinsic": "^1.2.0",
- "has": "^1.0.3",
- "side-channel": "^1.0.4"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/invariant": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
- "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
- "dependencies": {
- "loose-envify": "^1.0.0"
- }
- },
- "node_modules/invert-kv": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
- "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=",
- "optional": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/ip-address": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz",
- "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==",
- "dependencies": {
- "jsbn": "1.1.0",
- "sprintf-js": "^1.1.3"
- },
- "engines": {
- "node": ">= 12"
- }
- },
- "node_modules/ip-address/node_modules/sprintf-js": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz",
- "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA=="
- },
- "node_modules/is-arguments": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz",
- "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-array-buffer": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz",
- "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.2.0",
- "is-typed-array": "^1.1.10"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-arrayish": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
- "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg=="
- },
- "node_modules/is-async-function": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz",
- "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==",
- "dependencies": {
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-bigint": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz",
- "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==",
- "dependencies": {
- "has-bigints": "^1.0.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-boolean-object": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz",
- "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-callable": {
- "version": "1.2.7",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
- "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-ci": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz",
- "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==",
- "dependencies": {
- "ci-info": "^3.2.0"
- },
- "bin": {
- "is-ci": "bin.js"
- }
- },
- "node_modules/is-core-module": {
- "version": "2.13.1",
- "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz",
- "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==",
- "dependencies": {
- "hasown": "^2.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-date-object": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz",
- "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==",
- "dependencies": {
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "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==",
- "bin": {
- "is-docker": "cli.js"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-extglob": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-finalizationregistry": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz",
- "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==",
- "dependencies": {
- "call-bind": "^1.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-fullwidth-code-point": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
- "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-generator-fn": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz",
- "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/is-generator-function": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz",
- "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==",
- "dependencies": {
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-glob": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
- "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
- "dependencies": {
- "is-extglob": "^2.1.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-interactive": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz",
- "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-lambda": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz",
- "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ=="
- },
- "node_modules/is-map": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz",
- "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-negative-zero": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz",
- "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-number": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "engines": {
- "node": ">=0.12.0"
- }
- },
- "node_modules/is-number-object": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz",
- "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==",
- "dependencies": {
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-obj": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz",
- "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-path-inside": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
- "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-plain-obj": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
- "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-plain-object": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
- "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-potential-custom-element-name": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz",
- "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==",
- "dev": true
- },
- "node_modules/is-regex": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz",
- "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-set": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz",
- "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-shared-array-buffer": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz",
- "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==",
- "dependencies": {
- "call-bind": "^1.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-ssh": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.0.tgz",
- "integrity": "sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==",
- "dependencies": {
- "protocols": "^2.0.1"
- }
- },
- "node_modules/is-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz",
- "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-string": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz",
- "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==",
- "dependencies": {
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-symbol": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz",
- "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
- "dependencies": {
- "has-symbols": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-text-path": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz",
- "integrity": "sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==",
- "dependencies": {
- "text-extensions": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-typed-array": {
- "version": "1.1.12",
- "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz",
- "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==",
- "dependencies": {
- "which-typed-array": "^1.1.11"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-unicode-supported": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz",
- "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-utf8": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
- "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI="
- },
- "node_modules/is-weakmap": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz",
- "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-weakref": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz",
- "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==",
- "dependencies": {
- "call-bind": "^1.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-weakset": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz",
- "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.1.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-wsl": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
- "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
- "dependencies": {
- "is-docker": "^2.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
- },
- "node_modules/isexe": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA="
- },
- "node_modules/isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/istanbul-lib-coverage": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz",
- "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-instrument": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz",
- "integrity": "sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==",
- "dependencies": {
- "@babel/core": "^7.12.3",
- "@babel/parser": "^7.14.7",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-coverage": "^3.2.0",
- "semver": "^7.5.4"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/istanbul-lib-report": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz",
- "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==",
- "dependencies": {
- "istanbul-lib-coverage": "^3.0.0",
- "make-dir": "^4.0.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/istanbul-lib-report/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-report/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-source-maps": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz",
- "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==",
- "dependencies": {
- "debug": "^4.1.1",
- "istanbul-lib-coverage": "^3.0.0",
- "source-map": "^0.6.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/istanbul-reports": {
- "version": "3.1.6",
- "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz",
- "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==",
- "dependencies": {
- "html-escaper": "^2.0.0",
- "istanbul-lib-report": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/iterator.prototype": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz",
- "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==",
- "dependencies": {
- "define-properties": "^1.2.1",
- "get-intrinsic": "^1.2.1",
- "has-symbols": "^1.0.3",
- "reflect.getprototypeof": "^1.0.4",
- "set-function-name": "^2.0.1"
- }
- },
- "node_modules/jackspeak": {
- "version": "2.3.6",
- "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz",
- "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==",
- "dependencies": {
- "@isaacs/cliui": "^8.0.2"
- },
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- },
- "optionalDependencies": {
- "@pkgjs/parseargs": "^0.11.0"
- }
- },
- "node_modules/jake": {
- "version": "10.9.2",
- "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz",
- "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==",
- "dependencies": {
- "async": "^3.2.3",
- "chalk": "^4.0.2",
- "filelist": "^1.0.4",
- "minimatch": "^3.1.2"
- },
- "bin": {
- "jake": "bin/cli.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/jake/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jake/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jake/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jake/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jake/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jake/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/jake/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz",
- "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==",
- "dependencies": {
- "@jest/core": "^29.7.0",
- "@jest/types": "^29.6.3",
- "import-local": "^3.0.2",
- "jest-cli": "^29.7.0"
- },
- "bin": {
- "jest": "bin/jest.js"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
- },
- "peerDependenciesMeta": {
- "node-notifier": {
- "optional": true
- }
- }
- },
- "node_modules/jest-changed-files": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz",
- "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==",
- "dependencies": {
- "execa": "^5.0.0",
- "jest-util": "^29.7.0",
- "p-limit": "^3.1.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-changed-files/node_modules/p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "dependencies": {
- "yocto-queue": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/jest-circus": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz",
- "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==",
- "dependencies": {
- "@jest/environment": "^29.7.0",
- "@jest/expect": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "co": "^4.6.0",
- "dedent": "^1.0.0",
- "is-generator-fn": "^2.0.0",
- "jest-each": "^29.7.0",
- "jest-matcher-utils": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-runtime": "^29.7.0",
- "jest-snapshot": "^29.7.0",
- "jest-util": "^29.7.0",
- "p-limit": "^3.1.0",
- "pretty-format": "^29.7.0",
- "pure-rand": "^6.0.0",
- "slash": "^3.0.0",
- "stack-utils": "^2.0.3"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-circus/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-circus/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-circus/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-circus/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-circus/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-circus/node_modules/p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "dependencies": {
- "yocto-queue": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/jest-circus/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-cli": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz",
- "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==",
- "dependencies": {
- "@jest/core": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/types": "^29.6.3",
- "chalk": "^4.0.0",
- "create-jest": "^29.7.0",
- "exit": "^0.1.2",
- "import-local": "^3.0.2",
- "jest-config": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-validate": "^29.7.0",
- "yargs": "^17.3.1"
- },
- "bin": {
- "jest": "bin/jest.js"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
- },
- "peerDependenciesMeta": {
- "node-notifier": {
- "optional": true
- }
- }
- },
- "node_modules/jest-cli/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-cli/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-cli/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-cli/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-cli/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-cli/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-config": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz",
- "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==",
- "dependencies": {
- "@babel/core": "^7.11.6",
- "@jest/test-sequencer": "^29.7.0",
- "@jest/types": "^29.6.3",
- "babel-jest": "^29.7.0",
- "chalk": "^4.0.0",
- "ci-info": "^3.2.0",
- "deepmerge": "^4.2.2",
- "glob": "^7.1.3",
- "graceful-fs": "^4.2.9",
- "jest-circus": "^29.7.0",
- "jest-environment-node": "^29.7.0",
- "jest-get-type": "^29.6.3",
- "jest-regex-util": "^29.6.3",
- "jest-resolve": "^29.7.0",
- "jest-runner": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-validate": "^29.7.0",
- "micromatch": "^4.0.4",
- "parse-json": "^5.2.0",
- "pretty-format": "^29.7.0",
- "slash": "^3.0.0",
- "strip-json-comments": "^3.1.1"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "@types/node": "*",
- "ts-node": ">=9.0.0"
- },
- "peerDependenciesMeta": {
- "@types/node": {
- "optional": true
- },
- "ts-node": {
- "optional": true
- }
- }
- },
- "node_modules/jest-config/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-config/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-config/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-config/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-config/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-config/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-diff": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz",
- "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==",
- "dependencies": {
- "chalk": "^4.0.0",
- "diff-sequences": "^29.6.3",
- "jest-get-type": "^29.6.3",
- "pretty-format": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-diff/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-diff/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-diff/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-diff/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-diff/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-diff/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-docblock": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz",
- "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==",
- "dependencies": {
- "detect-newline": "^3.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-each": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz",
- "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "chalk": "^4.0.0",
- "jest-get-type": "^29.6.3",
- "jest-util": "^29.7.0",
- "pretty-format": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-each/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-each/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-each/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-each/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-each/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-each/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-environment-jsdom": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.7.0.tgz",
- "integrity": "sha512-k9iQbsf9OyOfdzWH8HDmrRT0gSIcX+FLNW7IQq94tFX0gynPwqDTW0Ho6iMVNjGz/nb+l/vW3dWM2bbLLpkbXA==",
- "dev": true,
- "dependencies": {
- "@jest/environment": "^29.7.0",
- "@jest/fake-timers": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/jsdom": "^20.0.0",
- "@types/node": "*",
- "jest-mock": "^29.7.0",
- "jest-util": "^29.7.0",
- "jsdom": "^20.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "canvas": "^2.5.0"
- },
- "peerDependenciesMeta": {
- "canvas": {
- "optional": true
- }
- }
- },
- "node_modules/jest-environment-node": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz",
- "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==",
- "dependencies": {
- "@jest/environment": "^29.7.0",
- "@jest/fake-timers": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "jest-mock": "^29.7.0",
- "jest-util": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-get-type": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz",
- "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==",
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-haste-map": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz",
- "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "@types/graceful-fs": "^4.1.3",
- "@types/node": "*",
- "anymatch": "^3.0.3",
- "fb-watchman": "^2.0.0",
- "graceful-fs": "^4.2.9",
- "jest-regex-util": "^29.6.3",
- "jest-util": "^29.7.0",
- "jest-worker": "^29.7.0",
- "micromatch": "^4.0.4",
- "walker": "^1.0.8"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "optionalDependencies": {
- "fsevents": "^2.3.2"
- }
- },
- "node_modules/jest-leak-detector": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz",
- "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==",
- "dependencies": {
- "jest-get-type": "^29.6.3",
- "pretty-format": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-matcher-utils": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz",
- "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==",
- "dependencies": {
- "chalk": "^4.0.0",
- "jest-diff": "^29.7.0",
- "jest-get-type": "^29.6.3",
- "pretty-format": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-matcher-utils/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-matcher-utils/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-matcher-utils/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-matcher-utils/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-matcher-utils/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-matcher-utils/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-message-util": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz",
- "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==",
- "dependencies": {
- "@babel/code-frame": "^7.12.13",
- "@jest/types": "^29.6.3",
- "@types/stack-utils": "^2.0.0",
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.9",
- "micromatch": "^4.0.4",
- "pretty-format": "^29.7.0",
- "slash": "^3.0.0",
- "stack-utils": "^2.0.3"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-message-util/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-message-util/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-message-util/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-message-util/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-message-util/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-message-util/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-mock": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz",
- "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "jest-util": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-pnp-resolver": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz",
- "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==",
- "engines": {
- "node": ">=6"
- },
- "peerDependencies": {
- "jest-resolve": "*"
- },
- "peerDependenciesMeta": {
- "jest-resolve": {
- "optional": true
- }
- }
- },
- "node_modules/jest-regex-util": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz",
- "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==",
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-resolve": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz",
- "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==",
- "dependencies": {
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.9",
- "jest-haste-map": "^29.7.0",
- "jest-pnp-resolver": "^1.2.2",
- "jest-util": "^29.7.0",
- "jest-validate": "^29.7.0",
- "resolve": "^1.20.0",
- "resolve.exports": "^2.0.0",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-resolve-dependencies": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz",
- "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==",
- "dependencies": {
- "jest-regex-util": "^29.6.3",
- "jest-snapshot": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-resolve/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-resolve/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-resolve/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-resolve/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-resolve/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-resolve/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-runner": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz",
- "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==",
- "dependencies": {
- "@jest/console": "^29.7.0",
- "@jest/environment": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "emittery": "^0.13.1",
- "graceful-fs": "^4.2.9",
- "jest-docblock": "^29.7.0",
- "jest-environment-node": "^29.7.0",
- "jest-haste-map": "^29.7.0",
- "jest-leak-detector": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-resolve": "^29.7.0",
- "jest-runtime": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-watcher": "^29.7.0",
- "jest-worker": "^29.7.0",
- "p-limit": "^3.1.0",
- "source-map-support": "0.5.13"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-runner/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-runner/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-runner/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-runner/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-runner/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-runner/node_modules/p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "dependencies": {
- "yocto-queue": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/jest-runner/node_modules/source-map-support": {
- "version": "0.5.13",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz",
- "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==",
- "dependencies": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
- },
- "node_modules/jest-runner/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-runtime": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz",
- "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==",
- "dependencies": {
- "@jest/environment": "^29.7.0",
- "@jest/fake-timers": "^29.7.0",
- "@jest/globals": "^29.7.0",
- "@jest/source-map": "^29.6.3",
- "@jest/test-result": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "cjs-module-lexer": "^1.0.0",
- "collect-v8-coverage": "^1.0.0",
- "glob": "^7.1.3",
- "graceful-fs": "^4.2.9",
- "jest-haste-map": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-mock": "^29.7.0",
- "jest-regex-util": "^29.6.3",
- "jest-resolve": "^29.7.0",
- "jest-snapshot": "^29.7.0",
- "jest-util": "^29.7.0",
- "slash": "^3.0.0",
- "strip-bom": "^4.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-runtime/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-runtime/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-runtime/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-runtime/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-runtime/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-runtime/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-snapshot": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz",
- "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==",
- "dependencies": {
- "@babel/core": "^7.11.6",
- "@babel/generator": "^7.7.2",
- "@babel/plugin-syntax-jsx": "^7.7.2",
- "@babel/plugin-syntax-typescript": "^7.7.2",
- "@babel/types": "^7.3.3",
- "@jest/expect-utils": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "babel-preset-current-node-syntax": "^1.0.0",
- "chalk": "^4.0.0",
- "expect": "^29.7.0",
- "graceful-fs": "^4.2.9",
- "jest-diff": "^29.7.0",
- "jest-get-type": "^29.6.3",
- "jest-matcher-utils": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-util": "^29.7.0",
- "natural-compare": "^1.4.0",
- "pretty-format": "^29.7.0",
- "semver": "^7.5.3"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-snapshot/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-snapshot/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-snapshot/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-snapshot/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-snapshot/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-snapshot/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-util": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz",
- "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "ci-info": "^3.2.0",
- "graceful-fs": "^4.2.9",
- "picomatch": "^2.2.3"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-util/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-util/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-util/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-util/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-util/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-util/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-validate": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz",
- "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "camelcase": "^6.2.0",
- "chalk": "^4.0.0",
- "jest-get-type": "^29.6.3",
- "leven": "^3.1.0",
- "pretty-format": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-validate/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-validate/node_modules/camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/jest-validate/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-validate/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-validate/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-validate/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-validate/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-watcher": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz",
- "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==",
- "dependencies": {
- "@jest/test-result": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "ansi-escapes": "^4.2.1",
- "chalk": "^4.0.0",
- "emittery": "^0.13.1",
- "jest-util": "^29.7.0",
- "string-length": "^4.0.1"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-watcher/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/jest-watcher/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/jest-watcher/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/jest-watcher/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/jest-watcher/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-watcher/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-worker": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz",
- "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==",
- "dependencies": {
- "@types/node": "*",
- "jest-util": "^29.7.0",
- "merge-stream": "^2.0.0",
- "supports-color": "^8.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-worker/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest-worker/node_modules/supports-color": {
- "version": "8.1.1",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
- "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/supports-color?sponsor=1"
- }
- },
- "node_modules/js-tokens": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
- "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
- },
- "node_modules/js-yaml": {
- "version": "3.14.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
- "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
- "dependencies": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/jsbn": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz",
- "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A=="
- },
- "node_modules/jsdom": {
- "version": "20.0.3",
- "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz",
- "integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==",
- "dev": true,
- "dependencies": {
- "abab": "^2.0.6",
- "acorn": "^8.8.1",
- "acorn-globals": "^7.0.0",
- "cssom": "^0.5.0",
- "cssstyle": "^2.3.0",
- "data-urls": "^3.0.2",
- "decimal.js": "^10.4.2",
- "domexception": "^4.0.0",
- "escodegen": "^2.0.0",
- "form-data": "^4.0.0",
- "html-encoding-sniffer": "^3.0.0",
- "http-proxy-agent": "^5.0.0",
- "https-proxy-agent": "^5.0.1",
- "is-potential-custom-element-name": "^1.0.1",
- "nwsapi": "^2.2.2",
- "parse5": "^7.1.1",
- "saxes": "^6.0.0",
- "symbol-tree": "^3.2.4",
- "tough-cookie": "^4.1.2",
- "w3c-xmlserializer": "^4.0.0",
- "webidl-conversions": "^7.0.0",
- "whatwg-encoding": "^2.0.0",
- "whatwg-mimetype": "^3.0.0",
- "whatwg-url": "^11.0.0",
- "ws": "^8.11.0",
- "xml-name-validator": "^4.0.0"
- },
- "engines": {
- "node": ">=14"
- },
- "peerDependencies": {
- "canvas": "^2.5.0"
- },
- "peerDependenciesMeta": {
- "canvas": {
- "optional": true
- }
- }
- },
- "node_modules/jsdom/node_modules/@tootallnate/once": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz",
- "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==",
- "dev": true,
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/jsdom/node_modules/http-proxy-agent": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz",
- "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==",
- "dev": true,
- "dependencies": {
- "@tootallnate/once": "2",
- "agent-base": "6",
- "debug": "4"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/jsesc": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
- "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
- "bin": {
- "jsesc": "bin/jsesc"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/jshint": {
- "version": "2.13.6",
- "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.13.6.tgz",
- "integrity": "sha512-IVdB4G0NTTeQZrBoM8C5JFVLjV2KtZ9APgybDA1MK73xb09qFs0jCXyQLnCOp1cSZZZbvhq/6mfXHUTaDkffuQ==",
- "dependencies": {
- "cli": "~1.0.0",
- "console-browserify": "1.1.x",
- "exit": "0.1.x",
- "htmlparser2": "3.8.x",
- "lodash": "~4.17.21",
- "minimatch": "~3.0.2",
- "strip-json-comments": "1.0.x"
- },
- "bin": {
- "jshint": "bin/jshint"
- }
- },
- "node_modules/jshint/node_modules/strip-json-comments": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz",
- "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=",
- "bin": {
- "strip-json-comments": "cli.js"
- },
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/json-parse-better-errors": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
- "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw=="
- },
- "node_modules/json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
- },
- "node_modules/json-schema-traverse": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
- "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
- },
- "node_modules/json-stable-stringify-without-jsonify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
- "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE="
- },
- "node_modules/json-stringify-nice": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz",
- "integrity": "sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==",
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/json-stringify-safe": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
- "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA=="
- },
- "node_modules/json5": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
- "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
- "bin": {
- "json5": "lib/cli.js"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/jsonc-parser": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz",
- "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w=="
- },
- "node_modules/jsonfile": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
- "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
- "dependencies": {
- "universalify": "^2.0.0"
- },
- "optionalDependencies": {
- "graceful-fs": "^4.1.6"
- }
- },
- "node_modules/jsonparse": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
- "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==",
- "engines": [
- "node >= 0.2.0"
- ]
- },
- "node_modules/JSONStream": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz",
- "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==",
- "dependencies": {
- "jsonparse": "^1.2.0",
- "through": ">=2.2.7 <3"
- },
- "bin": {
- "JSONStream": "bin.js"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/jsx-ast-utils": {
- "version": "3.3.4",
- "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.4.tgz",
- "integrity": "sha512-fX2TVdCViod6HwKEtSWGHs57oFhVfCMwieb9PuRDgjDPh5XeqJiHFFFJCHxU5cnTc3Bu/GRL+kPiFmw8XWOfKw==",
- "dependencies": {
- "array-includes": "^3.1.6",
- "array.prototype.flat": "^1.3.1",
- "object.assign": "^4.1.4",
- "object.values": "^1.1.6"
- },
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/just-diff": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/just-diff/-/just-diff-6.0.2.tgz",
- "integrity": "sha512-S59eriX5u3/QhMNq3v/gm8Kd0w8OS6Tz2FS1NG4blv+z0MuQcBRJyFWjdovM0Rad4/P4aUPFtnkNjMjyMlMSYA=="
- },
- "node_modules/just-diff-apply": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-5.5.0.tgz",
- "integrity": "sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw=="
- },
- "node_modules/kind-of": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
- "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/kleur": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz",
- "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/language-subtag-registry": {
- "version": "0.3.22",
- "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz",
- "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w=="
- },
- "node_modules/language-tags": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz",
- "integrity": "sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==",
- "dependencies": {
- "language-subtag-registry": "~0.3.2"
- }
- },
- "node_modules/lcid": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
- "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
- "optional": true,
- "dependencies": {
- "invert-kv": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/lerna": {
- "version": "8.1.8",
- "resolved": "https://registry.npmjs.org/lerna/-/lerna-8.1.8.tgz",
- "integrity": "sha512-Rmo5ShMx73xM2CUcRixjmpZIXB7ZFlWEul1YvJyx/rH4onAwDHtUGD7Rx4NZYL8QSRiQHroglM2Oyq+WqA4BYg==",
- "dependencies": {
- "@lerna/create": "8.1.8",
- "@npmcli/arborist": "7.5.4",
- "@npmcli/package-json": "5.2.0",
- "@npmcli/run-script": "8.1.0",
- "@nx/devkit": ">=17.1.2 < 20",
- "@octokit/plugin-enterprise-rest": "6.0.1",
- "@octokit/rest": "19.0.11",
- "aproba": "2.0.0",
- "byte-size": "8.1.1",
- "chalk": "4.1.0",
- "clone-deep": "4.0.1",
- "cmd-shim": "6.0.3",
- "color-support": "1.1.3",
- "columnify": "1.6.0",
- "console-control-strings": "^1.1.0",
- "conventional-changelog-angular": "7.0.0",
- "conventional-changelog-core": "5.0.1",
- "conventional-recommended-bump": "7.0.1",
- "cosmiconfig": "^8.2.0",
- "dedent": "1.5.3",
- "envinfo": "7.13.0",
- "execa": "5.0.0",
- "fs-extra": "^11.2.0",
- "get-port": "5.1.1",
- "get-stream": "6.0.0",
- "git-url-parse": "14.0.0",
- "glob-parent": "6.0.2",
- "globby": "11.1.0",
- "graceful-fs": "4.2.11",
- "has-unicode": "2.0.1",
- "import-local": "3.1.0",
- "ini": "^1.3.8",
- "init-package-json": "6.0.3",
- "inquirer": "^8.2.4",
- "is-ci": "3.0.1",
- "is-stream": "2.0.0",
- "jest-diff": ">=29.4.3 < 30",
- "js-yaml": "4.1.0",
- "libnpmaccess": "8.0.6",
- "libnpmpublish": "9.0.9",
- "load-json-file": "6.2.0",
- "lodash": "^4.17.21",
- "make-dir": "4.0.0",
- "minimatch": "3.0.5",
- "multimatch": "5.0.0",
- "node-fetch": "2.6.7",
- "npm-package-arg": "11.0.2",
- "npm-packlist": "8.0.2",
- "npm-registry-fetch": "^17.1.0",
- "nx": ">=17.1.2 < 20",
- "p-map": "4.0.0",
- "p-map-series": "2.1.0",
- "p-pipe": "3.1.0",
- "p-queue": "6.6.2",
- "p-reduce": "2.1.0",
- "p-waterfall": "2.1.1",
- "pacote": "^18.0.6",
- "pify": "5.0.0",
- "read-cmd-shim": "4.0.0",
- "resolve-from": "5.0.0",
- "rimraf": "^4.4.1",
- "semver": "^7.3.8",
- "set-blocking": "^2.0.0",
- "signal-exit": "3.0.7",
- "slash": "3.0.0",
- "ssri": "^10.0.6",
- "string-width": "^4.2.3",
- "strip-ansi": "^6.0.1",
- "strong-log-transformer": "2.1.0",
- "tar": "6.2.1",
- "temp-dir": "1.0.0",
- "typescript": ">=3 < 6",
- "upath": "2.0.1",
- "uuid": "^10.0.0",
- "validate-npm-package-license": "3.0.4",
- "validate-npm-package-name": "5.0.1",
- "wide-align": "1.1.5",
- "write-file-atomic": "5.0.1",
- "write-pkg": "4.0.0",
- "yargs": "17.7.2",
- "yargs-parser": "21.1.1"
- },
- "bin": {
- "lerna": "dist/cli.js"
- },
- "engines": {
- "node": ">=18.0.0"
- }
- },
- "node_modules/lerna/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/lerna/node_modules/argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- },
- "node_modules/lerna/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/lerna/node_modules/chalk": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
- "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/lerna/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/lerna/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/lerna/node_modules/glob": {
- "version": "9.3.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz",
- "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==",
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "minimatch": "^8.0.2",
- "minipass": "^4.2.4",
- "path-scurry": "^1.6.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/lerna/node_modules/glob-parent": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
- "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
- "dependencies": {
- "is-glob": "^4.0.3"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/lerna/node_modules/glob/node_modules/minimatch": {
- "version": "8.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz",
- "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/lerna/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/lerna/node_modules/js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "dependencies": {
- "argparse": "^2.0.1"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/lerna/node_modules/minipass": {
- "version": "4.2.8",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz",
- "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/lerna/node_modules/rimraf": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz",
- "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==",
- "dependencies": {
- "glob": "^9.2.0"
- },
- "bin": {
- "rimraf": "dist/cjs/src/bin.js"
- },
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/lerna/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/lerna/node_modules/uuid": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz",
- "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==",
- "funding": [
- "https://github.com/sponsors/broofa",
- "https://github.com/sponsors/ctavan"
- ],
- "bin": {
- "uuid": "dist/bin/uuid"
- }
- },
- "node_modules/lerna/node_modules/write-file-atomic": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
- "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
- "dependencies": {
- "imurmurhash": "^0.1.4",
- "signal-exit": "^4.0.1"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/lerna/node_modules/write-file-atomic/node_modules/signal-exit": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
- "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/leven": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
- "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/levn": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
- "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==",
- "dev": true,
- "dependencies": {
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/libnpmaccess": {
- "version": "8.0.6",
- "resolved": "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-8.0.6.tgz",
- "integrity": "sha512-uM8DHDEfYG6G5gVivVl+yQd4pH3uRclHC59lzIbSvy7b5FEwR+mU49Zq1jEyRtRFv7+M99mUW9S0wL/4laT4lw==",
- "dependencies": {
- "npm-package-arg": "^11.0.2",
- "npm-registry-fetch": "^17.0.1"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/libnpmpublish": {
- "version": "9.0.9",
- "resolved": "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-9.0.9.tgz",
- "integrity": "sha512-26zzwoBNAvX9AWOPiqqF6FG4HrSCPsHFkQm7nT+xU1ggAujL/eae81RnCv4CJ2In9q9fh10B88sYSzKCUh/Ghg==",
- "dependencies": {
- "ci-info": "^4.0.0",
- "normalize-package-data": "^6.0.1",
- "npm-package-arg": "^11.0.2",
- "npm-registry-fetch": "^17.0.1",
- "proc-log": "^4.2.0",
- "semver": "^7.3.7",
- "sigstore": "^2.2.0",
- "ssri": "^10.0.6"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/libnpmpublish/node_modules/ci-info": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.0.0.tgz",
- "integrity": "sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/sibiraj-s"
- }
- ],
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/lines-and-columns": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.4.tgz",
- "integrity": "sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==",
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- }
- },
- "node_modules/load-json-file": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz",
- "integrity": "sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ==",
- "dependencies": {
- "graceful-fs": "^4.1.15",
- "parse-json": "^5.0.0",
- "strip-bom": "^4.0.0",
- "type-fest": "^0.6.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/load-json-file/node_modules/type-fest": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
- "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dependencies": {
- "p-locate": "^4.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/lockfile": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/lockfile/-/lockfile-1.0.4.tgz",
- "integrity": "sha512-cvbTwETRfsFh4nHsL1eGWapU1XFi5Ot9E85sWAwia7Y7EgB7vfqcZhTKZ+l7hCGxSPoushMv5GKhT5PdLv03WA==",
- "dev": true,
- "dependencies": {
- "signal-exit": "^3.0.2"
- }
- },
- "node_modules/lodash": {
- "version": "4.17.21",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
- "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
- },
- "node_modules/lodash.debounce": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
- "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==",
- "dev": true
- },
- "node_modules/lodash.ismatch": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz",
- "integrity": "sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g=="
- },
- "node_modules/lodash.merge": {
- "version": "4.6.2",
- "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
- "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
- },
- "node_modules/lodash.truncate": {
- "version": "4.4.2",
- "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz",
- "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw=="
- },
- "node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/log-symbols/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/log-symbols/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/log-symbols/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/log-symbols/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/log-symbols/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/log-symbols/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/loose-envify": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
- "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
- "dependencies": {
- "js-tokens": "^3.0.0 || ^4.0.0"
- },
- "bin": {
- "loose-envify": "cli.js"
- }
- },
- "node_modules/loupe": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.1.0.tgz",
- "integrity": "sha512-qKl+FrLXUhFuHUoDJG7f8P8gEMHq9NFS0c6ghXG1J0rldmZFQZoNVv/vyirE9qwCIhWZDsvEFd1sbFu3GvRQFg==",
- "dev": true,
- "dependencies": {
- "get-func-name": "^2.0.1"
- }
- },
- "node_modules/lru-cache": {
- "version": "10.4.3",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz",
- "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="
- },
- "node_modules/make-dir": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz",
- "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==",
- "dependencies": {
- "semver": "^7.5.3"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/make-fetch-happen": {
- "version": "13.0.1",
- "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz",
- "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==",
- "dependencies": {
- "@npmcli/agent": "^2.0.0",
- "cacache": "^18.0.0",
- "http-cache-semantics": "^4.1.1",
- "is-lambda": "^1.0.1",
- "minipass": "^7.0.2",
- "minipass-fetch": "^3.0.0",
- "minipass-flush": "^1.0.5",
- "minipass-pipeline": "^1.2.4",
- "negotiator": "^0.6.3",
- "proc-log": "^4.2.0",
- "promise-retry": "^2.0.1",
- "ssri": "^10.0.0"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/make-fetch-happen/node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/makeerror": {
- "version": "1.0.12",
- "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz",
- "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==",
- "dependencies": {
- "tmpl": "1.0.5"
- }
- },
- "node_modules/map-obj": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz",
- "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==",
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/meow": {
- "version": "8.1.2",
- "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz",
- "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==",
- "dependencies": {
- "@types/minimist": "^1.2.0",
- "camelcase-keys": "^6.2.2",
- "decamelize-keys": "^1.1.0",
- "hard-rejection": "^2.1.0",
- "minimist-options": "4.1.0",
- "normalize-package-data": "^3.0.0",
- "read-pkg-up": "^7.0.1",
- "redent": "^3.0.0",
- "trim-newlines": "^3.0.0",
- "type-fest": "^0.18.0",
- "yargs-parser": "^20.2.3"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/meow/node_modules/hosted-git-info": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
- "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==",
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/meow/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/meow/node_modules/normalize-package-data": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz",
- "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==",
- "dependencies": {
- "hosted-git-info": "^4.0.1",
- "is-core-module": "^2.5.0",
- "semver": "^7.3.4",
- "validate-npm-package-license": "^3.0.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/meow/node_modules/read-pkg": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz",
- "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==",
- "dependencies": {
- "@types/normalize-package-data": "^2.4.0",
- "normalize-package-data": "^2.5.0",
- "parse-json": "^5.0.0",
- "type-fest": "^0.6.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/meow/node_modules/read-pkg-up": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz",
- "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==",
- "dependencies": {
- "find-up": "^4.1.0",
- "read-pkg": "^5.2.0",
- "type-fest": "^0.8.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
- "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/meow/node_modules/read-pkg/node_modules/hosted-git-info": {
- "version": "2.8.9",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
- "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw=="
- },
- "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
- "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
- "dependencies": {
- "hosted-git-info": "^2.1.4",
- "resolve": "^1.10.0",
- "semver": "2 || 3 || 4 || 5",
- "validate-npm-package-license": "^3.0.1"
- }
- },
- "node_modules/meow/node_modules/read-pkg/node_modules/semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
- "bin": {
- "semver": "bin/semver"
- }
- },
- "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
- "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/meow/node_modules/type-fest": {
- "version": "0.18.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz",
- "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/meow/node_modules/yargs-parser": {
- "version": "20.2.9",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
- "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/merge-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
- "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
- },
- "node_modules/merge2": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
- "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/micromatch": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
- "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
- "dependencies": {
- "braces": "^3.0.3",
- "picomatch": "^2.3.1"
- },
- "engines": {
- "node": ">=8.6"
- }
- },
- "node_modules/mime-db": {
- "version": "1.49.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz",
- "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/mime-types": {
- "version": "2.1.32",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz",
- "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==",
- "dependencies": {
- "mime-db": "1.49.0"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/mimic-fn": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
- "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/min-indent": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
- "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/minimatch": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz",
- "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/minimist": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
- "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/minimist-options": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz",
- "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==",
- "dependencies": {
- "arrify": "^1.0.1",
- "is-plain-obj": "^1.1.0",
- "kind-of": "^6.0.3"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/minipass": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
- "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/minipass-collect": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz",
- "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==",
- "dependencies": {
- "minipass": "^7.0.3"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/minipass-collect/node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/minipass-fetch": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz",
- "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==",
- "dependencies": {
- "minipass": "^7.0.3",
- "minipass-sized": "^1.0.3",
- "minizlib": "^2.1.2"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- },
- "optionalDependencies": {
- "encoding": "^0.1.13"
- }
- },
- "node_modules/minipass-fetch/node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/minipass-flush": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz",
- "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==",
- "dependencies": {
- "minipass": "^3.0.0"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/minipass-flush/node_modules/minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/minipass-pipeline": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz",
- "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==",
- "dependencies": {
- "minipass": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/minipass-pipeline/node_modules/minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/minipass-sized": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz",
- "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==",
- "dependencies": {
- "minipass": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/minipass-sized/node_modules/minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/minizlib": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
- "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
- "dependencies": {
- "minipass": "^3.0.0",
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/minizlib/node_modules/minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "bin": {
- "mkdirp": "bin/cmd.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/modify-values": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz",
- "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/mri": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
- "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/ms": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
- },
- "node_modules/multimatch": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz",
- "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==",
- "dependencies": {
- "@types/minimatch": "^3.0.3",
- "array-differ": "^3.0.0",
- "array-union": "^2.1.0",
- "arrify": "^2.0.1",
- "minimatch": "^3.0.4"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/multimatch/node_modules/arrify": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz",
- "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/mute-stream": {
- "version": "0.0.8",
- "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
- "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA=="
- },
- "node_modules/nanoid": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
- "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
- "bin": {
- "nanoid": "bin/nanoid.cjs"
- },
- "engines": {
- "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
- }
- },
- "node_modules/natural-compare": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
- "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc="
- },
- "node_modules/negotiator": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
- "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/neo-async": {
- "version": "2.6.2",
- "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
- "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw=="
- },
- "node_modules/next": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/next/-/next-14.2.13.tgz",
- "integrity": "sha512-BseY9YNw8QJSwLYD7hlZzl6QVDoSFHL/URN5K64kVEVpCsSOWeyjbIGK+dZUaRViHTaMQX8aqmnn0PHBbGZezg==",
- "dependencies": {
- "@next/env": "14.2.13",
- "@swc/helpers": "0.5.5",
- "busboy": "1.6.0",
- "caniuse-lite": "^1.0.30001579",
- "graceful-fs": "^4.2.11",
- "postcss": "8.4.31",
- "styled-jsx": "5.1.1"
- },
- "bin": {
- "next": "dist/bin/next"
- },
- "engines": {
- "node": ">=18.17.0"
- },
- "optionalDependencies": {
- "@next/swc-darwin-arm64": "14.2.13",
- "@next/swc-darwin-x64": "14.2.13",
- "@next/swc-linux-arm64-gnu": "14.2.13",
- "@next/swc-linux-arm64-musl": "14.2.13",
- "@next/swc-linux-x64-gnu": "14.2.13",
- "@next/swc-linux-x64-musl": "14.2.13",
- "@next/swc-win32-arm64-msvc": "14.2.13",
- "@next/swc-win32-ia32-msvc": "14.2.13",
- "@next/swc-win32-x64-msvc": "14.2.13"
- },
- "peerDependencies": {
- "@opentelemetry/api": "^1.1.0",
- "@playwright/test": "^1.41.2",
- "react": "^18.2.0",
- "react-dom": "^18.2.0",
- "sass": "^1.3.0"
- },
- "peerDependenciesMeta": {
- "@opentelemetry/api": {
- "optional": true
- },
- "@playwright/test": {
- "optional": true
- },
- "sass": {
- "optional": true
- }
- }
- },
- "node_modules/nifti-js": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/nifti-js/-/nifti-js-1.0.1.tgz",
- "integrity": "sha1-cDmi788bzyASUgrdhIXt2YtRSvo=",
- "optionalDependencies": {
- "yargs": "^3.29.0"
- }
- },
- "node_modules/nifti-js/node_modules/ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
- "optional": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/nifti-js/node_modules/camelcase": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
- "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
- "optional": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/nifti-js/node_modules/cliui": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
- "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
- "optional": true,
- "dependencies": {
- "string-width": "^1.0.1",
- "strip-ansi": "^3.0.1",
- "wrap-ansi": "^2.0.0"
- }
- },
- "node_modules/nifti-js/node_modules/is-fullwidth-code-point": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
- "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
- "optional": true,
- "dependencies": {
- "number-is-nan": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/nifti-js/node_modules/string-width": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
- "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
- "optional": true,
- "dependencies": {
- "code-point-at": "^1.0.0",
- "is-fullwidth-code-point": "^1.0.0",
- "strip-ansi": "^3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/nifti-js/node_modules/strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
- "optional": true,
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/nifti-js/node_modules/wrap-ansi": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
- "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
- "optional": true,
- "dependencies": {
- "string-width": "^1.0.1",
- "strip-ansi": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/nifti-js/node_modules/yargs": {
- "version": "3.32.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz",
- "integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=",
- "optional": true,
- "dependencies": {
- "camelcase": "^2.0.1",
- "cliui": "^3.0.3",
- "decamelize": "^1.1.1",
- "os-locale": "^1.4.0",
- "string-width": "^1.0.1",
- "window-size": "^0.1.4",
- "y18n": "^3.2.0"
- }
- },
- "node_modules/node-fetch": {
- "version": "2.6.7",
- "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
- "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
- "dependencies": {
- "whatwg-url": "^5.0.0"
- },
- "engines": {
- "node": "4.x || >=6.0.0"
- },
- "peerDependencies": {
- "encoding": "^0.1.0"
- },
- "peerDependenciesMeta": {
- "encoding": {
- "optional": true
- }
- }
- },
- "node_modules/node-fetch/node_modules/tr46": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
- "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o="
- },
- "node_modules/node-fetch/node_modules/webidl-conversions": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
- "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE="
- },
- "node_modules/node-fetch/node_modules/whatwg-url": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
- "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=",
- "dependencies": {
- "tr46": "~0.0.3",
- "webidl-conversions": "^3.0.0"
- }
- },
- "node_modules/node-gyp": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.2.0.tgz",
- "integrity": "sha512-sp3FonBAaFe4aYTcFdZUn2NYkbP7xroPGYvQmP4Nl5PxamznItBnNCgjrVTKrEfQynInMsJvZrdmqUnysCJ8rw==",
- "dependencies": {
- "env-paths": "^2.2.0",
- "exponential-backoff": "^3.1.1",
- "glob": "^10.3.10",
- "graceful-fs": "^4.2.6",
- "make-fetch-happen": "^13.0.0",
- "nopt": "^7.0.0",
- "proc-log": "^4.1.0",
- "semver": "^7.3.5",
- "tar": "^6.2.1",
- "which": "^4.0.0"
- },
- "bin": {
- "node-gyp": "bin/node-gyp.js"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/node-gyp/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/node-gyp/node_modules/glob": {
- "version": "10.4.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
- "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
- "dependencies": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^3.1.2",
- "minimatch": "^9.0.4",
- "minipass": "^7.1.2",
- "package-json-from-dist": "^1.0.0",
- "path-scurry": "^1.11.1"
- },
- "bin": {
- "glob": "dist/esm/bin.mjs"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/node-gyp/node_modules/isexe": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz",
- "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==",
- "engines": {
- "node": ">=16"
- }
- },
- "node_modules/node-gyp/node_modules/jackspeak": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz",
- "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
- "dependencies": {
- "@isaacs/cliui": "^8.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- },
- "optionalDependencies": {
- "@pkgjs/parseargs": "^0.11.0"
- }
- },
- "node_modules/node-gyp/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/node-gyp/node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/node-gyp/node_modules/which": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz",
- "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==",
- "dependencies": {
- "isexe": "^3.1.1"
- },
- "bin": {
- "node-which": "bin/which.js"
- },
- "engines": {
- "node": "^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/node-int64": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
- "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw=="
- },
- "node_modules/node-machine-id": {
- "version": "1.1.12",
- "resolved": "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.12.tgz",
- "integrity": "sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ=="
- },
- "node_modules/nopt": {
- "version": "7.2.1",
- "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz",
- "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==",
- "dependencies": {
- "abbrev": "^2.0.0"
- },
- "bin": {
- "nopt": "bin/nopt.js"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/normalize-package-data": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz",
- "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==",
- "dependencies": {
- "hosted-git-info": "^7.0.0",
- "semver": "^7.3.5",
- "validate-npm-package-license": "^3.0.4"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/normalize-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
- "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/npm-bundled": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.1.tgz",
- "integrity": "sha512-+AvaheE/ww1JEwRHOrn4WHNzOxGtVp+adrg2AeZS/7KuxGUYFuBta98wYpfHBbJp6Tg6j1NKSEVHNcfZzJHQwQ==",
- "dependencies": {
- "npm-normalize-package-bin": "^3.0.0"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/npm-install-checks": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz",
- "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==",
- "dependencies": {
- "semver": "^7.1.1"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/npm-normalize-package-bin": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz",
- "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/npm-package-arg": {
- "version": "11.0.2",
- "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.2.tgz",
- "integrity": "sha512-IGN0IAwmhDJwy13Wc8k+4PEbTPhpJnMtfR53ZbOyjkvmEcLS4nCwp6mvMWjS5sUjeiW3mpx6cHmuhKEu9XmcQw==",
- "dependencies": {
- "hosted-git-info": "^7.0.0",
- "proc-log": "^4.0.0",
- "semver": "^7.3.5",
- "validate-npm-package-name": "^5.0.0"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/npm-packlist": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz",
- "integrity": "sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==",
- "dependencies": {
- "ignore-walk": "^6.0.4"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/npm-packlist/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/npm-packlist/node_modules/ignore-walk": {
- "version": "6.0.5",
- "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.5.tgz",
- "integrity": "sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A==",
- "dependencies": {
- "minimatch": "^9.0.0"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/npm-packlist/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/npm-pick-manifest": {
- "version": "9.1.0",
- "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz",
- "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==",
- "dependencies": {
- "npm-install-checks": "^6.0.0",
- "npm-normalize-package-bin": "^3.0.0",
- "npm-package-arg": "^11.0.0",
- "semver": "^7.3.5"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/npm-registry-fetch": {
- "version": "17.1.0",
- "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.1.0.tgz",
- "integrity": "sha512-5+bKQRH0J1xG1uZ1zMNvxW0VEyoNWgJpY9UDuluPFLKDfJ9u2JmmjmTJV1srBGQOROfdBMiVvnH2Zvpbm+xkVA==",
- "dependencies": {
- "@npmcli/redact": "^2.0.0",
- "jsonparse": "^1.3.1",
- "make-fetch-happen": "^13.0.0",
- "minipass": "^7.0.2",
- "minipass-fetch": "^3.0.0",
- "minizlib": "^2.1.2",
- "npm-package-arg": "^11.0.0",
- "proc-log": "^4.0.0"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/npm-registry-fetch/node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/npm-run-path": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
- "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
- "dependencies": {
- "path-key": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/number-is-nan": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
- "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
- "optional": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/nwsapi": {
- "version": "2.2.5",
- "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.5.tgz",
- "integrity": "sha512-6xpotnECFy/og7tKSBVmUNft7J3jyXAka4XvG6AUhFWRz+Q/Ljus7znJAA3bxColfQLdS+XsjoodtJfCgeTEFQ==",
- "dev": true
- },
- "node_modules/nx": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/nx/-/nx-19.6.2.tgz",
- "integrity": "sha512-uUC9glC/QDsDhfOSzWl1id9rfUVepVwLhwBGRMeO5K6+Tju7qAsRGZ2NGPoUz6J1AZuWtlKZcr+MOSK2U4+2wQ==",
- "hasInstallScript": true,
- "dependencies": {
- "@napi-rs/wasm-runtime": "0.2.4",
- "@nrwl/tao": "19.6.2",
- "@yarnpkg/lockfile": "^1.1.0",
- "@yarnpkg/parsers": "3.0.0-rc.46",
- "@zkochan/js-yaml": "0.0.7",
- "axios": "^1.7.4",
- "chalk": "^4.1.0",
- "cli-cursor": "3.1.0",
- "cli-spinners": "2.6.1",
- "cliui": "^8.0.1",
- "dotenv": "~16.4.5",
- "dotenv-expand": "~11.0.6",
- "enquirer": "~2.3.6",
- "figures": "3.2.0",
- "flat": "^5.0.2",
- "front-matter": "^4.0.2",
- "fs-extra": "^11.1.0",
- "ignore": "^5.0.4",
- "jest-diff": "^29.4.1",
- "jsonc-parser": "3.2.0",
- "lines-and-columns": "~2.0.3",
- "minimatch": "9.0.3",
- "node-machine-id": "1.1.12",
- "npm-run-path": "^4.0.1",
- "open": "^8.4.0",
- "ora": "5.3.0",
- "semver": "^7.5.3",
- "string-width": "^4.2.3",
- "strong-log-transformer": "^2.1.0",
- "tar-stream": "~2.2.0",
- "tmp": "~0.2.1",
- "tsconfig-paths": "^4.1.2",
- "tslib": "^2.3.0",
- "yargs": "^17.6.2",
- "yargs-parser": "21.1.1"
- },
- "bin": {
- "nx": "bin/nx.js",
- "nx-cloud": "bin/nx-cloud.js"
- },
- "optionalDependencies": {
- "@nx/nx-darwin-arm64": "19.6.2",
- "@nx/nx-darwin-x64": "19.6.2",
- "@nx/nx-freebsd-x64": "19.6.2",
- "@nx/nx-linux-arm-gnueabihf": "19.6.2",
- "@nx/nx-linux-arm64-gnu": "19.6.2",
- "@nx/nx-linux-arm64-musl": "19.6.2",
- "@nx/nx-linux-x64-gnu": "19.6.2",
- "@nx/nx-linux-x64-musl": "19.6.2",
- "@nx/nx-win32-arm64-msvc": "19.6.2",
- "@nx/nx-win32-x64-msvc": "19.6.2"
- },
- "peerDependencies": {
- "@swc-node/register": "^1.8.0",
- "@swc/core": "^1.3.85"
- },
- "peerDependenciesMeta": {
- "@swc-node/register": {
- "optional": true
- },
- "@swc/core": {
- "optional": true
- }
- }
- },
- "node_modules/nx/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/nx/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/nx/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/nx/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/nx/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/nx/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/nx/node_modules/minimatch": {
- "version": "9.0.3",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz",
- "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/nx/node_modules/ora": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz",
- "integrity": "sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==",
- "dependencies": {
- "bl": "^4.0.3",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-spinners": "^2.5.0",
- "is-interactive": "^1.0.0",
- "log-symbols": "^4.0.0",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/nx/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/object-assign": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
- "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/object-inspect": {
- "version": "1.13.1",
- "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz",
- "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/object.assign": {
- "version": "4.1.4",
- "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz",
- "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.4",
- "has-symbols": "^1.0.3",
- "object-keys": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object.entries": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz",
- "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.4",
- "es-abstract": "^1.20.4"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/object.fromentries": {
- "version": "2.0.7",
- "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz",
- "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object.groupby": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz",
- "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "get-intrinsic": "^1.2.1"
- }
- },
- "node_modules/object.hasown": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.3.tgz",
- "integrity": "sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==",
- "dependencies": {
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object.values": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz",
- "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/once": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
- "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
- "dependencies": {
- "wrappy": "1"
- }
- },
- "node_modules/onetime": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
- "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
- "dependencies": {
- "mimic-fn": "^2.1.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/open": {
- "version": "8.4.2",
- "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz",
- "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==",
- "dependencies": {
- "define-lazy-prop": "^2.0.0",
- "is-docker": "^2.1.1",
- "is-wsl": "^2.2.0"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/optionator": {
- "version": "0.8.3",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
- "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
- "dev": true,
- "dependencies": {
- "deep-is": "~0.1.3",
- "fast-levenshtein": "~2.0.6",
- "levn": "~0.3.0",
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2",
- "word-wrap": "~1.2.3"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/ora": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
- "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
- "dependencies": {
- "bl": "^4.1.0",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-spinners": "^2.5.0",
- "is-interactive": "^1.0.0",
- "is-unicode-supported": "^0.1.0",
- "log-symbols": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/ora/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/ora/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/ora/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/ora/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/ora/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/ora/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/os-locale": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
- "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
- "optional": true,
- "dependencies": {
- "lcid": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/os-tmpdir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
- "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/p-finally": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
- "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dependencies": {
- "p-try": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dependencies": {
- "p-limit": "^2.2.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/p-map": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz",
- "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==",
- "dependencies": {
- "aggregate-error": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/p-map-series": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/p-map-series/-/p-map-series-2.1.0.tgz",
- "integrity": "sha512-RpYIIK1zXSNEOdwxcfe7FdvGcs7+y5n8rifMhMNWvaxRNMPINJHF5GDeuVxWqnfrcHPSCnp7Oo5yNXHId9Av2Q==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/p-pipe": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-pipe/-/p-pipe-3.1.0.tgz",
- "integrity": "sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw==",
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/p-queue": {
- "version": "6.6.2",
- "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz",
- "integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==",
- "dependencies": {
- "eventemitter3": "^4.0.4",
- "p-timeout": "^3.2.0"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/p-reduce": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-2.1.0.tgz",
- "integrity": "sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/p-timeout": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz",
- "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==",
- "dependencies": {
- "p-finally": "^1.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/p-try": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
- "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/p-waterfall": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/p-waterfall/-/p-waterfall-2.1.1.tgz",
- "integrity": "sha512-RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw==",
- "dependencies": {
- "p-reduce": "^2.0.0"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/package-json-from-dist": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz",
- "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw=="
- },
- "node_modules/pacote": {
- "version": "18.0.6",
- "resolved": "https://registry.npmjs.org/pacote/-/pacote-18.0.6.tgz",
- "integrity": "sha512-+eK3G27SMwsB8kLIuj4h1FUhHtwiEUo21Tw8wNjmvdlpOEr613edv+8FUsTj/4F/VN5ywGE19X18N7CC2EJk6A==",
- "dependencies": {
- "@npmcli/git": "^5.0.0",
- "@npmcli/installed-package-contents": "^2.0.1",
- "@npmcli/package-json": "^5.1.0",
- "@npmcli/promise-spawn": "^7.0.0",
- "@npmcli/run-script": "^8.0.0",
- "cacache": "^18.0.0",
- "fs-minipass": "^3.0.0",
- "minipass": "^7.0.2",
- "npm-package-arg": "^11.0.0",
- "npm-packlist": "^8.0.0",
- "npm-pick-manifest": "^9.0.0",
- "npm-registry-fetch": "^17.0.0",
- "proc-log": "^4.0.0",
- "promise-retry": "^2.0.1",
- "sigstore": "^2.2.0",
- "ssri": "^10.0.0",
- "tar": "^6.1.11"
- },
- "bin": {
- "pacote": "bin/index.js"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/pacote/node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/pako": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
- "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw=="
- },
- "node_modules/parent-module": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
- "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
- "dependencies": {
- "callsites": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/parse-cache-control": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz",
- "integrity": "sha1-juqz5U+laSD+Fro493+iGqzC104=",
- "dev": true
- },
- "node_modules/parse-conflict-json": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-3.0.1.tgz",
- "integrity": "sha512-01TvEktc68vwbJOtWZluyWeVGWjP+bZwXtPDMQVbBKzbJ/vZBif0L69KH1+cHv1SZ6e0FKLvjyHe8mqsIqYOmw==",
- "dependencies": {
- "json-parse-even-better-errors": "^3.0.0",
- "just-diff": "^6.0.0",
- "just-diff-apply": "^5.2.0"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/parse-conflict-json/node_modules/json-parse-even-better-errors": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz",
- "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/parse-json": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
- "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
- "dependencies": {
- "@babel/code-frame": "^7.0.0",
- "error-ex": "^1.3.1",
- "json-parse-even-better-errors": "^2.3.0",
- "lines-and-columns": "^1.1.6"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/parse-json/node_modules/lines-and-columns": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
- "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
- },
- "node_modules/parse-path": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.0.tgz",
- "integrity": "sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==",
- "dependencies": {
- "protocols": "^2.0.0"
- }
- },
- "node_modules/parse-url": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz",
- "integrity": "sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==",
- "dependencies": {
- "parse-path": "^7.0.0"
- }
- },
- "node_modules/parse5": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz",
- "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==",
- "dev": true,
- "dependencies": {
- "entities": "^4.4.0"
- },
- "funding": {
- "url": "https://github.com/inikulin/parse5?sponsor=1"
- }
- },
- "node_modules/parse5/node_modules/entities": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
- "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
- "dev": true,
- "engines": {
- "node": ">=0.12"
- },
- "funding": {
- "url": "https://github.com/fb55/entities?sponsor=1"
- }
- },
- "node_modules/path": {
- "version": "0.12.7",
- "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz",
- "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=",
- "dependencies": {
- "process": "^0.11.1",
- "util": "^0.10.3"
- }
- },
- "node_modules/path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/path-is-absolute": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/path-key": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
- "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/path-parse": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
- "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
- },
- "node_modules/path-scurry": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz",
- "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==",
- "dependencies": {
- "lru-cache": "^10.2.0",
- "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
- },
- "engines": {
- "node": ">=16 || 14 >=14.18"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/path-type": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
- "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/path/node_modules/inherits": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
- "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
- },
- "node_modules/path/node_modules/util": {
- "version": "0.10.4",
- "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz",
- "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==",
- "dependencies": {
- "inherits": "2.0.3"
- }
- },
- "node_modules/pathval": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.0.tgz",
- "integrity": "sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==",
- "dev": true,
- "engines": {
- "node": ">= 14.16"
- }
- },
- "node_modules/picocolors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
- "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
- },
- "node_modules/picomatch": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
- "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
- "engines": {
- "node": ">=8.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/jonschlinkert"
- }
- },
- "node_modules/pify": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz",
- "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/pirates": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz",
- "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==",
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/pkg-dir": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
- "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
- "dependencies": {
- "find-up": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/pluralize": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz",
- "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/postcss": {
- "version": "8.4.31",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz",
- "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==",
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/postcss/"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/postcss"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
- "dependencies": {
- "nanoid": "^3.3.6",
- "picocolors": "^1.0.0",
- "source-map-js": "^1.0.2"
- },
- "engines": {
- "node": "^10 || ^12 || >=14"
- }
- },
- "node_modules/postcss-selector-parser": {
- "version": "6.1.2",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz",
- "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==",
- "dependencies": {
- "cssesc": "^3.0.0",
- "util-deprecate": "^1.0.2"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/prelude-ls": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
- "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==",
- "dev": true,
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/prettier": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz",
- "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==",
- "dev": true,
- "bin": {
- "prettier": "bin/prettier.cjs"
- },
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/prettier/prettier?sponsor=1"
- }
- },
- "node_modules/prettier-linter-helpers": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz",
- "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==",
- "dev": true,
- "dependencies": {
- "fast-diff": "^1.1.2"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/pretty-format": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz",
- "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==",
- "dependencies": {
- "@jest/schemas": "^29.6.3",
- "ansi-styles": "^5.0.0",
- "react-is": "^18.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/pretty-format/node_modules/ansi-styles": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
- "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/pretty-format/node_modules/react-is": {
- "version": "18.2.0",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz",
- "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w=="
- },
- "node_modules/pretty-quick": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-4.0.0.tgz",
- "integrity": "sha512-M+2MmeufXb/M7Xw3Afh1gxcYpj+sK0AxEfnfF958ktFeAyi5MsKY5brymVURQLgPLV1QaF5P4pb2oFJ54H3yzQ==",
- "dev": true,
- "dependencies": {
- "execa": "^5.1.1",
- "find-up": "^5.0.0",
- "ignore": "^5.3.0",
- "mri": "^1.2.0",
- "picocolors": "^1.0.0",
- "picomatch": "^3.0.1",
- "tslib": "^2.6.2"
- },
- "bin": {
- "pretty-quick": "lib/cli.mjs"
- },
- "engines": {
- "node": ">=14"
- },
- "peerDependencies": {
- "prettier": "^3.0.0"
- }
- },
- "node_modules/pretty-quick/node_modules/execa": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz",
- "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==",
- "dev": true,
- "dependencies": {
- "cross-spawn": "^7.0.3",
- "get-stream": "^6.0.0",
- "human-signals": "^2.1.0",
- "is-stream": "^2.0.0",
- "merge-stream": "^2.0.0",
- "npm-run-path": "^4.0.1",
- "onetime": "^5.1.2",
- "signal-exit": "^3.0.3",
- "strip-final-newline": "^2.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/execa?sponsor=1"
- }
- },
- "node_modules/pretty-quick/node_modules/find-up": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
- "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
- "dev": true,
- "dependencies": {
- "locate-path": "^6.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/pretty-quick/node_modules/locate-path": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
- "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
- "dev": true,
- "dependencies": {
- "p-locate": "^5.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/pretty-quick/node_modules/p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "dev": true,
- "dependencies": {
- "yocto-queue": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/pretty-quick/node_modules/p-locate": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
- "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
- "dev": true,
- "dependencies": {
- "p-limit": "^3.0.2"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/pretty-quick/node_modules/picomatch": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz",
- "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/jonschlinkert"
- }
- },
- "node_modules/proc-log": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz",
- "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/process": {
- "version": "0.11.10",
- "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
- "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=",
- "engines": {
- "node": ">= 0.6.0"
- }
- },
- "node_modules/process-nextick-args": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
- "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
- },
- "node_modules/proggy": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/proggy/-/proggy-2.0.0.tgz",
- "integrity": "sha512-69agxLtnI8xBs9gUGqEnK26UfiexpHy+KUpBQWabiytQjnn5wFY8rklAi7GRfABIuPNnQ/ik48+LGLkYYJcy4A==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/promise": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz",
- "integrity": "sha512-W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q==",
- "dev": true,
- "dependencies": {
- "asap": "~2.0.6"
- }
- },
- "node_modules/promise-all-reject-late": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz",
- "integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==",
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/promise-call-limit": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/promise-call-limit/-/promise-call-limit-3.0.1.tgz",
- "integrity": "sha512-utl+0x8gIDasV5X+PI5qWEPqH6fJS0pFtQ/4gZ95xfEFb/89dmh+/b895TbFDBLiafBvxD/PGTKfvxl4kH/pQg==",
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/promise-inflight": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz",
- "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g=="
- },
- "node_modules/promise-retry": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz",
- "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==",
- "dependencies": {
- "err-code": "^2.0.2",
- "retry": "^0.12.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/prompts": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz",
- "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==",
- "dependencies": {
- "kleur": "^3.0.3",
- "sisteransi": "^1.0.5"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/promzard": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/promzard/-/promzard-1.0.2.tgz",
- "integrity": "sha512-2FPputGL+mP3jJ3UZg/Dl9YOkovB7DX0oOr+ck5QbZ5MtORtds8k/BZdn+02peDLI8/YWbmzx34k5fA+fHvCVQ==",
- "dependencies": {
- "read": "^3.0.1"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/prop-types": {
- "version": "15.8.1",
- "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
- "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
- "dependencies": {
- "loose-envify": "^1.4.0",
- "object-assign": "^4.1.1",
- "react-is": "^16.13.1"
- }
- },
- "node_modules/prop-types-extra": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/prop-types-extra/-/prop-types-extra-1.1.1.tgz",
- "integrity": "sha512-59+AHNnHYCdiC+vMwY52WmvP5dM3QLeoumYuEyceQDi9aEhtwN9zIQ2ZNo25sMyXnbh32h+P1ezDsUpUH3JAew==",
- "dependencies": {
- "react-is": "^16.3.2",
- "warning": "^4.0.0"
- },
- "peerDependencies": {
- "react": ">=0.14.0"
- }
- },
- "node_modules/protocols": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.1.tgz",
- "integrity": "sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q=="
- },
- "node_modules/proxy-from-env": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
- "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
- },
- "node_modules/psl": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz",
- "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==",
- "dev": true
- },
- "node_modules/punycode": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
- "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/pure-rand": {
- "version": "6.0.4",
- "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.4.tgz",
- "integrity": "sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==",
- "funding": [
- {
- "type": "individual",
- "url": "https://github.com/sponsors/dubzzz"
- },
- {
- "type": "opencollective",
- "url": "https://opencollective.com/fast-check"
- }
- ]
- },
- "node_modules/qs": {
- "version": "6.11.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
- "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
- "dev": true,
- "dependencies": {
- "side-channel": "^1.0.4"
- },
- "engines": {
- "node": ">=0.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/querystringify": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz",
- "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==",
- "dev": true
- },
- "node_modules/queue-microtask": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
- "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ]
- },
- "node_modules/quick-lru": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz",
- "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/react": {
- "version": "18.3.1",
- "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz",
- "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==",
- "dependencies": {
- "loose-envify": "^1.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/react-bootstrap": {
- "version": "2.10.5",
- "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-2.10.5.tgz",
- "integrity": "sha512-XueAOEn64RRkZ0s6yzUTdpFtdUXs5L5491QU//8ZcODKJNDLt/r01tNyriZccjgRImH1REynUc9pqjiRMpDLWQ==",
- "dependencies": {
- "@babel/runtime": "^7.24.7",
- "@restart/hooks": "^0.4.9",
- "@restart/ui": "^1.6.9",
- "@types/react-transition-group": "^4.4.6",
- "classnames": "^2.3.2",
- "dom-helpers": "^5.2.1",
- "invariant": "^2.2.4",
- "prop-types": "^15.8.1",
- "prop-types-extra": "^1.1.0",
- "react-transition-group": "^4.4.5",
- "uncontrollable": "^7.2.1",
- "warning": "^4.0.3"
- },
- "peerDependencies": {
- "@types/react": ">=16.14.8",
- "react": ">=16.14.0",
- "react-dom": ">=16.14.0"
- },
- "peerDependenciesMeta": {
- "@types/react": {
- "optional": true
- }
- }
- },
- "node_modules/react-dom": {
- "version": "18.3.1",
- "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz",
- "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==",
- "dependencies": {
- "loose-envify": "^1.1.0",
- "scheduler": "^0.23.2"
- },
- "peerDependencies": {
- "react": "^18.3.1"
- }
- },
- "node_modules/react-is": {
- "version": "16.13.1",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
- "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
- },
- "node_modules/react-lifecycles-compat": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz",
- "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA=="
- },
- "node_modules/react-transition-group": {
- "version": "4.4.5",
- "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz",
- "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==",
- "dependencies": {
- "@babel/runtime": "^7.5.5",
- "dom-helpers": "^5.0.1",
- "loose-envify": "^1.4.0",
- "prop-types": "^15.6.2"
- },
- "peerDependencies": {
- "react": ">=16.6.0",
- "react-dom": ">=16.6.0"
- }
- },
- "node_modules/read": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/read/-/read-3.0.1.tgz",
- "integrity": "sha512-SLBrDU/Srs/9EoWhU5GdbAoxG1GzpQHo/6qiGItaoLJ1thmYpcNIM1qISEUvyHBzfGlWIyd6p2DNi1oV1VmAuw==",
- "dependencies": {
- "mute-stream": "^1.0.0"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/read-cmd-shim": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-4.0.0.tgz",
- "integrity": "sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/read-package-json-fast": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz",
- "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==",
- "dependencies": {
- "json-parse-even-better-errors": "^3.0.0",
- "npm-normalize-package-bin": "^3.0.0"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/read-package-json-fast/node_modules/json-parse-even-better-errors": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz",
- "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/read-pkg": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
- "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==",
- "dependencies": {
- "load-json-file": "^4.0.0",
- "normalize-package-data": "^2.3.2",
- "path-type": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz",
- "integrity": "sha512-YFzFrVvpC6frF1sz8psoHDBGF7fLPc+llq/8NB43oagqWkx8ar5zYtsTORtOjw9W2RHLpWP+zTWwBvf1bCmcSw==",
- "dependencies": {
- "find-up": "^2.0.0",
- "read-pkg": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/find-up": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
- "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==",
- "dependencies": {
- "locate-path": "^2.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/locate-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
- "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==",
- "dependencies": {
- "p-locate": "^2.0.0",
- "path-exists": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/p-limit": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
- "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
- "dependencies": {
- "p-try": "^1.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/p-locate": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
- "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==",
- "dependencies": {
- "p-limit": "^1.1.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg/node_modules/hosted-git-info": {
- "version": "2.8.9",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
- "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw=="
- },
- "node_modules/read-pkg/node_modules/load-json-file": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz",
- "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==",
- "dependencies": {
- "graceful-fs": "^4.1.2",
- "parse-json": "^4.0.0",
- "pify": "^3.0.0",
- "strip-bom": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg/node_modules/normalize-package-data": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
- "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
- "dependencies": {
- "hosted-git-info": "^2.1.4",
- "resolve": "^1.10.0",
- "semver": "2 || 3 || 4 || 5",
- "validate-npm-package-license": "^3.0.1"
- }
- },
- "node_modules/read-pkg/node_modules/parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==",
- "dependencies": {
- "error-ex": "^1.3.1",
- "json-parse-better-errors": "^1.0.1"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg/node_modules/path-type": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
- "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
- "dependencies": {
- "pify": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg/node_modules/pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg/node_modules/semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
- "bin": {
- "semver": "bin/semver"
- }
- },
- "node_modules/read-pkg/node_modules/strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read/node_modules/mute-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz",
- "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/readable-stream": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
- "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
- "dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/readdirp": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz",
- "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==",
- "engines": {
- "node": ">= 14.16.0"
- },
- "funding": {
- "type": "individual",
- "url": "https://paulmillr.com/funding/"
- }
- },
- "node_modules/redent": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz",
- "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==",
- "dependencies": {
- "indent-string": "^4.0.0",
- "strip-indent": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/reflect.getprototypeof": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz",
- "integrity": "sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "get-intrinsic": "^1.2.1",
- "globalthis": "^1.0.3",
- "which-builtin-type": "^1.1.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/regenerate": {
- "version": "1.4.2",
- "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
- "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==",
- "dev": true
- },
- "node_modules/regenerate-unicode-properties": {
- "version": "10.1.0",
- "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz",
- "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==",
- "dev": true,
- "dependencies": {
- "regenerate": "^1.4.2"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/regenerator-runtime": {
- "version": "0.14.0",
- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz",
- "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA=="
- },
- "node_modules/regenerator-transform": {
- "version": "0.15.2",
- "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz",
- "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==",
- "dev": true,
- "dependencies": {
- "@babel/runtime": "^7.8.4"
- }
- },
- "node_modules/regexp.prototype.flags": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz",
- "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "set-function-name": "^2.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/regexpu-core": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz",
- "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==",
- "dev": true,
- "dependencies": {
- "@babel/regjsgen": "^0.8.0",
- "regenerate": "^1.4.2",
- "regenerate-unicode-properties": "^10.1.0",
- "regjsparser": "^0.9.1",
- "unicode-match-property-ecmascript": "^2.0.0",
- "unicode-match-property-value-ecmascript": "^2.1.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/regjsparser": {
- "version": "0.9.1",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz",
- "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==",
- "dev": true,
- "dependencies": {
- "jsesc": "~0.5.0"
- },
- "bin": {
- "regjsparser": "bin/parser"
- }
- },
- "node_modules/regjsparser/node_modules/jsesc": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
- "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==",
- "dev": true,
- "bin": {
- "jsesc": "bin/jsesc"
- }
- },
- "node_modules/require-directory": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
- "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/require-from-string": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
- "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/requires-port": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
- "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==",
- "dev": true
- },
- "node_modules/resolve": {
- "version": "1.20.0",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz",
- "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==",
- "dependencies": {
- "is-core-module": "^2.2.0",
- "path-parse": "^1.0.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/resolve-cwd": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
- "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
- "dependencies": {
- "resolve-from": "^5.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/resolve-from": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
- "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/resolve-pkg-maps": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
- "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==",
- "funding": {
- "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1"
- }
- },
- "node_modules/resolve.exports": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz",
- "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/restore-cursor": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
- "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
- "dependencies": {
- "onetime": "^5.1.0",
- "signal-exit": "^3.0.2"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/retry": {
- "version": "0.12.0",
- "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz",
- "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==",
- "engines": {
- "node": ">= 4"
- }
- },
- "node_modules/reusify": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
- "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
- "engines": {
- "iojs": ">=1.0.0",
- "node": ">=0.10.0"
- }
- },
- "node_modules/rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dependencies": {
- "glob": "^7.1.3"
- },
- "bin": {
- "rimraf": "bin.js"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/run-async": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
- "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==",
- "engines": {
- "node": ">=0.12.0"
- }
- },
- "node_modules/run-parallel": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
- "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "dependencies": {
- "queue-microtask": "^1.2.2"
- }
- },
- "node_modules/rxjs": {
- "version": "7.8.1",
- "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz",
- "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==",
- "dependencies": {
- "tslib": "^2.1.0"
- }
- },
- "node_modules/safe-array-concat": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz",
- "integrity": "sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.2.1",
- "has-symbols": "^1.0.3",
- "isarray": "^2.0.5"
- },
- "engines": {
- "node": ">=0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/safe-array-concat/node_modules/isarray": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
- "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw=="
- },
- "node_modules/safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
- },
- "node_modules/safe-regex-test": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz",
- "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.1.3",
- "is-regex": "^1.1.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/safer-buffer": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
- },
- "node_modules/sass": {
- "version": "1.79.4",
- "resolved": "https://registry.npmjs.org/sass/-/sass-1.79.4.tgz",
- "integrity": "sha512-K0QDSNPXgyqO4GZq2HO5Q70TLxTH6cIT59RdoCHMivrC8rqzaTw5ab9prjz9KUN1El4FLXrBXJhik61JR4HcGg==",
- "dependencies": {
- "chokidar": "^4.0.0",
- "immutable": "^4.0.0",
- "source-map-js": ">=0.6.2 <2.0.0"
- },
- "bin": {
- "sass": "sass.js"
- },
- "engines": {
- "node": ">=14.0.0"
- }
- },
- "node_modules/sax": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
- "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw=="
- },
- "node_modules/saxes": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz",
- "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==",
- "dev": true,
- "dependencies": {
- "xmlchars": "^2.2.0"
- },
- "engines": {
- "node": ">=v12.22.7"
- }
- },
- "node_modules/scheduler": {
- "version": "0.23.2",
- "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz",
- "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==",
- "dependencies": {
- "loose-envify": "^1.1.0"
- }
- },
- "node_modules/semver": {
- "version": "7.6.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
- "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/set-blocking": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
- "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
- },
- "node_modules/set-function-length": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz",
- "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==",
- "dependencies": {
- "define-data-property": "^1.1.1",
- "get-intrinsic": "^1.2.1",
- "gopd": "^1.0.1",
- "has-property-descriptors": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/set-function-name": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz",
- "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==",
- "dependencies": {
- "define-data-property": "^1.0.1",
- "functions-have-names": "^1.2.3",
- "has-property-descriptors": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/shallow-clone": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
- "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
- "dependencies": {
- "kind-of": "^6.0.2"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/shebang-command": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
- "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
- "dependencies": {
- "shebang-regex": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/shebang-regex": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
- "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/side-channel": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
- "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
- "dependencies": {
- "call-bind": "^1.0.0",
- "get-intrinsic": "^1.0.2",
- "object-inspect": "^1.9.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/signal-exit": {
- "version": "3.0.7",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
- "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
- },
- "node_modules/sigstore": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.3.1.tgz",
- "integrity": "sha512-8G+/XDU8wNsJOQS5ysDVO0Etg9/2uA5gR9l4ZwijjlwxBcrU6RPfwi2+jJmbP+Ap1Hlp/nVAaEO4Fj22/SL2gQ==",
- "dependencies": {
- "@sigstore/bundle": "^2.3.2",
- "@sigstore/core": "^1.0.0",
- "@sigstore/protobuf-specs": "^0.3.2",
- "@sigstore/sign": "^2.3.2",
- "@sigstore/tuf": "^2.3.4",
- "@sigstore/verify": "^1.2.1"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/sisteransi": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
- "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg=="
- },
- "node_modules/slash": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
- "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/slice-ansi": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
- "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==",
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "astral-regex": "^2.0.0",
- "is-fullwidth-code-point": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/slice-ansi?sponsor=1"
- }
- },
- "node_modules/slice-ansi/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/slice-ansi/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/slice-ansi/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/smart-buffer": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
- "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==",
- "engines": {
- "node": ">= 6.0.0",
- "npm": ">= 3.0.0"
- }
- },
- "node_modules/socks": {
- "version": "2.8.3",
- "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz",
- "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==",
- "dependencies": {
- "ip-address": "^9.0.5",
- "smart-buffer": "^4.2.0"
- },
- "engines": {
- "node": ">= 10.0.0",
- "npm": ">= 3.0.0"
- }
- },
- "node_modules/socks-proxy-agent": {
- "version": "8.0.4",
- "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz",
- "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==",
- "dependencies": {
- "agent-base": "^7.1.1",
- "debug": "^4.3.4",
- "socks": "^2.8.3"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/socks-proxy-agent/node_modules/agent-base": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz",
- "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==",
- "dependencies": {
- "debug": "^4.3.4"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/sort-keys": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz",
- "integrity": "sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg==",
- "dependencies": {
- "is-plain-obj": "^1.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/source-map-js": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
- "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/source-map-support": {
- "version": "0.5.21",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
- "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
- "dev": true,
- "dependencies": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
- },
- "node_modules/spdx-correct": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz",
- "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==",
- "dependencies": {
- "spdx-expression-parse": "^3.0.0",
- "spdx-license-ids": "^3.0.0"
- }
- },
- "node_modules/spdx-exceptions": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz",
- "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w=="
- },
- "node_modules/spdx-expression-parse": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
- "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
- "dependencies": {
- "spdx-exceptions": "^2.1.0",
- "spdx-license-ids": "^3.0.0"
- }
- },
- "node_modules/spdx-license-ids": {
- "version": "3.0.20",
- "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz",
- "integrity": "sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw=="
- },
- "node_modules/split": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz",
- "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==",
- "dependencies": {
- "through": "2"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/split2": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz",
- "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==",
- "dependencies": {
- "readable-stream": "^3.0.0"
- }
- },
- "node_modules/sprintf-js": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
- "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw="
- },
- "node_modules/ssri": {
- "version": "10.0.6",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz",
- "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==",
- "dependencies": {
- "minipass": "^7.0.3"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/ssri/node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/stack-utils": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz",
- "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==",
- "dependencies": {
- "escape-string-regexp": "^2.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/stack-utils/node_modules/escape-string-regexp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
- "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/stream-browserify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz",
- "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==",
- "dependencies": {
- "inherits": "~2.0.4",
- "readable-stream": "^3.5.0"
- }
- },
- "node_modules/stream-events": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/stream-events/-/stream-events-1.0.5.tgz",
- "integrity": "sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==",
- "dev": true,
- "dependencies": {
- "stubs": "^3.0.0"
- }
- },
- "node_modules/streamsearch": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
- "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==",
- "engines": {
- "node": ">=10.0.0"
- }
- },
- "node_modules/string_decoder": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
- "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
- "dependencies": {
- "safe-buffer": "~5.2.0"
- }
- },
- "node_modules/string_decoder/node_modules/safe-buffer": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
- "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ]
- },
- "node_modules/string-length": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz",
- "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==",
- "dependencies": {
- "char-regex": "^1.0.2",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/string-width": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "dependencies": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/string-width-cjs": {
- "name": "string-width",
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "dependencies": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/string-width-cjs/node_modules/emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
- },
- "node_modules/string-width/node_modules/emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
- },
- "node_modules/string.prototype.matchall": {
- "version": "4.0.10",
- "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz",
- "integrity": "sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "get-intrinsic": "^1.2.1",
- "has-symbols": "^1.0.3",
- "internal-slot": "^1.0.5",
- "regexp.prototype.flags": "^1.5.0",
- "set-function-name": "^2.0.0",
- "side-channel": "^1.0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/string.prototype.trim": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz",
- "integrity": "sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/string.prototype.trimend": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz",
- "integrity": "sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/string.prototype.trimstart": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz",
- "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/strip-ansi": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
- "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
- "dependencies": {
- "ansi-regex": "^5.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/strip-ansi-cjs": {
- "name": "strip-ansi",
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
- "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
- "dependencies": {
- "ansi-regex": "^5.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/strip-bom": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
- "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/strip-final-newline": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
- "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/strip-indent": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz",
- "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==",
- "dependencies": {
- "min-indent": "^1.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/strip-json-comments": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
- "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/strnum": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz",
- "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA=="
- },
- "node_modules/strong-log-transformer": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz",
- "integrity": "sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA==",
- "dependencies": {
- "duplexer": "^0.1.1",
- "minimist": "^1.2.0",
- "through": "^2.3.4"
- },
- "bin": {
- "sl-log-transformer": "bin/sl-log-transformer.js"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/stubs": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/stubs/-/stubs-3.0.0.tgz",
- "integrity": "sha1-6NK6H6nJBXAwPAMLaQD31fiavls=",
- "dev": true
- },
- "node_modules/styled-jsx": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz",
- "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==",
- "dependencies": {
- "client-only": "0.0.1"
- },
- "engines": {
- "node": ">= 12.0.0"
- },
- "peerDependencies": {
- "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0"
- },
- "peerDependenciesMeta": {
- "@babel/core": {
- "optional": true
- },
- "babel-plugin-macros": {
- "optional": true
- }
- }
- },
- "node_modules/supports-color": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
- "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
- "dependencies": {
- "has-flag": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/supports-preserve-symlinks-flag": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
- "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/symbol-tree": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz",
- "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
- "dev": true
- },
- "node_modules/sync-request": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/sync-request/-/sync-request-6.1.0.tgz",
- "integrity": "sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw==",
- "dev": true,
- "dependencies": {
- "http-response-object": "^3.0.1",
- "sync-rpc": "^1.2.1",
- "then-request": "^6.0.0"
- },
- "engines": {
- "node": ">=8.0.0"
- }
- },
- "node_modules/sync-rpc": {
- "version": "1.3.6",
- "resolved": "https://registry.npmjs.org/sync-rpc/-/sync-rpc-1.3.6.tgz",
- "integrity": "sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw==",
- "dev": true,
- "dependencies": {
- "get-port": "^3.1.0"
- }
- },
- "node_modules/sync-rpc/node_modules/get-port": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz",
- "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/synckit": {
- "version": "0.8.8",
- "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz",
- "integrity": "sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==",
- "dependencies": {
- "@pkgr/core": "^0.1.0",
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": "^14.18.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/unts"
- }
- },
- "node_modules/table": {
- "version": "6.8.2",
- "resolved": "https://registry.npmjs.org/table/-/table-6.8.2.tgz",
- "integrity": "sha512-w2sfv80nrAh2VCbqR5AK27wswXhqcck2AhfnNW76beQXskGZ1V12GwS//yYVa3d3fcvAip2OUnbDAjW2k3v9fA==",
- "dependencies": {
- "ajv": "^8.0.1",
- "lodash.truncate": "^4.4.2",
- "slice-ansi": "^4.0.0",
- "string-width": "^4.2.3",
- "strip-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=10.0.0"
- }
- },
- "node_modules/table/node_modules/ajv": {
- "version": "8.12.0",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz",
- "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==",
- "dependencies": {
- "fast-deep-equal": "^3.1.1",
- "json-schema-traverse": "^1.0.0",
- "require-from-string": "^2.0.2",
- "uri-js": "^4.2.2"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/epoberezkin"
- }
- },
- "node_modules/table/node_modules/json-schema-traverse": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
- "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug=="
- },
- "node_modules/tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/tar": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz",
- "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==",
- "dependencies": {
- "chownr": "^2.0.0",
- "fs-minipass": "^2.0.0",
- "minipass": "^5.0.0",
- "minizlib": "^2.1.1",
- "mkdirp": "^1.0.3",
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/tar-stream": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz",
- "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==",
- "dependencies": {
- "bl": "^4.0.3",
- "end-of-stream": "^1.4.1",
- "fs-constants": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^3.1.1"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/tar/node_modules/fs-minipass": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
- "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
- "dependencies": {
- "minipass": "^3.0.0"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/teeny-request": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/teeny-request/-/teeny-request-7.1.1.tgz",
- "integrity": "sha512-iwY6rkW5DDGq8hE2YgNQlKbptYpY5Nn2xecjQiNjOXWbKzPGUfmeUBCSQbbr306d7Z7U2N0TPl+/SwYRfua1Dg==",
- "dev": true,
- "dependencies": {
- "http-proxy-agent": "^4.0.0",
- "https-proxy-agent": "^5.0.0",
- "node-fetch": "^2.6.1",
- "stream-events": "^1.0.5",
- "uuid": "^8.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/temp-dir": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz",
- "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/test-exclude": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
- "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
- "dependencies": {
- "@istanbuljs/schema": "^0.1.2",
- "glob": "^7.1.4",
- "minimatch": "^3.0.4"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/text-extensions": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz",
- "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==",
- "engines": {
- "node": ">=0.10"
- }
- },
- "node_modules/text-table": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
- "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ="
- },
- "node_modules/then-request": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/then-request/-/then-request-6.0.2.tgz",
- "integrity": "sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA==",
- "dev": true,
- "dependencies": {
- "@types/concat-stream": "^1.6.0",
- "@types/form-data": "0.0.33",
- "@types/node": "^8.0.0",
- "@types/qs": "^6.2.31",
- "caseless": "~0.12.0",
- "concat-stream": "^1.6.0",
- "form-data": "^2.2.0",
- "http-basic": "^8.1.1",
- "http-response-object": "^3.0.1",
- "promise": "^8.0.0",
- "qs": "^6.4.0"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/then-request/node_modules/@types/node": {
- "version": "8.10.66",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz",
- "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==",
- "dev": true
- },
- "node_modules/then-request/node_modules/concat-stream": {
- "version": "1.6.2",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
- "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
- "dev": true,
- "engines": [
- "node >= 0.8"
- ],
- "dependencies": {
- "buffer-from": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^2.2.2",
- "typedarray": "^0.0.6"
- }
- },
- "node_modules/then-request/node_modules/form-data": {
- "version": "2.5.1",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz",
- "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==",
- "dev": true,
- "dependencies": {
- "asynckit": "^0.4.0",
- "combined-stream": "^1.0.6",
- "mime-types": "^2.1.12"
- },
- "engines": {
- "node": ">= 0.12"
- }
- },
- "node_modules/then-request/node_modules/readable-stream": {
- "version": "2.3.7",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
- "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
- "dev": true,
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "node_modules/then-request/node_modules/string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "dev": true,
- "dependencies": {
- "safe-buffer": "~5.1.0"
- }
- },
- "node_modules/through": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
- "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg=="
- },
- "node_modules/through2": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
- "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
- "dependencies": {
- "readable-stream": "~2.3.6",
- "xtend": "~4.0.1"
- }
- },
- "node_modules/through2/node_modules/readable-stream": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
- "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "node_modules/through2/node_modules/string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "dependencies": {
- "safe-buffer": "~5.1.0"
- }
- },
- "node_modules/tmp": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz",
- "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==",
- "engines": {
- "node": ">=14.14"
- }
- },
- "node_modules/tmpl": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz",
- "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw=="
- },
- "node_modules/to-fast-properties": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
- "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/to-regex-range": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "dependencies": {
- "is-number": "^7.0.0"
- },
- "engines": {
- "node": ">=8.0"
- }
- },
- "node_modules/tough-cookie": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz",
- "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==",
- "dev": true,
- "dependencies": {
- "psl": "^1.1.33",
- "punycode": "^2.1.1",
- "universalify": "^0.2.0",
- "url-parse": "^1.5.3"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/tough-cookie/node_modules/universalify": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz",
- "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==",
- "dev": true,
- "engines": {
- "node": ">= 4.0.0"
- }
- },
- "node_modules/tr46": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz",
- "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==",
- "dev": true,
- "dependencies": {
- "punycode": "^2.1.1"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/treeverse": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/treeverse/-/treeverse-3.0.0.tgz",
- "integrity": "sha512-gcANaAnd2QDZFmHFEOF4k7uc1J/6a6z3DJMd/QwEyxLoKGiptJRwid582r7QIsFlFMIZ3SnxfS52S4hm2DHkuQ==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/trim-newlines": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz",
- "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/ts-api-utils": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz",
- "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==",
- "engines": {
- "node": ">=16"
- },
- "peerDependencies": {
- "typescript": ">=4.2.0"
- }
- },
- "node_modules/tsconfig-paths": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz",
- "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==",
- "dependencies": {
- "json5": "^2.2.2",
- "minimist": "^1.2.6",
- "strip-bom": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/tsconfig-paths/node_modules/strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/tslib": {
- "version": "2.6.2",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
- "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
- },
- "node_modules/tuf-js": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz",
- "integrity": "sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA==",
- "dependencies": {
- "@tufjs/models": "2.0.1",
- "debug": "^4.3.4",
- "make-fetch-happen": "^13.0.1"
- },
- "engines": {
- "node": "^16.14.0 || >=18.0.0"
- }
- },
- "node_modules/type-check": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
- "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==",
- "dev": true,
- "dependencies": {
- "prelude-ls": "~1.1.2"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/type-detect": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
- "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/type-fest": {
- "version": "0.21.3",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
- "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/typed-array-buffer": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz",
- "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.2.1",
- "is-typed-array": "^1.1.10"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/typed-array-byte-length": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz",
- "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "for-each": "^0.3.3",
- "has-proto": "^1.0.1",
- "is-typed-array": "^1.1.10"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/typed-array-byte-offset": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz",
- "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==",
- "dependencies": {
- "available-typed-arrays": "^1.0.5",
- "call-bind": "^1.0.2",
- "for-each": "^0.3.3",
- "has-proto": "^1.0.1",
- "is-typed-array": "^1.1.10"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/typed-array-length": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz",
- "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "for-each": "^0.3.3",
- "is-typed-array": "^1.1.9"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/typedarray": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
- "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c="
- },
- "node_modules/typescript": {
- "version": "4.9.5",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz",
- "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==",
- "bin": {
- "tsc": "bin/tsc",
- "tsserver": "bin/tsserver"
- },
- "engines": {
- "node": ">=4.2.0"
- }
- },
- "node_modules/uglify-js": {
- "version": "3.19.2",
- "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.2.tgz",
- "integrity": "sha512-S8KA6DDI47nQXJSi2ctQ629YzwOVs+bQML6DAtvy0wgNdpi+0ySpQK0g2pxBq2xfF2z3YCscu7NNA8nXT9PlIQ==",
- "optional": true,
- "bin": {
- "uglifyjs": "bin/uglifyjs"
- },
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/unbox-primitive": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
- "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "has-bigints": "^1.0.2",
- "has-symbols": "^1.0.3",
- "which-boxed-primitive": "^1.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/uncontrollable": {
- "version": "7.2.1",
- "resolved": "https://registry.npmjs.org/uncontrollable/-/uncontrollable-7.2.1.tgz",
- "integrity": "sha512-svtcfoTADIB0nT9nltgjujTi7BzVmwjZClOmskKu/E8FW9BXzg9os8OLr4f8Dlnk0rYWJIWr4wv9eKUXiQvQwQ==",
- "dependencies": {
- "@babel/runtime": "^7.6.3",
- "@types/react": ">=16.9.11",
- "invariant": "^2.2.4",
- "react-lifecycles-compat": "^3.0.4"
- },
- "peerDependencies": {
- "react": ">=15.0.0"
- }
- },
- "node_modules/unicode-canonical-property-names-ecmascript": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz",
- "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unicode-match-property-ecmascript": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz",
- "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==",
- "dev": true,
- "dependencies": {
- "unicode-canonical-property-names-ecmascript": "^2.0.0",
- "unicode-property-aliases-ecmascript": "^2.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unicode-match-property-value-ecmascript": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz",
- "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unicode-property-aliases-ecmascript": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz",
- "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unique-filename": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz",
- "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==",
- "dependencies": {
- "unique-slug": "^4.0.0"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/unique-slug": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz",
- "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==",
- "dependencies": {
- "imurmurhash": "^0.1.4"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/universal-user-agent": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz",
- "integrity": "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ=="
- },
- "node_modules/universalify": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
- "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
- "engines": {
- "node": ">= 10.0.0"
- }
- },
- "node_modules/upath": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz",
- "integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==",
- "engines": {
- "node": ">=4",
- "yarn": "*"
- }
- },
- "node_modules/update-browserslist-db": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz",
- "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==",
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/browserslist"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/browserslist"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
- "dependencies": {
- "escalade": "^3.1.1",
- "picocolors": "^1.0.0"
- },
- "bin": {
- "update-browserslist-db": "cli.js"
- },
- "peerDependencies": {
- "browserslist": ">= 4.21.0"
- }
- },
- "node_modules/uri-js": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
- "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
- "dependencies": {
- "punycode": "^2.1.0"
- }
- },
- "node_modules/url-parse": {
- "version": "1.5.10",
- "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz",
- "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==",
- "dev": true,
- "dependencies": {
- "querystringify": "^2.1.1",
- "requires-port": "^1.0.0"
- }
- },
- "node_modules/urlgrey": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/urlgrey/-/urlgrey-1.0.0.tgz",
- "integrity": "sha512-hJfIzMPJmI9IlLkby8QrsCykQ+SXDeO2W5Q9QTW3QpqZVTx4a/K7p8/5q+/isD8vsbVaFgql/gvAoQCRQ2Cb5w==",
- "dev": true,
- "dependencies": {
- "fast-url-parser": "^1.1.3"
- }
- },
- "node_modules/util": {
- "version": "0.12.5",
- "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz",
- "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==",
- "dependencies": {
- "inherits": "^2.0.3",
- "is-arguments": "^1.0.4",
- "is-generator-function": "^1.0.7",
- "is-typed-array": "^1.1.3",
- "which-typed-array": "^1.1.2"
- }
- },
- "node_modules/util-deprecate": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
- "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
- },
- "node_modules/uuid": {
- "version": "8.3.2",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
- "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
- "dev": true,
- "bin": {
- "uuid": "dist/bin/uuid"
- }
- },
- "node_modules/v8-to-istanbul": {
- "version": "9.1.3",
- "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.3.tgz",
- "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"
- },
- "engines": {
- "node": ">=10.12.0"
- }
- },
- "node_modules/v8-to-istanbul/node_modules/convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg=="
- },
- "node_modules/validate-npm-package-license": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
- "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
- "dependencies": {
- "spdx-correct": "^3.0.0",
- "spdx-expression-parse": "^3.0.0"
- }
- },
- "node_modules/validate-npm-package-name": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz",
- "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/w3c-xmlserializer": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz",
- "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==",
- "dev": true,
- "dependencies": {
- "xml-name-validator": "^4.0.0"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/walk-up-path": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz",
- "integrity": "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA=="
- },
- "node_modules/walker": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz",
- "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==",
- "dependencies": {
- "makeerror": "1.0.12"
- }
- },
- "node_modules/warning": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz",
- "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==",
- "dependencies": {
- "loose-envify": "^1.0.0"
- }
- },
- "node_modules/wcwidth": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz",
- "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==",
- "dependencies": {
- "defaults": "^1.0.3"
- }
- },
- "node_modules/webidl-conversions": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz",
- "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==",
- "dev": true,
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/whatwg-encoding": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz",
- "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==",
- "dev": true,
- "dependencies": {
- "iconv-lite": "0.6.3"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/whatwg-encoding/node_modules/iconv-lite": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
- "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
- "dev": true,
- "dependencies": {
- "safer-buffer": ">= 2.1.2 < 3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/whatwg-mimetype": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz",
- "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==",
- "dev": true,
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/whatwg-url": {
- "version": "11.0.0",
- "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz",
- "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==",
- "dev": true,
- "dependencies": {
- "tr46": "^3.0.0",
- "webidl-conversions": "^7.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/which": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
- "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
- "dependencies": {
- "isexe": "^2.0.0"
- },
- "bin": {
- "node-which": "bin/node-which"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/which-boxed-primitive": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
- "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
- "dependencies": {
- "is-bigint": "^1.0.1",
- "is-boolean-object": "^1.1.0",
- "is-number-object": "^1.0.4",
- "is-string": "^1.0.5",
- "is-symbol": "^1.0.3"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/which-builtin-type": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz",
- "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==",
- "dependencies": {
- "function.prototype.name": "^1.1.5",
- "has-tostringtag": "^1.0.0",
- "is-async-function": "^2.0.0",
- "is-date-object": "^1.0.5",
- "is-finalizationregistry": "^1.0.2",
- "is-generator-function": "^1.0.10",
- "is-regex": "^1.1.4",
- "is-weakref": "^1.0.2",
- "isarray": "^2.0.5",
- "which-boxed-primitive": "^1.0.2",
- "which-collection": "^1.0.1",
- "which-typed-array": "^1.1.9"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/which-builtin-type/node_modules/isarray": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
- "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw=="
- },
- "node_modules/which-collection": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz",
- "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==",
- "dependencies": {
- "is-map": "^2.0.1",
- "is-set": "^2.0.1",
- "is-weakmap": "^2.0.1",
- "is-weakset": "^2.0.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/which-typed-array": {
- "version": "1.1.13",
- "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz",
- "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==",
- "dependencies": {
- "available-typed-arrays": "^1.0.5",
- "call-bind": "^1.0.4",
- "for-each": "^0.3.3",
- "gopd": "^1.0.1",
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/wide-align": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz",
- "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==",
- "dependencies": {
- "string-width": "^1.0.2 || 2 || 3 || 4"
- }
- },
- "node_modules/window-size": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz",
- "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=",
- "optional": true,
- "bin": {
- "window-size": "cli.js"
- },
- "engines": {
- "node": ">= 0.10.0"
- }
- },
- "node_modules/word-wrap": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.4.tgz",
- "integrity": "sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/wordwrap": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
- "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q=="
- },
- "node_modules/wrap-ansi": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
- }
- },
- "node_modules/wrap-ansi-cjs": {
- "name": "wrap-ansi",
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
- }
- },
- "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/wrap-ansi-cjs/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/wrap-ansi-cjs/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/wrap-ansi/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/wrap-ansi/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/wrap-ansi/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/wrappy": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
- },
- "node_modules/write-file-atomic": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz",
- "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==",
- "dependencies": {
- "imurmurhash": "^0.1.4",
- "signal-exit": "^3.0.7"
- },
- "engines": {
- "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
- }
- },
- "node_modules/write-json-file": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-3.2.0.tgz",
- "integrity": "sha512-3xZqT7Byc2uORAatYiP3DHUUAVEkNOswEWNs9H5KXiicRTvzYzYqKjYc4G7p+8pltvAw641lVByKVtMpf+4sYQ==",
- "dependencies": {
- "detect-indent": "^5.0.0",
- "graceful-fs": "^4.1.15",
- "make-dir": "^2.1.0",
- "pify": "^4.0.1",
- "sort-keys": "^2.0.0",
- "write-file-atomic": "^2.4.2"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/write-json-file/node_modules/make-dir": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
- "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
- "dependencies": {
- "pify": "^4.0.1",
- "semver": "^5.6.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/write-json-file/node_modules/pify": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
- "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/write-json-file/node_modules/semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
- "bin": {
- "semver": "bin/semver"
- }
- },
- "node_modules/write-json-file/node_modules/write-file-atomic": {
- "version": "2.4.3",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz",
- "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==",
- "dependencies": {
- "graceful-fs": "^4.1.11",
- "imurmurhash": "^0.1.4",
- "signal-exit": "^3.0.2"
- }
- },
- "node_modules/write-pkg": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-4.0.0.tgz",
- "integrity": "sha512-v2UQ+50TNf2rNHJ8NyWttfm/EJUBWMJcx6ZTYZr6Qp52uuegWw/lBkCtCbnYZEmPRNL61m+u67dAmGxo+HTULA==",
- "dependencies": {
- "sort-keys": "^2.0.0",
- "type-fest": "^0.4.1",
- "write-json-file": "^3.2.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/write-pkg/node_modules/type-fest": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.4.1.tgz",
- "integrity": "sha512-IwzA/LSfD2vC1/YDYMv/zHP4rDF1usCwllsDpbolT3D4fUepIO7f9K70jjmUewU/LmGUKJcwcVtDCpnKk4BPMw==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/ws": {
- "version": "8.17.1",
- "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz",
- "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==",
- "dev": true,
- "engines": {
- "node": ">=10.0.0"
- },
- "peerDependencies": {
- "bufferutil": "^4.0.1",
- "utf-8-validate": ">=5.0.2"
- },
- "peerDependenciesMeta": {
- "bufferutil": {
- "optional": true
- },
- "utf-8-validate": {
- "optional": true
- }
- }
- },
- "node_modules/xml-name-validator": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz",
- "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==",
- "dev": true,
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/xml2js": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.2.tgz",
- "integrity": "sha512-T4rieHaC1EXcES0Kxxj4JWgaUQHDk+qwHcYOCFHfiwKz7tOVPLq7Hjq9dM1WCMhylqMEfP7hMcOIChvotiZegA==",
- "dependencies": {
- "sax": ">=0.6.0",
- "xmlbuilder": "~11.0.0"
- },
- "engines": {
- "node": ">=4.0.0"
- }
- },
- "node_modules/xmlbuilder": {
- "version": "11.0.1",
- "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz",
- "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==",
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/xmlchars": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz",
- "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==",
- "dev": true
- },
- "node_modules/xtend": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
- "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
- "engines": {
- "node": ">=0.4"
- }
- },
- "node_modules/y18n": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz",
- "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==",
- "optional": true
- },
- "node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
- },
- "node_modules/yargs": {
- "version": "17.7.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
- "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
- "dependencies": {
- "cliui": "^8.0.1",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.3",
- "y18n": "^5.0.5",
- "yargs-parser": "^21.1.1"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/yargs-parser": {
- "version": "21.1.1",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
- "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/yargs/node_modules/y18n": {
- "version": "5.0.8",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
- "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/yocto-queue": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
- "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- }
- },
- "dependencies": {
- "@aashutoshrathi/word-wrap": {
- "version": "1.2.6",
- "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz",
- "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA=="
- },
- "@ampproject/remapping": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz",
- "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==",
- "requires": {
- "@jridgewell/gen-mapping": "^0.3.0",
- "@jridgewell/trace-mapping": "^0.3.9"
- }
- },
- "@aws-crypto/crc32": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-5.2.0.tgz",
- "integrity": "sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg==",
- "requires": {
- "@aws-crypto/util": "^5.2.0",
- "@aws-sdk/types": "^3.222.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-crypto/crc32c": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-5.2.0.tgz",
- "integrity": "sha512-+iWb8qaHLYKrNvGRbiYRHSdKRWhto5XlZUEBwDjYNf+ly5SVYG6zEoYIdxvf5R3zyeP16w4PLBn3rH1xc74Rag==",
- "requires": {
- "@aws-crypto/util": "^5.2.0",
- "@aws-sdk/types": "^3.222.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-crypto/sha1-browser": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-5.2.0.tgz",
- "integrity": "sha512-OH6lveCFfcDjX4dbAvCFSYUjJZjDr/3XJ3xHtjn3Oj5b9RjojQo8npoLeA/bNwkOkrSQ0wgrHzXk4tDRxGKJeg==",
- "requires": {
- "@aws-crypto/supports-web-crypto": "^5.2.0",
- "@aws-crypto/util": "^5.2.0",
- "@aws-sdk/types": "^3.222.0",
- "@aws-sdk/util-locate-window": "^3.0.0",
- "@smithy/util-utf8": "^2.0.0",
- "tslib": "^2.6.2"
- },
- "dependencies": {
- "@smithy/is-array-buffer": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
- "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-buffer-from": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
- "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
- "requires": {
- "@smithy/is-array-buffer": "^2.2.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-utf8": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
- "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
- "requires": {
- "@smithy/util-buffer-from": "^2.2.0",
- "tslib": "^2.6.2"
- }
- }
- }
- },
- "@aws-crypto/sha256-browser": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz",
- "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==",
- "requires": {
- "@aws-crypto/sha256-js": "^5.2.0",
- "@aws-crypto/supports-web-crypto": "^5.2.0",
- "@aws-crypto/util": "^5.2.0",
- "@aws-sdk/types": "^3.222.0",
- "@aws-sdk/util-locate-window": "^3.0.0",
- "@smithy/util-utf8": "^2.0.0",
- "tslib": "^2.6.2"
- },
- "dependencies": {
- "@smithy/is-array-buffer": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
- "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-buffer-from": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
- "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
- "requires": {
- "@smithy/is-array-buffer": "^2.2.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-utf8": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
- "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
- "requires": {
- "@smithy/util-buffer-from": "^2.2.0",
- "tslib": "^2.6.2"
- }
- }
- }
- },
- "@aws-crypto/sha256-js": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz",
- "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==",
- "requires": {
- "@aws-crypto/util": "^5.2.0",
- "@aws-sdk/types": "^3.222.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-crypto/supports-web-crypto": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz",
- "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@aws-crypto/util": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz",
- "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==",
- "requires": {
- "@aws-sdk/types": "^3.222.0",
- "@smithy/util-utf8": "^2.0.0",
- "tslib": "^2.6.2"
- },
- "dependencies": {
- "@smithy/is-array-buffer": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
- "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-buffer-from": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
- "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
- "requires": {
- "@smithy/is-array-buffer": "^2.2.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-utf8": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
- "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
- "requires": {
- "@smithy/util-buffer-from": "^2.2.0",
- "tslib": "^2.6.2"
- }
- }
- }
- },
- "@aws-sdk/client-s3": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.637.0.tgz",
- "integrity": "sha512-y6UC94fsMvhKbf0dzfnjVP1HePeGjplfcYfilZU1COIJLyTkMcUv4XcT4I407CGIrvgEafONHkiC09ygqUauNA==",
- "requires": {
- "@aws-crypto/sha1-browser": "5.2.0",
- "@aws-crypto/sha256-browser": "5.2.0",
- "@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/client-sso-oidc": "3.637.0",
- "@aws-sdk/client-sts": "3.637.0",
- "@aws-sdk/core": "3.635.0",
- "@aws-sdk/credential-provider-node": "3.637.0",
- "@aws-sdk/middleware-bucket-endpoint": "3.620.0",
- "@aws-sdk/middleware-expect-continue": "3.620.0",
- "@aws-sdk/middleware-flexible-checksums": "3.620.0",
- "@aws-sdk/middleware-host-header": "3.620.0",
- "@aws-sdk/middleware-location-constraint": "3.609.0",
- "@aws-sdk/middleware-logger": "3.609.0",
- "@aws-sdk/middleware-recursion-detection": "3.620.0",
- "@aws-sdk/middleware-sdk-s3": "3.635.0",
- "@aws-sdk/middleware-ssec": "3.609.0",
- "@aws-sdk/middleware-user-agent": "3.637.0",
- "@aws-sdk/region-config-resolver": "3.614.0",
- "@aws-sdk/signature-v4-multi-region": "3.635.0",
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-endpoints": "3.637.0",
- "@aws-sdk/util-user-agent-browser": "3.609.0",
- "@aws-sdk/util-user-agent-node": "3.614.0",
- "@aws-sdk/xml-builder": "3.609.0",
- "@smithy/config-resolver": "^3.0.5",
- "@smithy/core": "^2.4.0",
- "@smithy/eventstream-serde-browser": "^3.0.6",
- "@smithy/eventstream-serde-config-resolver": "^3.0.3",
- "@smithy/eventstream-serde-node": "^3.0.5",
- "@smithy/fetch-http-handler": "^3.2.4",
- "@smithy/hash-blob-browser": "^3.1.2",
- "@smithy/hash-node": "^3.0.3",
- "@smithy/hash-stream-node": "^3.1.2",
- "@smithy/invalid-dependency": "^3.0.3",
- "@smithy/md5-js": "^3.0.3",
- "@smithy/middleware-content-length": "^3.0.5",
- "@smithy/middleware-endpoint": "^3.1.0",
- "@smithy/middleware-retry": "^3.0.15",
- "@smithy/middleware-serde": "^3.0.3",
- "@smithy/middleware-stack": "^3.0.3",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/node-http-handler": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/url-parser": "^3.0.3",
- "@smithy/util-base64": "^3.0.0",
- "@smithy/util-body-length-browser": "^3.0.0",
- "@smithy/util-body-length-node": "^3.0.0",
- "@smithy/util-defaults-mode-browser": "^3.0.15",
- "@smithy/util-defaults-mode-node": "^3.0.15",
- "@smithy/util-endpoints": "^2.0.5",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-retry": "^3.0.3",
- "@smithy/util-stream": "^3.1.3",
- "@smithy/util-utf8": "^3.0.0",
- "@smithy/util-waiter": "^3.1.2",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/client-sso": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.637.0.tgz",
- "integrity": "sha512-+KjLvgX5yJYROWo3TQuwBJlHCY0zz9PsLuEolmXQn0BVK1L/m9GteZHtd+rEdAoDGBpE0Xqjy1oz5+SmtsaRUw==",
- "requires": {
- "@aws-crypto/sha256-browser": "5.2.0",
- "@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/core": "3.635.0",
- "@aws-sdk/middleware-host-header": "3.620.0",
- "@aws-sdk/middleware-logger": "3.609.0",
- "@aws-sdk/middleware-recursion-detection": "3.620.0",
- "@aws-sdk/middleware-user-agent": "3.637.0",
- "@aws-sdk/region-config-resolver": "3.614.0",
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-endpoints": "3.637.0",
- "@aws-sdk/util-user-agent-browser": "3.609.0",
- "@aws-sdk/util-user-agent-node": "3.614.0",
- "@smithy/config-resolver": "^3.0.5",
- "@smithy/core": "^2.4.0",
- "@smithy/fetch-http-handler": "^3.2.4",
- "@smithy/hash-node": "^3.0.3",
- "@smithy/invalid-dependency": "^3.0.3",
- "@smithy/middleware-content-length": "^3.0.5",
- "@smithy/middleware-endpoint": "^3.1.0",
- "@smithy/middleware-retry": "^3.0.15",
- "@smithy/middleware-serde": "^3.0.3",
- "@smithy/middleware-stack": "^3.0.3",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/node-http-handler": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/url-parser": "^3.0.3",
- "@smithy/util-base64": "^3.0.0",
- "@smithy/util-body-length-browser": "^3.0.0",
- "@smithy/util-body-length-node": "^3.0.0",
- "@smithy/util-defaults-mode-browser": "^3.0.15",
- "@smithy/util-defaults-mode-node": "^3.0.15",
- "@smithy/util-endpoints": "^2.0.5",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-retry": "^3.0.3",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/client-sso-oidc": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.637.0.tgz",
- "integrity": "sha512-27bHALN6Qb6m6KZmPvRieJ/QRlj1lyac/GT2Rn5kJpre8Mpp+yxrtvp3h9PjNBty4lCeFEENfY4dGNSozBuBcw==",
- "requires": {
- "@aws-crypto/sha256-browser": "5.2.0",
- "@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/core": "3.635.0",
- "@aws-sdk/credential-provider-node": "3.637.0",
- "@aws-sdk/middleware-host-header": "3.620.0",
- "@aws-sdk/middleware-logger": "3.609.0",
- "@aws-sdk/middleware-recursion-detection": "3.620.0",
- "@aws-sdk/middleware-user-agent": "3.637.0",
- "@aws-sdk/region-config-resolver": "3.614.0",
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-endpoints": "3.637.0",
- "@aws-sdk/util-user-agent-browser": "3.609.0",
- "@aws-sdk/util-user-agent-node": "3.614.0",
- "@smithy/config-resolver": "^3.0.5",
- "@smithy/core": "^2.4.0",
- "@smithy/fetch-http-handler": "^3.2.4",
- "@smithy/hash-node": "^3.0.3",
- "@smithy/invalid-dependency": "^3.0.3",
- "@smithy/middleware-content-length": "^3.0.5",
- "@smithy/middleware-endpoint": "^3.1.0",
- "@smithy/middleware-retry": "^3.0.15",
- "@smithy/middleware-serde": "^3.0.3",
- "@smithy/middleware-stack": "^3.0.3",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/node-http-handler": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/url-parser": "^3.0.3",
- "@smithy/util-base64": "^3.0.0",
- "@smithy/util-body-length-browser": "^3.0.0",
- "@smithy/util-body-length-node": "^3.0.0",
- "@smithy/util-defaults-mode-browser": "^3.0.15",
- "@smithy/util-defaults-mode-node": "^3.0.15",
- "@smithy/util-endpoints": "^2.0.5",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-retry": "^3.0.3",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/client-sts": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.637.0.tgz",
- "integrity": "sha512-xUi7x4qDubtA8QREtlblPuAcn91GS/09YVEY/RwU7xCY0aqGuFwgszAANlha4OUIqva8oVj2WO4gJuG+iaSnhw==",
- "requires": {
- "@aws-crypto/sha256-browser": "5.2.0",
- "@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/client-sso-oidc": "3.637.0",
- "@aws-sdk/core": "3.635.0",
- "@aws-sdk/credential-provider-node": "3.637.0",
- "@aws-sdk/middleware-host-header": "3.620.0",
- "@aws-sdk/middleware-logger": "3.609.0",
- "@aws-sdk/middleware-recursion-detection": "3.620.0",
- "@aws-sdk/middleware-user-agent": "3.637.0",
- "@aws-sdk/region-config-resolver": "3.614.0",
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-endpoints": "3.637.0",
- "@aws-sdk/util-user-agent-browser": "3.609.0",
- "@aws-sdk/util-user-agent-node": "3.614.0",
- "@smithy/config-resolver": "^3.0.5",
- "@smithy/core": "^2.4.0",
- "@smithy/fetch-http-handler": "^3.2.4",
- "@smithy/hash-node": "^3.0.3",
- "@smithy/invalid-dependency": "^3.0.3",
- "@smithy/middleware-content-length": "^3.0.5",
- "@smithy/middleware-endpoint": "^3.1.0",
- "@smithy/middleware-retry": "^3.0.15",
- "@smithy/middleware-serde": "^3.0.3",
- "@smithy/middleware-stack": "^3.0.3",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/node-http-handler": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/url-parser": "^3.0.3",
- "@smithy/util-base64": "^3.0.0",
- "@smithy/util-body-length-browser": "^3.0.0",
- "@smithy/util-body-length-node": "^3.0.0",
- "@smithy/util-defaults-mode-browser": "^3.0.15",
- "@smithy/util-defaults-mode-node": "^3.0.15",
- "@smithy/util-endpoints": "^2.0.5",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-retry": "^3.0.3",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/core": {
- "version": "3.635.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.635.0.tgz",
- "integrity": "sha512-i1x/E/sgA+liUE1XJ7rj1dhyXpAKO1UKFUcTTHXok2ARjWTvszHnSXMOsB77aPbmn0fUp1JTx2kHUAZ1LVt5Bg==",
- "requires": {
- "@smithy/core": "^2.4.0",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/signature-v4": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-middleware": "^3.0.3",
- "fast-xml-parser": "4.4.1",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/credential-provider-env": {
- "version": "3.620.1",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.620.1.tgz",
- "integrity": "sha512-ExuILJ2qLW5ZO+rgkNRj0xiAipKT16Rk77buvPP8csR7kkCflT/gXTyzRe/uzIiETTxM7tr8xuO9MP/DQXqkfg==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/credential-provider-http": {
- "version": "3.635.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.635.0.tgz",
- "integrity": "sha512-iJyRgEjOCQlBMXqtwPLIKYc7Bsc6nqjrZybdMDenPDa+kmLg7xh8LxHsu9088e+2/wtLicE34FsJJIfzu3L82g==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/fetch-http-handler": "^3.2.4",
- "@smithy/node-http-handler": "^3.1.4",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-stream": "^3.1.3",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/credential-provider-ini": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.637.0.tgz",
- "integrity": "sha512-h+PFCWfZ0Q3Dx84SppET/TFpcQHmxFW8/oV9ArEvMilw4EBN+IlxgbL0CnHwjHW64szcmrM0mbebjEfHf4FXmw==",
- "requires": {
- "@aws-sdk/credential-provider-env": "3.620.1",
- "@aws-sdk/credential-provider-http": "3.635.0",
- "@aws-sdk/credential-provider-process": "3.620.1",
- "@aws-sdk/credential-provider-sso": "3.637.0",
- "@aws-sdk/credential-provider-web-identity": "3.621.0",
- "@aws-sdk/types": "3.609.0",
- "@smithy/credential-provider-imds": "^3.2.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/credential-provider-node": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.637.0.tgz",
- "integrity": "sha512-yoEhoxJJfs7sPVQ6Is939BDQJZpZCoUgKr/ySse4YKOZ24t4VqgHA6+wV7rYh+7IW24Rd91UTvEzSuHYTlxlNA==",
- "requires": {
- "@aws-sdk/credential-provider-env": "3.620.1",
- "@aws-sdk/credential-provider-http": "3.635.0",
- "@aws-sdk/credential-provider-ini": "3.637.0",
- "@aws-sdk/credential-provider-process": "3.620.1",
- "@aws-sdk/credential-provider-sso": "3.637.0",
- "@aws-sdk/credential-provider-web-identity": "3.621.0",
- "@aws-sdk/types": "3.609.0",
- "@smithy/credential-provider-imds": "^3.2.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/credential-provider-process": {
- "version": "3.620.1",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.620.1.tgz",
- "integrity": "sha512-hWqFMidqLAkaV9G460+1at6qa9vySbjQKKc04p59OT7lZ5cO5VH5S4aI05e+m4j364MBROjjk2ugNvfNf/8ILg==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/credential-provider-sso": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.637.0.tgz",
- "integrity": "sha512-Mvz+h+e62/tl+dVikLafhv+qkZJ9RUb8l2YN/LeKMWkxQylPT83CPk9aimVhCV89zth1zpREArl97+3xsfgQvA==",
- "requires": {
- "@aws-sdk/client-sso": "3.637.0",
- "@aws-sdk/token-providers": "3.614.0",
- "@aws-sdk/types": "3.609.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/credential-provider-web-identity": {
- "version": "3.621.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.621.0.tgz",
- "integrity": "sha512-w7ASSyfNvcx7+bYGep3VBgC3K6vEdLmlpjT7nSIHxxQf+WSdvy+HynwJosrpZax0sK5q0D1Jpn/5q+r5lwwW6w==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/middleware-bucket-endpoint": {
- "version": "3.620.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.620.0.tgz",
- "integrity": "sha512-eGLL0W6L3HDb3OACyetZYOWpHJ+gLo0TehQKeQyy2G8vTYXqNTeqYhuI6up9HVjBzU9eQiULVQETmgQs7TFaRg==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-arn-parser": "3.568.0",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-config-provider": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/middleware-expect-continue": {
- "version": "3.620.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.620.0.tgz",
- "integrity": "sha512-QXeRFMLfyQ31nAHLbiTLtk0oHzG9QLMaof5jIfqcUwnOkO8YnQdeqzakrg1Alpy/VQ7aqzIi8qypkBe2KXZz0A==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/middleware-flexible-checksums": {
- "version": "3.620.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.620.0.tgz",
- "integrity": "sha512-ftz+NW7qka2sVuwnnO1IzBku5ccP+s5qZGeRTPgrKB7OzRW85gthvIo1vQR2w+OwHFk7WJbbhhWwbCbktnP4UA==",
- "requires": {
- "@aws-crypto/crc32": "5.2.0",
- "@aws-crypto/crc32c": "5.2.0",
- "@aws-sdk/types": "3.609.0",
- "@smithy/is-array-buffer": "^3.0.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/middleware-host-header": {
- "version": "3.620.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.620.0.tgz",
- "integrity": "sha512-VMtPEZwqYrII/oUkffYsNWY9PZ9xpNJpMgmyU0rlDQ25O1c0Hk3fJmZRe6pEkAJ0omD7kLrqGl1DUjQVxpd/Rg==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/middleware-location-constraint": {
- "version": "3.609.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.609.0.tgz",
- "integrity": "sha512-xzsdoTkszGVqGVPjUmgoP7TORiByLueMHieI1fhQL888WPdqctwAx3ES6d/bA9Q/i8jnc6hs+Fjhy8UvBTkE9A==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/middleware-logger": {
- "version": "3.609.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.609.0.tgz",
- "integrity": "sha512-S62U2dy4jMDhDFDK5gZ4VxFdWzCtLzwbYyFZx2uvPYTECkepLUfzLic2BHg2Qvtu4QjX+oGE3P/7fwaGIsGNuQ==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/middleware-recursion-detection": {
- "version": "3.620.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.620.0.tgz",
- "integrity": "sha512-nh91S7aGK3e/o1ck64sA/CyoFw+gAYj2BDOnoNa6ouyCrVJED96ZXWbhye/fz9SgmNUZR2g7GdVpiLpMKZoI5w==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/middleware-sdk-s3": {
- "version": "3.635.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.635.0.tgz",
- "integrity": "sha512-RLdYJPEV4JL/7NBoFUs7VlP90X++5FlJdxHz0DzCjmiD3qCviKy+Cym3qg1gBgHwucs5XisuClxDrGokhAdTQw==",
- "requires": {
- "@aws-sdk/core": "3.635.0",
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-arn-parser": "3.568.0",
- "@smithy/core": "^2.4.0",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/signature-v4": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-config-provider": "^3.0.0",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-stream": "^3.1.3",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/middleware-ssec": {
- "version": "3.609.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.609.0.tgz",
- "integrity": "sha512-GZSD1s7+JswWOTamVap79QiDaIV7byJFssBW68GYjyRS5EBjNfwA/8s+6uE6g39R3ojyTbYOmvcANoZEhSULXg==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/middleware-user-agent": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.637.0.tgz",
- "integrity": "sha512-EYo0NE9/da/OY8STDsK2LvM4kNa79DBsf4YVtaG4P5pZ615IeFsD8xOHZeuJmUrSMlVQ8ywPRX7WMucUybsKug==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@aws-sdk/util-endpoints": "3.637.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/region-config-resolver": {
- "version": "3.614.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.614.0.tgz",
- "integrity": "sha512-vDCeMXvic/LU0KFIUjpC3RiSTIkkvESsEfbVHiHH0YINfl8HnEqR5rj+L8+phsCeVg2+LmYwYxd5NRz4PHxt5g==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "@smithy/util-config-provider": "^3.0.0",
- "@smithy/util-middleware": "^3.0.3",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/signature-v4-multi-region": {
- "version": "3.635.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.635.0.tgz",
- "integrity": "sha512-J6QY4/invOkpogCHjSaDON1hF03viPpOnsrzVuCvJMmclS/iG62R4EY0wq1alYll0YmSdmKlpJwHMWwGtqK63Q==",
- "requires": {
- "@aws-sdk/middleware-sdk-s3": "3.635.0",
- "@aws-sdk/types": "3.609.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/signature-v4": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/token-providers": {
- "version": "3.614.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.614.0.tgz",
- "integrity": "sha512-okItqyY6L9IHdxqs+Z116y5/nda7rHxLvROxtAJdLavWTYDydxrZstImNgGWTeVdmc0xX2gJCI77UYUTQWnhRw==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/types": {
- "version": "3.609.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz",
- "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/util-arn-parser": {
- "version": "3.568.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.568.0.tgz",
- "integrity": "sha512-XUKJWWo+KOB7fbnPP0+g/o5Ulku/X53t7i/h+sPHr5xxYTJJ9CYnbToo95mzxe7xWvkLrsNtJ8L+MnNn9INs2w==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/util-endpoints": {
- "version": "3.637.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.637.0.tgz",
- "integrity": "sha512-pAqOKUHeVWHEXXDIp/qoMk/6jyxIb6GGjnK1/f8dKHtKIEs4tKsnnL563gceEvdad53OPXIt86uoevCcCzmBnw==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-endpoints": "^2.0.5",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/util-locate-window": {
- "version": "3.568.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.568.0.tgz",
- "integrity": "sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/util-user-agent-browser": {
- "version": "3.609.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.609.0.tgz",
- "integrity": "sha512-fojPU+mNahzQ0YHYBsx0ZIhmMA96H+ZIZ665ObU9tl+SGdbLneVZVikGve+NmHTQwHzwkFsZYYnVKAkreJLAtA==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/types": "^3.3.0",
- "bowser": "^2.11.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/util-user-agent-node": {
- "version": "3.614.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.614.0.tgz",
- "integrity": "sha512-15ElZT88peoHnq5TEoEtZwoXTXRxNrk60TZNdpl/TUBJ5oNJ9Dqb5Z4ryb8ofN6nm9aFf59GVAerFDz8iUoHBA==",
- "requires": {
- "@aws-sdk/types": "3.609.0",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@aws-sdk/xml-builder": {
- "version": "3.609.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.609.0.tgz",
- "integrity": "sha512-l9XxNcA4HX98rwCC2/KoiWcmEiRfZe4G+mYwDbCFT87JIMj6GBhLDkAzr/W8KAaA2IDr8Vc6J8fZPgVulxxfMA==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@babel/code-frame": {
- "version": "7.22.13",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz",
- "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==",
- "requires": {
- "@babel/highlight": "^7.22.13",
- "chalk": "^2.4.2"
- }
- },
- "@babel/compat-data": {
- "version": "7.22.9",
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz",
- "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ=="
- },
- "@babel/core": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz",
- "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==",
- "requires": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.22.10",
- "@babel/generator": "^7.22.10",
- "@babel/helper-compilation-targets": "^7.22.10",
- "@babel/helper-module-transforms": "^7.22.9",
- "@babel/helpers": "^7.22.10",
- "@babel/parser": "^7.22.10",
- "@babel/template": "^7.22.5",
- "@babel/traverse": "^7.22.10",
- "@babel/types": "^7.22.10",
- "convert-source-map": "^1.7.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.2",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="
- }
- }
- },
- "@babel/generator": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz",
- "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==",
- "requires": {
- "@babel/types": "^7.23.0",
- "@jridgewell/gen-mapping": "^0.3.2",
- "@jridgewell/trace-mapping": "^0.3.17",
- "jsesc": "^2.5.1"
- }
- },
- "@babel/helper-annotate-as-pure": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz",
- "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.22.5"
- }
- },
- "@babel/helper-builder-binary-assignment-operator-visitor": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.5.tgz",
- "integrity": "sha512-m1EP3lVOPptR+2DwD125gziZNcmoNSHGmJROKoy87loWUQyJaVXDgpmruWqDARZSmtYQ+Dl25okU8+qhVzuykw==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.22.5"
- }
- },
- "@babel/helper-compilation-targets": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz",
- "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==",
- "requires": {
- "@babel/compat-data": "^7.22.9",
- "@babel/helper-validator-option": "^7.22.5",
- "browserslist": "^4.21.9",
- "lru-cache": "^5.1.1",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "lru-cache": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
- "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
- "requires": {
- "yallist": "^3.0.2"
- }
- },
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="
- },
- "yallist": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
- "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="
- }
- }
- },
- "@babel/helper-create-class-features-plugin": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.5.tgz",
- "integrity": "sha512-xkb58MyOYIslxu3gKmVXmjTtUPvBU4odYzbiIQbWwLKIHCsx6UGZGX6F1IznMFVnDdirseUZopzN+ZRt8Xb33Q==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.22.5",
- "@babel/helper-environment-visitor": "^7.22.5",
- "@babel/helper-function-name": "^7.22.5",
- "@babel/helper-member-expression-to-functions": "^7.22.5",
- "@babel/helper-optimise-call-expression": "^7.22.5",
- "@babel/helper-replace-supers": "^7.22.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5",
- "@babel/helper-split-export-declaration": "^7.22.5",
- "semver": "^6.3.0"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- }
- }
- },
- "@babel/helper-create-regexp-features-plugin": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.5.tgz",
- "integrity": "sha512-1VpEFOIbMRaXyDeUwUfmTIxExLwQ+zkW+Bh5zXpApA3oQedBx9v/updixWxnx/bZpKw7u8VxWjb/qWpIcmPq8A==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.22.5",
- "regexpu-core": "^5.3.1",
- "semver": "^6.3.0"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- }
- }
- },
- "@babel/helper-define-polyfill-provider": {
- "version": "0.4.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz",
- "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==",
- "dev": true,
- "requires": {
- "@babel/helper-compilation-targets": "^7.22.6",
- "@babel/helper-plugin-utils": "^7.22.5",
- "debug": "^4.1.1",
- "lodash.debounce": "^4.0.8",
- "resolve": "^1.14.2"
- }
- },
- "@babel/helper-environment-visitor": {
- "version": "7.22.20",
- "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz",
- "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA=="
- },
- "@babel/helper-function-name": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz",
- "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==",
- "requires": {
- "@babel/template": "^7.22.15",
- "@babel/types": "^7.23.0"
- }
- },
- "@babel/helper-hoist-variables": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz",
- "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",
- "requires": {
- "@babel/types": "^7.22.5"
- }
- },
- "@babel/helper-member-expression-to-functions": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz",
- "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.22.5"
- }
- },
- "@babel/helper-module-imports": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz",
- "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==",
- "requires": {
- "@babel/types": "^7.22.5"
- }
- },
- "@babel/helper-module-transforms": {
- "version": "7.22.9",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz",
- "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==",
- "requires": {
- "@babel/helper-environment-visitor": "^7.22.5",
- "@babel/helper-module-imports": "^7.22.5",
- "@babel/helper-simple-access": "^7.22.5",
- "@babel/helper-split-export-declaration": "^7.22.6",
- "@babel/helper-validator-identifier": "^7.22.5"
- }
- },
- "@babel/helper-optimise-call-expression": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz",
- "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.22.5"
- }
- },
- "@babel/helper-plugin-utils": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz",
- "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg=="
- },
- "@babel/helper-remap-async-to-generator": {
- "version": "7.22.9",
- "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz",
- "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.22.5",
- "@babel/helper-environment-visitor": "^7.22.5",
- "@babel/helper-wrap-function": "^7.22.9"
- }
- },
- "@babel/helper-replace-supers": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.5.tgz",
- "integrity": "sha512-aLdNM5I3kdI/V9xGNyKSF3X/gTyMUBohTZ+/3QdQKAA9vxIiy12E+8E2HoOP1/DjeqU+g6as35QHJNMDDYpuCg==",
- "dev": true,
- "requires": {
- "@babel/helper-environment-visitor": "^7.22.5",
- "@babel/helper-member-expression-to-functions": "^7.22.5",
- "@babel/helper-optimise-call-expression": "^7.22.5",
- "@babel/template": "^7.22.5",
- "@babel/traverse": "^7.22.5",
- "@babel/types": "^7.22.5"
- }
- },
- "@babel/helper-simple-access": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz",
- "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==",
- "requires": {
- "@babel/types": "^7.22.5"
- }
- },
- "@babel/helper-skip-transparent-expression-wrappers": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz",
- "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.22.5"
- }
- },
- "@babel/helper-split-export-declaration": {
- "version": "7.22.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz",
- "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==",
- "requires": {
- "@babel/types": "^7.22.5"
- }
- },
- "@babel/helper-string-parser": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz",
- "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw=="
- },
- "@babel/helper-validator-identifier": {
- "version": "7.22.20",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
- "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A=="
- },
- "@babel/helper-validator-option": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz",
- "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw=="
- },
- "@babel/helper-wrap-function": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz",
- "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==",
- "dev": true,
- "requires": {
- "@babel/helper-function-name": "^7.22.5",
- "@babel/template": "^7.22.5",
- "@babel/types": "^7.22.10"
- }
- },
- "@babel/helpers": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz",
- "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==",
- "requires": {
- "@babel/template": "^7.22.5",
- "@babel/traverse": "^7.22.10",
- "@babel/types": "^7.22.10"
- }
- },
- "@babel/highlight": {
- "version": "7.22.20",
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz",
- "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==",
- "requires": {
- "@babel/helper-validator-identifier": "^7.22.20",
- "chalk": "^2.4.2",
- "js-tokens": "^4.0.0"
- }
- },
- "@babel/parser": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz",
- "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw=="
- },
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz",
- "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz",
- "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5",
- "@babel/plugin-transform-optional-chaining": "^7.22.5"
- }
- },
- "@babel/plugin-proposal-private-property-in-object": {
- "version": "7.21.0-placeholder-for-preset-env.2",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz",
- "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==",
- "dev": true,
- "requires": {}
- },
- "@babel/plugin-syntax-async-generators": {
- "version": "7.8.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
- "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-bigint": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz",
- "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-class-properties": {
- "version": "7.12.13",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
- "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.12.13"
- }
- },
- "@babel/plugin-syntax-class-static-block": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz",
- "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-syntax-dynamic-import": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
- "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-export-namespace-from": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz",
- "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.3"
- }
- },
- "@babel/plugin-syntax-import-assertions": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz",
- "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-syntax-import-attributes": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz",
- "integrity": "sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-syntax-import-meta": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
- "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.10.4"
- }
- },
- "@babel/plugin-syntax-json-strings": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
- "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-jsx": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz",
- "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-syntax-logical-assignment-operators": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
- "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.10.4"
- }
- },
- "@babel/plugin-syntax-nullish-coalescing-operator": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
- "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-numeric-separator": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
- "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.10.4"
- }
- },
- "@babel/plugin-syntax-object-rest-spread": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
- "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-optional-catch-binding": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
- "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-optional-chaining": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
- "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-private-property-in-object": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz",
- "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-syntax-top-level-await": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz",
- "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-syntax-typescript": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz",
- "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-syntax-unicode-sets-regex": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz",
- "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.18.6",
- "@babel/helper-plugin-utils": "^7.18.6"
- }
- },
- "@babel/plugin-transform-arrow-functions": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz",
- "integrity": "sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-async-generator-functions": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz",
- "integrity": "sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==",
- "dev": true,
- "requires": {
- "@babel/helper-environment-visitor": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-remap-async-to-generator": "^7.22.9",
- "@babel/plugin-syntax-async-generators": "^7.8.4"
- }
- },
- "@babel/plugin-transform-async-to-generator": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz",
- "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==",
- "dev": true,
- "requires": {
- "@babel/helper-module-imports": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-remap-async-to-generator": "^7.22.5"
- }
- },
- "@babel/plugin-transform-block-scoped-functions": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz",
- "integrity": "sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-block-scoping": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz",
- "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-class-properties": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz",
- "integrity": "sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==",
- "dev": true,
- "requires": {
- "@babel/helper-create-class-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-class-static-block": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz",
- "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==",
- "dev": true,
- "requires": {
- "@babel/helper-create-class-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-class-static-block": "^7.14.5"
- }
- },
- "@babel/plugin-transform-classes": {
- "version": "7.22.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz",
- "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.22.5",
- "@babel/helper-compilation-targets": "^7.22.6",
- "@babel/helper-environment-visitor": "^7.22.5",
- "@babel/helper-function-name": "^7.22.5",
- "@babel/helper-optimise-call-expression": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-replace-supers": "^7.22.5",
- "@babel/helper-split-export-declaration": "^7.22.6",
- "globals": "^11.1.0"
- }
- },
- "@babel/plugin-transform-computed-properties": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz",
- "integrity": "sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/template": "^7.22.5"
- }
- },
- "@babel/plugin-transform-destructuring": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz",
- "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-dotall-regex": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz",
- "integrity": "sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-duplicate-keys": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz",
- "integrity": "sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-dynamic-import": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz",
- "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3"
- }
- },
- "@babel/plugin-transform-exponentiation-operator": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz",
- "integrity": "sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==",
- "dev": true,
- "requires": {
- "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-export-namespace-from": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz",
- "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3"
- }
- },
- "@babel/plugin-transform-for-of": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz",
- "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-function-name": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz",
- "integrity": "sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==",
- "dev": true,
- "requires": {
- "@babel/helper-compilation-targets": "^7.22.5",
- "@babel/helper-function-name": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-json-strings": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz",
- "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-json-strings": "^7.8.3"
- }
- },
- "@babel/plugin-transform-literals": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz",
- "integrity": "sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-logical-assignment-operators": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz",
- "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4"
- }
- },
- "@babel/plugin-transform-member-expression-literals": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz",
- "integrity": "sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-modules-amd": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz",
- "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==",
- "dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-modules-commonjs": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz",
- "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==",
- "dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-simple-access": "^7.22.5"
- }
- },
- "@babel/plugin-transform-modules-systemjs": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz",
- "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==",
- "dev": true,
- "requires": {
- "@babel/helper-hoist-variables": "^7.22.5",
- "@babel/helper-module-transforms": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-validator-identifier": "^7.22.5"
- }
- },
- "@babel/plugin-transform-modules-umd": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz",
- "integrity": "sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==",
- "dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-named-capturing-groups-regex": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz",
- "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-new-target": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz",
- "integrity": "sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-nullish-coalescing-operator": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz",
- "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
- }
- },
- "@babel/plugin-transform-numeric-separator": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz",
- "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4"
- }
- },
- "@babel/plugin-transform-object-rest-spread": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz",
- "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.22.5",
- "@babel/helper-compilation-targets": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-transform-parameters": "^7.22.5"
- }
- },
- "@babel/plugin-transform-object-super": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz",
- "integrity": "sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-replace-supers": "^7.22.5"
- }
- },
- "@babel/plugin-transform-optional-catch-binding": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz",
- "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
- }
- },
- "@babel/plugin-transform-optional-chaining": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz",
- "integrity": "sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3"
- }
- },
- "@babel/plugin-transform-parameters": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz",
- "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-private-methods": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz",
- "integrity": "sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==",
- "dev": true,
- "requires": {
- "@babel/helper-create-class-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-private-property-in-object": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz",
- "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.22.5",
- "@babel/helper-create-class-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5"
- }
- },
- "@babel/plugin-transform-property-literals": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz",
- "integrity": "sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-regenerator": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz",
- "integrity": "sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "regenerator-transform": "^0.15.2"
- }
- },
- "@babel/plugin-transform-reserved-words": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz",
- "integrity": "sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-shorthand-properties": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz",
- "integrity": "sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-spread": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz",
- "integrity": "sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5"
- }
- },
- "@babel/plugin-transform-sticky-regex": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz",
- "integrity": "sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-template-literals": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz",
- "integrity": "sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-typeof-symbol": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz",
- "integrity": "sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-unicode-escapes": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz",
- "integrity": "sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-unicode-property-regex": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz",
- "integrity": "sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-unicode-regex": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz",
- "integrity": "sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/plugin-transform-unicode-sets-regex": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz",
- "integrity": "sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.22.5",
- "@babel/helper-plugin-utils": "^7.22.5"
- }
- },
- "@babel/preset-env": {
- "version": "7.22.10",
- "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.10.tgz",
- "integrity": "sha512-riHpLb1drNkpLlocmSyEg4oYJIQFeXAK/d7rI6mbD0XsvoTOOweXDmQPG/ErxsEhWk3rl3Q/3F6RFQlVFS8m0A==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.22.9",
- "@babel/helper-compilation-targets": "^7.22.10",
- "@babel/helper-plugin-utils": "^7.22.5",
- "@babel/helper-validator-option": "^7.22.5",
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5",
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5",
- "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2",
- "@babel/plugin-syntax-async-generators": "^7.8.4",
- "@babel/plugin-syntax-class-properties": "^7.12.13",
- "@babel/plugin-syntax-class-static-block": "^7.14.5",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3",
- "@babel/plugin-syntax-import-assertions": "^7.22.5",
- "@babel/plugin-syntax-import-attributes": "^7.22.5",
- "@babel/plugin-syntax-import-meta": "^7.10.4",
- "@babel/plugin-syntax-json-strings": "^7.8.3",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5",
- "@babel/plugin-syntax-top-level-await": "^7.14.5",
- "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6",
- "@babel/plugin-transform-arrow-functions": "^7.22.5",
- "@babel/plugin-transform-async-generator-functions": "^7.22.10",
- "@babel/plugin-transform-async-to-generator": "^7.22.5",
- "@babel/plugin-transform-block-scoped-functions": "^7.22.5",
- "@babel/plugin-transform-block-scoping": "^7.22.10",
- "@babel/plugin-transform-class-properties": "^7.22.5",
- "@babel/plugin-transform-class-static-block": "^7.22.5",
- "@babel/plugin-transform-classes": "^7.22.6",
- "@babel/plugin-transform-computed-properties": "^7.22.5",
- "@babel/plugin-transform-destructuring": "^7.22.10",
- "@babel/plugin-transform-dotall-regex": "^7.22.5",
- "@babel/plugin-transform-duplicate-keys": "^7.22.5",
- "@babel/plugin-transform-dynamic-import": "^7.22.5",
- "@babel/plugin-transform-exponentiation-operator": "^7.22.5",
- "@babel/plugin-transform-export-namespace-from": "^7.22.5",
- "@babel/plugin-transform-for-of": "^7.22.5",
- "@babel/plugin-transform-function-name": "^7.22.5",
- "@babel/plugin-transform-json-strings": "^7.22.5",
- "@babel/plugin-transform-literals": "^7.22.5",
- "@babel/plugin-transform-logical-assignment-operators": "^7.22.5",
- "@babel/plugin-transform-member-expression-literals": "^7.22.5",
- "@babel/plugin-transform-modules-amd": "^7.22.5",
- "@babel/plugin-transform-modules-commonjs": "^7.22.5",
- "@babel/plugin-transform-modules-systemjs": "^7.22.5",
- "@babel/plugin-transform-modules-umd": "^7.22.5",
- "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5",
- "@babel/plugin-transform-new-target": "^7.22.5",
- "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5",
- "@babel/plugin-transform-numeric-separator": "^7.22.5",
- "@babel/plugin-transform-object-rest-spread": "^7.22.5",
- "@babel/plugin-transform-object-super": "^7.22.5",
- "@babel/plugin-transform-optional-catch-binding": "^7.22.5",
- "@babel/plugin-transform-optional-chaining": "^7.22.10",
- "@babel/plugin-transform-parameters": "^7.22.5",
- "@babel/plugin-transform-private-methods": "^7.22.5",
- "@babel/plugin-transform-private-property-in-object": "^7.22.5",
- "@babel/plugin-transform-property-literals": "^7.22.5",
- "@babel/plugin-transform-regenerator": "^7.22.10",
- "@babel/plugin-transform-reserved-words": "^7.22.5",
- "@babel/plugin-transform-shorthand-properties": "^7.22.5",
- "@babel/plugin-transform-spread": "^7.22.5",
- "@babel/plugin-transform-sticky-regex": "^7.22.5",
- "@babel/plugin-transform-template-literals": "^7.22.5",
- "@babel/plugin-transform-typeof-symbol": "^7.22.5",
- "@babel/plugin-transform-unicode-escapes": "^7.22.10",
- "@babel/plugin-transform-unicode-property-regex": "^7.22.5",
- "@babel/plugin-transform-unicode-regex": "^7.22.5",
- "@babel/plugin-transform-unicode-sets-regex": "^7.22.5",
- "@babel/preset-modules": "0.1.6-no-external-plugins",
- "@babel/types": "^7.22.10",
- "babel-plugin-polyfill-corejs2": "^0.4.5",
- "babel-plugin-polyfill-corejs3": "^0.8.3",
- "babel-plugin-polyfill-regenerator": "^0.5.2",
- "core-js-compat": "^3.31.0",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true
- }
- }
- },
- "@babel/preset-modules": {
- "version": "0.1.6-no-external-plugins",
- "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz",
- "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/types": "^7.4.4",
- "esutils": "^2.0.2"
- }
- },
- "@babel/regjsgen": {
- "version": "0.8.0",
- "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz",
- "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==",
- "dev": true
- },
- "@babel/runtime": {
- "version": "7.24.8",
- "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.8.tgz",
- "integrity": "sha512-5F7SDGs1T72ZczbRwbGO9lQi0NLjQxzl6i4lJxLxfW9U5UluCSyEJeniWvnhl3/euNiqQVbo8zruhsDfid0esA==",
- "requires": {
- "regenerator-runtime": "^0.14.0"
- }
- },
- "@babel/template": {
- "version": "7.22.15",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz",
- "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==",
- "requires": {
- "@babel/code-frame": "^7.22.13",
- "@babel/parser": "^7.22.15",
- "@babel/types": "^7.22.15"
- }
- },
- "@babel/traverse": {
- "version": "7.23.2",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz",
- "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==",
- "requires": {
- "@babel/code-frame": "^7.22.13",
- "@babel/generator": "^7.23.0",
- "@babel/helper-environment-visitor": "^7.22.20",
- "@babel/helper-function-name": "^7.23.0",
- "@babel/helper-hoist-variables": "^7.22.5",
- "@babel/helper-split-export-declaration": "^7.22.6",
- "@babel/parser": "^7.23.0",
- "@babel/types": "^7.23.0",
- "debug": "^4.1.0",
- "globals": "^11.1.0"
- }
- },
- "@babel/types": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz",
- "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==",
- "requires": {
- "@babel/helper-string-parser": "^7.22.5",
- "@babel/helper-validator-identifier": "^7.22.20",
- "to-fast-properties": "^2.0.0"
- }
- },
- "@bcoe/v8-coverage": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz",
- "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw=="
- },
- "@emnapi/core": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.2.0.tgz",
- "integrity": "sha512-E7Vgw78I93we4ZWdYCb4DGAwRROGkMIXk7/y87UmANR+J6qsWusmC3gLt0H+O0KOt5e6O38U8oJamgbudrES/w==",
- "requires": {
- "@emnapi/wasi-threads": "1.0.1",
- "tslib": "^2.4.0"
- }
- },
- "@emnapi/runtime": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.2.0.tgz",
- "integrity": "sha512-bV21/9LQmcQeCPEg3BDFtvwL6cwiTMksYNWQQ4KOxCZikEGalWtenoZ0wCiukJINlGCIi2KXx01g4FoH/LxpzQ==",
- "requires": {
- "tslib": "^2.4.0"
- }
- },
- "@emnapi/wasi-threads": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.0.1.tgz",
- "integrity": "sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw==",
- "requires": {
- "tslib": "^2.4.0"
- }
- },
- "@esbuild/aix-ppc64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.0.tgz",
- "integrity": "sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==",
- "dev": true,
- "optional": true
- },
- "@esbuild/android-arm": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.0.tgz",
- "integrity": "sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==",
- "dev": true,
- "optional": true
- },
- "@esbuild/android-arm64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.0.tgz",
- "integrity": "sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==",
- "dev": true,
- "optional": true
- },
- "@esbuild/android-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.0.tgz",
- "integrity": "sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==",
- "dev": true,
- "optional": true
- },
- "@esbuild/darwin-arm64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.0.tgz",
- "integrity": "sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==",
- "dev": true,
- "optional": true
- },
- "@esbuild/darwin-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.0.tgz",
- "integrity": "sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/freebsd-arm64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.0.tgz",
- "integrity": "sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/freebsd-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.0.tgz",
- "integrity": "sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-arm": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.0.tgz",
- "integrity": "sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-arm64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.0.tgz",
- "integrity": "sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-ia32": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.0.tgz",
- "integrity": "sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-loong64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.0.tgz",
- "integrity": "sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-mips64el": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.0.tgz",
- "integrity": "sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-ppc64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.0.tgz",
- "integrity": "sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-riscv64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.0.tgz",
- "integrity": "sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-s390x": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.0.tgz",
- "integrity": "sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.0.tgz",
- "integrity": "sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/netbsd-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.0.tgz",
- "integrity": "sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==",
- "dev": true,
- "optional": true
- },
- "@esbuild/openbsd-arm64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.0.tgz",
- "integrity": "sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==",
- "dev": true,
- "optional": true
- },
- "@esbuild/openbsd-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.0.tgz",
- "integrity": "sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==",
- "dev": true,
- "optional": true
- },
- "@esbuild/sunos-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.0.tgz",
- "integrity": "sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/win32-arm64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.0.tgz",
- "integrity": "sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/win32-ia32": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.0.tgz",
- "integrity": "sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==",
- "dev": true,
- "optional": true
- },
- "@esbuild/win32-x64": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.0.tgz",
- "integrity": "sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==",
- "dev": true,
- "optional": true
- },
- "@eslint-community/eslint-utils": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
- "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
- "requires": {
- "eslint-visitor-keys": "^3.3.0"
- }
- },
- "@eslint-community/regexpp": {
- "version": "4.11.1",
- "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.1.tgz",
- "integrity": "sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q=="
- },
- "@eslint/eslintrc": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
- "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
- "requires": {
- "ajv": "^6.12.4",
- "debug": "^4.3.2",
- "espree": "^9.6.0",
- "globals": "^13.19.0",
- "ignore": "^5.2.0",
- "import-fresh": "^3.2.1",
- "js-yaml": "^4.1.0",
- "minimatch": "^3.1.2",
- "strip-json-comments": "^3.1.1"
- },
- "dependencies": {
- "argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- },
- "globals": {
- "version": "13.23.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz",
- "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==",
- "requires": {
- "type-fest": "^0.20.2"
- }
- },
- "js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "requires": {
- "argparse": "^2.0.1"
- }
- },
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ=="
- }
- }
- },
- "@eslint/js": {
- "version": "8.57.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
- "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g=="
- },
- "@humanwhocodes/config-array": {
- "version": "0.11.14",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz",
- "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==",
- "requires": {
- "@humanwhocodes/object-schema": "^2.0.2",
- "debug": "^4.3.1",
- "minimatch": "^3.0.5"
- }
- },
- "@humanwhocodes/module-importer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
- "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA=="
- },
- "@humanwhocodes/object-schema": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz",
- "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw=="
- },
- "@hutson/parse-repository-url": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz",
- "integrity": "sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q=="
- },
- "@isaacs/cliui": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
- "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
- "requires": {
- "string-width": "^5.1.2",
- "string-width-cjs": "npm:string-width@^4.2.0",
- "strip-ansi": "^7.0.1",
- "strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
- "wrap-ansi": "^8.1.0",
- "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
- "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA=="
- },
- "ansi-styles": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz",
- "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug=="
- },
- "emoji-regex": {
- "version": "9.2.2",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
- "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg=="
- },
- "string-width": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
- "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
- "requires": {
- "eastasianwidth": "^0.2.0",
- "emoji-regex": "^9.2.2",
- "strip-ansi": "^7.0.1"
- }
- },
- "strip-ansi": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
- "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
- "requires": {
- "ansi-regex": "^6.0.1"
- }
- },
- "wrap-ansi": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
- "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
- "requires": {
- "ansi-styles": "^6.1.0",
- "string-width": "^5.0.1",
- "strip-ansi": "^7.0.1"
- }
- }
- }
- },
- "@isaacs/string-locale-compare": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz",
- "integrity": "sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ=="
- },
- "@istanbuljs/load-nyc-config": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
- "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
- "requires": {
- "camelcase": "^5.3.1",
- "find-up": "^4.1.0",
- "get-package-type": "^0.1.0",
- "js-yaml": "^3.13.1",
- "resolve-from": "^5.0.0"
- }
- },
- "@istanbuljs/schema": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
- "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA=="
- },
- "@jest/console": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz",
- "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==",
- "requires": {
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "jest-message-util": "^29.7.0",
- "jest-util": "^29.7.0",
- "slash": "^3.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "@jest/core": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz",
- "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==",
- "requires": {
- "@jest/console": "^29.7.0",
- "@jest/reporters": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "ansi-escapes": "^4.2.1",
- "chalk": "^4.0.0",
- "ci-info": "^3.2.0",
- "exit": "^0.1.2",
- "graceful-fs": "^4.2.9",
- "jest-changed-files": "^29.7.0",
- "jest-config": "^29.7.0",
- "jest-haste-map": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-regex-util": "^29.6.3",
- "jest-resolve": "^29.7.0",
- "jest-resolve-dependencies": "^29.7.0",
- "jest-runner": "^29.7.0",
- "jest-runtime": "^29.7.0",
- "jest-snapshot": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-validate": "^29.7.0",
- "jest-watcher": "^29.7.0",
- "micromatch": "^4.0.4",
- "pretty-format": "^29.7.0",
- "slash": "^3.0.0",
- "strip-ansi": "^6.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "@jest/environment": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz",
- "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==",
- "requires": {
- "@jest/fake-timers": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "jest-mock": "^29.7.0"
- }
- },
- "@jest/expect": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz",
- "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==",
- "requires": {
- "expect": "^29.7.0",
- "jest-snapshot": "^29.7.0"
- }
- },
- "@jest/expect-utils": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz",
- "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==",
- "requires": {
- "jest-get-type": "^29.6.3"
- }
- },
- "@jest/fake-timers": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz",
- "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==",
- "requires": {
- "@jest/types": "^29.6.3",
- "@sinonjs/fake-timers": "^10.0.2",
- "@types/node": "*",
- "jest-message-util": "^29.7.0",
- "jest-mock": "^29.7.0",
- "jest-util": "^29.7.0"
- }
- },
- "@jest/globals": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz",
- "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==",
- "requires": {
- "@jest/environment": "^29.7.0",
- "@jest/expect": "^29.7.0",
- "@jest/types": "^29.6.3",
- "jest-mock": "^29.7.0"
- }
- },
- "@jest/reporters": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz",
- "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==",
- "requires": {
- "@bcoe/v8-coverage": "^0.2.3",
- "@jest/console": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@jridgewell/trace-mapping": "^0.3.18",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "collect-v8-coverage": "^1.0.0",
- "exit": "^0.1.2",
- "glob": "^7.1.3",
- "graceful-fs": "^4.2.9",
- "istanbul-lib-coverage": "^3.0.0",
- "istanbul-lib-instrument": "^6.0.0",
- "istanbul-lib-report": "^3.0.0",
- "istanbul-lib-source-maps": "^4.0.0",
- "istanbul-reports": "^3.1.3",
- "jest-message-util": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-worker": "^29.7.0",
- "slash": "^3.0.0",
- "string-length": "^4.0.1",
- "strip-ansi": "^6.0.0",
- "v8-to-istanbul": "^9.0.1"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "@jest/schemas": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz",
- "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==",
- "requires": {
- "@sinclair/typebox": "^0.27.8"
- }
- },
- "@jest/source-map": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz",
- "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==",
- "requires": {
- "@jridgewell/trace-mapping": "^0.3.18",
- "callsites": "^3.0.0",
- "graceful-fs": "^4.2.9"
- }
- },
- "@jest/test-result": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz",
- "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==",
- "requires": {
- "@jest/console": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/istanbul-lib-coverage": "^2.0.0",
- "collect-v8-coverage": "^1.0.0"
- }
- },
- "@jest/test-sequencer": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz",
- "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==",
- "requires": {
- "@jest/test-result": "^29.7.0",
- "graceful-fs": "^4.2.9",
- "jest-haste-map": "^29.7.0",
- "slash": "^3.0.0"
- }
- },
- "@jest/transform": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz",
- "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==",
- "requires": {
- "@babel/core": "^7.11.6",
- "@jest/types": "^29.6.3",
- "@jridgewell/trace-mapping": "^0.3.18",
- "babel-plugin-istanbul": "^6.1.1",
- "chalk": "^4.0.0",
- "convert-source-map": "^2.0.0",
- "fast-json-stable-stringify": "^2.1.0",
- "graceful-fs": "^4.2.9",
- "jest-haste-map": "^29.7.0",
- "jest-regex-util": "^29.6.3",
- "jest-util": "^29.7.0",
- "micromatch": "^4.0.4",
- "pirates": "^4.0.4",
- "slash": "^3.0.0",
- "write-file-atomic": "^4.0.2"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "@jest/types": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz",
- "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==",
- "requires": {
- "@jest/schemas": "^29.6.3",
- "@types/istanbul-lib-coverage": "^2.0.0",
- "@types/istanbul-reports": "^3.0.0",
- "@types/node": "*",
- "@types/yargs": "^17.0.8",
- "chalk": "^4.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "@jridgewell/gen-mapping": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
- "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==",
- "requires": {
- "@jridgewell/set-array": "^1.0.1",
- "@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
- }
- },
- "@jridgewell/resolve-uri": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz",
- "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w=="
- },
- "@jridgewell/set-array": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
- "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw=="
- },
- "@jridgewell/sourcemap-codec": {
- "version": "1.4.15",
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
- "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
- },
- "@jridgewell/trace-mapping": {
- "version": "0.3.18",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz",
- "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==",
- "requires": {
- "@jridgewell/resolve-uri": "3.1.0",
- "@jridgewell/sourcemap-codec": "1.4.14"
- },
- "dependencies": {
- "@jridgewell/sourcemap-codec": {
- "version": "1.4.14",
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
- "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw=="
- }
- }
- },
- "@lerna/create": {
- "version": "8.1.8",
- "resolved": "https://registry.npmjs.org/@lerna/create/-/create-8.1.8.tgz",
- "integrity": "sha512-wi72R01tgjBjzG2kjRyTHl4yCTKDfDMIXRyKz9E/FBa9SkFvUOAE4bdyY9MhEsRZmSWL7+CYE8Flv/HScRpBbA==",
- "requires": {
- "@npmcli/arborist": "7.5.4",
- "@npmcli/package-json": "5.2.0",
- "@npmcli/run-script": "8.1.0",
- "@nx/devkit": ">=17.1.2 < 20",
- "@octokit/plugin-enterprise-rest": "6.0.1",
- "@octokit/rest": "19.0.11",
- "aproba": "2.0.0",
- "byte-size": "8.1.1",
- "chalk": "4.1.0",
- "clone-deep": "4.0.1",
- "cmd-shim": "6.0.3",
- "color-support": "1.1.3",
- "columnify": "1.6.0",
- "console-control-strings": "^1.1.0",
- "conventional-changelog-core": "5.0.1",
- "conventional-recommended-bump": "7.0.1",
- "cosmiconfig": "^8.2.0",
- "dedent": "1.5.3",
- "execa": "5.0.0",
- "fs-extra": "^11.2.0",
- "get-stream": "6.0.0",
- "git-url-parse": "14.0.0",
- "glob-parent": "6.0.2",
- "globby": "11.1.0",
- "graceful-fs": "4.2.11",
- "has-unicode": "2.0.1",
- "ini": "^1.3.8",
- "init-package-json": "6.0.3",
- "inquirer": "^8.2.4",
- "is-ci": "3.0.1",
- "is-stream": "2.0.0",
- "js-yaml": "4.1.0",
- "libnpmpublish": "9.0.9",
- "load-json-file": "6.2.0",
- "lodash": "^4.17.21",
- "make-dir": "4.0.0",
- "minimatch": "3.0.5",
- "multimatch": "5.0.0",
- "node-fetch": "2.6.7",
- "npm-package-arg": "11.0.2",
- "npm-packlist": "8.0.2",
- "npm-registry-fetch": "^17.1.0",
- "nx": ">=17.1.2 < 20",
- "p-map": "4.0.0",
- "p-map-series": "2.1.0",
- "p-queue": "6.6.2",
- "p-reduce": "^2.1.0",
- "pacote": "^18.0.6",
- "pify": "5.0.0",
- "read-cmd-shim": "4.0.0",
- "resolve-from": "5.0.0",
- "rimraf": "^4.4.1",
- "semver": "^7.3.4",
- "set-blocking": "^2.0.0",
- "signal-exit": "3.0.7",
- "slash": "^3.0.0",
- "ssri": "^10.0.6",
- "string-width": "^4.2.3",
- "strip-ansi": "^6.0.1",
- "strong-log-transformer": "2.1.0",
- "tar": "6.2.1",
- "temp-dir": "1.0.0",
- "upath": "2.0.1",
- "uuid": "^10.0.0",
- "validate-npm-package-license": "^3.0.4",
- "validate-npm-package-name": "5.0.1",
- "wide-align": "1.1.5",
- "write-file-atomic": "5.0.1",
- "write-pkg": "4.0.0",
- "yargs": "17.7.2",
- "yargs-parser": "21.1.1"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- },
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "chalk": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
- "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "glob": {
- "version": "9.3.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz",
- "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==",
- "requires": {
- "fs.realpath": "^1.0.0",
- "minimatch": "^8.0.2",
- "minipass": "^4.2.4",
- "path-scurry": "^1.6.1"
- },
- "dependencies": {
- "minimatch": {
- "version": "8.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz",
- "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- }
- }
- },
- "glob-parent": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
- "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
- "requires": {
- "is-glob": "^4.0.3"
- }
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "requires": {
- "argparse": "^2.0.1"
- }
- },
- "minipass": {
- "version": "4.2.8",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz",
- "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ=="
- },
- "rimraf": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz",
- "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==",
- "requires": {
- "glob": "^9.2.0"
- }
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- },
- "uuid": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz",
- "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ=="
- },
- "write-file-atomic": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
- "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
- "requires": {
- "imurmurhash": "^0.1.4",
- "signal-exit": "^4.0.1"
- },
- "dependencies": {
- "signal-exit": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
- "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw=="
- }
- }
- }
- }
- },
- "@napi-rs/wasm-runtime": {
- "version": "0.2.4",
- "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.4.tgz",
- "integrity": "sha512-9zESzOO5aDByvhIAsOy9TbpZ0Ur2AJbUI7UT73kcUTS2mxAMHOBaa1st/jAymNoCtvrit99kkzT1FZuXVcgfIQ==",
- "requires": {
- "@emnapi/core": "^1.1.0",
- "@emnapi/runtime": "^1.1.0",
- "@tybys/wasm-util": "^0.9.0"
- }
- },
- "@next/env": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.13.tgz",
- "integrity": "sha512-s3lh6K8cbW1h5Nga7NNeXrbe0+2jIIYK9YaA9T7IufDWnZpozdFUp6Hf0d5rNWUKu4fEuSX2rCKlGjCrtylfDw=="
- },
- "@next/eslint-plugin-next": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.13.tgz",
- "integrity": "sha512-z8Mk0VljxhIzsSiZUSdt3wp+t2lKd+jk5a9Jsvh3zDGkItgDMfjv/ZbET6HsxEl/fSihVoHGsXV6VLyDH0lfTQ==",
- "requires": {
- "glob": "10.3.10"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "glob": {
- "version": "10.3.10",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz",
- "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==",
- "requires": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^2.3.5",
- "minimatch": "^9.0.1",
- "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0",
- "path-scurry": "^1.10.1"
- }
- },
- "minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- }
- }
- },
- "@next/swc-darwin-arm64": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.13.tgz",
- "integrity": "sha512-IkAmQEa2Htq+wHACBxOsslt+jMoV3msvxCn0WFSfJSkv/scy+i/EukBKNad36grRxywaXUYJc9mxEGkeIs8Bzg==",
- "optional": true
- },
- "@next/swc-darwin-x64": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.13.tgz",
- "integrity": "sha512-Dv1RBGs2TTjkwEnFMVL5XIfJEavnLqqwYSD6LXgTPdEy/u6FlSrLBSSfe1pcfqhFEXRAgVL3Wpjibe5wXJzWog==",
- "optional": true
- },
- "@next/swc-linux-arm64-gnu": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.13.tgz",
- "integrity": "sha512-yB1tYEFFqo4ZNWkwrJultbsw7NPAAxlPXURXioRl9SdW6aIefOLS+0TEsKrWBtbJ9moTDgU3HRILL6QBQnMevg==",
- "optional": true
- },
- "@next/swc-linux-arm64-musl": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.13.tgz",
- "integrity": "sha512-v5jZ/FV/eHGoWhMKYrsAweQ7CWb8xsWGM/8m1mwwZQ/sutJjoFaXchwK4pX8NqwImILEvQmZWyb8pPTcP7htWg==",
- "optional": true
- },
- "@next/swc-linux-x64-gnu": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.13.tgz",
- "integrity": "sha512-aVc7m4YL7ViiRv7SOXK3RplXzOEe/qQzRA5R2vpXboHABs3w8vtFslGTz+5tKiQzWUmTmBNVW0UQdhkKRORmGA==",
- "optional": true
- },
- "@next/swc-linux-x64-musl": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.13.tgz",
- "integrity": "sha512-4wWY7/OsSaJOOKvMsu1Teylku7vKyTuocvDLTZQq0TYv9OjiYYWt63PiE1nTuZnqQ4RPvME7Xai+9enoiN0Wrg==",
- "optional": true
- },
- "@next/swc-win32-arm64-msvc": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.13.tgz",
- "integrity": "sha512-uP1XkqCqV2NVH9+g2sC7qIw+w2tRbcMiXFEbMihkQ8B1+V6m28sshBwAB0SDmOe0u44ne1vFU66+gx/28RsBVQ==",
- "optional": true
- },
- "@next/swc-win32-ia32-msvc": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.13.tgz",
- "integrity": "sha512-V26ezyjPqQpDBV4lcWIh8B/QICQ4v+M5Bo9ykLN+sqeKKBxJVDpEc6biDVyluTXTC40f5IqCU0ttth7Es2ZuMw==",
- "optional": true
- },
- "@next/swc-win32-x64-msvc": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.13.tgz",
- "integrity": "sha512-WwzOEAFBGhlDHE5Z73mNU8CO8mqMNLqaG+AO9ETmzdCQlJhVtWZnOl2+rqgVQS+YHunjOWptdFmNfbpwcUuEsw==",
- "optional": true
- },
- "@nodelib/fs.scandir": {
- "version": "2.1.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
- "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
- "requires": {
- "@nodelib/fs.stat": "2.0.5",
- "run-parallel": "^1.1.9"
- }
- },
- "@nodelib/fs.stat": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
- "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A=="
- },
- "@nodelib/fs.walk": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
- "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
- "requires": {
- "@nodelib/fs.scandir": "2.1.5",
- "fastq": "^1.6.0"
- }
- },
- "@npmcli/agent": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz",
- "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==",
- "requires": {
- "agent-base": "^7.1.0",
- "http-proxy-agent": "^7.0.0",
- "https-proxy-agent": "^7.0.1",
- "lru-cache": "^10.0.1",
- "socks-proxy-agent": "^8.0.3"
- },
- "dependencies": {
- "agent-base": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz",
- "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==",
- "requires": {
- "debug": "^4.3.4"
- }
- },
- "http-proxy-agent": {
- "version": "7.0.2",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz",
- "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==",
- "requires": {
- "agent-base": "^7.1.0",
- "debug": "^4.3.4"
- }
- },
- "https-proxy-agent": {
- "version": "7.0.5",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz",
- "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==",
- "requires": {
- "agent-base": "^7.0.2",
- "debug": "4"
- }
- }
- }
- },
- "@npmcli/arborist": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-7.5.4.tgz",
- "integrity": "sha512-nWtIc6QwwoUORCRNzKx4ypHqCk3drI+5aeYdMTQQiRCcn4lOOgfQh7WyZobGYTxXPSq1VwV53lkpN/BRlRk08g==",
- "requires": {
- "@isaacs/string-locale-compare": "^1.1.0",
- "@npmcli/fs": "^3.1.1",
- "@npmcli/installed-package-contents": "^2.1.0",
- "@npmcli/map-workspaces": "^3.0.2",
- "@npmcli/metavuln-calculator": "^7.1.1",
- "@npmcli/name-from-folder": "^2.0.0",
- "@npmcli/node-gyp": "^3.0.0",
- "@npmcli/package-json": "^5.1.0",
- "@npmcli/query": "^3.1.0",
- "@npmcli/redact": "^2.0.0",
- "@npmcli/run-script": "^8.1.0",
- "bin-links": "^4.0.4",
- "cacache": "^18.0.3",
- "common-ancestor-path": "^1.0.1",
- "hosted-git-info": "^7.0.2",
- "json-parse-even-better-errors": "^3.0.2",
- "json-stringify-nice": "^1.1.4",
- "lru-cache": "^10.2.2",
- "minimatch": "^9.0.4",
- "nopt": "^7.2.1",
- "npm-install-checks": "^6.2.0",
- "npm-package-arg": "^11.0.2",
- "npm-pick-manifest": "^9.0.1",
- "npm-registry-fetch": "^17.0.1",
- "pacote": "^18.0.6",
- "parse-conflict-json": "^3.0.0",
- "proc-log": "^4.2.0",
- "proggy": "^2.0.0",
- "promise-all-reject-late": "^1.0.0",
- "promise-call-limit": "^3.0.1",
- "read-package-json-fast": "^3.0.2",
- "semver": "^7.3.7",
- "ssri": "^10.0.6",
- "treeverse": "^3.0.0",
- "walk-up-path": "^3.0.1"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "json-parse-even-better-errors": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz",
- "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ=="
- },
- "minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- }
- }
- },
- "@npmcli/fs": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz",
- "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==",
- "requires": {
- "semver": "^7.3.5"
- }
- },
- "@npmcli/git": {
- "version": "5.0.8",
- "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.8.tgz",
- "integrity": "sha512-liASfw5cqhjNW9UFd+ruwwdEf/lbOAQjLL2XY2dFW/bkJheXDYZgOyul/4gVvEV4BWkTXjYGmDqMw9uegdbJNQ==",
- "requires": {
- "@npmcli/promise-spawn": "^7.0.0",
- "ini": "^4.1.3",
- "lru-cache": "^10.0.1",
- "npm-pick-manifest": "^9.0.0",
- "proc-log": "^4.0.0",
- "promise-inflight": "^1.0.1",
- "promise-retry": "^2.0.1",
- "semver": "^7.3.5",
- "which": "^4.0.0"
- },
- "dependencies": {
- "ini": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz",
- "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg=="
- },
- "isexe": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz",
- "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ=="
- },
- "which": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz",
- "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==",
- "requires": {
- "isexe": "^3.1.1"
- }
- }
- }
- },
- "@npmcli/installed-package-contents": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz",
- "integrity": "sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w==",
- "requires": {
- "npm-bundled": "^3.0.0",
- "npm-normalize-package-bin": "^3.0.0"
- }
- },
- "@npmcli/map-workspaces": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.6.tgz",
- "integrity": "sha512-tkYs0OYnzQm6iIRdfy+LcLBjcKuQCeE5YLb8KnrIlutJfheNaPvPpgoFEyEFgbjzl5PLZ3IA/BWAwRU0eHuQDA==",
- "requires": {
- "@npmcli/name-from-folder": "^2.0.0",
- "glob": "^10.2.2",
- "minimatch": "^9.0.0",
- "read-package-json-fast": "^3.0.0"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "glob": {
- "version": "10.4.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
- "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
- "requires": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^3.1.2",
- "minimatch": "^9.0.4",
- "minipass": "^7.1.2",
- "package-json-from-dist": "^1.0.0",
- "path-scurry": "^1.11.1"
- }
- },
- "jackspeak": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz",
- "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
- "requires": {
- "@isaacs/cliui": "^8.0.2",
- "@pkgjs/parseargs": "^0.11.0"
- }
- },
- "minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- },
- "minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="
- }
- }
- },
- "@npmcli/metavuln-calculator": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-7.1.1.tgz",
- "integrity": "sha512-Nkxf96V0lAx3HCpVda7Vw4P23RILgdi/5K1fmj2tZkWIYLpXAN8k2UVVOsW16TsS5F8Ws2I7Cm+PU1/rsVF47g==",
- "requires": {
- "cacache": "^18.0.0",
- "json-parse-even-better-errors": "^3.0.0",
- "pacote": "^18.0.0",
- "proc-log": "^4.1.0",
- "semver": "^7.3.5"
- },
- "dependencies": {
- "json-parse-even-better-errors": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz",
- "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ=="
- }
- }
- },
- "@npmcli/name-from-folder": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz",
- "integrity": "sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg=="
- },
- "@npmcli/node-gyp": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz",
- "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA=="
- },
- "@npmcli/package-json": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.2.0.tgz",
- "integrity": "sha512-qe/kiqqkW0AGtvBjL8TJKZk/eBBSpnJkUWvHdQ9jM2lKHXRYYJuyNpJPlJw3c8QjC2ow6NZYiLExhUaeJelbxQ==",
- "requires": {
- "@npmcli/git": "^5.0.0",
- "glob": "^10.2.2",
- "hosted-git-info": "^7.0.0",
- "json-parse-even-better-errors": "^3.0.0",
- "normalize-package-data": "^6.0.0",
- "proc-log": "^4.0.0",
- "semver": "^7.5.3"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "glob": {
- "version": "10.4.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
- "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
- "requires": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^3.1.2",
- "minimatch": "^9.0.4",
- "minipass": "^7.1.2",
- "package-json-from-dist": "^1.0.0",
- "path-scurry": "^1.11.1"
- }
- },
- "jackspeak": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz",
- "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
- "requires": {
- "@isaacs/cliui": "^8.0.2",
- "@pkgjs/parseargs": "^0.11.0"
- }
- },
- "json-parse-even-better-errors": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz",
- "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ=="
- },
- "minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- },
- "minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="
- }
- }
- },
- "@npmcli/promise-spawn": {
- "version": "7.0.2",
- "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz",
- "integrity": "sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ==",
- "requires": {
- "which": "^4.0.0"
- },
- "dependencies": {
- "isexe": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz",
- "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ=="
- },
- "which": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz",
- "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==",
- "requires": {
- "isexe": "^3.1.1"
- }
- }
- }
- },
- "@npmcli/query": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@npmcli/query/-/query-3.1.0.tgz",
- "integrity": "sha512-C/iR0tk7KSKGldibYIB9x8GtO/0Bd0I2mhOaDb8ucQL/bQVTmGoeREaFj64Z5+iCBRf3dQfed0CjJL7I8iTkiQ==",
- "requires": {
- "postcss-selector-parser": "^6.0.10"
- }
- },
- "@npmcli/redact": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-2.0.1.tgz",
- "integrity": "sha512-YgsR5jCQZhVmTJvjduTOIHph0L73pK8xwMVaDY0PatySqVM9AZj93jpoXYSJqfHFxFkN9dmqTw6OiqExsS3LPw=="
- },
- "@npmcli/run-script": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-8.1.0.tgz",
- "integrity": "sha512-y7efHHwghQfk28G2z3tlZ67pLG0XdfYbcVG26r7YIXALRsrVQcTq4/tdenSmdOrEsNahIYA/eh8aEVROWGFUDg==",
- "requires": {
- "@npmcli/node-gyp": "^3.0.0",
- "@npmcli/package-json": "^5.0.0",
- "@npmcli/promise-spawn": "^7.0.0",
- "node-gyp": "^10.0.0",
- "proc-log": "^4.0.0",
- "which": "^4.0.0"
- },
- "dependencies": {
- "isexe": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz",
- "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ=="
- },
- "which": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz",
- "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==",
- "requires": {
- "isexe": "^3.1.1"
- }
- }
- }
- },
- "@nrwl/devkit": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nrwl/devkit/-/devkit-19.6.2.tgz",
- "integrity": "sha512-1caQTLJBcvOLDZpB3yHY0zczcaaOh044MeegS0oyllPYYbCi6PiJK33HC8qoH1TGiahT6+VxSFN7OYnD3QK4vQ==",
- "requires": {
- "@nx/devkit": "19.6.2"
- }
- },
- "@nrwl/tao": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nrwl/tao/-/tao-19.6.2.tgz",
- "integrity": "sha512-DcqpaKpkUbF+J2kVRoLtYZOFpr8mu4+fHiKIjrdliKVabSOzekwRAx0DN+VZdpUoaZ2+5W+F8RFhSak1216ZCg==",
- "requires": {
- "nx": "19.6.2",
- "tslib": "^2.3.0"
- }
- },
- "@nx/devkit": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/devkit/-/devkit-19.6.2.tgz",
- "integrity": "sha512-fyZ+z0CnpXsGbnOTgsxwjOJH/K1cgSkhyHSOW3BcIvncx4Q4o8Y74flRz2mrZLJeURBs+IelYI2REkCPdba2cg==",
- "requires": {
- "@nrwl/devkit": "19.6.2",
- "ejs": "^3.1.7",
- "enquirer": "~2.3.6",
- "ignore": "^5.0.4",
- "minimatch": "9.0.3",
- "semver": "^7.5.3",
- "tmp": "~0.2.1",
- "tslib": "^2.3.0",
- "yargs-parser": "21.1.1"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "minimatch": {
- "version": "9.0.3",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz",
- "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- }
- }
- },
- "@nx/nx-darwin-arm64": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-darwin-arm64/-/nx-darwin-arm64-19.6.2.tgz",
- "integrity": "sha512-WCt9bK5CiuXiiE/8ivoeOEy3J2xYx2Eduea+8PdyK+21FzWakSV4GK0DUfC/dmLPyc+osx2kpmVO+l4HVBIEJw==",
- "optional": true
- },
- "@nx/nx-darwin-x64": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-darwin-x64/-/nx-darwin-x64-19.6.2.tgz",
- "integrity": "sha512-jCB4yTE97/UkUd1V7ttFLJkVRx2vkQgHAqcmU0l8pAPRWKplYkO43J4g4M3M8SyLsX6arPIlfIT3uBh8TzqxXA==",
- "optional": true
- },
- "@nx/nx-freebsd-x64": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-freebsd-x64/-/nx-freebsd-x64-19.6.2.tgz",
- "integrity": "sha512-ZBFTHO9vhaSpzuopAww9xznseNjE2CUXGSq5be0CUBoIvGn4TWvjOfv+tinIbKSYiWdfL1PYMqnE2FIqyxscNA==",
- "optional": true
- },
- "@nx/nx-linux-arm-gnueabihf": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-19.6.2.tgz",
- "integrity": "sha512-Aubnlvx/47zAOIlp+ZWxe6Xq3cX9sSMRsB7xZhLkGnpcKwsKEh+uDWi6yfdnmLBp02ZY16qwcpAeYlyBRHZRUA==",
- "optional": true
- },
- "@nx/nx-linux-arm64-gnu": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-19.6.2.tgz",
- "integrity": "sha512-LorZsjhaz7vajwzGVAGUMtMpu5232UvJceB7XzUXF1TEWM2FZfSUCdLKdQgR2YZHeALYzVoEQgU/j6zKldMqpw==",
- "optional": true
- },
- "@nx/nx-linux-arm64-musl": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-19.6.2.tgz",
- "integrity": "sha512-+s4BD6NkmsrnxYHWpJ84Lm49rsTa5tY4Zpz09kpMCc7NNQdIYtWimexGmaHGiIY9FmwqaQCx54lCxSXUXQ3hoQ==",
- "optional": true
- },
- "@nx/nx-linux-x64-gnu": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-19.6.2.tgz",
- "integrity": "sha512-O7ao0x7j7mwgPS8DkWmMtewTRyharQSURq2kUgWwyCJgVbr5ggV8RySmt/uLT9Tv/2LUDerWdBnd30oDr70M5g==",
- "optional": true
- },
- "@nx/nx-linux-x64-musl": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-19.6.2.tgz",
- "integrity": "sha512-7tVOQoorw8o1n5CAtLTlJx9oI/py+V3NX0PTdX/Pa7tA6gxyrZW51HlpODssRZ5PM9171G8VAZVROP9eDLfntQ==",
- "optional": true
- },
- "@nx/nx-win32-arm64-msvc": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-19.6.2.tgz",
- "integrity": "sha512-l12NsHLaCAYdZPOP8KrXnSWxrytcJuifBJTejy7Xu9rFQMEDWI7dKap8vKJrYIRUtJjOsF8Yjq38064noZkLdw==",
- "optional": true
- },
- "@nx/nx-win32-x64-msvc": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-19.6.2.tgz",
- "integrity": "sha512-B+80FY1kDWHMCOZubt786BtQOZn+LJ6CzjDGHSocqVMVqJDvBzrlf4qwmHeOIACWAsbZtJmWu+do3FriZ53ovA==",
- "optional": true
- },
- "@octokit/auth-token": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.4.tgz",
- "integrity": "sha512-TWFX7cZF2LXoCvdmJWY7XVPi74aSY0+FfBZNSXEXFkMpjcqsQwDSYVv5FhRFaI0V1ECnwbz4j59T/G+rXNWaIQ=="
- },
- "@octokit/core": {
- "version": "4.2.4",
- "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.4.tgz",
- "integrity": "sha512-rYKilwgzQ7/imScn3M9/pFfUf4I1AZEH3KhyJmtPdE2zfaXAn2mFfUy4FbKewzc2We5y/LlKLj36fWJLKC2SIQ==",
- "requires": {
- "@octokit/auth-token": "^3.0.0",
- "@octokit/graphql": "^5.0.0",
- "@octokit/request": "^6.0.0",
- "@octokit/request-error": "^3.0.0",
- "@octokit/types": "^9.0.0",
- "before-after-hook": "^2.2.0",
- "universal-user-agent": "^6.0.0"
- }
- },
- "@octokit/endpoint": {
- "version": "7.0.6",
- "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.6.tgz",
- "integrity": "sha512-5L4fseVRUsDFGR00tMWD/Trdeeihn999rTMGRMC1G/Ldi1uWlWJzI98H4Iak5DB/RVvQuyMYKqSK/R6mbSOQyg==",
- "requires": {
- "@octokit/types": "^9.0.0",
- "is-plain-object": "^5.0.0",
- "universal-user-agent": "^6.0.0"
- }
- },
- "@octokit/graphql": {
- "version": "5.0.6",
- "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.6.tgz",
- "integrity": "sha512-Fxyxdy/JH0MnIB5h+UQ3yCoh1FG4kWXfFKkpWqjZHw/p+Kc8Y44Hu/kCgNBT6nU1shNumEchmW/sUO1JuQnPcw==",
- "requires": {
- "@octokit/request": "^6.0.0",
- "@octokit/types": "^9.0.0",
- "universal-user-agent": "^6.0.0"
- }
- },
- "@octokit/openapi-types": {
- "version": "18.1.1",
- "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.1.1.tgz",
- "integrity": "sha512-VRaeH8nCDtF5aXWnjPuEMIYf1itK/s3JYyJcWFJT8X9pSNnBtriDf7wlEWsGuhPLl4QIH4xM8fqTXDwJ3Mu6sw=="
- },
- "@octokit/plugin-enterprise-rest": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz",
- "integrity": "sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw=="
- },
- "@octokit/plugin-paginate-rest": {
- "version": "6.1.2",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.1.2.tgz",
- "integrity": "sha512-qhrmtQeHU/IivxucOV1bbI/xZyC/iOBhclokv7Sut5vnejAIAEXVcGQeRpQlU39E0WwK9lNvJHphHri/DB6lbQ==",
- "requires": {
- "@octokit/tsconfig": "^1.0.2",
- "@octokit/types": "^9.2.3"
- }
- },
- "@octokit/plugin-request-log": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz",
- "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==",
- "requires": {}
- },
- "@octokit/plugin-rest-endpoint-methods": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-7.2.3.tgz",
- "integrity": "sha512-I5Gml6kTAkzVlN7KCtjOM+Ruwe/rQppp0QU372K1GP7kNOYEKe8Xn5BW4sE62JAHdwpq95OQK/qGNyKQMUzVgA==",
- "requires": {
- "@octokit/types": "^10.0.0"
- },
- "dependencies": {
- "@octokit/types": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@octokit/types/-/types-10.0.0.tgz",
- "integrity": "sha512-Vm8IddVmhCgU1fxC1eyinpwqzXPEYu0NrYzD3YZjlGjyftdLBTeqNblRC0jmJmgxbJIsQlyogVeGnrNaaMVzIg==",
- "requires": {
- "@octokit/openapi-types": "^18.0.0"
- }
- }
- }
- },
- "@octokit/request": {
- "version": "6.2.8",
- "resolved": "https://registry.npmjs.org/@octokit/request/-/request-6.2.8.tgz",
- "integrity": "sha512-ow4+pkVQ+6XVVsekSYBzJC0VTVvh/FCTUUgTsboGq+DTeWdyIFV8WSCdo0RIxk6wSkBTHqIK1mYuY7nOBXOchw==",
- "requires": {
- "@octokit/endpoint": "^7.0.0",
- "@octokit/request-error": "^3.0.0",
- "@octokit/types": "^9.0.0",
- "is-plain-object": "^5.0.0",
- "node-fetch": "^2.6.7",
- "universal-user-agent": "^6.0.0"
- }
- },
- "@octokit/request-error": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.3.tgz",
- "integrity": "sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ==",
- "requires": {
- "@octokit/types": "^9.0.0",
- "deprecation": "^2.0.0",
- "once": "^1.4.0"
- }
- },
- "@octokit/rest": {
- "version": "19.0.11",
- "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.11.tgz",
- "integrity": "sha512-m2a9VhaP5/tUw8FwfnW2ICXlXpLPIqxtg3XcAiGMLj/Xhw3RSBfZ8le/466ktO1Gcjr8oXudGnHhxV1TXJgFxw==",
- "requires": {
- "@octokit/core": "^4.2.1",
- "@octokit/plugin-paginate-rest": "^6.1.2",
- "@octokit/plugin-request-log": "^1.0.4",
- "@octokit/plugin-rest-endpoint-methods": "^7.1.2"
- }
- },
- "@octokit/tsconfig": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@octokit/tsconfig/-/tsconfig-1.0.2.tgz",
- "integrity": "sha512-I0vDR0rdtP8p2lGMzvsJzbhdOWy405HcGovrspJ8RRibHnyRgggUSNO5AIox5LmqiwmatHKYsvj6VGFHkqS7lA=="
- },
- "@octokit/types": {
- "version": "9.3.2",
- "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.3.2.tgz",
- "integrity": "sha512-D4iHGTdAnEEVsB8fl95m1hiz7D5YiRdQ9b/OEb3BYRVwbLsGHcRVPz+u+BgRLNk0Q0/4iZCBqDN96j2XNxfXrA==",
- "requires": {
- "@octokit/openapi-types": "^18.0.0"
- }
- },
- "@pkgjs/parseargs": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
- "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
- "optional": true
- },
- "@pkgr/core": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.0.tgz",
- "integrity": "sha512-Zwq5OCzuwJC2jwqmpEQt7Ds1DTi6BWSwoGkbb1n9pO3hzb35BoJELx7c0T23iDkBGkh2e7tvOtjF3tr3OaQHDQ=="
- },
- "@popperjs/core": {
- "version": "2.11.8",
- "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
- "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A=="
- },
- "@react-aria/ssr": {
- "version": "3.9.4",
- "resolved": "https://registry.npmjs.org/@react-aria/ssr/-/ssr-3.9.4.tgz",
- "integrity": "sha512-4jmAigVq409qcJvQyuorsmBR4+9r3+JEC60wC+Y0MZV0HCtTmm8D9guYXlJMdx0SSkgj0hHAyFm/HvPNFofCoQ==",
- "requires": {
- "@swc/helpers": "^0.5.0"
- }
- },
- "@restart/hooks": {
- "version": "0.4.16",
- "resolved": "https://registry.npmjs.org/@restart/hooks/-/hooks-0.4.16.tgz",
- "integrity": "sha512-f7aCv7c+nU/3mF7NWLtVVr0Ra80RqsO89hO72r+Y/nvQr5+q0UFGkocElTH6MJApvReVh6JHUFYn2cw1WdHF3w==",
- "requires": {
- "dequal": "^2.0.3"
- }
- },
- "@restart/ui": {
- "version": "1.6.9",
- "resolved": "https://registry.npmjs.org/@restart/ui/-/ui-1.6.9.tgz",
- "integrity": "sha512-mUbygUsJcRurjZCt1f77gg4DpheD1D+Sc7J3JjAkysUj7t8m4EBJVOqWC9788Qtbc69cJ+HlJc6jBguKwS8Mcw==",
- "requires": {
- "@babel/runtime": "^7.21.0",
- "@popperjs/core": "^2.11.6",
- "@react-aria/ssr": "^3.5.0",
- "@restart/hooks": "^0.4.9",
- "@types/warning": "^3.0.0",
- "dequal": "^2.0.3",
- "dom-helpers": "^5.2.0",
- "uncontrollable": "^8.0.1",
- "warning": "^4.0.3"
- },
- "dependencies": {
- "uncontrollable": {
- "version": "8.0.4",
- "resolved": "https://registry.npmjs.org/uncontrollable/-/uncontrollable-8.0.4.tgz",
- "integrity": "sha512-ulRWYWHvscPFc0QQXvyJjY6LIXU56f0h8pQFvhxiKk5V1fcI8gp9Ht9leVAhrVjzqMw0BgjspBINx9r6oyJUvQ==",
- "requires": {}
- }
- }
- },
- "@rushstack/eslint-patch": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.5.1.tgz",
- "integrity": "sha512-6i/8UoL0P5y4leBIGzvkZdS85RDMG9y1ihZzmTZQ5LdHUYmZ7pKFoj8X0236s3lusPs1Fa5HTQUpwI+UfTcmeA=="
- },
- "@sigstore/bundle": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.3.2.tgz",
- "integrity": "sha512-wueKWDk70QixNLB363yHc2D2ItTgYiMTdPwK8D9dKQMR3ZQ0c35IxP5xnwQ8cNLoCgCRcHf14kE+CLIvNX1zmA==",
- "requires": {
- "@sigstore/protobuf-specs": "^0.3.2"
- }
- },
- "@sigstore/core": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-1.1.0.tgz",
- "integrity": "sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg=="
- },
- "@sigstore/protobuf-specs": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.2.tgz",
- "integrity": "sha512-c6B0ehIWxMI8wiS/bj6rHMPqeFvngFV7cDU/MY+B16P9Z3Mp9k8L93eYZ7BYzSickzuqAQqAq0V956b3Ju6mLw=="
- },
- "@sigstore/sign": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.2.tgz",
- "integrity": "sha512-5Vz5dPVuunIIvC5vBb0APwo7qKA4G9yM48kPWJT+OEERs40md5GoUR1yedwpekWZ4m0Hhw44m6zU+ObsON+iDA==",
- "requires": {
- "@sigstore/bundle": "^2.3.2",
- "@sigstore/core": "^1.0.0",
- "@sigstore/protobuf-specs": "^0.3.2",
- "make-fetch-happen": "^13.0.1",
- "proc-log": "^4.2.0",
- "promise-retry": "^2.0.1"
- }
- },
- "@sigstore/tuf": {
- "version": "2.3.4",
- "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz",
- "integrity": "sha512-44vtsveTPUpqhm9NCrbU8CWLe3Vck2HO1PNLw7RIajbB7xhtn5RBPm1VNSCMwqGYHhDsBJG8gDF0q4lgydsJvw==",
- "requires": {
- "@sigstore/protobuf-specs": "^0.3.2",
- "tuf-js": "^2.2.1"
- }
- },
- "@sigstore/verify": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.1.tgz",
- "integrity": "sha512-8iKx79/F73DKbGfRf7+t4dqrc0bRr0thdPrxAtCKWRm/F0tG71i6O1rvlnScncJLLBZHn3h8M3c1BSUAb9yu8g==",
- "requires": {
- "@sigstore/bundle": "^2.3.2",
- "@sigstore/core": "^1.1.0",
- "@sigstore/protobuf-specs": "^0.3.2"
- }
- },
- "@sinclair/typebox": {
- "version": "0.27.8",
- "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz",
- "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA=="
- },
- "@sinonjs/commons": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz",
- "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==",
- "requires": {
- "type-detect": "4.0.8"
- }
- },
- "@sinonjs/fake-timers": {
- "version": "10.3.0",
- "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz",
- "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==",
- "requires": {
- "@sinonjs/commons": "^3.0.0"
- }
- },
- "@smithy/abort-controller": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.1.tgz",
- "integrity": "sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/chunked-blob-reader": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-3.0.0.tgz",
- "integrity": "sha512-sbnURCwjF0gSToGlsBiAmd1lRCmSn72nu9axfJu5lIx6RUEgHu6GwTMbqCdhQSi0Pumcm5vFxsi9XWXb2mTaoA==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@smithy/chunked-blob-reader-native": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.0.tgz",
- "integrity": "sha512-VDkpCYW+peSuM4zJip5WDfqvg2Mo/e8yxOv3VF1m11y7B8KKMKVFtmZWDe36Fvk8rGuWrPZHHXZ7rR7uM5yWyg==",
- "requires": {
- "@smithy/util-base64": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/config-resolver": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.5.tgz",
- "integrity": "sha512-SkW5LxfkSI1bUC74OtfBbdz+grQXYiPYolyu8VfpLIjEoN/sHVBlLeGXMQ1vX4ejkgfv6sxVbQJ32yF2cl1veA==",
- "requires": {
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "@smithy/util-config-provider": "^3.0.0",
- "@smithy/util-middleware": "^3.0.3",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/core": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.4.0.tgz",
- "integrity": "sha512-cHXq+FneIF/KJbt4q4pjN186+Jf4ZB0ZOqEaZMBhT79srEyGDDBV31NqBRBjazz8ppQ1bJbDJMY9ba5wKFV36w==",
- "requires": {
- "@smithy/middleware-endpoint": "^3.1.0",
- "@smithy/middleware-retry": "^3.0.15",
- "@smithy/middleware-serde": "^3.0.3",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-body-length-browser": "^3.0.0",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/credential-provider-imds": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.0.tgz",
- "integrity": "sha512-0SCIzgd8LYZ9EJxUjLXBmEKSZR/P/w6l7Rz/pab9culE/RWuqelAKGJvn5qUOl8BgX8Yj5HWM50A5hiB/RzsgA==",
- "requires": {
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/types": "^3.3.0",
- "@smithy/url-parser": "^3.0.3",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/eventstream-codec": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.1.2.tgz",
- "integrity": "sha512-0mBcu49JWt4MXhrhRAlxASNy0IjDRFU+aWNDRal9OtUJvJNiwDuyKMUONSOjLjSCeGwZaE0wOErdqULer8r7yw==",
- "requires": {
- "@aws-crypto/crc32": "5.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-hex-encoding": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/eventstream-serde-browser": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.6.tgz",
- "integrity": "sha512-2hM54UWQUOrki4BtsUI1WzmD13/SeaqT/AB3EUJKbcver/WgKNaiJ5y5F5XXuVe6UekffVzuUDrBZVAA3AWRpQ==",
- "requires": {
- "@smithy/eventstream-serde-universal": "^3.0.5",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/eventstream-serde-config-resolver": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.3.tgz",
- "integrity": "sha512-NVTYjOuYpGfrN/VbRQgn31x73KDLfCXCsFdad8DiIc3IcdxL+dYA9zEQPyOP7Fy2QL8CPy2WE4WCUD+ZsLNfaQ==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/eventstream-serde-node": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.5.tgz",
- "integrity": "sha512-+upXvnHNyZP095s11jF5dhGw/Ihzqwl5G+/KtMnoQOpdfC3B5HYCcDVG9EmgkhJMXJlM64PyN5gjJl0uXFQehQ==",
- "requires": {
- "@smithy/eventstream-serde-universal": "^3.0.5",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/eventstream-serde-universal": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.5.tgz",
- "integrity": "sha512-5u/nXbyoh1s4QxrvNre9V6vfyoLWuiVvvd5TlZjGThIikc3G+uNiG9uOTCWweSRjv1asdDIWK7nOmN7le4RYHQ==",
- "requires": {
- "@smithy/eventstream-codec": "^3.1.2",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/fetch-http-handler": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.4.tgz",
- "integrity": "sha512-kBprh5Gs5h7ug4nBWZi1FZthdqSM+T7zMmsZxx0IBvWUn7dK3diz2SHn7Bs4dQGFDk8plDv375gzenDoNwrXjg==",
- "requires": {
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/querystring-builder": "^3.0.3",
- "@smithy/types": "^3.3.0",
- "@smithy/util-base64": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/hash-blob-browser": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.2.tgz",
- "integrity": "sha512-hAbfqN2UbISltakCC2TP0kx4LqXBttEv2MqSPE98gVuDFMf05lU+TpC41QtqGP3Ff5A3GwZMPfKnEy0VmEUpmg==",
- "requires": {
- "@smithy/chunked-blob-reader": "^3.0.0",
- "@smithy/chunked-blob-reader-native": "^3.0.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/hash-node": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.3.tgz",
- "integrity": "sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "@smithy/util-buffer-from": "^3.0.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/hash-stream-node": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.1.2.tgz",
- "integrity": "sha512-PBgDMeEdDzi6JxKwbfBtwQG9eT9cVwsf0dZzLXoJF4sHKHs5HEo/3lJWpn6jibfJwT34I1EBXpBnZE8AxAft6g==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/invalid-dependency": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.3.tgz",
- "integrity": "sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/is-array-buffer": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-3.0.0.tgz",
- "integrity": "sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@smithy/md5-js": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.3.tgz",
- "integrity": "sha512-O/SAkGVwpWmelpj/8yDtsaVe6sINHLB1q8YE/+ZQbDxIw3SRLbTZuRaI10K12sVoENdnHqzPp5i3/H+BcZ3m3Q==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/middleware-content-length": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.5.tgz",
- "integrity": "sha512-ILEzC2eyxx6ncej3zZSwMpB5RJ0zuqH7eMptxC4KN3f+v9bqT8ohssKbhNR78k/2tWW+KS5Spw+tbPF4Ejyqvw==",
- "requires": {
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/middleware-endpoint": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.1.0.tgz",
- "integrity": "sha512-5y5aiKCEwg9TDPB4yFE7H6tYvGFf1OJHNczeY10/EFF8Ir8jZbNntQJxMWNfeQjC1mxPsaQ6mR9cvQbf+0YeMw==",
- "requires": {
- "@smithy/middleware-serde": "^3.0.3",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "@smithy/url-parser": "^3.0.3",
- "@smithy/util-middleware": "^3.0.3",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/middleware-retry": {
- "version": "3.0.15",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.15.tgz",
- "integrity": "sha512-iTMedvNt1ApdvkaoE8aSDuwaoc+BhvHqttbA/FO4Ty+y/S5hW6Ci/CTScG7vam4RYJWZxdTElc3MEfHRVH6cgQ==",
- "requires": {
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/service-error-classification": "^3.0.3",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-retry": "^3.0.3",
- "tslib": "^2.6.2",
- "uuid": "^9.0.1"
- },
- "dependencies": {
- "uuid": {
- "version": "9.0.1",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
- "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="
- }
- }
- },
- "@smithy/middleware-serde": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.3.tgz",
- "integrity": "sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/middleware-stack": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.3.tgz",
- "integrity": "sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/node-config-provider": {
- "version": "3.1.4",
- "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.4.tgz",
- "integrity": "sha512-YvnElQy8HR4vDcAjoy7Xkx9YT8xZP4cBXcbJSgm/kxmiQu08DwUwj8rkGnyoJTpfl/3xYHH+d8zE+eHqoDCSdQ==",
- "requires": {
- "@smithy/property-provider": "^3.1.3",
- "@smithy/shared-ini-file-loader": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/node-http-handler": {
- "version": "3.1.4",
- "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.1.4.tgz",
- "integrity": "sha512-+UmxgixgOr/yLsUxcEKGH0fMNVteJFGkmRltYFHnBMlogyFdpzn2CwqWmxOrfJELhV34v0WSlaqG1UtE1uXlJg==",
- "requires": {
- "@smithy/abort-controller": "^3.1.1",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/querystring-builder": "^3.0.3",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/property-provider": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.3.tgz",
- "integrity": "sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/protocol-http": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.1.0.tgz",
- "integrity": "sha512-dPVoHYQ2wcHooGXg3LQisa1hH0e4y0pAddPMeeUPipI1tEOqL6A4N0/G7abeq+K8wrwSgjk4C0wnD1XZpJm5aA==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/querystring-builder": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.3.tgz",
- "integrity": "sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "@smithy/util-uri-escape": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/querystring-parser": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.3.tgz",
- "integrity": "sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/service-error-classification": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.3.tgz",
- "integrity": "sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==",
- "requires": {
- "@smithy/types": "^3.3.0"
- }
- },
- "@smithy/shared-ini-file-loader": {
- "version": "3.1.4",
- "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.4.tgz",
- "integrity": "sha512-qMxS4hBGB8FY2GQqshcRUy1K6k8aBWP5vwm8qKkCT3A9K2dawUwOIJfqh9Yste/Bl0J2lzosVyrXDj68kLcHXQ==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/signature-v4": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-4.1.0.tgz",
- "integrity": "sha512-aRryp2XNZeRcOtuJoxjydO6QTaVhxx/vjaR+gx7ZjaFgrgPRyZ3HCTbfwqYj6ZWEBHkCSUfcaymKPURaByukag==",
- "requires": {
- "@smithy/is-array-buffer": "^3.0.0",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-hex-encoding": "^3.0.0",
- "@smithy/util-middleware": "^3.0.3",
- "@smithy/util-uri-escape": "^3.0.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/smithy-client": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.2.0.tgz",
- "integrity": "sha512-pDbtxs8WOhJLJSeaF/eAbPgXg4VVYFlRcL/zoNYA5WbG3wBL06CHtBSg53ppkttDpAJ/hdiede+xApip1CwSLw==",
- "requires": {
- "@smithy/middleware-endpoint": "^3.1.0",
- "@smithy/middleware-stack": "^3.0.3",
- "@smithy/protocol-http": "^4.1.0",
- "@smithy/types": "^3.3.0",
- "@smithy/util-stream": "^3.1.3",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/types": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.3.0.tgz",
- "integrity": "sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@smithy/url-parser": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.3.tgz",
- "integrity": "sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==",
- "requires": {
- "@smithy/querystring-parser": "^3.0.3",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-base64": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz",
- "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==",
- "requires": {
- "@smithy/util-buffer-from": "^3.0.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-body-length-browser": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz",
- "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-body-length-node": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz",
- "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-buffer-from": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz",
- "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==",
- "requires": {
- "@smithy/is-array-buffer": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-config-provider": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-3.0.0.tgz",
- "integrity": "sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-defaults-mode-browser": {
- "version": "3.0.15",
- "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.15.tgz",
- "integrity": "sha512-FZ4Psa3vjp8kOXcd3HJOiDPBCWtiilLl57r0cnNtq/Ga9RSDrM5ERL6xt+tO43+2af6Pn5Yp92x2n5vPuduNfg==",
- "requires": {
- "@smithy/property-provider": "^3.1.3",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "bowser": "^2.11.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-defaults-mode-node": {
- "version": "3.0.15",
- "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.15.tgz",
- "integrity": "sha512-KSyAAx2q6d0t6f/S4XB2+3+6aQacm3aLMhs9aLMqn18uYGUepbdssfogW5JQZpc6lXNBnp0tEnR5e9CEKmEd7A==",
- "requires": {
- "@smithy/config-resolver": "^3.0.5",
- "@smithy/credential-provider-imds": "^3.2.0",
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/property-provider": "^3.1.3",
- "@smithy/smithy-client": "^3.2.0",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-endpoints": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.5.tgz",
- "integrity": "sha512-ReQP0BWihIE68OAblC/WQmDD40Gx+QY1Ez8mTdFMXpmjfxSyz2fVQu3A4zXRfQU9sZXtewk3GmhfOHswvX+eNg==",
- "requires": {
- "@smithy/node-config-provider": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-hex-encoding": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-3.0.0.tgz",
- "integrity": "sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-middleware": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.3.tgz",
- "integrity": "sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==",
- "requires": {
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-retry": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.3.tgz",
- "integrity": "sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==",
- "requires": {
- "@smithy/service-error-classification": "^3.0.3",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-stream": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.1.3.tgz",
- "integrity": "sha512-FIv/bRhIlAxC0U7xM1BCnF2aDRPq0UaelqBHkM2lsCp26mcBbgI0tCVTv+jGdsQLUmAMybua/bjDsSu8RQHbmw==",
- "requires": {
- "@smithy/fetch-http-handler": "^3.2.4",
- "@smithy/node-http-handler": "^3.1.4",
- "@smithy/types": "^3.3.0",
- "@smithy/util-base64": "^3.0.0",
- "@smithy/util-buffer-from": "^3.0.0",
- "@smithy/util-hex-encoding": "^3.0.0",
- "@smithy/util-utf8": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-uri-escape": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-3.0.0.tgz",
- "integrity": "sha512-LqR7qYLgZTD7nWLBecUi4aqolw8Mhza9ArpNEQ881MJJIU2sE5iHCK6TdyqqzcDLy0OPe10IY4T8ctVdtynubg==",
- "requires": {
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-utf8": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz",
- "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==",
- "requires": {
- "@smithy/util-buffer-from": "^3.0.0",
- "tslib": "^2.6.2"
- }
- },
- "@smithy/util-waiter": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.1.2.tgz",
- "integrity": "sha512-4pP0EV3iTsexDx+8PPGAKCQpd/6hsQBaQhqWzU4hqKPHN5epPsxKbvUTIiYIHTxaKt6/kEaqPBpu/ufvfbrRzw==",
- "requires": {
- "@smithy/abort-controller": "^3.1.1",
- "@smithy/types": "^3.3.0",
- "tslib": "^2.6.2"
- }
- },
- "@swc/counter": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz",
- "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ=="
- },
- "@swc/helpers": {
- "version": "0.5.5",
- "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz",
- "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==",
- "requires": {
- "@swc/counter": "^0.1.3",
- "tslib": "^2.4.0"
- }
- },
- "@tootallnate/once": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz",
- "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==",
- "dev": true
- },
- "@tufjs/canonical-json": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz",
- "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA=="
- },
- "@tufjs/models": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.1.tgz",
- "integrity": "sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg==",
- "requires": {
- "@tufjs/canonical-json": "2.0.0",
- "minimatch": "^9.0.4"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- }
- }
- },
- "@tybys/wasm-util": {
- "version": "0.9.0",
- "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz",
- "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==",
- "requires": {
- "tslib": "^2.4.0"
- }
- },
- "@types/babel__core": {
- "version": "7.20.3",
- "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.3.tgz",
- "integrity": "sha512-54fjTSeSHwfan8AyHWrKbfBWiEUrNTZsUwPTDSNaaP1QDQIZbeNUg3a59E9D+375MzUw/x1vx2/0F5LBz+AeYA==",
- "requires": {
- "@babel/parser": "^7.20.7",
- "@babel/types": "^7.20.7",
- "@types/babel__generator": "*",
- "@types/babel__template": "*",
- "@types/babel__traverse": "*"
- }
- },
- "@types/babel__generator": {
- "version": "7.6.6",
- "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.6.tgz",
- "integrity": "sha512-66BXMKb/sUWbMdBNdMvajU7i/44RkrA3z/Yt1c7R5xejt8qh84iU54yUWCtm0QwGJlDcf/gg4zd/x4mpLAlb/w==",
- "requires": {
- "@babel/types": "^7.0.0"
- }
- },
- "@types/babel__template": {
- "version": "7.4.3",
- "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.3.tgz",
- "integrity": "sha512-ciwyCLeuRfxboZ4isgdNZi/tkt06m8Tw6uGbBSBgWrnnZGNXiEyM27xc/PjXGQLqlZ6ylbgHMnm7ccF9tCkOeQ==",
- "requires": {
- "@babel/parser": "^7.1.0",
- "@babel/types": "^7.0.0"
- }
- },
- "@types/babel__traverse": {
- "version": "7.20.3",
- "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.3.tgz",
- "integrity": "sha512-Lsh766rGEFbaxMIDH7Qa+Yha8cMVI3qAK6CHt3OR0YfxOIn5Z54iHiyDRycHrBqeIiqGa20Kpsv1cavfBKkRSw==",
- "requires": {
- "@babel/types": "^7.20.7"
- }
- },
- "@types/concat-stream": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/@types/concat-stream/-/concat-stream-1.6.1.tgz",
- "integrity": "sha512-eHE4cQPoj6ngxBZMvVf6Hw7Mh4jMW4U9lpGmS5GBPB9RYxlFg+CHaVN7ErNY4W9XfLIEn20b4VDYaIrbq0q4uA==",
- "dev": true,
- "requires": {
- "@types/node": "*"
- }
- },
- "@types/form-data": {
- "version": "0.0.33",
- "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-0.0.33.tgz",
- "integrity": "sha1-yayFsqX9GENbjIXZ7LUObWyJP/g=",
- "dev": true,
- "requires": {
- "@types/node": "*"
- }
- },
- "@types/graceful-fs": {
- "version": "4.1.8",
- "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.8.tgz",
- "integrity": "sha512-NhRH7YzWq8WiNKVavKPBmtLYZHxNY19Hh+az28O/phfp68CF45pMFud+ZzJ8ewnxnC5smIdF3dqFeiSUQ5I+pw==",
- "requires": {
- "@types/node": "*"
- }
- },
- "@types/istanbul-lib-coverage": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz",
- "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g=="
- },
- "@types/istanbul-lib-report": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
- "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==",
- "requires": {
- "@types/istanbul-lib-coverage": "*"
- }
- },
- "@types/istanbul-reports": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
- "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
- "requires": {
- "@types/istanbul-lib-report": "*"
- }
- },
- "@types/jsdom": {
- "version": "20.0.1",
- "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.1.tgz",
- "integrity": "sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==",
- "dev": true,
- "requires": {
- "@types/node": "*",
- "@types/tough-cookie": "*",
- "parse5": "^7.0.0"
- }
- },
- "@types/json5": {
- "version": "0.0.29",
- "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
- "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ=="
- },
- "@types/minimatch": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
- "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ=="
- },
- "@types/minimist": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz",
- "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag=="
- },
- "@types/node": {
- "version": "16.7.9",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.9.tgz",
- "integrity": "sha512-KktxVzS4FPDFVHUUOWyZMvRo//8vqOLITtLMhFSW9IdLsYT/sPyXj3wXtaTcR7A7olCe7R2Xy7R+q5pg2bU46g=="
- },
- "@types/normalize-package-data": {
- "version": "2.4.4",
- "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz",
- "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA=="
- },
- "@types/prop-types": {
- "version": "15.7.5",
- "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz",
- "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w=="
- },
- "@types/qs": {
- "version": "6.9.7",
- "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz",
- "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==",
- "dev": true
- },
- "@types/react": {
- "version": "18.2.14",
- "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.14.tgz",
- "integrity": "sha512-A0zjq+QN/O0Kpe30hA1GidzyFjatVvrpIvWLxD+xv67Vt91TWWgco9IvrJBkeyHm1trGaFS/FSGqPlhyeZRm0g==",
- "requires": {
- "@types/prop-types": "*",
- "@types/scheduler": "*",
- "csstype": "^3.0.2"
- }
- },
- "@types/react-transition-group": {
- "version": "4.4.6",
- "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.6.tgz",
- "integrity": "sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew==",
- "requires": {
- "@types/react": "*"
- }
- },
- "@types/scheduler": {
- "version": "0.16.3",
- "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz",
- "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ=="
- },
- "@types/stack-utils": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.2.tgz",
- "integrity": "sha512-g7CK9nHdwjK2n0ymT2CW698FuWJRIx+RP6embAzZ2Qi8/ilIrA1Imt2LVSeHUzKvpoi7BhmmQcXz95eS0f2JXw=="
- },
- "@types/tough-cookie": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz",
- "integrity": "sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==",
- "dev": true
- },
- "@types/warning": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@types/warning/-/warning-3.0.3.tgz",
- "integrity": "sha512-D1XC7WK8K+zZEveUPY+cf4+kgauk8N4eHr/XIHXGlGYkHLud6hK9lYfZk1ry1TNh798cZUCgb6MqGEG8DkJt6Q=="
- },
- "@types/yargs": {
- "version": "17.0.24",
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz",
- "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==",
- "requires": {
- "@types/yargs-parser": "*"
- }
- },
- "@types/yargs-parser": {
- "version": "21.0.0",
- "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz",
- "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA=="
- },
- "@typescript-eslint/eslint-plugin": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.6.0.tgz",
- "integrity": "sha512-UOaz/wFowmoh2G6Mr9gw60B1mm0MzUtm6Ic8G2yM1Le6gyj5Loi/N+O5mocugRGY+8OeeKmkMmbxNqUCq3B4Sg==",
- "requires": {
- "@eslint-community/regexpp": "^4.10.0",
- "@typescript-eslint/scope-manager": "8.6.0",
- "@typescript-eslint/type-utils": "8.6.0",
- "@typescript-eslint/utils": "8.6.0",
- "@typescript-eslint/visitor-keys": "8.6.0",
- "graphemer": "^1.4.0",
- "ignore": "^5.3.1",
- "natural-compare": "^1.4.0",
- "ts-api-utils": "^1.3.0"
- }
- },
- "@typescript-eslint/parser": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.6.0.tgz",
- "integrity": "sha512-eQcbCuA2Vmw45iGfcyG4y6rS7BhWfz9MQuk409WD47qMM+bKCGQWXxvoOs1DUp+T7UBMTtRTVT+kXr7Sh4O9Ow==",
- "requires": {
- "@typescript-eslint/scope-manager": "8.6.0",
- "@typescript-eslint/types": "8.6.0",
- "@typescript-eslint/typescript-estree": "8.6.0",
- "@typescript-eslint/visitor-keys": "8.6.0",
- "debug": "^4.3.4"
- }
- },
- "@typescript-eslint/scope-manager": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.6.0.tgz",
- "integrity": "sha512-ZuoutoS5y9UOxKvpc/GkvF4cuEmpokda4wRg64JEia27wX+PysIE9q+lzDtlHHgblwUWwo5/Qn+/WyTUvDwBHw==",
- "requires": {
- "@typescript-eslint/types": "8.6.0",
- "@typescript-eslint/visitor-keys": "8.6.0"
- }
- },
- "@typescript-eslint/type-utils": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.6.0.tgz",
- "integrity": "sha512-dtePl4gsuenXVwC7dVNlb4mGDcKjDT/Ropsk4za/ouMBPplCLyznIaR+W65mvCvsyS97dymoBRrioEXI7k0XIg==",
- "requires": {
- "@typescript-eslint/typescript-estree": "8.6.0",
- "@typescript-eslint/utils": "8.6.0",
- "debug": "^4.3.4",
- "ts-api-utils": "^1.3.0"
- }
- },
- "@typescript-eslint/types": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.6.0.tgz",
- "integrity": "sha512-rojqFZGd4MQxw33SrOy09qIDS8WEldM8JWtKQLAjf/X5mGSeEFh5ixQlxssMNyPslVIk9yzWqXCsV2eFhYrYUw=="
- },
- "@typescript-eslint/typescript-estree": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.6.0.tgz",
- "integrity": "sha512-MOVAzsKJIPIlLK239l5s06YXjNqpKTVhBVDnqUumQJja5+Y94V3+4VUFRA0G60y2jNnTVwRCkhyGQpavfsbq/g==",
- "requires": {
- "@typescript-eslint/types": "8.6.0",
- "@typescript-eslint/visitor-keys": "8.6.0",
- "debug": "^4.3.4",
- "fast-glob": "^3.3.2",
- "is-glob": "^4.0.3",
- "minimatch": "^9.0.4",
- "semver": "^7.6.0",
- "ts-api-utils": "^1.3.0"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- }
- }
- },
- "@typescript-eslint/utils": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.6.0.tgz",
- "integrity": "sha512-eNp9cWnYf36NaOVjkEUznf6fEgVy1TWpE0o52e4wtojjBx7D1UV2WAWGzR+8Y5lVFtpMLPwNbC67T83DWSph4A==",
- "requires": {
- "@eslint-community/eslint-utils": "^4.4.0",
- "@typescript-eslint/scope-manager": "8.6.0",
- "@typescript-eslint/types": "8.6.0",
- "@typescript-eslint/typescript-estree": "8.6.0"
- }
- },
- "@typescript-eslint/visitor-keys": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.6.0.tgz",
- "integrity": "sha512-wapVFfZg9H0qOYh4grNVQiMklJGluQrOUiOhYRrQWhx7BY/+I1IYb8BczWNbbUpO+pqy0rDciv3lQH5E1bCLrg==",
- "requires": {
- "@typescript-eslint/types": "8.6.0",
- "eslint-visitor-keys": "^3.4.3"
- }
- },
- "@ungap/structured-clone": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
- "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ=="
- },
- "@xmldom/xmldom": {
- "version": "0.8.10",
- "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz",
- "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==",
- "optional": true
- },
- "@yarnpkg/lockfile": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz",
- "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ=="
- },
- "@yarnpkg/parsers": {
- "version": "3.0.0-rc.46",
- "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.46.tgz",
- "integrity": "sha512-aiATs7pSutzda/rq8fnuPwTglyVwjM22bNnK2ZgjrpAjQHSSl3lztd2f9evst1W/qnC58DRz7T7QndUDumAR4Q==",
- "requires": {
- "js-yaml": "^3.10.0",
- "tslib": "^2.4.0"
- }
- },
- "@zkochan/js-yaml": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.7.tgz",
- "integrity": "sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==",
- "requires": {
- "argparse": "^2.0.1"
- },
- "dependencies": {
- "argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- }
- }
- },
- "abab": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz",
- "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==",
- "dev": true
- },
- "abbrev": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz",
- "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ=="
- },
- "acorn": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.9.0.tgz",
- "integrity": "sha512-jaVNAFBHNLXspO543WnNNPZFRtavh3skAkITqD0/2aeMkKZTN+254PyhwxFYrk3vQ1xfY+2wbesJMs/JC8/PwQ=="
- },
- "acorn-globals": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz",
- "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==",
- "dev": true,
- "requires": {
- "acorn": "^8.1.0",
- "acorn-walk": "^8.0.2"
- }
- },
- "acorn-jsx": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
- "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
- "requires": {}
- },
- "acorn-walk": {
- "version": "8.2.0",
- "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz",
- "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==",
- "dev": true
- },
- "add-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz",
- "integrity": "sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ=="
- },
- "adm-zip": {
- "version": "0.5.16",
- "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz",
- "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==",
- "dev": true
- },
- "agent-base": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
- "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
- "dev": true,
- "requires": {
- "debug": "4"
- }
- },
- "aggregate-error": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
- "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
- "requires": {
- "clean-stack": "^2.0.0",
- "indent-string": "^4.0.0"
- }
- },
- "ajv": {
- "version": "6.12.6",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
- "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
- "requires": {
- "fast-deep-equal": "^3.1.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
- "uri-js": "^4.2.2"
- }
- },
- "ansi-colors": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz",
- "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw=="
- },
- "ansi-escapes": {
- "version": "4.3.2",
- "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
- "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
- "requires": {
- "type-fest": "^0.21.3"
- }
- },
- "ansi-regex": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
- "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="
- },
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "requires": {
- "color-convert": "^1.9.0"
- }
- },
- "anymatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
- "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
- "requires": {
- "normalize-path": "^3.0.0",
- "picomatch": "^2.0.4"
- }
- },
- "aproba": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz",
- "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ=="
- },
- "argparse": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
- "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
- "requires": {
- "sprintf-js": "~1.0.2"
- }
- },
- "argv": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/argv/-/argv-0.0.2.tgz",
- "integrity": "sha1-7L0W+JSbFXGDcRsb2jNPN4QBhas=",
- "dev": true
- },
- "aria-query": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz",
- "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==",
- "requires": {
- "dequal": "^2.0.3"
- }
- },
- "array-buffer-byte-length": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz",
- "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==",
- "requires": {
- "call-bind": "^1.0.2",
- "is-array-buffer": "^3.0.1"
- }
- },
- "array-differ": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz",
- "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg=="
- },
- "array-ify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz",
- "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng=="
- },
- "array-includes": {
- "version": "3.1.7",
- "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz",
- "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "get-intrinsic": "^1.2.1",
- "is-string": "^1.0.7"
- }
- },
- "array-union": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
- "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw=="
- },
- "array.prototype.findlastindex": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz",
- "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "es-shim-unscopables": "^1.0.0",
- "get-intrinsic": "^1.2.1"
- }
- },
- "array.prototype.flat": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz",
- "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "es-shim-unscopables": "^1.0.0"
- }
- },
- "array.prototype.flatmap": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz",
- "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "es-shim-unscopables": "^1.0.0"
- }
- },
- "array.prototype.tosorted": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.2.tgz",
- "integrity": "sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "es-shim-unscopables": "^1.0.0",
- "get-intrinsic": "^1.2.1"
- }
- },
- "arraybuffer.prototype.slice": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz",
- "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==",
- "requires": {
- "array-buffer-byte-length": "^1.0.0",
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "get-intrinsic": "^1.2.1",
- "is-array-buffer": "^3.0.2",
- "is-shared-array-buffer": "^1.0.2"
- }
- },
- "arrify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
- "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA=="
- },
- "asap": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
- "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=",
- "dev": true
- },
- "assertion-error": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz",
- "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==",
- "dev": true
- },
- "ast-types-flow": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz",
- "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag=="
- },
- "astral-regex": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
- "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ=="
- },
- "async": {
- "version": "3.2.6",
- "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz",
- "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA=="
- },
- "asynciterator.prototype": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz",
- "integrity": "sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==",
- "requires": {
- "has-symbols": "^1.0.3"
- }
- },
- "asynckit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
- "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
- },
- "available-typed-arrays": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz",
- "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw=="
- },
- "axe-core": {
- "version": "4.7.2",
- "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.2.tgz",
- "integrity": "sha512-zIURGIS1E1Q4pcrMjp+nnEh+16G56eG/MUllJH8yEvw7asDo7Ac9uhC9KIH5jzpITueEZolfYglnCGIuSBz39g=="
- },
- "axios": {
- "version": "1.7.5",
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.5.tgz",
- "integrity": "sha512-fZu86yCo+svH3uqJ/yTdQ0QHpQu5oL+/QE+QPSv6BZSkDAoky9vytxp7u5qk83OJFS3kEBcesWni9WTZAv3tSw==",
- "requires": {
- "follow-redirects": "^1.15.6",
- "form-data": "^4.0.0",
- "proxy-from-env": "^1.1.0"
- }
- },
- "axobject-query": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz",
- "integrity": "sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==",
- "requires": {
- "dequal": "^2.0.3"
- }
- },
- "babel-jest": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz",
- "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==",
- "requires": {
- "@jest/transform": "^29.7.0",
- "@types/babel__core": "^7.1.14",
- "babel-plugin-istanbul": "^6.1.1",
- "babel-preset-jest": "^29.6.3",
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.9",
- "slash": "^3.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "babel-plugin-istanbul": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz",
- "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@istanbuljs/load-nyc-config": "^1.0.0",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-instrument": "^5.0.4",
- "test-exclude": "^6.0.0"
- },
- "dependencies": {
- "istanbul-lib-instrument": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz",
- "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==",
- "requires": {
- "@babel/core": "^7.12.3",
- "@babel/parser": "^7.14.7",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-coverage": "^3.2.0",
- "semver": "^6.3.0"
- }
- },
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="
- }
- }
- },
- "babel-plugin-jest-hoist": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz",
- "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==",
- "requires": {
- "@babel/template": "^7.3.3",
- "@babel/types": "^7.3.3",
- "@types/babel__core": "^7.1.14",
- "@types/babel__traverse": "^7.0.6"
- }
- },
- "babel-plugin-polyfill-corejs2": {
- "version": "0.4.5",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz",
- "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.22.6",
- "@babel/helper-define-polyfill-provider": "^0.4.2",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true
- }
- }
- },
- "babel-plugin-polyfill-corejs3": {
- "version": "0.8.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz",
- "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==",
- "dev": true,
- "requires": {
- "@babel/helper-define-polyfill-provider": "^0.4.2",
- "core-js-compat": "^3.31.0"
- }
- },
- "babel-plugin-polyfill-regenerator": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz",
- "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==",
- "dev": true,
- "requires": {
- "@babel/helper-define-polyfill-provider": "^0.4.2"
- }
- },
- "babel-preset-current-node-syntax": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz",
- "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==",
- "requires": {
- "@babel/plugin-syntax-async-generators": "^7.8.4",
- "@babel/plugin-syntax-bigint": "^7.8.3",
- "@babel/plugin-syntax-class-properties": "^7.8.3",
- "@babel/plugin-syntax-import-meta": "^7.8.3",
- "@babel/plugin-syntax-json-strings": "^7.8.3",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
- "@babel/plugin-syntax-numeric-separator": "^7.8.3",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3",
- "@babel/plugin-syntax-top-level-await": "^7.8.3"
- }
- },
- "babel-preset-jest": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz",
- "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==",
- "requires": {
- "babel-plugin-jest-hoist": "^29.6.3",
- "babel-preset-current-node-syntax": "^1.0.0"
- }
- },
- "balanced-match": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
- "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
- },
- "base64-js": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
- "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="
- },
- "before-after-hook": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz",
- "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ=="
- },
- "bids-validator": {
- "version": "file:bids-validator",
- "requires": {
- "@aws-sdk/client-s3": "^3.637.0",
- "adm-zip": "",
- "ajv": "^6.5.2",
- "bytes": "^3.1.2",
- "chai": "",
- "colors": "^1.4.0",
- "cross-fetch": "^4.0.0",
- "date-fns": "^4.1.0",
- "esbuild": "^0.24.0",
- "esbuild-plugin-globals": "^0.2.0",
- "esbuild-runner": "^2.2.2",
- "eslint": "^8.57.0",
- "eslint-config-prettier": "^9.1.0",
- "eslint-plugin-prettier": "^5.2.1",
- "events": "^3.3.0",
- "exifreader": "^4.23.7",
- "hed-validator": "^3.15.4",
- "husky": "^9.1.6",
- "ignore": "^6.0.2",
- "is-utf8": "^0.2.1",
- "jest": "^29.7.0",
- "jshint": "^2.13.6",
- "lerna": "^8.1.8",
- "lockfile": "^1.0.4",
- "lodash": "^4.17.21",
- "minimatch": "3.0.5",
- "next": "14.2.13",
- "nifti-js": "^1.0.1",
- "p-limit": "^2.1.0",
- "pako": "^1.0.6",
- "path": "^0.12.7",
- "pluralize": "^8.0.0",
- "semver": "^7.6.3",
- "stream-browserify": "^3.0.0",
- "sync-request": "6.1.0",
- "table": "^6.8.2",
- "util": "^0.12.5",
- "xml2js": "^0.6.2",
- "yaml": "^2.3.1",
- "yargs": "^17.7.2"
- },
- "dependencies": {
- "date-fns": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.1.0.tgz",
- "integrity": "sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg=="
- },
- "ignore": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-6.0.2.tgz",
- "integrity": "sha512-InwqeHHN2XpumIkMvpl/DCJVrAHgCsG5+cn1XlnLWGwtZBm8QJfSusItfrwx81CTp5agNZqpKU2J/ccC5nGT4A=="
- },
- "yaml": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.1.tgz",
- "integrity": "sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ=="
- }
- }
- },
- "bids-validator-web": {
- "version": "file:bids-validator-web",
- "requires": {
- "@babel/runtime": "^7.22.10",
- "@next/eslint-plugin-next": "^14.2.13",
- "bootstrap": "^5.3.3",
- "eslint-config-next": "^14.2.13",
- "next": "^14.0.0",
- "pluralize": "^8.0.0",
- "react": "^18.3.1",
- "react-bootstrap": "^2.10.5",
- "react-dom": "^18.3.1",
- "sass": "^1.79.4"
- }
- },
- "bin-links": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/bin-links/-/bin-links-4.0.4.tgz",
- "integrity": "sha512-cMtq4W5ZsEwcutJrVId+a/tjt8GSbS+h0oNkdl6+6rBuEv8Ot33Bevj5KPm40t309zuhVic8NjpuL42QCiJWWA==",
- "requires": {
- "cmd-shim": "^6.0.0",
- "npm-normalize-package-bin": "^3.0.0",
- "read-cmd-shim": "^4.0.0",
- "write-file-atomic": "^5.0.0"
- },
- "dependencies": {
- "signal-exit": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
- "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw=="
- },
- "write-file-atomic": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
- "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
- "requires": {
- "imurmurhash": "^0.1.4",
- "signal-exit": "^4.0.1"
- }
- }
- }
- },
- "bl": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
- "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==",
- "requires": {
- "buffer": "^5.5.0",
- "inherits": "^2.0.4",
- "readable-stream": "^3.4.0"
- }
- },
- "bootstrap": {
- "version": "5.3.3",
- "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz",
- "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==",
- "requires": {}
- },
- "bowser": {
- "version": "2.11.0",
- "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz",
- "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA=="
- },
- "brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "requires": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "braces": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
- "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
- "requires": {
- "fill-range": "^7.1.1"
- }
- },
- "browserslist": {
- "version": "4.21.9",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz",
- "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==",
- "requires": {
- "caniuse-lite": "^1.0.30001503",
- "electron-to-chromium": "^1.4.431",
- "node-releases": "^2.0.12",
- "update-browserslist-db": "^1.0.11"
- },
- "dependencies": {
- "node-releases": {
- "version": "2.0.12",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz",
- "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ=="
- }
- }
- },
- "bser": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
- "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==",
- "requires": {
- "node-int64": "^0.4.0"
- }
- },
- "buffer": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
- "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
- "requires": {
- "base64-js": "^1.3.1",
- "ieee754": "^1.1.13"
- }
- },
- "buffer-from": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
- "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ=="
- },
- "busboy": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
- "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==",
- "requires": {
- "streamsearch": "^1.1.0"
- }
- },
- "byte-size": {
- "version": "8.1.1",
- "resolved": "https://registry.npmjs.org/byte-size/-/byte-size-8.1.1.tgz",
- "integrity": "sha512-tUkzZWK0M/qdoLEqikxBWe4kumyuwjl3HO6zHTr4yEI23EojPtLYXdG1+AQY7MN0cGyNDvEaJ8wiYQm6P2bPxg=="
- },
- "bytes": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
- "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg=="
- },
- "cacache": {
- "version": "18.0.4",
- "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz",
- "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==",
- "requires": {
- "@npmcli/fs": "^3.1.0",
- "fs-minipass": "^3.0.0",
- "glob": "^10.2.2",
- "lru-cache": "^10.0.1",
- "minipass": "^7.0.3",
- "minipass-collect": "^2.0.1",
- "minipass-flush": "^1.0.5",
- "minipass-pipeline": "^1.2.4",
- "p-map": "^4.0.0",
- "ssri": "^10.0.0",
- "tar": "^6.1.11",
- "unique-filename": "^3.0.0"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "glob": {
- "version": "10.4.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
- "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
- "requires": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^3.1.2",
- "minimatch": "^9.0.4",
- "minipass": "^7.1.2",
- "package-json-from-dist": "^1.0.0",
- "path-scurry": "^1.11.1"
- }
- },
- "jackspeak": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz",
- "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
- "requires": {
- "@isaacs/cliui": "^8.0.2",
- "@pkgjs/parseargs": "^0.11.0"
- }
- },
- "minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- },
- "minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="
- }
- }
- },
- "call-bind": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz",
- "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==",
- "requires": {
- "function-bind": "^1.1.2",
- "get-intrinsic": "^1.2.1",
- "set-function-length": "^1.1.1"
- }
- },
- "callsites": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
- "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ=="
- },
- "camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg=="
- },
- "camelcase-keys": {
- "version": "6.2.2",
- "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz",
- "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==",
- "requires": {
- "camelcase": "^5.3.1",
- "map-obj": "^4.0.0",
- "quick-lru": "^4.0.1"
- }
- },
- "caniuse-lite": {
- "version": "1.0.30001581",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001581.tgz",
- "integrity": "sha512-whlTkwhqV2tUmP3oYhtNfaWGYHDdS3JYFQBKXxcUR9qqPWsRhFHhoISO2Xnl/g0xyKzht9mI1LZpiNWfMzHixQ=="
- },
- "caseless": {
- "version": "0.12.0",
- "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
- "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
- "dev": true
- },
- "chai": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.1.tgz",
- "integrity": "sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==",
- "dev": true,
- "requires": {
- "assertion-error": "^2.0.1",
- "check-error": "^2.1.1",
- "deep-eql": "^5.0.1",
- "loupe": "^3.1.0",
- "pathval": "^2.0.0"
- }
- },
- "chalk": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
- "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
- "requires": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- }
- },
- "char-regex": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz",
- "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw=="
- },
- "chardet": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
- "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA=="
- },
- "check-error": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz",
- "integrity": "sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==",
- "dev": true
- },
- "chokidar": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz",
- "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==",
- "requires": {
- "readdirp": "^4.0.1"
- }
- },
- "chownr": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
- "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="
- },
- "ci-info": {
- "version": "3.9.0",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz",
- "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ=="
- },
- "cjs-module-lexer": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz",
- "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ=="
- },
- "classnames": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz",
- "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw=="
- },
- "clean-stack": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
- "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A=="
- },
- "cli": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz",
- "integrity": "sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=",
- "requires": {
- "exit": "0.1.2",
- "glob": "^7.1.1"
- }
- },
- "cli-cursor": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
- "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
- "requires": {
- "restore-cursor": "^3.1.0"
- }
- },
- "cli-spinners": {
- "version": "2.6.1",
- "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz",
- "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g=="
- },
- "cli-width": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz",
- "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw=="
- },
- "client-only": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
- "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA=="
- },
- "cliui": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
- "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
- "requires": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.1",
- "wrap-ansi": "^7.0.0"
- }
- },
- "clone": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
- "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg=="
- },
- "clone-deep": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
- "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
- "requires": {
- "is-plain-object": "^2.0.4",
- "kind-of": "^6.0.2",
- "shallow-clone": "^3.0.0"
- },
- "dependencies": {
- "is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "requires": {
- "isobject": "^3.0.1"
- }
- }
- }
- },
- "cmd-shim": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-6.0.3.tgz",
- "integrity": "sha512-FMabTRlc5t5zjdenF6mS0MBeFZm0XqHqeOkcskKFb/LYCcRQ5fVgLOHVc4Lq9CqABd9zhjwPjMBCJvMCziSVtA=="
- },
- "co": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
- "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ=="
- },
- "code-point-at": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
- "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
- "optional": true
- },
- "codecov": {
- "version": "3.8.3",
- "resolved": "https://registry.npmjs.org/codecov/-/codecov-3.8.3.tgz",
- "integrity": "sha512-Y8Hw+V3HgR7V71xWH2vQ9lyS358CbGCldWlJFR0JirqoGtOoas3R3/OclRTvgUYFK29mmJICDPauVKmpqbwhOA==",
- "dev": true,
- "requires": {
- "argv": "0.0.2",
- "ignore-walk": "3.0.4",
- "js-yaml": "3.14.1",
- "teeny-request": "7.1.1",
- "urlgrey": "1.0.0"
- }
- },
- "collect-v8-coverage": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz",
- "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q=="
- },
- "color-convert": {
- "version": "1.9.3",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
- "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
- "requires": {
- "color-name": "1.1.3"
- }
- },
- "color-name": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
- },
- "color-support": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
- "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg=="
- },
- "colors": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz",
- "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA=="
- },
- "columnify": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz",
- "integrity": "sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q==",
- "requires": {
- "strip-ansi": "^6.0.1",
- "wcwidth": "^1.0.0"
- }
- },
- "combined-stream": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
- "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
- "requires": {
- "delayed-stream": "~1.0.0"
- }
- },
- "common-ancestor-path": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz",
- "integrity": "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w=="
- },
- "compare-func": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz",
- "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==",
- "requires": {
- "array-ify": "^1.0.0",
- "dot-prop": "^5.1.0"
- }
- },
- "concat-map": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
- },
- "concat-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz",
- "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==",
- "requires": {
- "buffer-from": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^3.0.2",
- "typedarray": "^0.0.6"
- }
- },
- "console-browserify": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz",
- "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=",
- "requires": {
- "date-now": "^0.1.4"
- }
- },
- "console-control-strings": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
- "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ=="
- },
- "conventional-changelog-angular": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-7.0.0.tgz",
- "integrity": "sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==",
- "requires": {
- "compare-func": "^2.0.0"
- }
- },
- "conventional-changelog-core": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-5.0.1.tgz",
- "integrity": "sha512-Rvi5pH+LvgsqGwZPZ3Cq/tz4ty7mjijhr3qR4m9IBXNbxGGYgTVVO+duXzz9aArmHxFtwZ+LRkrNIMDQzgoY4A==",
- "requires": {
- "add-stream": "^1.0.0",
- "conventional-changelog-writer": "^6.0.0",
- "conventional-commits-parser": "^4.0.0",
- "dateformat": "^3.0.3",
- "get-pkg-repo": "^4.2.1",
- "git-raw-commits": "^3.0.0",
- "git-remote-origin-url": "^2.0.0",
- "git-semver-tags": "^5.0.0",
- "normalize-package-data": "^3.0.3",
- "read-pkg": "^3.0.0",
- "read-pkg-up": "^3.0.0"
- },
- "dependencies": {
- "hosted-git-info": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
- "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==",
- "requires": {
- "lru-cache": "^6.0.0"
- }
- },
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "normalize-package-data": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz",
- "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==",
- "requires": {
- "hosted-git-info": "^4.0.1",
- "is-core-module": "^2.5.0",
- "semver": "^7.3.4",
- "validate-npm-package-license": "^3.0.1"
- }
- }
- }
- },
- "conventional-changelog-preset-loader": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-3.0.0.tgz",
- "integrity": "sha512-qy9XbdSLmVnwnvzEisjxdDiLA4OmV3o8db+Zdg4WiFw14fP3B6XNz98X0swPPpkTd/pc1K7+adKgEDM1JCUMiA=="
- },
- "conventional-changelog-writer": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-6.0.1.tgz",
- "integrity": "sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==",
- "requires": {
- "conventional-commits-filter": "^3.0.0",
- "dateformat": "^3.0.3",
- "handlebars": "^4.7.7",
- "json-stringify-safe": "^5.0.1",
- "meow": "^8.1.2",
- "semver": "^7.0.0",
- "split": "^1.0.1"
- }
- },
- "conventional-commits-filter": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-3.0.0.tgz",
- "integrity": "sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==",
- "requires": {
- "lodash.ismatch": "^4.4.0",
- "modify-values": "^1.0.1"
- }
- },
- "conventional-commits-parser": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-4.0.0.tgz",
- "integrity": "sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==",
- "requires": {
- "is-text-path": "^1.0.1",
- "JSONStream": "^1.3.5",
- "meow": "^8.1.2",
- "split2": "^3.2.2"
- }
- },
- "conventional-recommended-bump": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-7.0.1.tgz",
- "integrity": "sha512-Ft79FF4SlOFvX4PkwFDRnaNiIVX7YbmqGU0RwccUaiGvgp3S0a8ipR2/Qxk31vclDNM+GSdJOVs2KrsUCjblVA==",
- "requires": {
- "concat-stream": "^2.0.0",
- "conventional-changelog-preset-loader": "^3.0.0",
- "conventional-commits-filter": "^3.0.0",
- "conventional-commits-parser": "^4.0.0",
- "git-raw-commits": "^3.0.0",
- "git-semver-tags": "^5.0.0",
- "meow": "^8.1.2"
- }
- },
- "convert-source-map": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
- "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
- "requires": {
- "safe-buffer": "~5.1.1"
- }
- },
- "core-js-compat": {
- "version": "3.32.0",
- "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.0.tgz",
- "integrity": "sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==",
- "dev": true,
- "requires": {
- "browserslist": "^4.21.9"
- }
- },
- "core-util-is": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
- "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
- },
- "cosmiconfig": {
- "version": "8.3.6",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz",
- "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==",
- "requires": {
- "import-fresh": "^3.3.0",
- "js-yaml": "^4.1.0",
- "parse-json": "^5.2.0",
- "path-type": "^4.0.0"
- },
- "dependencies": {
- "argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- },
- "js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "requires": {
- "argparse": "^2.0.1"
- }
- }
- }
- },
- "create-jest": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz",
- "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==",
- "requires": {
- "@jest/types": "^29.6.3",
- "chalk": "^4.0.0",
- "exit": "^0.1.2",
- "graceful-fs": "^4.2.9",
- "jest-config": "^29.7.0",
- "jest-util": "^29.7.0",
- "prompts": "^2.0.1"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "cross-fetch": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz",
- "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==",
- "requires": {
- "node-fetch": "^2.6.12"
- },
- "dependencies": {
- "node-fetch": {
- "version": "2.6.12",
- "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz",
- "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==",
- "requires": {
- "whatwg-url": "^5.0.0"
- }
- },
- "tr46": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
- "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
- },
- "webidl-conversions": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
- "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
- },
- "whatwg-url": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
- "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
- "requires": {
- "tr46": "~0.0.3",
- "webidl-conversions": "^3.0.0"
- }
- }
- }
- },
- "cross-spawn": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
- "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
- "requires": {
- "path-key": "^3.1.0",
- "shebang-command": "^2.0.0",
- "which": "^2.0.1"
- }
- },
- "cssesc": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
- "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg=="
- },
- "cssom": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz",
- "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==",
- "dev": true
- },
- "cssstyle": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz",
- "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==",
- "dev": true,
- "requires": {
- "cssom": "~0.3.6"
- },
- "dependencies": {
- "cssom": {
- "version": "0.3.8",
- "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz",
- "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==",
- "dev": true
- }
- }
- },
- "csstype": {
- "version": "3.0.8",
- "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz",
- "integrity": "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw=="
- },
- "damerau-levenshtein": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz",
- "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA=="
- },
- "dargs": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz",
- "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg=="
- },
- "data-urls": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz",
- "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==",
- "dev": true,
- "requires": {
- "abab": "^2.0.6",
- "whatwg-mimetype": "^3.0.0",
- "whatwg-url": "^11.0.0"
- }
- },
- "date-and-time": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/date-and-time/-/date-and-time-3.2.0.tgz",
- "integrity": "sha512-uI8c96oG3R8ZhtWeGy8SfJSN1POcwE7kjWLi7GB3+dmBqSYGG+KhGf4Vh25hUhg1Br6Kn3ikEf/mrXCxE0Pknw=="
- },
- "date-fns": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.6.0.tgz",
- "integrity": "sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww=="
- },
- "date-now": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz",
- "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs="
- },
- "dateformat": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz",
- "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q=="
- },
- "debug": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
- "requires": {
- "ms": "2.1.2"
- }
- },
- "decamelize": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
- "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA="
- },
- "decamelize-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz",
- "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==",
- "requires": {
- "decamelize": "^1.1.0",
- "map-obj": "^1.0.0"
- },
- "dependencies": {
- "map-obj": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
- "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg=="
- }
- }
- },
- "decimal.js": {
- "version": "10.4.3",
- "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz",
- "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==",
- "dev": true
- },
- "dedent": {
- "version": "1.5.3",
- "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz",
- "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==",
- "requires": {}
- },
- "deep-eql": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.1.tgz",
- "integrity": "sha512-nwQCf6ne2gez3o1MxWifqkciwt0zhl0LO1/UwVu4uMBuPmflWM4oQ70XMqHqnBJA+nhzncaqL9HVL6KkHJ28lw==",
- "dev": true
- },
- "deep-is": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
- "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ="
- },
- "deepmerge": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
- "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A=="
- },
- "defaults": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz",
- "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==",
- "requires": {
- "clone": "^1.0.2"
- }
- },
- "define-data-property": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz",
- "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==",
- "requires": {
- "get-intrinsic": "^1.2.1",
- "gopd": "^1.0.1",
- "has-property-descriptors": "^1.0.0"
- }
- },
- "define-lazy-prop": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz",
- "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og=="
- },
- "define-properties": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz",
- "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==",
- "requires": {
- "define-data-property": "^1.0.1",
- "has-property-descriptors": "^1.0.0",
- "object-keys": "^1.1.1"
- }
- },
- "delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
- },
- "deprecation": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz",
- "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ=="
- },
- "dequal": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
- "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA=="
- },
- "detect-indent": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz",
- "integrity": "sha512-rlpvsxUtM0PQvy9iZe640/IWwWYyBsTApREbA1pHOpmOUIl9MkP/U4z7vTtg4Oaojvqhxt7sdufnT0EzGaR31g=="
- },
- "detect-newline": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz",
- "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA=="
- },
- "diff-sequences": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz",
- "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q=="
- },
- "dir-glob": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
- "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
- "requires": {
- "path-type": "^4.0.0"
- }
- },
- "doctrine": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
- "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
- "requires": {
- "esutils": "^2.0.2"
- }
- },
- "dom-helpers": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz",
- "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==",
- "requires": {
- "@babel/runtime": "^7.8.7",
- "csstype": "^3.0.2"
- }
- },
- "dom-serializer": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz",
- "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==",
- "requires": {
- "domelementtype": "^2.0.1",
- "entities": "^2.0.0"
- },
- "dependencies": {
- "domelementtype": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz",
- "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A=="
- }
- }
- },
- "domelementtype": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
- "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w=="
- },
- "domexception": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz",
- "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==",
- "dev": true,
- "requires": {
- "webidl-conversions": "^7.0.0"
- }
- },
- "domhandler": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz",
- "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=",
- "requires": {
- "domelementtype": "1"
- }
- },
- "domutils": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
- "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
- "requires": {
- "dom-serializer": "0",
- "domelementtype": "1"
- }
- },
- "dot-prop": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz",
- "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==",
- "requires": {
- "is-obj": "^2.0.0"
- }
- },
- "dotenv": {
- "version": "16.4.5",
- "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz",
- "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg=="
- },
- "dotenv-expand": {
- "version": "11.0.6",
- "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.6.tgz",
- "integrity": "sha512-8NHi73otpWsZGBSZwwknTXS5pqMOrk9+Ssrna8xCaxkzEpU9OTf9R5ArQGVw03//Zmk9MOwLPng9WwndvpAJ5g==",
- "requires": {
- "dotenv": "^16.4.4"
- }
- },
- "duplexer": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz",
- "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg=="
- },
- "eastasianwidth": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
- "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA=="
- },
- "ejs": {
- "version": "3.1.10",
- "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz",
- "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==",
- "requires": {
- "jake": "^10.8.5"
- }
- },
- "electron-to-chromium": {
- "version": "1.4.443",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.443.tgz",
- "integrity": "sha512-QG+DKVaD7OkcCJ/0x/IHdVEcwU7cak9Vr9dXCNp7G9ojBZQWtwtRV77CBOrU49jsKygedFcNc/IHUrGljKV2Gw=="
- },
- "emittery": {
- "version": "0.13.1",
- "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz",
- "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ=="
- },
- "encoding": {
- "version": "0.1.13",
- "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz",
- "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
- "optional": true,
- "requires": {
- "iconv-lite": "^0.6.2"
- },
- "dependencies": {
- "iconv-lite": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
- "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
- "optional": true,
- "requires": {
- "safer-buffer": ">= 2.1.2 < 3.0.0"
- }
- }
- }
- },
- "end-of-stream": {
- "version": "1.4.4",
- "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
- "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
- "requires": {
- "once": "^1.4.0"
- }
- },
- "enhanced-resolve": {
- "version": "5.15.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz",
- "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==",
- "requires": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
- }
- },
- "enquirer": {
- "version": "2.3.6",
- "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz",
- "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==",
- "requires": {
- "ansi-colors": "^4.1.1"
- }
- },
- "entities": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
- "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A=="
- },
- "env-paths": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz",
- "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A=="
- },
- "envinfo": {
- "version": "7.13.0",
- "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz",
- "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q=="
- },
- "err-code": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz",
- "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA=="
- },
- "error-ex": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
- "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
- "requires": {
- "is-arrayish": "^0.2.1"
- }
- },
- "es-abstract": {
- "version": "1.22.3",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz",
- "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==",
- "requires": {
- "array-buffer-byte-length": "^1.0.0",
- "arraybuffer.prototype.slice": "^1.0.2",
- "available-typed-arrays": "^1.0.5",
- "call-bind": "^1.0.5",
- "es-set-tostringtag": "^2.0.1",
- "es-to-primitive": "^1.2.1",
- "function.prototype.name": "^1.1.6",
- "get-intrinsic": "^1.2.2",
- "get-symbol-description": "^1.0.0",
- "globalthis": "^1.0.3",
- "gopd": "^1.0.1",
- "has-property-descriptors": "^1.0.0",
- "has-proto": "^1.0.1",
- "has-symbols": "^1.0.3",
- "hasown": "^2.0.0",
- "internal-slot": "^1.0.5",
- "is-array-buffer": "^3.0.2",
- "is-callable": "^1.2.7",
- "is-negative-zero": "^2.0.2",
- "is-regex": "^1.1.4",
- "is-shared-array-buffer": "^1.0.2",
- "is-string": "^1.0.7",
- "is-typed-array": "^1.1.12",
- "is-weakref": "^1.0.2",
- "object-inspect": "^1.13.1",
- "object-keys": "^1.1.1",
- "object.assign": "^4.1.4",
- "regexp.prototype.flags": "^1.5.1",
- "safe-array-concat": "^1.0.1",
- "safe-regex-test": "^1.0.0",
- "string.prototype.trim": "^1.2.8",
- "string.prototype.trimend": "^1.0.7",
- "string.prototype.trimstart": "^1.0.7",
- "typed-array-buffer": "^1.0.0",
- "typed-array-byte-length": "^1.0.0",
- "typed-array-byte-offset": "^1.0.0",
- "typed-array-length": "^1.0.4",
- "unbox-primitive": "^1.0.2",
- "which-typed-array": "^1.1.13"
- }
- },
- "es-iterator-helpers": {
- "version": "1.0.15",
- "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz",
- "integrity": "sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==",
- "requires": {
- "asynciterator.prototype": "^1.0.0",
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.22.1",
- "es-set-tostringtag": "^2.0.1",
- "function-bind": "^1.1.1",
- "get-intrinsic": "^1.2.1",
- "globalthis": "^1.0.3",
- "has-property-descriptors": "^1.0.0",
- "has-proto": "^1.0.1",
- "has-symbols": "^1.0.3",
- "internal-slot": "^1.0.5",
- "iterator.prototype": "^1.1.2",
- "safe-array-concat": "^1.0.1"
- }
- },
- "es-set-tostringtag": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz",
- "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==",
- "requires": {
- "get-intrinsic": "^1.1.3",
- "has": "^1.0.3",
- "has-tostringtag": "^1.0.0"
- }
- },
- "es-shim-unscopables": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz",
- "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==",
- "requires": {
- "has": "^1.0.3"
- }
- },
- "es-to-primitive": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
- "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
- "requires": {
- "is-callable": "^1.1.4",
- "is-date-object": "^1.0.1",
- "is-symbol": "^1.0.2"
- }
- },
- "esbuild": {
- "version": "0.24.0",
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.0.tgz",
- "integrity": "sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==",
- "dev": true,
- "requires": {
- "@esbuild/aix-ppc64": "0.24.0",
- "@esbuild/android-arm": "0.24.0",
- "@esbuild/android-arm64": "0.24.0",
- "@esbuild/android-x64": "0.24.0",
- "@esbuild/darwin-arm64": "0.24.0",
- "@esbuild/darwin-x64": "0.24.0",
- "@esbuild/freebsd-arm64": "0.24.0",
- "@esbuild/freebsd-x64": "0.24.0",
- "@esbuild/linux-arm": "0.24.0",
- "@esbuild/linux-arm64": "0.24.0",
- "@esbuild/linux-ia32": "0.24.0",
- "@esbuild/linux-loong64": "0.24.0",
- "@esbuild/linux-mips64el": "0.24.0",
- "@esbuild/linux-ppc64": "0.24.0",
- "@esbuild/linux-riscv64": "0.24.0",
- "@esbuild/linux-s390x": "0.24.0",
- "@esbuild/linux-x64": "0.24.0",
- "@esbuild/netbsd-x64": "0.24.0",
- "@esbuild/openbsd-arm64": "0.24.0",
- "@esbuild/openbsd-x64": "0.24.0",
- "@esbuild/sunos-x64": "0.24.0",
- "@esbuild/win32-arm64": "0.24.0",
- "@esbuild/win32-ia32": "0.24.0",
- "@esbuild/win32-x64": "0.24.0"
- }
- },
- "esbuild-plugin-globals": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/esbuild-plugin-globals/-/esbuild-plugin-globals-0.2.0.tgz",
- "integrity": "sha512-y+6utQVWrETQWs0J8EGLV5gEOP59mmjX+fKWoQHn4TYwFMaj0FxQYflc566tHuokBCzl+uNW2iIlM1o1jfNy6w==",
- "dev": true
- },
- "esbuild-runner": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/esbuild-runner/-/esbuild-runner-2.2.2.tgz",
- "integrity": "sha512-fRFVXcmYVmSmtYm2mL8RlUASt2TDkGh3uRcvHFOKNr/T58VrfVeKD9uT9nlgxk96u0LS0ehS/GY7Da/bXWKkhw==",
- "dev": true,
- "requires": {
- "source-map-support": "0.5.21",
- "tslib": "2.4.0"
- },
- "dependencies": {
- "tslib": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
- "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
- "dev": true
- }
- }
- },
- "escalade": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
- "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw=="
- },
- "escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
- },
- "escodegen": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz",
- "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==",
- "dev": true,
- "requires": {
- "esprima": "^4.0.1",
- "estraverse": "^5.2.0",
- "esutils": "^2.0.2",
- "optionator": "^0.8.1",
- "source-map": "~0.6.1"
- }
- },
- "eslint": {
- "version": "8.57.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz",
- "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==",
- "requires": {
- "@eslint-community/eslint-utils": "^4.2.0",
- "@eslint-community/regexpp": "^4.6.1",
- "@eslint/eslintrc": "^2.1.4",
- "@eslint/js": "8.57.0",
- "@humanwhocodes/config-array": "^0.11.14",
- "@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"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "requires": {
- "is-glob": "^4.0.3"
- }
- },
- "find-up": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
- "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
- "requires": {
- "locate-path": "^6.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "glob-parent": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
- "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
- "requires": {
- "is-glob": "^4.0.3"
- }
- },
- "globals": {
- "version": "13.20.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz",
- "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==",
- "requires": {
- "type-fest": "^0.20.2"
- }
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "requires": {
- "argparse": "^2.0.1"
- }
- },
- "levn": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
- "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
- "requires": {
- "prelude-ls": "^1.2.1",
- "type-check": "~0.4.0"
- }
- },
- "locate-path": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
- "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
- "requires": {
- "p-locate": "^5.0.0"
- }
- },
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "optionator": {
- "version": "0.9.3",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz",
- "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==",
- "requires": {
- "@aashutoshrathi/word-wrap": "^1.2.3",
- "deep-is": "^0.1.3",
- "fast-levenshtein": "^2.0.6",
- "levn": "^0.4.1",
- "prelude-ls": "^1.2.1",
- "type-check": "^0.4.0"
- }
- },
- "p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "requires": {
- "yocto-queue": "^0.1.0"
- }
- },
- "p-locate": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
- "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
- "requires": {
- "p-limit": "^3.0.2"
- }
- },
- "prelude-ls": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
- "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- },
- "type-check": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
- "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
- "requires": {
- "prelude-ls": "^1.2.1"
- }
- },
- "type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ=="
- }
- }
- },
- "eslint-config-next": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.13.tgz",
- "integrity": "sha512-aro1EKAoyYchnO/3Tlo91hnNBO7QO7qnv/79MAFC+4Jq8TdUVKQlht5d2F+YjrePjdpOvfL+mV9JPfyYNwkk1g==",
- "requires": {
- "@next/eslint-plugin-next": "14.2.13",
- "@rushstack/eslint-patch": "^1.3.3",
- "@typescript-eslint/eslint-plugin": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0",
- "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0",
- "eslint-import-resolver-node": "^0.3.6",
- "eslint-import-resolver-typescript": "^3.5.2",
- "eslint-plugin-import": "^2.28.1",
- "eslint-plugin-jsx-a11y": "^6.7.1",
- "eslint-plugin-react": "^7.33.2",
- "eslint-plugin-react-hooks": "^4.5.0 || 5.0.0-canary-7118f5dd7-20230705"
- }
- },
- "eslint-config-prettier": {
- "version": "9.1.0",
- "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz",
- "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==",
- "dev": true,
- "requires": {}
- },
- "eslint-import-resolver-node": {
- "version": "0.3.9",
- "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz",
- "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==",
- "requires": {
- "debug": "^3.2.7",
- "is-core-module": "^2.13.0",
- "resolve": "^1.22.4"
- },
- "dependencies": {
- "debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "requires": {
- "ms": "^2.1.1"
- }
- },
- "resolve": {
- "version": "1.22.8",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
- "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
- "requires": {
- "is-core-module": "^2.13.0",
- "path-parse": "^1.0.7",
- "supports-preserve-symlinks-flag": "^1.0.0"
- }
- }
- }
- },
- "eslint-import-resolver-typescript": {
- "version": "3.5.5",
- "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.5.5.tgz",
- "integrity": "sha512-TdJqPHs2lW5J9Zpe17DZNQuDnox4xo2o+0tE7Pggain9Rbc19ik8kFtXdxZ250FVx2kF4vlt2RSf4qlUpG7bhw==",
- "requires": {
- "debug": "^4.3.4",
- "enhanced-resolve": "^5.12.0",
- "eslint-module-utils": "^2.7.4",
- "get-tsconfig": "^4.5.0",
- "globby": "^13.1.3",
- "is-core-module": "^2.11.0",
- "is-glob": "^4.0.3",
- "synckit": "^0.8.5"
- },
- "dependencies": {
- "globby": {
- "version": "13.2.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.0.tgz",
- "integrity": "sha512-jWsQfayf13NvqKUIL3Ta+CIqMnvlaIDFveWE/dpOZ9+3AMEJozsxDvKA02zync9UuvOM8rOXzsD5GqKP4OnWPQ==",
- "requires": {
- "dir-glob": "^3.0.1",
- "fast-glob": "^3.2.11",
- "ignore": "^5.2.0",
- "merge2": "^1.4.1",
- "slash": "^4.0.0"
- }
- },
- "slash": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz",
- "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew=="
- }
- }
- },
- "eslint-module-utils": {
- "version": "2.8.0",
- "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz",
- "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==",
- "requires": {
- "debug": "^3.2.7"
- },
- "dependencies": {
- "debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "requires": {
- "ms": "^2.1.1"
- }
- }
- }
- },
- "eslint-plugin-import": {
- "version": "2.29.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.0.tgz",
- "integrity": "sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==",
- "requires": {
- "array-includes": "^3.1.7",
- "array.prototype.findlastindex": "^1.2.3",
- "array.prototype.flat": "^1.3.2",
- "array.prototype.flatmap": "^1.3.2",
- "debug": "^3.2.7",
- "doctrine": "^2.1.0",
- "eslint-import-resolver-node": "^0.3.9",
- "eslint-module-utils": "^2.8.0",
- "hasown": "^2.0.0",
- "is-core-module": "^2.13.1",
- "is-glob": "^4.0.3",
- "minimatch": "^3.1.2",
- "object.fromentries": "^2.0.7",
- "object.groupby": "^1.0.1",
- "object.values": "^1.1.7",
- "semver": "^6.3.1",
- "tsconfig-paths": "^3.14.2"
- },
- "dependencies": {
- "debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "requires": {
- "ms": "^2.1.1"
- }
- },
- "doctrine": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
- "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
- "requires": {
- "esutils": "^2.0.2"
- }
- },
- "json5": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
- "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
- "requires": {
- "minimist": "^1.2.0"
- }
- },
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="
- },
- "strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA=="
- },
- "tsconfig-paths": {
- "version": "3.14.2",
- "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz",
- "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==",
- "requires": {
- "@types/json5": "^0.0.29",
- "json5": "^1.0.2",
- "minimist": "^1.2.6",
- "strip-bom": "^3.0.0"
- }
- }
- }
- },
- "eslint-plugin-jsx-a11y": {
- "version": "6.7.1",
- "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.7.1.tgz",
- "integrity": "sha512-63Bog4iIethyo8smBklORknVjB0T2dwB8Mr/hIC+fBS0uyHdYYpzM/Ed+YC8VxTjlXHEWFOdmgwcDn1U2L9VCA==",
- "requires": {
- "@babel/runtime": "^7.20.7",
- "aria-query": "^5.1.3",
- "array-includes": "^3.1.6",
- "array.prototype.flatmap": "^1.3.1",
- "ast-types-flow": "^0.0.7",
- "axe-core": "^4.6.2",
- "axobject-query": "^3.1.1",
- "damerau-levenshtein": "^1.0.8",
- "emoji-regex": "^9.2.2",
- "has": "^1.0.3",
- "jsx-ast-utils": "^3.3.3",
- "language-tags": "=1.0.5",
- "minimatch": "^3.1.2",
- "object.entries": "^1.1.6",
- "object.fromentries": "^2.0.6",
- "semver": "^6.3.0"
- },
- "dependencies": {
- "emoji-regex": {
- "version": "9.2.2",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
- "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg=="
- },
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
- }
- }
- },
- "eslint-plugin-prettier": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.1.tgz",
- "integrity": "sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==",
- "dev": true,
- "requires": {
- "prettier-linter-helpers": "^1.0.0",
- "synckit": "^0.9.1"
- },
- "dependencies": {
- "synckit": {
- "version": "0.9.1",
- "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz",
- "integrity": "sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==",
- "dev": true,
- "requires": {
- "@pkgr/core": "^0.1.0",
- "tslib": "^2.6.2"
- }
- }
- }
- },
- "eslint-plugin-react": {
- "version": "7.33.2",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz",
- "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==",
- "requires": {
- "array-includes": "^3.1.6",
- "array.prototype.flatmap": "^1.3.1",
- "array.prototype.tosorted": "^1.1.1",
- "doctrine": "^2.1.0",
- "es-iterator-helpers": "^1.0.12",
- "estraverse": "^5.3.0",
- "jsx-ast-utils": "^2.4.1 || ^3.0.0",
- "minimatch": "^3.1.2",
- "object.entries": "^1.1.6",
- "object.fromentries": "^2.0.6",
- "object.hasown": "^1.1.2",
- "object.values": "^1.1.6",
- "prop-types": "^15.8.1",
- "resolve": "^2.0.0-next.4",
- "semver": "^6.3.1",
- "string.prototype.matchall": "^4.0.8"
- },
- "dependencies": {
- "doctrine": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
- "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
- "requires": {
- "esutils": "^2.0.2"
- }
- },
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "resolve": {
- "version": "2.0.0-next.5",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz",
- "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==",
- "requires": {
- "is-core-module": "^2.13.0",
- "path-parse": "^1.0.7",
- "supports-preserve-symlinks-flag": "^1.0.0"
- }
- },
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="
- }
- }
- },
- "eslint-plugin-react-hooks": {
- "version": "5.0.0-canary-7118f5dd7-20230705",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.0.0-canary-7118f5dd7-20230705.tgz",
- "integrity": "sha512-AZYbMo/NW9chdL7vk6HQzQhT+PvTAEVqWk9ziruUoW2kAOcN5qNyelv70e0F1VNQAbvutOC9oc+xfWycI9FxDw==",
- "requires": {}
- },
- "eslint-scope": {
- "version": "7.2.2",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz",
- "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==",
- "requires": {
- "esrecurse": "^4.3.0",
- "estraverse": "^5.2.0"
- }
- },
- "eslint-visitor-keys": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
- "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag=="
- },
- "espree": {
- "version": "9.6.1",
- "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz",
- "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==",
- "requires": {
- "acorn": "^8.9.0",
- "acorn-jsx": "^5.3.2",
- "eslint-visitor-keys": "^3.4.1"
- }
- },
- "esprima": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
- "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A=="
- },
- "esquery": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
- "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==",
- "requires": {
- "estraverse": "^5.1.0"
- }
- },
- "esrecurse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
- "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
- "requires": {
- "estraverse": "^5.2.0"
- }
- },
- "estraverse": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA=="
- },
- "esutils": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
- "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g=="
- },
- "eventemitter3": {
- "version": "4.0.7",
- "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz",
- "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw=="
- },
- "events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q=="
- },
- "execa": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz",
- "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==",
- "requires": {
- "cross-spawn": "^7.0.3",
- "get-stream": "^6.0.0",
- "human-signals": "^2.1.0",
- "is-stream": "^2.0.0",
- "merge-stream": "^2.0.0",
- "npm-run-path": "^4.0.1",
- "onetime": "^5.1.2",
- "signal-exit": "^3.0.3",
- "strip-final-newline": "^2.0.0"
- }
- },
- "exifreader": {
- "version": "4.23.7",
- "resolved": "https://registry.npmjs.org/exifreader/-/exifreader-4.23.7.tgz",
- "integrity": "sha512-yvyZFaZDqOa9QFHlV5/6tdq4rYBpNMPaRttl3VqthvYaS5QKrnaQBL1FKDaaTDpYO5bQanmsWnKLkUhoA0mSsg==",
- "requires": {
- "@xmldom/xmldom": "^0.8.10"
- }
- },
- "exit": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
- "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw="
- },
- "expect": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz",
- "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==",
- "requires": {
- "@jest/expect-utils": "^29.7.0",
- "jest-get-type": "^29.6.3",
- "jest-matcher-utils": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-util": "^29.7.0"
- }
- },
- "exponential-backoff": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz",
- "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw=="
- },
- "external-editor": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
- "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
- "requires": {
- "chardet": "^0.7.0",
- "iconv-lite": "^0.4.24",
- "tmp": "^0.0.33"
- },
- "dependencies": {
- "tmp": {
- "version": "0.0.33",
- "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
- "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
- "requires": {
- "os-tmpdir": "~1.0.2"
- }
- }
- }
- },
- "fast-deep-equal": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
- "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
- },
- "fast-diff": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz",
- "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==",
- "dev": true
- },
- "fast-glob": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
- "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
- "requires": {
- "@nodelib/fs.stat": "^2.0.2",
- "@nodelib/fs.walk": "^1.2.3",
- "glob-parent": "^5.1.2",
- "merge2": "^1.3.0",
- "micromatch": "^4.0.4"
- }
- },
- "fast-json-stable-stringify": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
- "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
- },
- "fast-levenshtein": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
- "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc="
- },
- "fast-url-parser": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz",
- "integrity": "sha1-9K8+qfNNiicc9YrSs3WfQx8LMY0=",
- "dev": true,
- "requires": {
- "punycode": "^1.3.2"
- },
- "dependencies": {
- "punycode": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
- "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
- "dev": true
- }
- }
- },
- "fast-xml-parser": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz",
- "integrity": "sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==",
- "requires": {
- "strnum": "^1.0.5"
- }
- },
- "fastq": {
- "version": "1.15.0",
- "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
- "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
- "requires": {
- "reusify": "^1.0.4"
- }
- },
- "fb-watchman": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz",
- "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==",
- "requires": {
- "bser": "2.1.1"
- }
- },
- "figures": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
- "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==",
- "requires": {
- "escape-string-regexp": "^1.0.5"
- }
- },
- "file-entry-cache": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
- "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
- "requires": {
- "flat-cache": "^3.0.4"
- }
- },
- "filelist": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz",
- "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==",
- "requires": {
- "minimatch": "^5.0.1"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "minimatch": {
- "version": "5.1.6",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
- "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- }
- }
- },
- "fill-range": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
- "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
- "requires": {
- "to-regex-range": "^5.0.1"
- }
- },
- "find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "requires": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "flat": {
- "version": "5.0.2",
- "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz",
- "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ=="
- },
- "flat-cache": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
- "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
- "requires": {
- "flatted": "^3.1.0",
- "rimraf": "^3.0.2"
- }
- },
- "flatted": {
- "version": "3.2.5",
- "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz",
- "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg=="
- },
- "follow-redirects": {
- "version": "1.15.6",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz",
- "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA=="
- },
- "for-each": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz",
- "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==",
- "requires": {
- "is-callable": "^1.1.3"
- }
- },
- "foreground-child": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
- "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
- "requires": {
- "cross-spawn": "^7.0.0",
- "signal-exit": "^4.0.1"
- },
- "dependencies": {
- "signal-exit": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz",
- "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q=="
- }
- }
- },
- "form-data": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
- "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
- "requires": {
- "asynckit": "^0.4.0",
- "combined-stream": "^1.0.8",
- "mime-types": "^2.1.12"
- }
- },
- "front-matter": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-4.0.2.tgz",
- "integrity": "sha512-I8ZuJ/qG92NWX8i5x1Y8qyj3vizhXS31OxjKDu3LKP+7/qBgfIKValiZIEwoVoJKUHlhWtYrktkxV1XsX+pPlg==",
- "requires": {
- "js-yaml": "^3.13.1"
- }
- },
- "fs-constants": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
- "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow=="
- },
- "fs-extra": {
- "version": "11.2.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
- "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
- "requires": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^6.0.1",
- "universalify": "^2.0.0"
- }
- },
- "fs-minipass": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz",
- "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==",
- "requires": {
- "minipass": "^7.0.3"
- },
- "dependencies": {
- "minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="
- }
- }
- },
- "fs.realpath": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
- },
- "fsevents": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
- "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
- "optional": true
- },
- "function-bind": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
- "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA=="
- },
- "function.prototype.name": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz",
- "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "functions-have-names": "^1.2.3"
- }
- },
- "functions-have-names": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
- "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ=="
- },
- "gensync": {
- "version": "1.0.0-beta.2",
- "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
- "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg=="
- },
- "get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="
- },
- "get-func-name": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz",
- "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==",
- "dev": true
- },
- "get-intrinsic": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz",
- "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==",
- "requires": {
- "function-bind": "^1.1.2",
- "has-proto": "^1.0.1",
- "has-symbols": "^1.0.3",
- "hasown": "^2.0.0"
- }
- },
- "get-package-type": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
- "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q=="
- },
- "get-pkg-repo": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz",
- "integrity": "sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA==",
- "requires": {
- "@hutson/parse-repository-url": "^3.0.0",
- "hosted-git-info": "^4.0.0",
- "through2": "^2.0.0",
- "yargs": "^16.2.0"
- },
- "dependencies": {
- "cliui": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
- "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
- "requires": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^7.0.0"
- }
- },
- "hosted-git-info": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
- "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==",
- "requires": {
- "lru-cache": "^6.0.0"
- }
- },
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "y18n": {
- "version": "5.0.8",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
- "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA=="
- },
- "yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
- "requires": {
- "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-parser": {
- "version": "20.2.9",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
- "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w=="
- }
- }
- },
- "get-port": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz",
- "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ=="
- },
- "get-stream": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz",
- "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg=="
- },
- "get-symbol-description": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz",
- "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==",
- "requires": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.1.1"
- }
- },
- "get-tsconfig": {
- "version": "4.6.2",
- "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.6.2.tgz",
- "integrity": "sha512-E5XrT4CbbXcXWy+1jChlZmrmCwd5KGx502kDCXJJ7y898TtWW9FwoG5HfOLVRKmlmDGkWN2HM9Ho+/Y8F0sJDg==",
- "requires": {
- "resolve-pkg-maps": "^1.0.0"
- }
- },
- "git-raw-commits": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-3.0.0.tgz",
- "integrity": "sha512-b5OHmZ3vAgGrDn/X0kS+9qCfNKWe4K/jFnhwzVWWg0/k5eLa3060tZShrRg8Dja5kPc+YjS0Gc6y7cRr44Lpjw==",
- "requires": {
- "dargs": "^7.0.0",
- "meow": "^8.1.2",
- "split2": "^3.2.2"
- }
- },
- "git-remote-origin-url": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz",
- "integrity": "sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw==",
- "requires": {
- "gitconfiglocal": "^1.0.0",
- "pify": "^2.3.0"
- },
- "dependencies": {
- "pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog=="
- }
- }
- },
- "git-semver-tags": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-5.0.1.tgz",
- "integrity": "sha512-hIvOeZwRbQ+7YEUmCkHqo8FOLQZCEn18yevLHADlFPZY02KJGsu5FZt9YW/lybfK2uhWFI7Qg/07LekJiTv7iA==",
- "requires": {
- "meow": "^8.1.2",
- "semver": "^7.0.0"
- }
- },
- "git-up": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz",
- "integrity": "sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==",
- "requires": {
- "is-ssh": "^1.4.0",
- "parse-url": "^8.1.0"
- }
- },
- "git-url-parse": {
- "version": "14.0.0",
- "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-14.0.0.tgz",
- "integrity": "sha512-NnLweV+2A4nCvn4U/m2AoYu0pPKlsmhK9cknG7IMwsjFY1S2jxM+mAhsDxyxfCIGfGaD+dozsyX4b6vkYc83yQ==",
- "requires": {
- "git-up": "^7.0.0"
- }
- },
- "gitconfiglocal": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz",
- "integrity": "sha512-spLUXeTAVHxDtKsJc8FkFVgFtMdEN9qPGpL23VfSHx4fP4+Ds097IXLvymbnDH8FnmxX5Nr9bPw3A+AQ6mWEaQ==",
- "requires": {
- "ini": "^1.3.2"
- }
- },
- "glob": {
- "version": "7.1.7",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
- "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- }
- },
- "glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "requires": {
- "is-glob": "^4.0.1"
- }
- },
- "globals": {
- "version": "11.12.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
- "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA=="
- },
- "globalthis": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz",
- "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==",
- "requires": {
- "define-properties": "^1.1.3"
- }
- },
- "globby": {
- "version": "11.1.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
- "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==",
- "requires": {
- "array-union": "^2.1.0",
- "dir-glob": "^3.0.1",
- "fast-glob": "^3.2.9",
- "ignore": "^5.2.0",
- "merge2": "^1.4.1",
- "slash": "^3.0.0"
- }
- },
- "gopd": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
- "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
- "requires": {
- "get-intrinsic": "^1.1.3"
- }
- },
- "graceful-fs": {
- "version": "4.2.11",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
- "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
- },
- "graphemer": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
- "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag=="
- },
- "handlebars": {
- "version": "4.7.8",
- "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz",
- "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==",
- "requires": {
- "minimist": "^1.2.5",
- "neo-async": "^2.6.2",
- "source-map": "^0.6.1",
- "uglify-js": "^3.1.4",
- "wordwrap": "^1.0.0"
- }
- },
- "hard-rejection": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz",
- "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA=="
- },
- "has": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
- "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
- "requires": {
- "function-bind": "^1.1.1"
- }
- },
- "has-bigints": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz",
- "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ=="
- },
- "has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw=="
- },
- "has-property-descriptors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz",
- "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==",
- "requires": {
- "get-intrinsic": "^1.1.1"
- }
- },
- "has-proto": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz",
- "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg=="
- },
- "has-symbols": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
- "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A=="
- },
- "has-tostringtag": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz",
- "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==",
- "requires": {
- "has-symbols": "^1.0.2"
- }
- },
- "has-unicode": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
- "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ=="
- },
- "hasown": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz",
- "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==",
- "requires": {
- "function-bind": "^1.1.2"
- }
- },
- "hed-validator": {
- "version": "3.15.4",
- "resolved": "https://registry.npmjs.org/hed-validator/-/hed-validator-3.15.4.tgz",
- "integrity": "sha512-40Jbd5CQ3mShQtJKQyYUiNB8Ym4FrLq21zzaQ067Mxj/9ILSJanx+Pmab4G1vVBl45NPLU9wLFvo+5YDomzlWA==",
- "requires": {
- "buffer": "^6.0.3",
- "cross-fetch": "^4.0.0",
- "date-and-time": "^3.1.1",
- "date-fns": "^3.6.0",
- "events": "^3.3.0",
- "lodash": "^4.17.21",
- "path": "^0.12.7",
- "pluralize": "^8.0.0",
- "semver": "^7.6.0",
- "string_decoder": "^1.3.0",
- "xml2js": "^0.6.2"
- },
- "dependencies": {
- "buffer": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
- "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==",
- "requires": {
- "base64-js": "^1.3.1",
- "ieee754": "^1.2.1"
- }
- }
- }
- },
- "hosted-git-info": {
- "version": "7.0.2",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz",
- "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==",
- "requires": {
- "lru-cache": "^10.0.1"
- }
- },
- "html-encoding-sniffer": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz",
- "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==",
- "dev": true,
- "requires": {
- "whatwg-encoding": "^2.0.0"
- }
- },
- "html-escaper": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
- "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg=="
- },
- "htmlparser2": {
- "version": "3.8.3",
- "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz",
- "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=",
- "requires": {
- "domelementtype": "1",
- "domhandler": "2.3",
- "domutils": "1.5",
- "entities": "1.0",
- "readable-stream": "1.1"
- },
- "dependencies": {
- "entities": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz",
- "integrity": "sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY="
- },
- "isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
- },
- "readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
- }
- },
- "string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ="
- }
- }
- },
- "http-basic": {
- "version": "8.1.3",
- "resolved": "https://registry.npmjs.org/http-basic/-/http-basic-8.1.3.tgz",
- "integrity": "sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw==",
- "dev": true,
- "requires": {
- "caseless": "^0.12.0",
- "concat-stream": "^1.6.2",
- "http-response-object": "^3.0.1",
- "parse-cache-control": "^1.0.1"
- },
- "dependencies": {
- "concat-stream": {
- "version": "1.6.2",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
- "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
- "dev": true,
- "requires": {
- "buffer-from": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^2.2.2",
- "typedarray": "^0.0.6"
- }
- },
- "readable-stream": {
- "version": "2.3.7",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
- "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
- "dev": true,
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "dev": true,
- "requires": {
- "safe-buffer": "~5.1.0"
- }
- }
- }
- },
- "http-cache-semantics": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz",
- "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ=="
- },
- "http-proxy-agent": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz",
- "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==",
- "dev": true,
- "requires": {
- "@tootallnate/once": "1",
- "agent-base": "6",
- "debug": "4"
- }
- },
- "http-response-object": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/http-response-object/-/http-response-object-3.0.2.tgz",
- "integrity": "sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==",
- "dev": true,
- "requires": {
- "@types/node": "^10.0.3"
- },
- "dependencies": {
- "@types/node": {
- "version": "10.17.60",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz",
- "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==",
- "dev": true
- }
- }
- },
- "https-proxy-agent": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
- "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
- "dev": true,
- "requires": {
- "agent-base": "6",
- "debug": "4"
- }
- },
- "human-signals": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
- "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw=="
- },
- "husky": {
- "version": "9.1.6",
- "resolved": "https://registry.npmjs.org/husky/-/husky-9.1.6.tgz",
- "integrity": "sha512-sqbjZKK7kf44hfdE94EoX8MZNk0n7HeW37O4YrVGCF4wzgQjp+akPAkfUK5LZ6KuR/6sqeAVuXHji+RzQgOn5A==",
- "dev": true
- },
- "iconv-lite": {
- "version": "0.4.24",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
- "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
- "requires": {
- "safer-buffer": ">= 2.1.2 < 3"
- }
- },
- "ieee754": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
- "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
- },
- "ignore": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
- "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g=="
- },
- "ignore-walk": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz",
- "integrity": "sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==",
- "dev": true,
- "requires": {
- "minimatch": "^3.0.4"
- }
- },
- "immutable": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz",
- "integrity": "sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg=="
- },
- "import-fresh": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
- "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
- "requires": {
- "parent-module": "^1.0.0",
- "resolve-from": "^4.0.0"
- },
- "dependencies": {
- "resolve-from": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
- "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g=="
- }
- }
- },
- "import-local": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz",
- "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==",
- "requires": {
- "pkg-dir": "^4.2.0",
- "resolve-cwd": "^3.0.0"
- }
- },
- "imurmurhash": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
- "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o="
- },
- "indent-string": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
- "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg=="
- },
- "inflight": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
- "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
- "requires": {
- "once": "^1.3.0",
- "wrappy": "1"
- }
- },
- "inherits": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
- },
- "ini": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
- "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew=="
- },
- "init-package-json": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/init-package-json/-/init-package-json-6.0.3.tgz",
- "integrity": "sha512-Zfeb5ol+H+eqJWHTaGca9BovufyGeIfr4zaaBorPmJBMrJ+KBnN+kQx2ZtXdsotUTgldHmHQV44xvUWOUA7E2w==",
- "requires": {
- "@npmcli/package-json": "^5.0.0",
- "npm-package-arg": "^11.0.0",
- "promzard": "^1.0.0",
- "read": "^3.0.1",
- "semver": "^7.3.5",
- "validate-npm-package-license": "^3.0.4",
- "validate-npm-package-name": "^5.0.0"
- }
- },
- "inquirer": {
- "version": "8.2.6",
- "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.6.tgz",
- "integrity": "sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==",
- "requires": {
- "ansi-escapes": "^4.2.1",
- "chalk": "^4.1.1",
- "cli-cursor": "^3.1.0",
- "cli-width": "^3.0.0",
- "external-editor": "^3.0.3",
- "figures": "^3.0.0",
- "lodash": "^4.17.21",
- "mute-stream": "0.0.8",
- "ora": "^5.4.1",
- "run-async": "^2.4.0",
- "rxjs": "^7.5.5",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "through": "^2.3.6",
- "wrap-ansi": "^6.0.1"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- },
- "wrap-ansi": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
- "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
- "requires": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- }
- }
- }
- },
- "internal-slot": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz",
- "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==",
- "requires": {
- "get-intrinsic": "^1.2.0",
- "has": "^1.0.3",
- "side-channel": "^1.0.4"
- }
- },
- "invariant": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
- "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
- "requires": {
- "loose-envify": "^1.0.0"
- }
- },
- "invert-kv": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
- "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=",
- "optional": true
- },
- "ip-address": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz",
- "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==",
- "requires": {
- "jsbn": "1.1.0",
- "sprintf-js": "^1.1.3"
- },
- "dependencies": {
- "sprintf-js": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz",
- "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA=="
- }
- }
- },
- "is-arguments": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz",
- "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==",
- "requires": {
- "call-bind": "^1.0.2",
- "has-tostringtag": "^1.0.0"
- }
- },
- "is-array-buffer": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz",
- "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==",
- "requires": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.2.0",
- "is-typed-array": "^1.1.10"
- }
- },
- "is-arrayish": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
- "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg=="
- },
- "is-async-function": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz",
- "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==",
- "requires": {
- "has-tostringtag": "^1.0.0"
- }
- },
- "is-bigint": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz",
- "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==",
- "requires": {
- "has-bigints": "^1.0.1"
- }
- },
- "is-boolean-object": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz",
- "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==",
- "requires": {
- "call-bind": "^1.0.2",
- "has-tostringtag": "^1.0.0"
- }
- },
- "is-callable": {
- "version": "1.2.7",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
- "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA=="
- },
- "is-ci": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz",
- "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==",
- "requires": {
- "ci-info": "^3.2.0"
- }
- },
- "is-core-module": {
- "version": "2.13.1",
- "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz",
- "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==",
- "requires": {
- "hasown": "^2.0.0"
- }
- },
- "is-date-object": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz",
- "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==",
- "requires": {
- "has-tostringtag": "^1.0.0"
- }
- },
- "is-docker": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz",
- "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ=="
- },
- "is-extglob": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI="
- },
- "is-finalizationregistry": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz",
- "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==",
- "requires": {
- "call-bind": "^1.0.2"
- }
- },
- "is-fullwidth-code-point": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
- "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="
- },
- "is-generator-fn": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz",
- "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ=="
- },
- "is-generator-function": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz",
- "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==",
- "requires": {
- "has-tostringtag": "^1.0.0"
- }
- },
- "is-glob": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
- "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
- "requires": {
- "is-extglob": "^2.1.1"
- }
- },
- "is-interactive": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz",
- "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w=="
- },
- "is-lambda": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz",
- "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ=="
- },
- "is-map": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz",
- "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg=="
- },
- "is-negative-zero": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz",
- "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA=="
- },
- "is-number": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="
- },
- "is-number-object": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz",
- "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==",
- "requires": {
- "has-tostringtag": "^1.0.0"
- }
- },
- "is-obj": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz",
- "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w=="
- },
- "is-path-inside": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
- "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ=="
- },
- "is-plain-obj": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
- "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg=="
- },
- "is-plain-object": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
- "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q=="
- },
- "is-potential-custom-element-name": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz",
- "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==",
- "dev": true
- },
- "is-regex": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz",
- "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==",
- "requires": {
- "call-bind": "^1.0.2",
- "has-tostringtag": "^1.0.0"
- }
- },
- "is-set": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz",
- "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g=="
- },
- "is-shared-array-buffer": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz",
- "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==",
- "requires": {
- "call-bind": "^1.0.2"
- }
- },
- "is-ssh": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.0.tgz",
- "integrity": "sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==",
- "requires": {
- "protocols": "^2.0.1"
- }
- },
- "is-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz",
- "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw=="
- },
- "is-string": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz",
- "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==",
- "requires": {
- "has-tostringtag": "^1.0.0"
- }
- },
- "is-symbol": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz",
- "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
- "requires": {
- "has-symbols": "^1.0.2"
- }
- },
- "is-text-path": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz",
- "integrity": "sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==",
- "requires": {
- "text-extensions": "^1.0.0"
- }
- },
- "is-typed-array": {
- "version": "1.1.12",
- "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz",
- "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==",
- "requires": {
- "which-typed-array": "^1.1.11"
- }
- },
- "is-unicode-supported": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz",
- "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw=="
- },
- "is-utf8": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
- "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI="
- },
- "is-weakmap": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz",
- "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA=="
- },
- "is-weakref": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz",
- "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==",
- "requires": {
- "call-bind": "^1.0.2"
- }
- },
- "is-weakset": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz",
- "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==",
- "requires": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.1.1"
- }
- },
- "is-wsl": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
- "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
- "requires": {
- "is-docker": "^2.0.0"
- }
- },
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
- },
- "isexe": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA="
- },
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg=="
- },
- "istanbul-lib-coverage": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz",
- "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw=="
- },
- "istanbul-lib-instrument": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz",
- "integrity": "sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==",
- "requires": {
- "@babel/core": "^7.12.3",
- "@babel/parser": "^7.14.7",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-coverage": "^3.2.0",
- "semver": "^7.5.4"
- }
- },
- "istanbul-lib-report": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz",
- "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==",
- "requires": {
- "istanbul-lib-coverage": "^3.0.0",
- "make-dir": "^4.0.0",
- "supports-color": "^7.1.0"
- },
- "dependencies": {
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "istanbul-lib-source-maps": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz",
- "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==",
- "requires": {
- "debug": "^4.1.1",
- "istanbul-lib-coverage": "^3.0.0",
- "source-map": "^0.6.1"
- }
- },
- "istanbul-reports": {
- "version": "3.1.6",
- "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz",
- "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==",
- "requires": {
- "html-escaper": "^2.0.0",
- "istanbul-lib-report": "^3.0.0"
- }
- },
- "iterator.prototype": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz",
- "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==",
- "requires": {
- "define-properties": "^1.2.1",
- "get-intrinsic": "^1.2.1",
- "has-symbols": "^1.0.3",
- "reflect.getprototypeof": "^1.0.4",
- "set-function-name": "^2.0.1"
- }
- },
- "jackspeak": {
- "version": "2.3.6",
- "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz",
- "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==",
- "requires": {
- "@isaacs/cliui": "^8.0.2",
- "@pkgjs/parseargs": "^0.11.0"
- }
- },
- "jake": {
- "version": "10.9.2",
- "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz",
- "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==",
- "requires": {
- "async": "^3.2.3",
- "chalk": "^4.0.2",
- "filelist": "^1.0.4",
- "minimatch": "^3.1.2"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz",
- "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==",
- "requires": {
- "@jest/core": "^29.7.0",
- "@jest/types": "^29.6.3",
- "import-local": "^3.0.2",
- "jest-cli": "^29.7.0"
- }
- },
- "jest-changed-files": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz",
- "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==",
- "requires": {
- "execa": "^5.0.0",
- "jest-util": "^29.7.0",
- "p-limit": "^3.1.0"
- },
- "dependencies": {
- "p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "requires": {
- "yocto-queue": "^0.1.0"
- }
- }
- }
- },
- "jest-circus": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz",
- "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==",
- "requires": {
- "@jest/environment": "^29.7.0",
- "@jest/expect": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "co": "^4.6.0",
- "dedent": "^1.0.0",
- "is-generator-fn": "^2.0.0",
- "jest-each": "^29.7.0",
- "jest-matcher-utils": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-runtime": "^29.7.0",
- "jest-snapshot": "^29.7.0",
- "jest-util": "^29.7.0",
- "p-limit": "^3.1.0",
- "pretty-format": "^29.7.0",
- "pure-rand": "^6.0.0",
- "slash": "^3.0.0",
- "stack-utils": "^2.0.3"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "requires": {
- "yocto-queue": "^0.1.0"
- }
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-cli": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz",
- "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==",
- "requires": {
- "@jest/core": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/types": "^29.6.3",
- "chalk": "^4.0.0",
- "create-jest": "^29.7.0",
- "exit": "^0.1.2",
- "import-local": "^3.0.2",
- "jest-config": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-validate": "^29.7.0",
- "yargs": "^17.3.1"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-config": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz",
- "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==",
- "requires": {
- "@babel/core": "^7.11.6",
- "@jest/test-sequencer": "^29.7.0",
- "@jest/types": "^29.6.3",
- "babel-jest": "^29.7.0",
- "chalk": "^4.0.0",
- "ci-info": "^3.2.0",
- "deepmerge": "^4.2.2",
- "glob": "^7.1.3",
- "graceful-fs": "^4.2.9",
- "jest-circus": "^29.7.0",
- "jest-environment-node": "^29.7.0",
- "jest-get-type": "^29.6.3",
- "jest-regex-util": "^29.6.3",
- "jest-resolve": "^29.7.0",
- "jest-runner": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-validate": "^29.7.0",
- "micromatch": "^4.0.4",
- "parse-json": "^5.2.0",
- "pretty-format": "^29.7.0",
- "slash": "^3.0.0",
- "strip-json-comments": "^3.1.1"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-diff": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz",
- "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==",
- "requires": {
- "chalk": "^4.0.0",
- "diff-sequences": "^29.6.3",
- "jest-get-type": "^29.6.3",
- "pretty-format": "^29.7.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-docblock": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz",
- "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==",
- "requires": {
- "detect-newline": "^3.0.0"
- }
- },
- "jest-each": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz",
- "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==",
- "requires": {
- "@jest/types": "^29.6.3",
- "chalk": "^4.0.0",
- "jest-get-type": "^29.6.3",
- "jest-util": "^29.7.0",
- "pretty-format": "^29.7.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-environment-jsdom": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.7.0.tgz",
- "integrity": "sha512-k9iQbsf9OyOfdzWH8HDmrRT0gSIcX+FLNW7IQq94tFX0gynPwqDTW0Ho6iMVNjGz/nb+l/vW3dWM2bbLLpkbXA==",
- "dev": true,
- "requires": {
- "@jest/environment": "^29.7.0",
- "@jest/fake-timers": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/jsdom": "^20.0.0",
- "@types/node": "*",
- "jest-mock": "^29.7.0",
- "jest-util": "^29.7.0",
- "jsdom": "^20.0.0"
- }
- },
- "jest-environment-node": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz",
- "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==",
- "requires": {
- "@jest/environment": "^29.7.0",
- "@jest/fake-timers": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "jest-mock": "^29.7.0",
- "jest-util": "^29.7.0"
- }
- },
- "jest-get-type": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz",
- "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw=="
- },
- "jest-haste-map": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz",
- "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==",
- "requires": {
- "@jest/types": "^29.6.3",
- "@types/graceful-fs": "^4.1.3",
- "@types/node": "*",
- "anymatch": "^3.0.3",
- "fb-watchman": "^2.0.0",
- "fsevents": "^2.3.2",
- "graceful-fs": "^4.2.9",
- "jest-regex-util": "^29.6.3",
- "jest-util": "^29.7.0",
- "jest-worker": "^29.7.0",
- "micromatch": "^4.0.4",
- "walker": "^1.0.8"
- }
- },
- "jest-leak-detector": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz",
- "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==",
- "requires": {
- "jest-get-type": "^29.6.3",
- "pretty-format": "^29.7.0"
- }
- },
- "jest-matcher-utils": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz",
- "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==",
- "requires": {
- "chalk": "^4.0.0",
- "jest-diff": "^29.7.0",
- "jest-get-type": "^29.6.3",
- "pretty-format": "^29.7.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-message-util": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz",
- "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==",
- "requires": {
- "@babel/code-frame": "^7.12.13",
- "@jest/types": "^29.6.3",
- "@types/stack-utils": "^2.0.0",
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.9",
- "micromatch": "^4.0.4",
- "pretty-format": "^29.7.0",
- "slash": "^3.0.0",
- "stack-utils": "^2.0.3"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-mock": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz",
- "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==",
- "requires": {
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "jest-util": "^29.7.0"
- }
- },
- "jest-pnp-resolver": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz",
- "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==",
- "requires": {}
- },
- "jest-regex-util": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz",
- "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg=="
- },
- "jest-resolve": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz",
- "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==",
- "requires": {
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.9",
- "jest-haste-map": "^29.7.0",
- "jest-pnp-resolver": "^1.2.2",
- "jest-util": "^29.7.0",
- "jest-validate": "^29.7.0",
- "resolve": "^1.20.0",
- "resolve.exports": "^2.0.0",
- "slash": "^3.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-resolve-dependencies": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz",
- "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==",
- "requires": {
- "jest-regex-util": "^29.6.3",
- "jest-snapshot": "^29.7.0"
- }
- },
- "jest-runner": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz",
- "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==",
- "requires": {
- "@jest/console": "^29.7.0",
- "@jest/environment": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "emittery": "^0.13.1",
- "graceful-fs": "^4.2.9",
- "jest-docblock": "^29.7.0",
- "jest-environment-node": "^29.7.0",
- "jest-haste-map": "^29.7.0",
- "jest-leak-detector": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-resolve": "^29.7.0",
- "jest-runtime": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-watcher": "^29.7.0",
- "jest-worker": "^29.7.0",
- "p-limit": "^3.1.0",
- "source-map-support": "0.5.13"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "requires": {
- "yocto-queue": "^0.1.0"
- }
- },
- "source-map-support": {
- "version": "0.5.13",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz",
- "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==",
- "requires": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-runtime": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz",
- "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==",
- "requires": {
- "@jest/environment": "^29.7.0",
- "@jest/fake-timers": "^29.7.0",
- "@jest/globals": "^29.7.0",
- "@jest/source-map": "^29.6.3",
- "@jest/test-result": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "cjs-module-lexer": "^1.0.0",
- "collect-v8-coverage": "^1.0.0",
- "glob": "^7.1.3",
- "graceful-fs": "^4.2.9",
- "jest-haste-map": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-mock": "^29.7.0",
- "jest-regex-util": "^29.6.3",
- "jest-resolve": "^29.7.0",
- "jest-snapshot": "^29.7.0",
- "jest-util": "^29.7.0",
- "slash": "^3.0.0",
- "strip-bom": "^4.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-snapshot": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz",
- "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==",
- "requires": {
- "@babel/core": "^7.11.6",
- "@babel/generator": "^7.7.2",
- "@babel/plugin-syntax-jsx": "^7.7.2",
- "@babel/plugin-syntax-typescript": "^7.7.2",
- "@babel/types": "^7.3.3",
- "@jest/expect-utils": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "babel-preset-current-node-syntax": "^1.0.0",
- "chalk": "^4.0.0",
- "expect": "^29.7.0",
- "graceful-fs": "^4.2.9",
- "jest-diff": "^29.7.0",
- "jest-get-type": "^29.6.3",
- "jest-matcher-utils": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-util": "^29.7.0",
- "natural-compare": "^1.4.0",
- "pretty-format": "^29.7.0",
- "semver": "^7.5.3"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-util": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz",
- "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==",
- "requires": {
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "ci-info": "^3.2.0",
- "graceful-fs": "^4.2.9",
- "picomatch": "^2.2.3"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-validate": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz",
- "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==",
- "requires": {
- "@jest/types": "^29.6.3",
- "camelcase": "^6.2.0",
- "chalk": "^4.0.0",
- "jest-get-type": "^29.6.3",
- "leven": "^3.1.0",
- "pretty-format": "^29.7.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA=="
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-watcher": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz",
- "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==",
- "requires": {
- "@jest/test-result": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "ansi-escapes": "^4.2.1",
- "chalk": "^4.0.0",
- "emittery": "^0.13.1",
- "jest-util": "^29.7.0",
- "string-length": "^4.0.1"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "jest-worker": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz",
- "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==",
- "requires": {
- "@types/node": "*",
- "jest-util": "^29.7.0",
- "merge-stream": "^2.0.0",
- "supports-color": "^8.0.0"
- },
- "dependencies": {
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "8.1.1",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
- "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "js-tokens": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
- "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
- },
- "js-yaml": {
- "version": "3.14.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
- "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
- "requires": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- }
- },
- "jsbn": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz",
- "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A=="
- },
- "jsdom": {
- "version": "20.0.3",
- "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz",
- "integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==",
- "dev": true,
- "requires": {
- "abab": "^2.0.6",
- "acorn": "^8.8.1",
- "acorn-globals": "^7.0.0",
- "cssom": "^0.5.0",
- "cssstyle": "^2.3.0",
- "data-urls": "^3.0.2",
- "decimal.js": "^10.4.2",
- "domexception": "^4.0.0",
- "escodegen": "^2.0.0",
- "form-data": "^4.0.0",
- "html-encoding-sniffer": "^3.0.0",
- "http-proxy-agent": "^5.0.0",
- "https-proxy-agent": "^5.0.1",
- "is-potential-custom-element-name": "^1.0.1",
- "nwsapi": "^2.2.2",
- "parse5": "^7.1.1",
- "saxes": "^6.0.0",
- "symbol-tree": "^3.2.4",
- "tough-cookie": "^4.1.2",
- "w3c-xmlserializer": "^4.0.0",
- "webidl-conversions": "^7.0.0",
- "whatwg-encoding": "^2.0.0",
- "whatwg-mimetype": "^3.0.0",
- "whatwg-url": "^11.0.0",
- "ws": "^8.11.0",
- "xml-name-validator": "^4.0.0"
- },
- "dependencies": {
- "@tootallnate/once": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz",
- "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==",
- "dev": true
- },
- "http-proxy-agent": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz",
- "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==",
- "dev": true,
- "requires": {
- "@tootallnate/once": "2",
- "agent-base": "6",
- "debug": "4"
- }
- }
- }
- },
- "jsesc": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
- "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA=="
- },
- "jshint": {
- "version": "2.13.6",
- "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.13.6.tgz",
- "integrity": "sha512-IVdB4G0NTTeQZrBoM8C5JFVLjV2KtZ9APgybDA1MK73xb09qFs0jCXyQLnCOp1cSZZZbvhq/6mfXHUTaDkffuQ==",
- "requires": {
- "cli": "~1.0.0",
- "console-browserify": "1.1.x",
- "exit": "0.1.x",
- "htmlparser2": "3.8.x",
- "lodash": "~4.17.21",
- "minimatch": "~3.0.2",
- "strip-json-comments": "1.0.x"
- },
- "dependencies": {
- "strip-json-comments": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz",
- "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E="
- }
- }
- },
- "json-parse-better-errors": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
- "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw=="
- },
- "json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
- },
- "json-schema-traverse": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
- "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
- },
- "json-stable-stringify-without-jsonify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
- "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE="
- },
- "json-stringify-nice": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz",
- "integrity": "sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw=="
- },
- "json-stringify-safe": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
- "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA=="
- },
- "json5": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
- "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg=="
- },
- "jsonc-parser": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz",
- "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w=="
- },
- "jsonfile": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
- "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
- "requires": {
- "graceful-fs": "^4.1.6",
- "universalify": "^2.0.0"
- }
- },
- "jsonparse": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
- "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg=="
- },
- "JSONStream": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz",
- "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==",
- "requires": {
- "jsonparse": "^1.2.0",
- "through": ">=2.2.7 <3"
- }
- },
- "jsx-ast-utils": {
- "version": "3.3.4",
- "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.4.tgz",
- "integrity": "sha512-fX2TVdCViod6HwKEtSWGHs57oFhVfCMwieb9PuRDgjDPh5XeqJiHFFFJCHxU5cnTc3Bu/GRL+kPiFmw8XWOfKw==",
- "requires": {
- "array-includes": "^3.1.6",
- "array.prototype.flat": "^1.3.1",
- "object.assign": "^4.1.4",
- "object.values": "^1.1.6"
- }
- },
- "just-diff": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/just-diff/-/just-diff-6.0.2.tgz",
- "integrity": "sha512-S59eriX5u3/QhMNq3v/gm8Kd0w8OS6Tz2FS1NG4blv+z0MuQcBRJyFWjdovM0Rad4/P4aUPFtnkNjMjyMlMSYA=="
- },
- "just-diff-apply": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-5.5.0.tgz",
- "integrity": "sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw=="
- },
- "kind-of": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
- "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw=="
- },
- "kleur": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz",
- "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w=="
- },
- "language-subtag-registry": {
- "version": "0.3.22",
- "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz",
- "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w=="
- },
- "language-tags": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz",
- "integrity": "sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==",
- "requires": {
- "language-subtag-registry": "~0.3.2"
- }
- },
- "lcid": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
- "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
- "optional": true,
- "requires": {
- "invert-kv": "^1.0.0"
- }
- },
- "lerna": {
- "version": "8.1.8",
- "resolved": "https://registry.npmjs.org/lerna/-/lerna-8.1.8.tgz",
- "integrity": "sha512-Rmo5ShMx73xM2CUcRixjmpZIXB7ZFlWEul1YvJyx/rH4onAwDHtUGD7Rx4NZYL8QSRiQHroglM2Oyq+WqA4BYg==",
- "requires": {
- "@lerna/create": "8.1.8",
- "@npmcli/arborist": "7.5.4",
- "@npmcli/package-json": "5.2.0",
- "@npmcli/run-script": "8.1.0",
- "@nx/devkit": ">=17.1.2 < 20",
- "@octokit/plugin-enterprise-rest": "6.0.1",
- "@octokit/rest": "19.0.11",
- "aproba": "2.0.0",
- "byte-size": "8.1.1",
- "chalk": "4.1.0",
- "clone-deep": "4.0.1",
- "cmd-shim": "6.0.3",
- "color-support": "1.1.3",
- "columnify": "1.6.0",
- "console-control-strings": "^1.1.0",
- "conventional-changelog-angular": "7.0.0",
- "conventional-changelog-core": "5.0.1",
- "conventional-recommended-bump": "7.0.1",
- "cosmiconfig": "^8.2.0",
- "dedent": "1.5.3",
- "envinfo": "7.13.0",
- "execa": "5.0.0",
- "fs-extra": "^11.2.0",
- "get-port": "5.1.1",
- "get-stream": "6.0.0",
- "git-url-parse": "14.0.0",
- "glob-parent": "6.0.2",
- "globby": "11.1.0",
- "graceful-fs": "4.2.11",
- "has-unicode": "2.0.1",
- "import-local": "3.1.0",
- "ini": "^1.3.8",
- "init-package-json": "6.0.3",
- "inquirer": "^8.2.4",
- "is-ci": "3.0.1",
- "is-stream": "2.0.0",
- "jest-diff": ">=29.4.3 < 30",
- "js-yaml": "4.1.0",
- "libnpmaccess": "8.0.6",
- "libnpmpublish": "9.0.9",
- "load-json-file": "6.2.0",
- "lodash": "^4.17.21",
- "make-dir": "4.0.0",
- "minimatch": "3.0.5",
- "multimatch": "5.0.0",
- "node-fetch": "2.6.7",
- "npm-package-arg": "11.0.2",
- "npm-packlist": "8.0.2",
- "npm-registry-fetch": "^17.1.0",
- "nx": ">=17.1.2 < 20",
- "p-map": "4.0.0",
- "p-map-series": "2.1.0",
- "p-pipe": "3.1.0",
- "p-queue": "6.6.2",
- "p-reduce": "2.1.0",
- "p-waterfall": "2.1.1",
- "pacote": "^18.0.6",
- "pify": "5.0.0",
- "read-cmd-shim": "4.0.0",
- "resolve-from": "5.0.0",
- "rimraf": "^4.4.1",
- "semver": "^7.3.8",
- "set-blocking": "^2.0.0",
- "signal-exit": "3.0.7",
- "slash": "3.0.0",
- "ssri": "^10.0.6",
- "string-width": "^4.2.3",
- "strip-ansi": "^6.0.1",
- "strong-log-transformer": "2.1.0",
- "tar": "6.2.1",
- "temp-dir": "1.0.0",
- "typescript": ">=3 < 6",
- "upath": "2.0.1",
- "uuid": "^10.0.0",
- "validate-npm-package-license": "3.0.4",
- "validate-npm-package-name": "5.0.1",
- "wide-align": "1.1.5",
- "write-file-atomic": "5.0.1",
- "write-pkg": "4.0.0",
- "yargs": "17.7.2",
- "yargs-parser": "21.1.1"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- },
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "chalk": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
- "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "glob": {
- "version": "9.3.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz",
- "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==",
- "requires": {
- "fs.realpath": "^1.0.0",
- "minimatch": "^8.0.2",
- "minipass": "^4.2.4",
- "path-scurry": "^1.6.1"
- },
- "dependencies": {
- "minimatch": {
- "version": "8.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz",
- "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- }
- }
- },
- "glob-parent": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
- "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
- "requires": {
- "is-glob": "^4.0.3"
- }
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "requires": {
- "argparse": "^2.0.1"
- }
- },
- "minipass": {
- "version": "4.2.8",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz",
- "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ=="
- },
- "rimraf": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz",
- "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==",
- "requires": {
- "glob": "^9.2.0"
- }
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- },
- "uuid": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz",
- "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ=="
- },
- "write-file-atomic": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
- "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
- "requires": {
- "imurmurhash": "^0.1.4",
- "signal-exit": "^4.0.1"
- },
- "dependencies": {
- "signal-exit": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
- "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw=="
- }
- }
- }
- }
- },
- "leven": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
- "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A=="
- },
- "levn": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
- "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==",
- "dev": true,
- "requires": {
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2"
- }
- },
- "libnpmaccess": {
- "version": "8.0.6",
- "resolved": "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-8.0.6.tgz",
- "integrity": "sha512-uM8DHDEfYG6G5gVivVl+yQd4pH3uRclHC59lzIbSvy7b5FEwR+mU49Zq1jEyRtRFv7+M99mUW9S0wL/4laT4lw==",
- "requires": {
- "npm-package-arg": "^11.0.2",
- "npm-registry-fetch": "^17.0.1"
- }
- },
- "libnpmpublish": {
- "version": "9.0.9",
- "resolved": "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-9.0.9.tgz",
- "integrity": "sha512-26zzwoBNAvX9AWOPiqqF6FG4HrSCPsHFkQm7nT+xU1ggAujL/eae81RnCv4CJ2In9q9fh10B88sYSzKCUh/Ghg==",
- "requires": {
- "ci-info": "^4.0.0",
- "normalize-package-data": "^6.0.1",
- "npm-package-arg": "^11.0.2",
- "npm-registry-fetch": "^17.0.1",
- "proc-log": "^4.2.0",
- "semver": "^7.3.7",
- "sigstore": "^2.2.0",
- "ssri": "^10.0.6"
- },
- "dependencies": {
- "ci-info": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.0.0.tgz",
- "integrity": "sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg=="
- }
- }
- },
- "lines-and-columns": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.4.tgz",
- "integrity": "sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A=="
- },
- "load-json-file": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz",
- "integrity": "sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ==",
- "requires": {
- "graceful-fs": "^4.1.15",
- "parse-json": "^5.0.0",
- "strip-bom": "^4.0.0",
- "type-fest": "^0.6.0"
- },
- "dependencies": {
- "type-fest": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
- "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg=="
- }
- }
- },
- "locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "requires": {
- "p-locate": "^4.1.0"
- }
- },
- "lockfile": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/lockfile/-/lockfile-1.0.4.tgz",
- "integrity": "sha512-cvbTwETRfsFh4nHsL1eGWapU1XFi5Ot9E85sWAwia7Y7EgB7vfqcZhTKZ+l7hCGxSPoushMv5GKhT5PdLv03WA==",
- "dev": true,
- "requires": {
- "signal-exit": "^3.0.2"
- }
- },
- "lodash": {
- "version": "4.17.21",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
- "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
- },
- "lodash.debounce": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
- "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==",
- "dev": true
- },
- "lodash.ismatch": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz",
- "integrity": "sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g=="
- },
- "lodash.merge": {
- "version": "4.6.2",
- "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
- "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
- },
- "lodash.truncate": {
- "version": "4.4.2",
- "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz",
- "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw=="
- },
- "log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "loose-envify": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
- "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
- "requires": {
- "js-tokens": "^3.0.0 || ^4.0.0"
- }
- },
- "loupe": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.1.0.tgz",
- "integrity": "sha512-qKl+FrLXUhFuHUoDJG7f8P8gEMHq9NFS0c6ghXG1J0rldmZFQZoNVv/vyirE9qwCIhWZDsvEFd1sbFu3GvRQFg==",
- "dev": true,
- "requires": {
- "get-func-name": "^2.0.1"
- }
- },
- "lru-cache": {
- "version": "10.4.3",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz",
- "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="
- },
- "make-dir": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz",
- "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==",
- "requires": {
- "semver": "^7.5.3"
- }
- },
- "make-fetch-happen": {
- "version": "13.0.1",
- "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz",
- "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==",
- "requires": {
- "@npmcli/agent": "^2.0.0",
- "cacache": "^18.0.0",
- "http-cache-semantics": "^4.1.1",
- "is-lambda": "^1.0.1",
- "minipass": "^7.0.2",
- "minipass-fetch": "^3.0.0",
- "minipass-flush": "^1.0.5",
- "minipass-pipeline": "^1.2.4",
- "negotiator": "^0.6.3",
- "proc-log": "^4.2.0",
- "promise-retry": "^2.0.1",
- "ssri": "^10.0.0"
- },
- "dependencies": {
- "minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="
- }
- }
- },
- "makeerror": {
- "version": "1.0.12",
- "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz",
- "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==",
- "requires": {
- "tmpl": "1.0.5"
- }
- },
- "map-obj": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz",
- "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ=="
- },
- "meow": {
- "version": "8.1.2",
- "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz",
- "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==",
- "requires": {
- "@types/minimist": "^1.2.0",
- "camelcase-keys": "^6.2.2",
- "decamelize-keys": "^1.1.0",
- "hard-rejection": "^2.1.0",
- "minimist-options": "4.1.0",
- "normalize-package-data": "^3.0.0",
- "read-pkg-up": "^7.0.1",
- "redent": "^3.0.0",
- "trim-newlines": "^3.0.0",
- "type-fest": "^0.18.0",
- "yargs-parser": "^20.2.3"
- },
- "dependencies": {
- "hosted-git-info": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
- "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==",
- "requires": {
- "lru-cache": "^6.0.0"
- }
- },
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "normalize-package-data": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz",
- "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==",
- "requires": {
- "hosted-git-info": "^4.0.1",
- "is-core-module": "^2.5.0",
- "semver": "^7.3.4",
- "validate-npm-package-license": "^3.0.1"
- }
- },
- "read-pkg": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz",
- "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==",
- "requires": {
- "@types/normalize-package-data": "^2.4.0",
- "normalize-package-data": "^2.5.0",
- "parse-json": "^5.0.0",
- "type-fest": "^0.6.0"
- },
- "dependencies": {
- "hosted-git-info": {
- "version": "2.8.9",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
- "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw=="
- },
- "normalize-package-data": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
- "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
- "requires": {
- "hosted-git-info": "^2.1.4",
- "resolve": "^1.10.0",
- "semver": "2 || 3 || 4 || 5",
- "validate-npm-package-license": "^3.0.1"
- }
- },
- "semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g=="
- },
- "type-fest": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
- "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg=="
- }
- }
- },
- "read-pkg-up": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz",
- "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==",
- "requires": {
- "find-up": "^4.1.0",
- "read-pkg": "^5.2.0",
- "type-fest": "^0.8.1"
- },
- "dependencies": {
- "type-fest": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
- "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA=="
- }
- }
- },
- "type-fest": {
- "version": "0.18.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz",
- "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw=="
- },
- "yargs-parser": {
- "version": "20.2.9",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
- "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w=="
- }
- }
- },
- "merge-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
- "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
- },
- "merge2": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
- "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg=="
- },
- "micromatch": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
- "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
- "requires": {
- "braces": "^3.0.3",
- "picomatch": "^2.3.1"
- }
- },
- "mime-db": {
- "version": "1.49.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz",
- "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA=="
- },
- "mime-types": {
- "version": "2.1.32",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz",
- "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==",
- "requires": {
- "mime-db": "1.49.0"
- }
- },
- "mimic-fn": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
- "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg=="
- },
- "min-indent": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
- "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg=="
- },
- "minimatch": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz",
- "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==",
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "minimist": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
- "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA=="
- },
- "minimist-options": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz",
- "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==",
- "requires": {
- "arrify": "^1.0.1",
- "is-plain-obj": "^1.1.0",
- "kind-of": "^6.0.3"
- }
- },
- "minipass": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
- "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ=="
- },
- "minipass-collect": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz",
- "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==",
- "requires": {
- "minipass": "^7.0.3"
- },
- "dependencies": {
- "minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="
- }
- }
- },
- "minipass-fetch": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz",
- "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==",
- "requires": {
- "encoding": "^0.1.13",
- "minipass": "^7.0.3",
- "minipass-sized": "^1.0.3",
- "minizlib": "^2.1.2"
- },
- "dependencies": {
- "minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="
- }
- }
- },
- "minipass-flush": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz",
- "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==",
- "requires": {
- "minipass": "^3.0.0"
- },
- "dependencies": {
- "minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "requires": {
- "yallist": "^4.0.0"
- }
- }
- }
- },
- "minipass-pipeline": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz",
- "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==",
- "requires": {
- "minipass": "^3.0.0"
- },
- "dependencies": {
- "minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "requires": {
- "yallist": "^4.0.0"
- }
- }
- }
- },
- "minipass-sized": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz",
- "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==",
- "requires": {
- "minipass": "^3.0.0"
- },
- "dependencies": {
- "minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "requires": {
- "yallist": "^4.0.0"
- }
- }
- }
- },
- "minizlib": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
- "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
- "requires": {
- "minipass": "^3.0.0",
- "yallist": "^4.0.0"
- },
- "dependencies": {
- "minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "requires": {
- "yallist": "^4.0.0"
- }
- }
- }
- },
- "mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="
- },
- "modify-values": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz",
- "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw=="
- },
- "mri": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
- "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
- "dev": true
- },
- "ms": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
- },
- "multimatch": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz",
- "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==",
- "requires": {
- "@types/minimatch": "^3.0.3",
- "array-differ": "^3.0.0",
- "array-union": "^2.1.0",
- "arrify": "^2.0.1",
- "minimatch": "^3.0.4"
- },
- "dependencies": {
- "arrify": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz",
- "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug=="
- }
- }
- },
- "mute-stream": {
- "version": "0.0.8",
- "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
- "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA=="
- },
- "nanoid": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
- "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA=="
- },
- "natural-compare": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
- "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc="
- },
- "negotiator": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
- "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg=="
- },
- "neo-async": {
- "version": "2.6.2",
- "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
- "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw=="
- },
- "next": {
- "version": "14.2.13",
- "resolved": "https://registry.npmjs.org/next/-/next-14.2.13.tgz",
- "integrity": "sha512-BseY9YNw8QJSwLYD7hlZzl6QVDoSFHL/URN5K64kVEVpCsSOWeyjbIGK+dZUaRViHTaMQX8aqmnn0PHBbGZezg==",
- "requires": {
- "@next/env": "14.2.13",
- "@next/swc-darwin-arm64": "14.2.13",
- "@next/swc-darwin-x64": "14.2.13",
- "@next/swc-linux-arm64-gnu": "14.2.13",
- "@next/swc-linux-arm64-musl": "14.2.13",
- "@next/swc-linux-x64-gnu": "14.2.13",
- "@next/swc-linux-x64-musl": "14.2.13",
- "@next/swc-win32-arm64-msvc": "14.2.13",
- "@next/swc-win32-ia32-msvc": "14.2.13",
- "@next/swc-win32-x64-msvc": "14.2.13",
- "@swc/helpers": "0.5.5",
- "busboy": "1.6.0",
- "caniuse-lite": "^1.0.30001579",
- "graceful-fs": "^4.2.11",
- "postcss": "8.4.31",
- "styled-jsx": "5.1.1"
- }
- },
- "nifti-js": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/nifti-js/-/nifti-js-1.0.1.tgz",
- "integrity": "sha1-cDmi788bzyASUgrdhIXt2YtRSvo=",
- "requires": {
- "yargs": "^3.29.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
- "optional": true
- },
- "camelcase": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
- "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
- "optional": true
- },
- "cliui": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
- "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
- "optional": true,
- "requires": {
- "string-width": "^1.0.1",
- "strip-ansi": "^3.0.1",
- "wrap-ansi": "^2.0.0"
- }
- },
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
- "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
- "optional": true,
- "requires": {
- "number-is-nan": "^1.0.0"
- }
- },
- "string-width": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
- "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
- "optional": true,
- "requires": {
- "code-point-at": "^1.0.0",
- "is-fullwidth-code-point": "^1.0.0",
- "strip-ansi": "^3.0.0"
- }
- },
- "strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
- "optional": true,
- "requires": {
- "ansi-regex": "^2.0.0"
- }
- },
- "wrap-ansi": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
- "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
- "optional": true,
- "requires": {
- "string-width": "^1.0.1",
- "strip-ansi": "^3.0.1"
- }
- },
- "yargs": {
- "version": "3.32.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz",
- "integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=",
- "optional": true,
- "requires": {
- "camelcase": "^2.0.1",
- "cliui": "^3.0.3",
- "decamelize": "^1.1.1",
- "os-locale": "^1.4.0",
- "string-width": "^1.0.1",
- "window-size": "^0.1.4",
- "y18n": "^3.2.0"
- }
- }
- }
- },
- "node-fetch": {
- "version": "2.6.7",
- "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
- "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
- "requires": {
- "whatwg-url": "^5.0.0"
- },
- "dependencies": {
- "tr46": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
- "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o="
- },
- "webidl-conversions": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
- "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE="
- },
- "whatwg-url": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
- "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=",
- "requires": {
- "tr46": "~0.0.3",
- "webidl-conversions": "^3.0.0"
- }
- }
- }
- },
- "node-gyp": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.2.0.tgz",
- "integrity": "sha512-sp3FonBAaFe4aYTcFdZUn2NYkbP7xroPGYvQmP4Nl5PxamznItBnNCgjrVTKrEfQynInMsJvZrdmqUnysCJ8rw==",
- "requires": {
- "env-paths": "^2.2.0",
- "exponential-backoff": "^3.1.1",
- "glob": "^10.3.10",
- "graceful-fs": "^4.2.6",
- "make-fetch-happen": "^13.0.0",
- "nopt": "^7.0.0",
- "proc-log": "^4.1.0",
- "semver": "^7.3.5",
- "tar": "^6.2.1",
- "which": "^4.0.0"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "glob": {
- "version": "10.4.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
- "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
- "requires": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^3.1.2",
- "minimatch": "^9.0.4",
- "minipass": "^7.1.2",
- "package-json-from-dist": "^1.0.0",
- "path-scurry": "^1.11.1"
- }
- },
- "isexe": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz",
- "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ=="
- },
- "jackspeak": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz",
- "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
- "requires": {
- "@isaacs/cliui": "^8.0.2",
- "@pkgjs/parseargs": "^0.11.0"
- }
- },
- "minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- },
- "minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="
- },
- "which": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz",
- "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==",
- "requires": {
- "isexe": "^3.1.1"
- }
- }
- }
- },
- "node-int64": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
- "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw=="
- },
- "node-machine-id": {
- "version": "1.1.12",
- "resolved": "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.12.tgz",
- "integrity": "sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ=="
- },
- "nopt": {
- "version": "7.2.1",
- "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz",
- "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==",
- "requires": {
- "abbrev": "^2.0.0"
- }
- },
- "normalize-package-data": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz",
- "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==",
- "requires": {
- "hosted-git-info": "^7.0.0",
- "semver": "^7.3.5",
- "validate-npm-package-license": "^3.0.4"
- }
- },
- "normalize-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
- "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA=="
- },
- "npm-bundled": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.1.tgz",
- "integrity": "sha512-+AvaheE/ww1JEwRHOrn4WHNzOxGtVp+adrg2AeZS/7KuxGUYFuBta98wYpfHBbJp6Tg6j1NKSEVHNcfZzJHQwQ==",
- "requires": {
- "npm-normalize-package-bin": "^3.0.0"
- }
- },
- "npm-install-checks": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz",
- "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==",
- "requires": {
- "semver": "^7.1.1"
- }
- },
- "npm-normalize-package-bin": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz",
- "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ=="
- },
- "npm-package-arg": {
- "version": "11.0.2",
- "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.2.tgz",
- "integrity": "sha512-IGN0IAwmhDJwy13Wc8k+4PEbTPhpJnMtfR53ZbOyjkvmEcLS4nCwp6mvMWjS5sUjeiW3mpx6cHmuhKEu9XmcQw==",
- "requires": {
- "hosted-git-info": "^7.0.0",
- "proc-log": "^4.0.0",
- "semver": "^7.3.5",
- "validate-npm-package-name": "^5.0.0"
- }
- },
- "npm-packlist": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz",
- "integrity": "sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==",
- "requires": {
- "ignore-walk": "^6.0.4"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "ignore-walk": {
- "version": "6.0.5",
- "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.5.tgz",
- "integrity": "sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A==",
- "requires": {
- "minimatch": "^9.0.0"
- }
- },
- "minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- }
- }
- },
- "npm-pick-manifest": {
- "version": "9.1.0",
- "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz",
- "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==",
- "requires": {
- "npm-install-checks": "^6.0.0",
- "npm-normalize-package-bin": "^3.0.0",
- "npm-package-arg": "^11.0.0",
- "semver": "^7.3.5"
- }
- },
- "npm-registry-fetch": {
- "version": "17.1.0",
- "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.1.0.tgz",
- "integrity": "sha512-5+bKQRH0J1xG1uZ1zMNvxW0VEyoNWgJpY9UDuluPFLKDfJ9u2JmmjmTJV1srBGQOROfdBMiVvnH2Zvpbm+xkVA==",
- "requires": {
- "@npmcli/redact": "^2.0.0",
- "jsonparse": "^1.3.1",
- "make-fetch-happen": "^13.0.0",
- "minipass": "^7.0.2",
- "minipass-fetch": "^3.0.0",
- "minizlib": "^2.1.2",
- "npm-package-arg": "^11.0.0",
- "proc-log": "^4.0.0"
- },
- "dependencies": {
- "minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="
- }
- }
- },
- "npm-run-path": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
- "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
- "requires": {
- "path-key": "^3.0.0"
- }
- },
- "number-is-nan": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
- "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
- "optional": true
- },
- "nwsapi": {
- "version": "2.2.5",
- "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.5.tgz",
- "integrity": "sha512-6xpotnECFy/og7tKSBVmUNft7J3jyXAka4XvG6AUhFWRz+Q/Ljus7znJAA3bxColfQLdS+XsjoodtJfCgeTEFQ==",
- "dev": true
- },
- "nx": {
- "version": "19.6.2",
- "resolved": "https://registry.npmjs.org/nx/-/nx-19.6.2.tgz",
- "integrity": "sha512-uUC9glC/QDsDhfOSzWl1id9rfUVepVwLhwBGRMeO5K6+Tju7qAsRGZ2NGPoUz6J1AZuWtlKZcr+MOSK2U4+2wQ==",
- "requires": {
- "@napi-rs/wasm-runtime": "0.2.4",
- "@nrwl/tao": "19.6.2",
- "@nx/nx-darwin-arm64": "19.6.2",
- "@nx/nx-darwin-x64": "19.6.2",
- "@nx/nx-freebsd-x64": "19.6.2",
- "@nx/nx-linux-arm-gnueabihf": "19.6.2",
- "@nx/nx-linux-arm64-gnu": "19.6.2",
- "@nx/nx-linux-arm64-musl": "19.6.2",
- "@nx/nx-linux-x64-gnu": "19.6.2",
- "@nx/nx-linux-x64-musl": "19.6.2",
- "@nx/nx-win32-arm64-msvc": "19.6.2",
- "@nx/nx-win32-x64-msvc": "19.6.2",
- "@yarnpkg/lockfile": "^1.1.0",
- "@yarnpkg/parsers": "3.0.0-rc.46",
- "@zkochan/js-yaml": "0.0.7",
- "axios": "^1.7.4",
- "chalk": "^4.1.0",
- "cli-cursor": "3.1.0",
- "cli-spinners": "2.6.1",
- "cliui": "^8.0.1",
- "dotenv": "~16.4.5",
- "dotenv-expand": "~11.0.6",
- "enquirer": "~2.3.6",
- "figures": "3.2.0",
- "flat": "^5.0.2",
- "front-matter": "^4.0.2",
- "fs-extra": "^11.1.0",
- "ignore": "^5.0.4",
- "jest-diff": "^29.4.1",
- "jsonc-parser": "3.2.0",
- "lines-and-columns": "~2.0.3",
- "minimatch": "9.0.3",
- "node-machine-id": "1.1.12",
- "npm-run-path": "^4.0.1",
- "open": "^8.4.0",
- "ora": "5.3.0",
- "semver": "^7.5.3",
- "string-width": "^4.2.3",
- "strong-log-transformer": "^2.1.0",
- "tar-stream": "~2.2.0",
- "tmp": "~0.2.1",
- "tsconfig-paths": "^4.1.2",
- "tslib": "^2.3.0",
- "yargs": "^17.6.2",
- "yargs-parser": "21.1.1"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "minimatch": {
- "version": "9.0.3",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz",
- "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- },
- "ora": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz",
- "integrity": "sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==",
- "requires": {
- "bl": "^4.0.3",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-spinners": "^2.5.0",
- "is-interactive": "^1.0.0",
- "log-symbols": "^4.0.0",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1"
- }
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "object-assign": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
- "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
- },
- "object-inspect": {
- "version": "1.13.1",
- "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz",
- "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ=="
- },
- "object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA=="
- },
- "object.assign": {
- "version": "4.1.4",
- "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz",
- "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.4",
- "has-symbols": "^1.0.3",
- "object-keys": "^1.1.1"
- }
- },
- "object.entries": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz",
- "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.4",
- "es-abstract": "^1.20.4"
- }
- },
- "object.fromentries": {
- "version": "2.0.7",
- "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz",
- "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1"
- }
- },
- "object.groupby": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz",
- "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "get-intrinsic": "^1.2.1"
- }
- },
- "object.hasown": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.3.tgz",
- "integrity": "sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==",
- "requires": {
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1"
- }
- },
- "object.values": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz",
- "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1"
- }
- },
- "once": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
- "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
- "requires": {
- "wrappy": "1"
- }
- },
- "onetime": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
- "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
- "requires": {
- "mimic-fn": "^2.1.0"
- }
- },
- "open": {
- "version": "8.4.2",
- "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz",
- "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==",
- "requires": {
- "define-lazy-prop": "^2.0.0",
- "is-docker": "^2.1.1",
- "is-wsl": "^2.2.0"
- }
- },
- "optionator": {
- "version": "0.8.3",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
- "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
- "dev": true,
- "requires": {
- "deep-is": "~0.1.3",
- "fast-levenshtein": "~2.0.6",
- "levn": "~0.3.0",
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2",
- "word-wrap": "~1.2.3"
- }
- },
- "ora": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
- "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
- "requires": {
- "bl": "^4.1.0",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-spinners": "^2.5.0",
- "is-interactive": "^1.0.0",
- "is-unicode-supported": "^0.1.0",
- "log-symbols": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "os-locale": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
- "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
- "optional": true,
- "requires": {
- "lcid": "^1.0.0"
- }
- },
- "os-tmpdir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
- "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g=="
- },
- "p-finally": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
- "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow=="
- },
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "requires": {
- "p-try": "^2.0.0"
- }
- },
- "p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "requires": {
- "p-limit": "^2.2.0"
- }
- },
- "p-map": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz",
- "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==",
- "requires": {
- "aggregate-error": "^3.0.0"
- }
- },
- "p-map-series": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/p-map-series/-/p-map-series-2.1.0.tgz",
- "integrity": "sha512-RpYIIK1zXSNEOdwxcfe7FdvGcs7+y5n8rifMhMNWvaxRNMPINJHF5GDeuVxWqnfrcHPSCnp7Oo5yNXHId9Av2Q=="
- },
- "p-pipe": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-pipe/-/p-pipe-3.1.0.tgz",
- "integrity": "sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw=="
- },
- "p-queue": {
- "version": "6.6.2",
- "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz",
- "integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==",
- "requires": {
- "eventemitter3": "^4.0.4",
- "p-timeout": "^3.2.0"
- }
- },
- "p-reduce": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-2.1.0.tgz",
- "integrity": "sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw=="
- },
- "p-timeout": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz",
- "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==",
- "requires": {
- "p-finally": "^1.0.0"
- }
- },
- "p-try": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
- "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
- },
- "p-waterfall": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/p-waterfall/-/p-waterfall-2.1.1.tgz",
- "integrity": "sha512-RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw==",
- "requires": {
- "p-reduce": "^2.0.0"
- }
- },
- "package-json-from-dist": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz",
- "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw=="
- },
- "pacote": {
- "version": "18.0.6",
- "resolved": "https://registry.npmjs.org/pacote/-/pacote-18.0.6.tgz",
- "integrity": "sha512-+eK3G27SMwsB8kLIuj4h1FUhHtwiEUo21Tw8wNjmvdlpOEr613edv+8FUsTj/4F/VN5ywGE19X18N7CC2EJk6A==",
- "requires": {
- "@npmcli/git": "^5.0.0",
- "@npmcli/installed-package-contents": "^2.0.1",
- "@npmcli/package-json": "^5.1.0",
- "@npmcli/promise-spawn": "^7.0.0",
- "@npmcli/run-script": "^8.0.0",
- "cacache": "^18.0.0",
- "fs-minipass": "^3.0.0",
- "minipass": "^7.0.2",
- "npm-package-arg": "^11.0.0",
- "npm-packlist": "^8.0.0",
- "npm-pick-manifest": "^9.0.0",
- "npm-registry-fetch": "^17.0.0",
- "proc-log": "^4.0.0",
- "promise-retry": "^2.0.1",
- "sigstore": "^2.2.0",
- "ssri": "^10.0.0",
- "tar": "^6.1.11"
- },
- "dependencies": {
- "minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="
- }
- }
- },
- "pako": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
- "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw=="
- },
- "parent-module": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
- "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
- "requires": {
- "callsites": "^3.0.0"
- }
- },
- "parse-cache-control": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz",
- "integrity": "sha1-juqz5U+laSD+Fro493+iGqzC104=",
- "dev": true
- },
- "parse-conflict-json": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-3.0.1.tgz",
- "integrity": "sha512-01TvEktc68vwbJOtWZluyWeVGWjP+bZwXtPDMQVbBKzbJ/vZBif0L69KH1+cHv1SZ6e0FKLvjyHe8mqsIqYOmw==",
- "requires": {
- "json-parse-even-better-errors": "^3.0.0",
- "just-diff": "^6.0.0",
- "just-diff-apply": "^5.2.0"
- },
- "dependencies": {
- "json-parse-even-better-errors": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz",
- "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ=="
- }
- }
- },
- "parse-json": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
- "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
- "requires": {
- "@babel/code-frame": "^7.0.0",
- "error-ex": "^1.3.1",
- "json-parse-even-better-errors": "^2.3.0",
- "lines-and-columns": "^1.1.6"
- },
- "dependencies": {
- "lines-and-columns": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
- "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
- }
- }
- },
- "parse-path": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.0.tgz",
- "integrity": "sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==",
- "requires": {
- "protocols": "^2.0.0"
- }
- },
- "parse-url": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz",
- "integrity": "sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==",
- "requires": {
- "parse-path": "^7.0.0"
- }
- },
- "parse5": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz",
- "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==",
- "dev": true,
- "requires": {
- "entities": "^4.4.0"
- },
- "dependencies": {
- "entities": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
- "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
- "dev": true
- }
- }
- },
- "path": {
- "version": "0.12.7",
- "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz",
- "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=",
- "requires": {
- "process": "^0.11.1",
- "util": "^0.10.3"
- },
- "dependencies": {
- "inherits": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
- "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
- },
- "util": {
- "version": "0.10.4",
- "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz",
- "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==",
- "requires": {
- "inherits": "2.0.3"
- }
- }
- }
- },
- "path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
- },
- "path-is-absolute": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
- },
- "path-key": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
- "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="
- },
- "path-parse": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
- "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
- },
- "path-scurry": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz",
- "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==",
- "requires": {
- "lru-cache": "^10.2.0",
- "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
- }
- },
- "path-type": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
- "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw=="
- },
- "pathval": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.0.tgz",
- "integrity": "sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==",
- "dev": true
- },
- "picocolors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
- "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
- },
- "picomatch": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
- "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA=="
- },
- "pify": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz",
- "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA=="
- },
- "pirates": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz",
- "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg=="
- },
- "pkg-dir": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
- "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
- "requires": {
- "find-up": "^4.0.0"
- }
- },
- "pluralize": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz",
- "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA=="
- },
- "postcss": {
- "version": "8.4.31",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz",
- "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==",
- "requires": {
- "nanoid": "^3.3.6",
- "picocolors": "^1.0.0",
- "source-map-js": "^1.0.2"
- }
- },
- "postcss-selector-parser": {
- "version": "6.1.2",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz",
- "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==",
- "requires": {
- "cssesc": "^3.0.0",
- "util-deprecate": "^1.0.2"
- }
- },
- "prelude-ls": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
- "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==",
- "dev": true
- },
- "prettier": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz",
- "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==",
- "dev": true
- },
- "prettier-linter-helpers": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz",
- "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==",
- "dev": true,
- "requires": {
- "fast-diff": "^1.1.2"
- }
- },
- "pretty-format": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz",
- "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==",
- "requires": {
- "@jest/schemas": "^29.6.3",
- "ansi-styles": "^5.0.0",
- "react-is": "^18.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
- "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA=="
- },
- "react-is": {
- "version": "18.2.0",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz",
- "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w=="
- }
- }
- },
- "pretty-quick": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-4.0.0.tgz",
- "integrity": "sha512-M+2MmeufXb/M7Xw3Afh1gxcYpj+sK0AxEfnfF958ktFeAyi5MsKY5brymVURQLgPLV1QaF5P4pb2oFJ54H3yzQ==",
- "dev": true,
- "requires": {
- "execa": "^5.1.1",
- "find-up": "^5.0.0",
- "ignore": "^5.3.0",
- "mri": "^1.2.0",
- "picocolors": "^1.0.0",
- "picomatch": "^3.0.1",
- "tslib": "^2.6.2"
- },
- "dependencies": {
- "execa": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz",
- "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==",
- "dev": true,
- "requires": {
- "cross-spawn": "^7.0.3",
- "get-stream": "^6.0.0",
- "human-signals": "^2.1.0",
- "is-stream": "^2.0.0",
- "merge-stream": "^2.0.0",
- "npm-run-path": "^4.0.1",
- "onetime": "^5.1.2",
- "signal-exit": "^3.0.3",
- "strip-final-newline": "^2.0.0"
- }
- },
- "find-up": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
- "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
- "dev": true,
- "requires": {
- "locate-path": "^6.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "locate-path": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
- "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
- "dev": true,
- "requires": {
- "p-locate": "^5.0.0"
- }
- },
- "p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "dev": true,
- "requires": {
- "yocto-queue": "^0.1.0"
- }
- },
- "p-locate": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
- "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
- "dev": true,
- "requires": {
- "p-limit": "^3.0.2"
- }
- },
- "picomatch": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz",
- "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==",
- "dev": true
- }
- }
- },
- "proc-log": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz",
- "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA=="
- },
- "process": {
- "version": "0.11.10",
- "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
- "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI="
- },
- "process-nextick-args": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
- "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
- },
- "proggy": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/proggy/-/proggy-2.0.0.tgz",
- "integrity": "sha512-69agxLtnI8xBs9gUGqEnK26UfiexpHy+KUpBQWabiytQjnn5wFY8rklAi7GRfABIuPNnQ/ik48+LGLkYYJcy4A=="
- },
- "promise": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz",
- "integrity": "sha512-W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q==",
- "dev": true,
- "requires": {
- "asap": "~2.0.6"
- }
- },
- "promise-all-reject-late": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz",
- "integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw=="
- },
- "promise-call-limit": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/promise-call-limit/-/promise-call-limit-3.0.1.tgz",
- "integrity": "sha512-utl+0x8gIDasV5X+PI5qWEPqH6fJS0pFtQ/4gZ95xfEFb/89dmh+/b895TbFDBLiafBvxD/PGTKfvxl4kH/pQg=="
- },
- "promise-inflight": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz",
- "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g=="
- },
- "promise-retry": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz",
- "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==",
- "requires": {
- "err-code": "^2.0.2",
- "retry": "^0.12.0"
- }
- },
- "prompts": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz",
- "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==",
- "requires": {
- "kleur": "^3.0.3",
- "sisteransi": "^1.0.5"
- }
- },
- "promzard": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/promzard/-/promzard-1.0.2.tgz",
- "integrity": "sha512-2FPputGL+mP3jJ3UZg/Dl9YOkovB7DX0oOr+ck5QbZ5MtORtds8k/BZdn+02peDLI8/YWbmzx34k5fA+fHvCVQ==",
- "requires": {
- "read": "^3.0.1"
- }
- },
- "prop-types": {
- "version": "15.8.1",
- "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
- "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
- "requires": {
- "loose-envify": "^1.4.0",
- "object-assign": "^4.1.1",
- "react-is": "^16.13.1"
- }
- },
- "prop-types-extra": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/prop-types-extra/-/prop-types-extra-1.1.1.tgz",
- "integrity": "sha512-59+AHNnHYCdiC+vMwY52WmvP5dM3QLeoumYuEyceQDi9aEhtwN9zIQ2ZNo25sMyXnbh32h+P1ezDsUpUH3JAew==",
- "requires": {
- "react-is": "^16.3.2",
- "warning": "^4.0.0"
- }
- },
- "protocols": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.1.tgz",
- "integrity": "sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q=="
- },
- "proxy-from-env": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
- "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
- },
- "psl": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz",
- "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==",
- "dev": true
- },
- "punycode": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
- "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
- },
- "pure-rand": {
- "version": "6.0.4",
- "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.4.tgz",
- "integrity": "sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA=="
- },
- "qs": {
- "version": "6.11.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
- "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
- "dev": true,
- "requires": {
- "side-channel": "^1.0.4"
- }
- },
- "querystringify": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz",
- "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==",
- "dev": true
- },
- "queue-microtask": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
- "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A=="
- },
- "quick-lru": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz",
- "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g=="
- },
- "react": {
- "version": "18.3.1",
- "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz",
- "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==",
- "requires": {
- "loose-envify": "^1.1.0"
- }
- },
- "react-bootstrap": {
- "version": "2.10.5",
- "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-2.10.5.tgz",
- "integrity": "sha512-XueAOEn64RRkZ0s6yzUTdpFtdUXs5L5491QU//8ZcODKJNDLt/r01tNyriZccjgRImH1REynUc9pqjiRMpDLWQ==",
- "requires": {
- "@babel/runtime": "^7.24.7",
- "@restart/hooks": "^0.4.9",
- "@restart/ui": "^1.6.9",
- "@types/react-transition-group": "^4.4.6",
- "classnames": "^2.3.2",
- "dom-helpers": "^5.2.1",
- "invariant": "^2.2.4",
- "prop-types": "^15.8.1",
- "prop-types-extra": "^1.1.0",
- "react-transition-group": "^4.4.5",
- "uncontrollable": "^7.2.1",
- "warning": "^4.0.3"
- }
- },
- "react-dom": {
- "version": "18.3.1",
- "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz",
- "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==",
- "requires": {
- "loose-envify": "^1.1.0",
- "scheduler": "^0.23.2"
- }
- },
- "react-is": {
- "version": "16.13.1",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
- "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
- },
- "react-lifecycles-compat": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz",
- "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA=="
- },
- "react-transition-group": {
- "version": "4.4.5",
- "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz",
- "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==",
- "requires": {
- "@babel/runtime": "^7.5.5",
- "dom-helpers": "^5.0.1",
- "loose-envify": "^1.4.0",
- "prop-types": "^15.6.2"
- }
- },
- "read": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/read/-/read-3.0.1.tgz",
- "integrity": "sha512-SLBrDU/Srs/9EoWhU5GdbAoxG1GzpQHo/6qiGItaoLJ1thmYpcNIM1qISEUvyHBzfGlWIyd6p2DNi1oV1VmAuw==",
- "requires": {
- "mute-stream": "^1.0.0"
- },
- "dependencies": {
- "mute-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz",
- "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA=="
- }
- }
- },
- "read-cmd-shim": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-4.0.0.tgz",
- "integrity": "sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q=="
- },
- "read-package-json-fast": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz",
- "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==",
- "requires": {
- "json-parse-even-better-errors": "^3.0.0",
- "npm-normalize-package-bin": "^3.0.0"
- },
- "dependencies": {
- "json-parse-even-better-errors": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz",
- "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ=="
- }
- }
- },
- "read-pkg": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
- "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==",
- "requires": {
- "load-json-file": "^4.0.0",
- "normalize-package-data": "^2.3.2",
- "path-type": "^3.0.0"
- },
- "dependencies": {
- "hosted-git-info": {
- "version": "2.8.9",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
- "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw=="
- },
- "load-json-file": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz",
- "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==",
- "requires": {
- "graceful-fs": "^4.1.2",
- "parse-json": "^4.0.0",
- "pify": "^3.0.0",
- "strip-bom": "^3.0.0"
- }
- },
- "normalize-package-data": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
- "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
- "requires": {
- "hosted-git-info": "^2.1.4",
- "resolve": "^1.10.0",
- "semver": "2 || 3 || 4 || 5",
- "validate-npm-package-license": "^3.0.1"
- }
- },
- "parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==",
- "requires": {
- "error-ex": "^1.3.1",
- "json-parse-better-errors": "^1.0.1"
- }
- },
- "path-type": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
- "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
- "requires": {
- "pify": "^3.0.0"
- }
- },
- "pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg=="
- },
- "semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g=="
- },
- "strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA=="
- }
- }
- },
- "read-pkg-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz",
- "integrity": "sha512-YFzFrVvpC6frF1sz8psoHDBGF7fLPc+llq/8NB43oagqWkx8ar5zYtsTORtOjw9W2RHLpWP+zTWwBvf1bCmcSw==",
- "requires": {
- "find-up": "^2.0.0",
- "read-pkg": "^3.0.0"
- },
- "dependencies": {
- "find-up": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
- "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==",
- "requires": {
- "locate-path": "^2.0.0"
- }
- },
- "locate-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
- "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==",
- "requires": {
- "p-locate": "^2.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "p-limit": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
- "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
- "requires": {
- "p-try": "^1.0.0"
- }
- },
- "p-locate": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
- "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==",
- "requires": {
- "p-limit": "^1.1.0"
- }
- },
- "p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww=="
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ=="
- }
- }
- },
- "readable-stream": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
- "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
- "requires": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- }
- },
- "readdirp": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz",
- "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA=="
- },
- "redent": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz",
- "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==",
- "requires": {
- "indent-string": "^4.0.0",
- "strip-indent": "^3.0.0"
- }
- },
- "reflect.getprototypeof": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz",
- "integrity": "sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "get-intrinsic": "^1.2.1",
- "globalthis": "^1.0.3",
- "which-builtin-type": "^1.1.3"
- }
- },
- "regenerate": {
- "version": "1.4.2",
- "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
- "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==",
- "dev": true
- },
- "regenerate-unicode-properties": {
- "version": "10.1.0",
- "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz",
- "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==",
- "dev": true,
- "requires": {
- "regenerate": "^1.4.2"
- }
- },
- "regenerator-runtime": {
- "version": "0.14.0",
- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz",
- "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA=="
- },
- "regenerator-transform": {
- "version": "0.15.2",
- "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz",
- "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.8.4"
- }
- },
- "regexp.prototype.flags": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz",
- "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "set-function-name": "^2.0.0"
- }
- },
- "regexpu-core": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz",
- "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==",
- "dev": true,
- "requires": {
- "@babel/regjsgen": "^0.8.0",
- "regenerate": "^1.4.2",
- "regenerate-unicode-properties": "^10.1.0",
- "regjsparser": "^0.9.1",
- "unicode-match-property-ecmascript": "^2.0.0",
- "unicode-match-property-value-ecmascript": "^2.1.0"
- }
- },
- "regjsparser": {
- "version": "0.9.1",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz",
- "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==",
- "dev": true,
- "requires": {
- "jsesc": "~0.5.0"
- },
- "dependencies": {
- "jsesc": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
- "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==",
- "dev": true
- }
- }
- },
- "require-directory": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
- "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I="
- },
- "require-from-string": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
- "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw=="
- },
- "requires-port": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
- "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==",
- "dev": true
- },
- "resolve": {
- "version": "1.20.0",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz",
- "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==",
- "requires": {
- "is-core-module": "^2.2.0",
- "path-parse": "^1.0.6"
- }
- },
- "resolve-cwd": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
- "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
- "requires": {
- "resolve-from": "^5.0.0"
- }
- },
- "resolve-from": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
- "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw=="
- },
- "resolve-pkg-maps": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
- "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw=="
- },
- "resolve.exports": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz",
- "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg=="
- },
- "restore-cursor": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
- "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
- "requires": {
- "onetime": "^5.1.0",
- "signal-exit": "^3.0.2"
- }
- },
- "retry": {
- "version": "0.12.0",
- "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz",
- "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow=="
- },
- "reusify": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
- "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw=="
- },
- "rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "requires": {
- "glob": "^7.1.3"
- }
- },
- "run-async": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
- "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ=="
- },
- "run-parallel": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
- "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
- "requires": {
- "queue-microtask": "^1.2.2"
- }
- },
- "rxjs": {
- "version": "7.8.1",
- "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz",
- "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==",
- "requires": {
- "tslib": "^2.1.0"
- }
- },
- "safe-array-concat": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz",
- "integrity": "sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==",
- "requires": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.2.1",
- "has-symbols": "^1.0.3",
- "isarray": "^2.0.5"
- },
- "dependencies": {
- "isarray": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
- "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw=="
- }
- }
- },
- "safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
- },
- "safe-regex-test": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz",
- "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==",
- "requires": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.1.3",
- "is-regex": "^1.1.4"
- }
- },
- "safer-buffer": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
- },
- "sass": {
- "version": "1.79.4",
- "resolved": "https://registry.npmjs.org/sass/-/sass-1.79.4.tgz",
- "integrity": "sha512-K0QDSNPXgyqO4GZq2HO5Q70TLxTH6cIT59RdoCHMivrC8rqzaTw5ab9prjz9KUN1El4FLXrBXJhik61JR4HcGg==",
- "requires": {
- "chokidar": "^4.0.0",
- "immutable": "^4.0.0",
- "source-map-js": ">=0.6.2 <2.0.0"
- }
- },
- "sax": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
- "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw=="
- },
- "saxes": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz",
- "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==",
- "dev": true,
- "requires": {
- "xmlchars": "^2.2.0"
- }
- },
- "scheduler": {
- "version": "0.23.2",
- "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz",
- "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==",
- "requires": {
- "loose-envify": "^1.1.0"
- }
- },
- "semver": {
- "version": "7.6.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
- "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A=="
- },
- "set-blocking": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
- "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
- },
- "set-function-length": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz",
- "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==",
- "requires": {
- "define-data-property": "^1.1.1",
- "get-intrinsic": "^1.2.1",
- "gopd": "^1.0.1",
- "has-property-descriptors": "^1.0.0"
- }
- },
- "set-function-name": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz",
- "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==",
- "requires": {
- "define-data-property": "^1.0.1",
- "functions-have-names": "^1.2.3",
- "has-property-descriptors": "^1.0.0"
- }
- },
- "shallow-clone": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
- "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
- "requires": {
- "kind-of": "^6.0.2"
- }
- },
- "shebang-command": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
- "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
- "requires": {
- "shebang-regex": "^3.0.0"
- }
- },
- "shebang-regex": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
- "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="
- },
- "side-channel": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
- "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
- "requires": {
- "call-bind": "^1.0.0",
- "get-intrinsic": "^1.0.2",
- "object-inspect": "^1.9.0"
- }
- },
- "signal-exit": {
- "version": "3.0.7",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
- "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
- },
- "sigstore": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.3.1.tgz",
- "integrity": "sha512-8G+/XDU8wNsJOQS5ysDVO0Etg9/2uA5gR9l4ZwijjlwxBcrU6RPfwi2+jJmbP+Ap1Hlp/nVAaEO4Fj22/SL2gQ==",
- "requires": {
- "@sigstore/bundle": "^2.3.2",
- "@sigstore/core": "^1.0.0",
- "@sigstore/protobuf-specs": "^0.3.2",
- "@sigstore/sign": "^2.3.2",
- "@sigstore/tuf": "^2.3.4",
- "@sigstore/verify": "^1.2.1"
- }
- },
- "sisteransi": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
- "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg=="
- },
- "slash": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
- "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q=="
- },
- "slice-ansi": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
- "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==",
- "requires": {
- "ansi-styles": "^4.0.0",
- "astral-regex": "^2.0.0",
- "is-fullwidth-code-point": "^3.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- }
- }
- },
- "smart-buffer": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
- "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg=="
- },
- "socks": {
- "version": "2.8.3",
- "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz",
- "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==",
- "requires": {
- "ip-address": "^9.0.5",
- "smart-buffer": "^4.2.0"
- }
- },
- "socks-proxy-agent": {
- "version": "8.0.4",
- "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz",
- "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==",
- "requires": {
- "agent-base": "^7.1.1",
- "debug": "^4.3.4",
- "socks": "^2.8.3"
- },
- "dependencies": {
- "agent-base": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz",
- "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==",
- "requires": {
- "debug": "^4.3.4"
- }
- }
- }
- },
- "sort-keys": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz",
- "integrity": "sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg==",
- "requires": {
- "is-plain-obj": "^1.0.0"
- }
- },
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
- },
- "source-map-js": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
- "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="
- },
- "source-map-support": {
- "version": "0.5.21",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
- "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
- "dev": true,
- "requires": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
- },
- "spdx-correct": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz",
- "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==",
- "requires": {
- "spdx-expression-parse": "^3.0.0",
- "spdx-license-ids": "^3.0.0"
- }
- },
- "spdx-exceptions": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz",
- "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w=="
- },
- "spdx-expression-parse": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
- "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
- "requires": {
- "spdx-exceptions": "^2.1.0",
- "spdx-license-ids": "^3.0.0"
- }
- },
- "spdx-license-ids": {
- "version": "3.0.20",
- "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz",
- "integrity": "sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw=="
- },
- "split": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz",
- "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==",
- "requires": {
- "through": "2"
- }
- },
- "split2": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz",
- "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==",
- "requires": {
- "readable-stream": "^3.0.0"
- }
- },
- "sprintf-js": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
- "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw="
- },
- "ssri": {
- "version": "10.0.6",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz",
- "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==",
- "requires": {
- "minipass": "^7.0.3"
- },
- "dependencies": {
- "minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="
- }
- }
- },
- "stack-utils": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz",
- "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==",
- "requires": {
- "escape-string-regexp": "^2.0.0"
- },
- "dependencies": {
- "escape-string-regexp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
- "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w=="
- }
- }
- },
- "stream-browserify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz",
- "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==",
- "requires": {
- "inherits": "~2.0.4",
- "readable-stream": "^3.5.0"
- }
- },
- "stream-events": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/stream-events/-/stream-events-1.0.5.tgz",
- "integrity": "sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==",
- "dev": true,
- "requires": {
- "stubs": "^3.0.0"
- }
- },
- "streamsearch": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
- "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg=="
- },
- "string_decoder": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
- "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
- "requires": {
- "safe-buffer": "~5.2.0"
- },
- "dependencies": {
- "safe-buffer": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
- "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
- }
- }
- },
- "string-length": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz",
- "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==",
- "requires": {
- "char-regex": "^1.0.2",
- "strip-ansi": "^6.0.0"
- }
- },
- "string-width": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "requires": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- },
- "dependencies": {
- "emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
- }
- }
- },
- "string-width-cjs": {
- "version": "npm:string-width@4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "requires": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- },
- "dependencies": {
- "emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
- }
- }
- },
- "string.prototype.matchall": {
- "version": "4.0.10",
- "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz",
- "integrity": "sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "get-intrinsic": "^1.2.1",
- "has-symbols": "^1.0.3",
- "internal-slot": "^1.0.5",
- "regexp.prototype.flags": "^1.5.0",
- "set-function-name": "^2.0.0",
- "side-channel": "^1.0.4"
- }
- },
- "string.prototype.trim": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz",
- "integrity": "sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1"
- }
- },
- "string.prototype.trimend": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz",
- "integrity": "sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1"
- }
- },
- "string.prototype.trimstart": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz",
- "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1"
- }
- },
- "strip-ansi": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
- "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
- "requires": {
- "ansi-regex": "^5.0.1"
- }
- },
- "strip-ansi-cjs": {
- "version": "npm:strip-ansi@6.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
- "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
- "requires": {
- "ansi-regex": "^5.0.1"
- }
- },
- "strip-bom": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
- "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w=="
- },
- "strip-final-newline": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
- "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA=="
- },
- "strip-indent": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz",
- "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==",
- "requires": {
- "min-indent": "^1.0.0"
- }
- },
- "strip-json-comments": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
- "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig=="
- },
- "strnum": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz",
- "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA=="
- },
- "strong-log-transformer": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz",
- "integrity": "sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA==",
- "requires": {
- "duplexer": "^0.1.1",
- "minimist": "^1.2.0",
- "through": "^2.3.4"
- }
- },
- "stubs": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/stubs/-/stubs-3.0.0.tgz",
- "integrity": "sha1-6NK6H6nJBXAwPAMLaQD31fiavls=",
- "dev": true
- },
- "styled-jsx": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz",
- "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==",
- "requires": {
- "client-only": "0.0.1"
- }
- },
- "supports-color": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
- "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
- "requires": {
- "has-flag": "^3.0.0"
- }
- },
- "supports-preserve-symlinks-flag": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
- "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
- },
- "symbol-tree": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz",
- "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
- "dev": true
- },
- "sync-request": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/sync-request/-/sync-request-6.1.0.tgz",
- "integrity": "sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw==",
- "dev": true,
- "requires": {
- "http-response-object": "^3.0.1",
- "sync-rpc": "^1.2.1",
- "then-request": "^6.0.0"
- }
- },
- "sync-rpc": {
- "version": "1.3.6",
- "resolved": "https://registry.npmjs.org/sync-rpc/-/sync-rpc-1.3.6.tgz",
- "integrity": "sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw==",
- "dev": true,
- "requires": {
- "get-port": "^3.1.0"
- },
- "dependencies": {
- "get-port": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz",
- "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=",
- "dev": true
- }
- }
- },
- "synckit": {
- "version": "0.8.8",
- "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz",
- "integrity": "sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==",
- "requires": {
- "@pkgr/core": "^0.1.0",
- "tslib": "^2.6.2"
- }
- },
- "table": {
- "version": "6.8.2",
- "resolved": "https://registry.npmjs.org/table/-/table-6.8.2.tgz",
- "integrity": "sha512-w2sfv80nrAh2VCbqR5AK27wswXhqcck2AhfnNW76beQXskGZ1V12GwS//yYVa3d3fcvAip2OUnbDAjW2k3v9fA==",
- "requires": {
- "ajv": "^8.0.1",
- "lodash.truncate": "^4.4.2",
- "slice-ansi": "^4.0.0",
- "string-width": "^4.2.3",
- "strip-ansi": "^6.0.1"
- },
- "dependencies": {
- "ajv": {
- "version": "8.12.0",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz",
- "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==",
- "requires": {
- "fast-deep-equal": "^3.1.1",
- "json-schema-traverse": "^1.0.0",
- "require-from-string": "^2.0.2",
- "uri-js": "^4.2.2"
- }
- },
- "json-schema-traverse": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
- "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug=="
- }
- }
- },
- "tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ=="
- },
- "tar": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz",
- "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==",
- "requires": {
- "chownr": "^2.0.0",
- "fs-minipass": "^2.0.0",
- "minipass": "^5.0.0",
- "minizlib": "^2.1.1",
- "mkdirp": "^1.0.3",
- "yallist": "^4.0.0"
- },
- "dependencies": {
- "fs-minipass": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
- "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
- "requires": {
- "minipass": "^3.0.0"
- },
- "dependencies": {
- "minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "requires": {
- "yallist": "^4.0.0"
- }
- }
- }
- }
- }
- },
- "tar-stream": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz",
- "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==",
- "requires": {
- "bl": "^4.0.3",
- "end-of-stream": "^1.4.1",
- "fs-constants": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^3.1.1"
- }
- },
- "teeny-request": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/teeny-request/-/teeny-request-7.1.1.tgz",
- "integrity": "sha512-iwY6rkW5DDGq8hE2YgNQlKbptYpY5Nn2xecjQiNjOXWbKzPGUfmeUBCSQbbr306d7Z7U2N0TPl+/SwYRfua1Dg==",
- "dev": true,
- "requires": {
- "http-proxy-agent": "^4.0.0",
- "https-proxy-agent": "^5.0.0",
- "node-fetch": "^2.6.1",
- "stream-events": "^1.0.5",
- "uuid": "^8.0.0"
- }
- },
- "temp-dir": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz",
- "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ=="
- },
- "test-exclude": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
- "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
- "requires": {
- "@istanbuljs/schema": "^0.1.2",
- "glob": "^7.1.4",
- "minimatch": "^3.0.4"
- }
- },
- "text-extensions": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz",
- "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ=="
- },
- "text-table": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
- "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ="
- },
- "then-request": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/then-request/-/then-request-6.0.2.tgz",
- "integrity": "sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA==",
- "dev": true,
- "requires": {
- "@types/concat-stream": "^1.6.0",
- "@types/form-data": "0.0.33",
- "@types/node": "^8.0.0",
- "@types/qs": "^6.2.31",
- "caseless": "~0.12.0",
- "concat-stream": "^1.6.0",
- "form-data": "^2.2.0",
- "http-basic": "^8.1.1",
- "http-response-object": "^3.0.1",
- "promise": "^8.0.0",
- "qs": "^6.4.0"
- },
- "dependencies": {
- "@types/node": {
- "version": "8.10.66",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz",
- "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==",
- "dev": true
- },
- "concat-stream": {
- "version": "1.6.2",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
- "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
- "dev": true,
- "requires": {
- "buffer-from": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^2.2.2",
- "typedarray": "^0.0.6"
- }
- },
- "form-data": {
- "version": "2.5.1",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz",
- "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==",
- "dev": true,
- "requires": {
- "asynckit": "^0.4.0",
- "combined-stream": "^1.0.6",
- "mime-types": "^2.1.12"
- }
- },
- "readable-stream": {
- "version": "2.3.7",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
- "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
- "dev": true,
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "dev": true,
- "requires": {
- "safe-buffer": "~5.1.0"
- }
- }
- }
- },
- "through": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
- "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg=="
- },
- "through2": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
- "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
- "requires": {
- "readable-stream": "~2.3.6",
- "xtend": "~4.0.1"
- },
- "dependencies": {
- "readable-stream": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
- "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "requires": {
- "safe-buffer": "~5.1.0"
- }
- }
- }
- },
- "tmp": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz",
- "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w=="
- },
- "tmpl": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz",
- "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw=="
- },
- "to-fast-properties": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
- "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4="
- },
- "to-regex-range": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "requires": {
- "is-number": "^7.0.0"
- }
- },
- "tough-cookie": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz",
- "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==",
- "dev": true,
- "requires": {
- "psl": "^1.1.33",
- "punycode": "^2.1.1",
- "universalify": "^0.2.0",
- "url-parse": "^1.5.3"
- },
- "dependencies": {
- "universalify": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz",
- "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==",
- "dev": true
- }
- }
- },
- "tr46": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz",
- "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==",
- "dev": true,
- "requires": {
- "punycode": "^2.1.1"
- }
- },
- "treeverse": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/treeverse/-/treeverse-3.0.0.tgz",
- "integrity": "sha512-gcANaAnd2QDZFmHFEOF4k7uc1J/6a6z3DJMd/QwEyxLoKGiptJRwid582r7QIsFlFMIZ3SnxfS52S4hm2DHkuQ=="
- },
- "trim-newlines": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz",
- "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw=="
- },
- "ts-api-utils": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz",
- "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==",
- "requires": {}
- },
- "tsconfig-paths": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz",
- "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==",
- "requires": {
- "json5": "^2.2.2",
- "minimist": "^1.2.6",
- "strip-bom": "^3.0.0"
- },
- "dependencies": {
- "strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA=="
- }
- }
- },
- "tslib": {
- "version": "2.6.2",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
- "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
- },
- "tuf-js": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz",
- "integrity": "sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA==",
- "requires": {
- "@tufjs/models": "2.0.1",
- "debug": "^4.3.4",
- "make-fetch-happen": "^13.0.1"
- }
- },
- "type-check": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
- "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==",
- "dev": true,
- "requires": {
- "prelude-ls": "~1.1.2"
- }
- },
- "type-detect": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
- "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g=="
- },
- "type-fest": {
- "version": "0.21.3",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
- "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w=="
- },
- "typed-array-buffer": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz",
- "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==",
- "requires": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.2.1",
- "is-typed-array": "^1.1.10"
- }
- },
- "typed-array-byte-length": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz",
- "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==",
- "requires": {
- "call-bind": "^1.0.2",
- "for-each": "^0.3.3",
- "has-proto": "^1.0.1",
- "is-typed-array": "^1.1.10"
- }
- },
- "typed-array-byte-offset": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz",
- "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==",
- "requires": {
- "available-typed-arrays": "^1.0.5",
- "call-bind": "^1.0.2",
- "for-each": "^0.3.3",
- "has-proto": "^1.0.1",
- "is-typed-array": "^1.1.10"
- }
- },
- "typed-array-length": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz",
- "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==",
- "requires": {
- "call-bind": "^1.0.2",
- "for-each": "^0.3.3",
- "is-typed-array": "^1.1.9"
- }
- },
- "typedarray": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
- "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c="
- },
- "typescript": {
- "version": "4.9.5",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz",
- "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g=="
- },
- "uglify-js": {
- "version": "3.19.2",
- "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.2.tgz",
- "integrity": "sha512-S8KA6DDI47nQXJSi2ctQ629YzwOVs+bQML6DAtvy0wgNdpi+0ySpQK0g2pxBq2xfF2z3YCscu7NNA8nXT9PlIQ==",
- "optional": true
- },
- "unbox-primitive": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
- "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==",
- "requires": {
- "call-bind": "^1.0.2",
- "has-bigints": "^1.0.2",
- "has-symbols": "^1.0.3",
- "which-boxed-primitive": "^1.0.2"
- }
- },
- "uncontrollable": {
- "version": "7.2.1",
- "resolved": "https://registry.npmjs.org/uncontrollable/-/uncontrollable-7.2.1.tgz",
- "integrity": "sha512-svtcfoTADIB0nT9nltgjujTi7BzVmwjZClOmskKu/E8FW9BXzg9os8OLr4f8Dlnk0rYWJIWr4wv9eKUXiQvQwQ==",
- "requires": {
- "@babel/runtime": "^7.6.3",
- "@types/react": ">=16.9.11",
- "invariant": "^2.2.4",
- "react-lifecycles-compat": "^3.0.4"
- }
- },
- "unicode-canonical-property-names-ecmascript": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz",
- "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==",
- "dev": true
- },
- "unicode-match-property-ecmascript": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz",
- "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==",
- "dev": true,
- "requires": {
- "unicode-canonical-property-names-ecmascript": "^2.0.0",
- "unicode-property-aliases-ecmascript": "^2.0.0"
- }
- },
- "unicode-match-property-value-ecmascript": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz",
- "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==",
- "dev": true
- },
- "unicode-property-aliases-ecmascript": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz",
- "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==",
- "dev": true
- },
- "unique-filename": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz",
- "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==",
- "requires": {
- "unique-slug": "^4.0.0"
- }
- },
- "unique-slug": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz",
- "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==",
- "requires": {
- "imurmurhash": "^0.1.4"
- }
- },
- "universal-user-agent": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz",
- "integrity": "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ=="
- },
- "universalify": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
- "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw=="
- },
- "upath": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz",
- "integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w=="
- },
- "update-browserslist-db": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz",
- "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==",
- "requires": {
- "escalade": "^3.1.1",
- "picocolors": "^1.0.0"
- }
- },
- "uri-js": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
- "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
- "requires": {
- "punycode": "^2.1.0"
- }
- },
- "url-parse": {
- "version": "1.5.10",
- "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz",
- "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==",
- "dev": true,
- "requires": {
- "querystringify": "^2.1.1",
- "requires-port": "^1.0.0"
- }
- },
- "urlgrey": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/urlgrey/-/urlgrey-1.0.0.tgz",
- "integrity": "sha512-hJfIzMPJmI9IlLkby8QrsCykQ+SXDeO2W5Q9QTW3QpqZVTx4a/K7p8/5q+/isD8vsbVaFgql/gvAoQCRQ2Cb5w==",
- "dev": true,
- "requires": {
- "fast-url-parser": "^1.1.3"
- }
- },
- "util": {
- "version": "0.12.5",
- "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz",
- "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==",
- "requires": {
- "inherits": "^2.0.3",
- "is-arguments": "^1.0.4",
- "is-generator-function": "^1.0.7",
- "is-typed-array": "^1.1.3",
- "which-typed-array": "^1.1.2"
- }
- },
- "util-deprecate": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
- "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
- },
- "uuid": {
- "version": "8.3.2",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
- "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
- "dev": true
- },
- "v8-to-istanbul": {
- "version": "9.1.3",
- "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.3.tgz",
- "integrity": "sha512-9lDD+EVI2fjFsMWXc6dy5JJzBsVTcQ2fVkfBvncZ6xJWG9wtBhOldG+mHkSL0+V1K/xgZz0JDO5UT5hFwHUghg==",
- "requires": {
- "@jridgewell/trace-mapping": "^0.3.12",
- "@types/istanbul-lib-coverage": "^2.0.1",
- "convert-source-map": "^2.0.0"
- },
- "dependencies": {
- "convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg=="
- }
- }
- },
- "validate-npm-package-license": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
- "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
- "requires": {
- "spdx-correct": "^3.0.0",
- "spdx-expression-parse": "^3.0.0"
- }
- },
- "validate-npm-package-name": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz",
- "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ=="
- },
- "w3c-xmlserializer": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz",
- "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==",
- "dev": true,
- "requires": {
- "xml-name-validator": "^4.0.0"
- }
- },
- "walk-up-path": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz",
- "integrity": "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA=="
- },
- "walker": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz",
- "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==",
- "requires": {
- "makeerror": "1.0.12"
- }
- },
- "warning": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz",
- "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==",
- "requires": {
- "loose-envify": "^1.0.0"
- }
- },
- "wcwidth": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz",
- "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==",
- "requires": {
- "defaults": "^1.0.3"
- }
- },
- "webidl-conversions": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz",
- "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==",
- "dev": true
- },
- "whatwg-encoding": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz",
- "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==",
- "dev": true,
- "requires": {
- "iconv-lite": "0.6.3"
- },
- "dependencies": {
- "iconv-lite": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
- "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
- "dev": true,
- "requires": {
- "safer-buffer": ">= 2.1.2 < 3.0.0"
- }
- }
- }
- },
- "whatwg-mimetype": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz",
- "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==",
- "dev": true
- },
- "whatwg-url": {
- "version": "11.0.0",
- "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz",
- "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==",
- "dev": true,
- "requires": {
- "tr46": "^3.0.0",
- "webidl-conversions": "^7.0.0"
- }
- },
- "which": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
- "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
- "requires": {
- "isexe": "^2.0.0"
- }
- },
- "which-boxed-primitive": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
- "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
- "requires": {
- "is-bigint": "^1.0.1",
- "is-boolean-object": "^1.1.0",
- "is-number-object": "^1.0.4",
- "is-string": "^1.0.5",
- "is-symbol": "^1.0.3"
- }
- },
- "which-builtin-type": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz",
- "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==",
- "requires": {
- "function.prototype.name": "^1.1.5",
- "has-tostringtag": "^1.0.0",
- "is-async-function": "^2.0.0",
- "is-date-object": "^1.0.5",
- "is-finalizationregistry": "^1.0.2",
- "is-generator-function": "^1.0.10",
- "is-regex": "^1.1.4",
- "is-weakref": "^1.0.2",
- "isarray": "^2.0.5",
- "which-boxed-primitive": "^1.0.2",
- "which-collection": "^1.0.1",
- "which-typed-array": "^1.1.9"
- },
- "dependencies": {
- "isarray": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
- "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw=="
- }
- }
- },
- "which-collection": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz",
- "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==",
- "requires": {
- "is-map": "^2.0.1",
- "is-set": "^2.0.1",
- "is-weakmap": "^2.0.1",
- "is-weakset": "^2.0.1"
- }
- },
- "which-typed-array": {
- "version": "1.1.13",
- "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz",
- "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==",
- "requires": {
- "available-typed-arrays": "^1.0.5",
- "call-bind": "^1.0.4",
- "for-each": "^0.3.3",
- "gopd": "^1.0.1",
- "has-tostringtag": "^1.0.0"
- }
- },
- "wide-align": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz",
- "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==",
- "requires": {
- "string-width": "^1.0.2 || 2 || 3 || 4"
- }
- },
- "window-size": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz",
- "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=",
- "optional": true
- },
- "word-wrap": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.4.tgz",
- "integrity": "sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA==",
- "dev": true
- },
- "wordwrap": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
- "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q=="
- },
- "wrap-ansi": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
- "requires": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- }
- }
- },
- "wrap-ansi-cjs": {
- "version": "npm:wrap-ansi@7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
- "requires": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- }
- }
- },
- "wrappy": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
- },
- "write-file-atomic": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz",
- "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==",
- "requires": {
- "imurmurhash": "^0.1.4",
- "signal-exit": "^3.0.7"
- }
- },
- "write-json-file": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-3.2.0.tgz",
- "integrity": "sha512-3xZqT7Byc2uORAatYiP3DHUUAVEkNOswEWNs9H5KXiicRTvzYzYqKjYc4G7p+8pltvAw641lVByKVtMpf+4sYQ==",
- "requires": {
- "detect-indent": "^5.0.0",
- "graceful-fs": "^4.1.15",
- "make-dir": "^2.1.0",
- "pify": "^4.0.1",
- "sort-keys": "^2.0.0",
- "write-file-atomic": "^2.4.2"
- },
- "dependencies": {
- "make-dir": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
- "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
- "requires": {
- "pify": "^4.0.1",
- "semver": "^5.6.0"
- }
- },
- "pify": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
- "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g=="
- },
- "semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g=="
- },
- "write-file-atomic": {
- "version": "2.4.3",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz",
- "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==",
- "requires": {
- "graceful-fs": "^4.1.11",
- "imurmurhash": "^0.1.4",
- "signal-exit": "^3.0.2"
- }
- }
- }
- },
- "write-pkg": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-4.0.0.tgz",
- "integrity": "sha512-v2UQ+50TNf2rNHJ8NyWttfm/EJUBWMJcx6ZTYZr6Qp52uuegWw/lBkCtCbnYZEmPRNL61m+u67dAmGxo+HTULA==",
- "requires": {
- "sort-keys": "^2.0.0",
- "type-fest": "^0.4.1",
- "write-json-file": "^3.2.0"
- },
- "dependencies": {
- "type-fest": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.4.1.tgz",
- "integrity": "sha512-IwzA/LSfD2vC1/YDYMv/zHP4rDF1usCwllsDpbolT3D4fUepIO7f9K70jjmUewU/LmGUKJcwcVtDCpnKk4BPMw=="
- }
- }
- },
- "ws": {
- "version": "8.17.1",
- "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz",
- "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==",
- "dev": true,
- "requires": {}
- },
- "xml-name-validator": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz",
- "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==",
- "dev": true
- },
- "xml2js": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.2.tgz",
- "integrity": "sha512-T4rieHaC1EXcES0Kxxj4JWgaUQHDk+qwHcYOCFHfiwKz7tOVPLq7Hjq9dM1WCMhylqMEfP7hMcOIChvotiZegA==",
- "requires": {
- "sax": ">=0.6.0",
- "xmlbuilder": "~11.0.0"
- }
- },
- "xmlbuilder": {
- "version": "11.0.1",
- "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz",
- "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA=="
- },
- "xmlchars": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz",
- "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==",
- "dev": true
- },
- "xtend": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
- "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ=="
- },
- "y18n": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz",
- "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==",
- "optional": true
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
- },
- "yargs": {
- "version": "17.7.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
- "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
- "requires": {
- "cliui": "^8.0.1",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.3",
- "y18n": "^5.0.5",
- "yargs-parser": "^21.1.1"
- },
- "dependencies": {
- "y18n": {
- "version": "5.0.8",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
- "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA=="
- }
- }
- },
- "yargs-parser": {
- "version": "21.1.1",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
- "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw=="
- },
- "yocto-queue": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
- "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q=="
- }
- }
-}
diff --git a/legacy/package.json b/legacy/package.json
deleted file mode 100644
index 125515eb..00000000
--- a/legacy/package.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "private": true,
- "workspaces": [
- "bids-validator",
- "bids-validator-web"
- ],
- "scripts": {
- "lint": "eslint \"./bids-validator/{tests,utils,validators}/**/*.js\"",
- "coverage": "jest --coverage",
- "codecov": "codecov",
- "test": "node bids-validator/bin/test-submodule-exists && jest",
- "postversion": "lerna version prerelease --preid dev --ignore-scripts --yes --force-publish=*",
- "prepublishOnly": "npm run prepublishOnly -w bids-validator",
- "web-dev": "cd bids-validator-web && npm run dev",
- "web-build": "cd bids-validator-web && npm run build",
- "web-start": "cd bids-validator-web && npm run build && npm start",
- "web-export": "npm run web-build && cd bids-validator-web && next build"
- },
- "jest": {
- "testEnvironment": "node",
- "moduleNameMapper": {
- "^uuid$": "uuid"
- },
- "transform": {
- "^.+\\.jsx?$": "babel-jest"
- },
- "testPathIgnorePatterns": [
- "/node_modules/",
- "/bids-validator/src/",
- "/bids-validator/spec/"
- ],
- "transformIgnorePatterns": [
- "node_modules/(?!chai)"
- ]
- },
- "devDependencies": {
- "@babel/core": "^7.22.10",
- "@babel/preset-env": "^7.22.10",
- "codecov": "^3.8.1",
- "eslint": "^8.57.0",
- "eslint-config-prettier": "^9.1.0",
- "eslint-plugin-prettier": "^5.2.1",
- "husky": "^9.1.6",
- "jest": "^29.7.0",
- "jest-environment-jsdom": "^29.7.0",
- "jest-environment-node": "^29.7.0",
- "lerna": "^8.1.8",
- "prettier": "^3.3.3",
- "pretty-quick": "^4.0.0"
- },
- "name": "bids-validator-monorepo",
- "husky": {
- "hooks": {
- "pre-commit": "pretty-quick --staged"
- }
- },
- "browser": {
- "assert": false
- }
-}