diff --git a/.gitignore b/.gitignore index ce81ddb..fd4f0eb 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ coverage documentation .rdf-test-suite-cache earl.ttl +.eslintcache diff --git a/eslint.config.js b/eslint.config.js new file mode 100644 index 0000000..4e116e3 --- /dev/null +++ b/eslint.config.js @@ -0,0 +1,90 @@ +const config = require('@rubensworks/eslint-config'); + +module.exports = config([ + { + ignores: [ + 'node_modules', + 'coverage', + '**/*.js', + '**/*.d.ts', + '**/*.js.map', + '**/*.yml', + '**/*.yaml', + '**/*.md', + 'perf/**', + ], + }, + { + files: [ '**/*.ts' ], + languageOptions: { + parserOptions: { + tsconfigRootDir: __dirname, + project: [ './tsconfig.eslint.json' ], + }, + }, + }, + { + // Project-specific overrides for TypeScript files + files: [ '**/*.ts' ], + rules: { + // Project uses strictNullChecks: false, so this rule cannot be applied + 'ts/prefer-nullish-coalescing': 'off', + // This is a Node.js library that legitimately imports Node.js built-in modules + 'import/no-nodejs-modules': 'off', + // Allow UPPER_CASE for class properties (public API constants) and enum members + 'ts/naming-convention': [ + 'error', + { + selector: 'default', + format: [ 'camelCase' ], + leadingUnderscore: 'forbid', + trailingUnderscore: 'forbid', + }, + { + selector: 'import', + format: null, + }, + { + selector: 'variable', + format: [ 'camelCase', 'UPPER_CASE' ], + leadingUnderscore: 'forbid', + trailingUnderscore: 'forbid', + }, + { + selector: 'classProperty', + format: [ 'camelCase', 'UPPER_CASE' ], + leadingUnderscore: 'forbid', + trailingUnderscore: 'forbid', + }, + { + selector: 'enumMember', + format: [ 'camelCase', 'UPPER_CASE' ], + }, + { + selector: 'typeLike', + format: [ 'PascalCase' ], + }, + { + selector: [ 'typeParameter' ], + format: [ 'PascalCase' ], + prefix: [ 'T' ], + }, + { + selector: 'interface', + format: [ 'PascalCase' ], + custom: { + regex: '^I[A-Z]', + match: true, + }, + }, + { + // Allow leading underscore for Node.js Transform stream override methods + selector: 'method', + format: [ 'camelCase' ], + leadingUnderscore: 'allow', + trailingUnderscore: 'forbid', + }, + ], + }, + }, +]); diff --git a/lib/ParseError.ts b/lib/ParseError.ts index f2cd9fe..be24212 100644 --- a/lib/ParseError.ts +++ b/lib/ParseError.ts @@ -1,14 +1,12 @@ -import {SaxesParser} from "@rubensworks/saxes"; -import {RdfXmlParser} from "./RdfXmlParser"; +import type { SaxesParser } from '@rubensworks/saxes'; +import type { RdfXmlParser } from './RdfXmlParser'; /** * An error that includes line and column in the error message. */ export class ParseError extends Error { - - constructor(parser: RdfXmlParser, message: string) { - const saxParser: SaxesParser = (parser).saxParser; + public constructor(parser: RdfXmlParser, message: string) { + const saxParser: SaxesParser = (<{ saxParser: SaxesParser }>parser).saxParser; super(parser.trackPosition ? `Line ${saxParser.line} column ${saxParser.column + 1}: ${message}` : message); } - } diff --git a/lib/RdfXmlParser.ts b/lib/RdfXmlParser.ts index 5eac7dc..7559861 100644 --- a/lib/RdfXmlParser.ts +++ b/lib/RdfXmlParser.ts @@ -1,10 +1,11 @@ -import * as RDF from "@rdfjs/types"; -import {resolve} from "relative-to-absolute-iri"; -import {SaxesParser, SaxesTagNS} from "@rubensworks/saxes"; -import {PassThrough, Transform} from "readable-stream"; -import {ParseError} from "./ParseError"; -import {DataFactory} from "rdf-data-factory"; -import {IriValidationStrategy, validateIri} from "validate-iri"; +import type * as RDF from '@rdfjs/types'; +import type { SaxesTagNS } from '@rubensworks/saxes'; +import { SaxesParser } from '@rubensworks/saxes'; +import { DataFactory } from 'rdf-data-factory'; +import { PassThrough, Transform } from 'readable-stream'; +import { resolve } from 'relative-to-absolute-iri'; +import { IriValidationStrategy, validateIri } from 'validate-iri'; +import { ParseError } from './ParseError'; import EventEmitter = NodeJS.EventEmitter; export class RdfXmlParser extends Transform implements RDF.Sink { @@ -25,6 +26,7 @@ export class RdfXmlParser extends Transform implements RDF.Sink; private readonly validateUri: boolean; private readonly iriValidationStrategy: IriValidationStrategy; private readonly parseUnsupportedVersions: boolean; private version: string | undefined; private readonly activeTagStack: IActiveTag[] = []; - private readonly nodeIds: {[id: string]: boolean} = {}; + private readonly nodeIds: Record = {}; - constructor(args?: IRdfXmlParserArgs) { + public constructor(args?: IRdfXmlParserArgs) { super({ readableObjectMode: true }); if (args) { @@ -77,13 +91,13 @@ export class RdfXmlParser extends Transform implements RDF.Sink parsed.emit('error', error)); - stream.on('data', (data) => output.push(data)); + stream.on('error', error => parsed.emit('error', error)); + stream.on('data', data => output.push(data)); stream.on('end', () => output.push(null)); const parsed = output.pipe(new RdfXmlParser(this.options)); return parsed; } - public _transform(chunk: any, encoding: BufferEncoding, callback: (error?: Error | null, data?: any) => void) { + public _transform( + chunk: Buffer | string, + encoding: BufferEncoding, + callback: (error?: Error | null, data?: any) => void, + ): void { if (this.version) { const version = this.version; this.version = undefined; @@ -166,7 +184,7 @@ export class RdfXmlParser extends Transform implements RDF.Sink this.emit('error', error)); - this.saxParser.on('opentag', this.onTag.bind(this)); + protected attachSaxListeners(): void { + this.saxParser.on('error', error => this.emit('error', error)); + this.saxParser.on('opentag', this.onTag.bind(this)); this.saxParser.on('text', this.onText.bind(this)); this.saxParser.on('cdata', this.onText.bind(this)); this.saxParser.on('closetag', this.onCloseTag.bind(this)); @@ -203,10 +230,11 @@ export class RdfXmlParser extends Transform implements RDF.Sink 0 ? + this.activeTagStack.at(-1) : + null; let currentParseType = ParseType.RESOURCE; if (parentTag) { parentTag.hadChildren = true; @@ -217,19 +245,19 @@ export class RdfXmlParser extends Transform implements RDF.Sink`; + const tagContents = `${tagName}${attributes}`; + const tagString = `<${tagContents}>`; parentTag.childrenStringTags.push(tagString); // Inherit the array, so that deeper tags are appended to this same array - const stringActiveTag: IActiveTag = {childrenStringTags: parentTag.childrenStringTags}; + const stringActiveTag: IActiveTag = { childrenStringTags: parentTag.childrenStringTags }; stringActiveTag.childrenStringEmitClosingTag = ``; this.activeTagStack.push(stringActiveTag); @@ -252,7 +280,8 @@ export class RdfXmlParser extends Transform implements RDF.Sink= 0) { + if (!rootTag && RdfXmlParser.FORBIDDEN_NODE_ELEMENTS.includes(tag.local)) { throw this.newParseError(`Illegal node element name: ${tag.local}`); } switch (tag.local) { - case 'RDF': - // Tags under must always be resources - activeTag.childrenParseType = ParseType.RESOURCE; - case 'Description': - typedNode = false; + case 'RDF': + // Tags under must always be resources + activeTag.childrenParseType = ParseType.RESOURCE; + // Falls through + case 'Description': + typedNode = false; } } @@ -302,8 +332,8 @@ export class RdfXmlParser extends Transform implements RDF.Sink

OR const isRestTerm = parentTag.childrenCollectionPredicate.equals(restTerm); - this.emitTriple(parentTag.childrenCollectionSubject, - parentTag.childrenCollectionPredicate, linkTerm, isRestTerm ? null : parentTag.reifiedStatementId, parentTag.childrenTripleTerms, isRestTerm ? null : parentTag.reifier); + this.emitTriple( + parentTag.childrenCollectionSubject, + parentTag.childrenCollectionPredicate, + linkTerm, + isRestTerm ? null : parentTag.reifiedStatementId, + parentTag.childrenTripleTerms, + isRestTerm ? null : parentTag.reifier, + ); // Emit value - this.emitTriple(linkTerm, this.dataFactory.namedNode(RdfXmlParser.RDF + 'first'), - activeTag.subject, null, activeTag.childrenTripleTerms); + this.emitTriple( + linkTerm, + this.dataFactory.namedNode(`${RdfXmlParser.RDF}first`), + activeTag.subject, + null, + activeTag.childrenTripleTerms, + ); // Store in the parent node parentTag.childrenCollectionSubject = linkTerm; parentTag.childrenCollectionPredicate = restTerm; - } else { // !parentTag.predicateEmitted + } else { + // !parentTag.predicateEmitted // Set-based properties if (!parentTag.childrenTagsToTripleTerms) { - this.emitTriple(parentTag.subject, parentTag.predicate, activeTag.subject, parentTag.reifiedStatementId, parentTag.childrenTripleTerms, parentTag.reifier); + this.emitTriple( + parentTag.subject, + parentTag.predicate, + activeTag.subject, + parentTag.reifiedStatementId, + parentTag.childrenTripleTerms, + parentTag.reifier, + ); parentTag.predicateEmitted = true; } // Emit pending properties on the parent tag that had no defined subject yet. for (let i = 0; i < parentTag.predicateSubPredicates.length; i++) { - this.emitTriple(activeTag.subject, parentTag.predicateSubPredicates[i], - parentTag.predicateSubObjects[i], null, parentTag.childrenTripleTerms, parentTag.reifier); + this.emitTriple( + activeTag.subject, + parentTag.predicateSubPredicates[i], + parentTag.predicateSubObjects[i], + null, + parentTag.childrenTripleTerms, + parentTag.reifier, + ); } // Cleanup so we don't emit them again when the parent tag is closed @@ -435,14 +497,27 @@ while ${attribute.value} and ${activeSubjectValue} where found.`); } // Emit all collected triples - for (let i = 0; i < predicates.length; i++) { + for (const [ i, predicate ] of predicates.entries()) { const object: RDF.Term = this.createLiteral(objects[i], activeTag); - this.emitTriple(activeTag.subject, predicates[i], object, parentTag.reifiedStatementId, parentTag.childrenTripleTerms, parentTag.reifier); + this.emitTriple( + activeTag.subject, + predicate, + object, + parentTag.reifiedStatementId, + parentTag.childrenTripleTerms, + parentTag.reifier, + ); } // Emit the rdf:type as named node instead of literal if (explicitType) { - this.emitTriple(activeTag.subject, this.dataFactory.namedNode(RdfXmlParser.RDF + 'type'), - this.uriToNamedNode(explicitType), null, activeTag.childrenTripleTerms, activeTag.reifier); + this.emitTriple( + activeTag.subject, + this.dataFactory.namedNode(`${RdfXmlParser.RDF}type`), + this.uriToNamedNode(explicitType), + null, + activeTag.childrenTripleTerms, + activeTag.reifier, + ); } } } @@ -453,29 +528,30 @@ while ${attribute.value} and ${activeSubjectValue} where found.`); * @param {IActiveTag} activeTag The currently active tag. * @param {IActiveTag} parentTag The parent tag or null. */ - protected onTagProperty(tag: SaxesTagNS, activeTag: IActiveTag, parentTag: IActiveTag) { + protected onTagProperty(tag: SaxesTagNS, activeTag: IActiveTag, parentTag: IActiveTag): void { activeTag.childrenParseType = ParseType.RESOURCE; - activeTag.subject = parentTag.subject; // Inherit parent subject + // Inherit parent subject + activeTag.subject = parentTag.subject; if (tag.uri === RdfXmlParser.RDF && tag.local === 'li') { // Convert rdf:li to rdf:_x if (!parentTag.listItemCounter) { parentTag.listItemCounter = 1; } - activeTag.predicate = this.uriToNamedNode(tag.uri + '_' + parentTag.listItemCounter++); + activeTag.predicate = this.uriToNamedNode(`${tag.uri}_${parentTag.listItemCounter++}`); } else { activeTag.predicate = this.uriToNamedNode(tag.uri + tag.local); } // Check forbidden property element names - if (tag.uri === RdfXmlParser.RDF - && RdfXmlParser.FORBIDDEN_PROPERTY_ELEMENTS.indexOf(tag.local) >= 0) { + if (tag.uri === RdfXmlParser.RDF && + RdfXmlParser.FORBIDDEN_PROPERTY_ELEMENTS.includes(tag.local)) { throw this.newParseError(`Illegal property element name: ${tag.local}`); } activeTag.predicateSubPredicates = []; activeTag.predicateSubObjects = []; - let parseType: boolean = false; - let attributedProperty: boolean = false; + let parseType = false; + let attributedProperty = false; // Collect all attributes as triples // Assign subject value only after all attributes have been processed, because baseIRI may change the final val @@ -490,107 +566,118 @@ while ${attribute.value} and ${activeSubjectValue} where found.`); continue; } else if (propertyAttribute.uri === RdfXmlParser.RDF) { switch (propertyAttribute.local) { - case 'resource': - if (activeSubSubjectValue) { - throw this.newParseError(`Found both rdf:resource (${propertyAttribute.value + case 'resource': + if (activeSubSubjectValue) { + throw this.newParseError(`Found both rdf:resource (${propertyAttribute.value }) and rdf:nodeID (${activeSubSubjectValue}).`); - } - if (parseType) { - throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:resource (${ + } + if (parseType) { + throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:resource (${ propertyAttribute.value})`); - } - activeTag.hadChildren = true; - activeSubSubjectValue = propertyAttribute.value; - subSubjectValueBlank = false; - continue; - case 'datatype': - if (attributedProperty) { - throw this.newParseError( - `Found both non-rdf:* property attributes and rdf:datatype (${propertyAttribute.value}).`); - } - if (parseType) { - throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${ + } + activeTag.hadChildren = true; + activeSubSubjectValue = propertyAttribute.value; + subSubjectValueBlank = false; + continue; + case 'datatype': + if (attributedProperty) { + throw this.newParseError( + `Found both non-rdf:* property attributes and rdf:datatype (${propertyAttribute.value}).`, + ); + } + if (parseType) { + throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${ propertyAttribute.value})`); - } - activeTag.datatype = this.valueToUri(propertyAttribute.value, activeTag); - continue; - case 'nodeID': - if (attributedProperty) { - throw this.newParseError( - `Found both non-rdf:* property attributes and rdf:nodeID (${propertyAttribute.value}).`); - } - if (activeTag.hadChildren) { - throw this.newParseError(`Found both rdf:resource and rdf:nodeID (${propertyAttribute.value}).`); - } - if (parseType) { - throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID (${ + } + activeTag.datatype = this.valueToUri(propertyAttribute.value, activeTag); + continue; + case 'nodeID': + if (attributedProperty) { + throw this.newParseError( + `Found both non-rdf:* property attributes and rdf:nodeID (${propertyAttribute.value}).`, + ); + } + if (activeTag.hadChildren) { + throw this.newParseError(`Found both rdf:resource and rdf:nodeID (${propertyAttribute.value}).`); + } + if (parseType) { + throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID (${ propertyAttribute.value})`); - } - this.validateNcname(propertyAttribute.value); - activeTag.hadChildren = true; - activeSubSubjectValue = propertyAttribute.value; - subSubjectValueBlank = true; - continue; - case 'bagID': - throw this.newParseError(`rdf:bagID is not supported.`); - case 'parseType': + } + this.validateNcname(propertyAttribute.value); + activeTag.hadChildren = true; + activeSubSubjectValue = propertyAttribute.value; + subSubjectValueBlank = true; + continue; + case 'bagID': + throw this.newParseError(`rdf:bagID is not supported.`); + case 'parseType': // Validation - if (attributedProperty) { - throw this.newParseError(`rdf:parseType is not allowed when non-rdf:* property attributes are present`); - } - if (activeTag.datatype) { - throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${ + if (attributedProperty) { + throw this.newParseError(`rdf:parseType is not allowed when non-rdf:* property attributes are present`); + } + if (activeTag.datatype) { + throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${ activeTag.datatype.value})`); - } - if (activeSubSubjectValue) { - throw this.newParseError( + } + if (activeSubSubjectValue) { + throw this.newParseError( `rdf:parseType is not allowed on property elements with rdf:nodeID or rdf:resource (${ - activeSubSubjectValue})`); - } - - if (propertyAttribute.value === 'Resource') { - parseType = true; - activeTag.childrenParseType = ParseType.PROPERTY; - - // Turn this property element into a node element - const nestedBNode: RDF.BlankNode = this.dataFactory.blankNode(); - this.emitTriple(activeTag.subject, activeTag.predicate, nestedBNode, activeTag.reifiedStatementId, activeTag.childrenTripleTerms, activeTag.reifier); - activeTag.subject = nestedBNode; - activeTag.predicate = null; - } else if (propertyAttribute.value === 'Collection') { - parseType = true; - // Interpret children as being part of an rdf:List - activeTag.hadChildren = true; - activeTag.childrenCollectionSubject = activeTag.subject; - activeTag.childrenCollectionPredicate = activeTag.predicate; - subSubjectValueBlank = false; - } else if (propertyAttribute.value === 'Literal') { - parseType = true; - // Interpret children as being part of a literal string - activeTag.childrenTagsToString = true; - activeTag.childrenStringTags = []; - } else if (propertyAttribute.value === 'Triple') { - parseType = true; - // Collect children as triple terms - activeTag.childrenTagsToTripleTerms = true; - activeTag.childrenTripleTerms = []; - } - continue; - case 'ID': - this.validateNcname(propertyAttribute.value); - activeTag.reifiedStatementId = this.valueToUri('#' + propertyAttribute.value, activeTag); - this.claimNodeId(activeTag.reifiedStatementId); - continue; - case 'annotation': - activeTag.reifier = this.dataFactory.namedNode(propertyAttribute.value); - continue; - case 'annotationNodeID': - activeTag.reifier = this.dataFactory.blankNode(propertyAttribute.value); - continue; + activeSubSubjectValue})`, + ); + } + + if (propertyAttribute.value === 'Resource') { + parseType = true; + activeTag.childrenParseType = ParseType.PROPERTY; + + // Turn this property element into a node element + const nestedBNode: RDF.BlankNode = this.dataFactory.blankNode(); + this.emitTriple( + activeTag.subject, + activeTag.predicate, + nestedBNode, + activeTag.reifiedStatementId, + activeTag.childrenTripleTerms, + activeTag.reifier, + ); + activeTag.subject = nestedBNode; + activeTag.predicate = null; + } else if (propertyAttribute.value === 'Collection') { + parseType = true; + // Interpret children as being part of an rdf:List + activeTag.hadChildren = true; + activeTag.childrenCollectionSubject = activeTag.subject; + activeTag.childrenCollectionPredicate = activeTag.predicate; + subSubjectValueBlank = false; + } else if (propertyAttribute.value === 'Literal') { + parseType = true; + // Interpret children as being part of a literal string + activeTag.childrenTagsToString = true; + activeTag.childrenStringTags = []; + } else if (propertyAttribute.value === 'Triple') { + parseType = true; + // Collect children as triple terms + activeTag.childrenTagsToTripleTerms = true; + activeTag.childrenTripleTerms = []; + } + continue; + case 'ID': + this.validateNcname(propertyAttribute.value); + activeTag.reifiedStatementId = this.valueToUri(`#${propertyAttribute.value}`, activeTag); + this.claimNodeId(activeTag.reifiedStatementId); + continue; + case 'annotation': + activeTag.reifier = this.dataFactory.namedNode(propertyAttribute.value); + continue; + case 'annotationNodeID': + activeTag.reifier = this.dataFactory.blankNode(propertyAttribute.value); + continue; } } else if (propertyAttribute.uri === RdfXmlParser.XML && propertyAttribute.local === 'lang') { - activeTag.language = propertyAttribute.value === '' - ? null : propertyAttribute.value.toLowerCase(); + activeTag.language = propertyAttribute.value === '' ? + null : + propertyAttribute.value.toLowerCase(); continue; } else if (propertyAttribute.uri === RdfXmlParser.ITS && propertyAttribute.local === 'dir') { this.setDirection(activeTag, propertyAttribute.value); @@ -602,9 +689,9 @@ while ${attribute.value} and ${activeSubjectValue} where found.`); // Interpret attributes at this point as properties via implicit blank nodes on the property, // but we ignore attributes that have no prefix or known expanded URI - if (propertyAttribute.prefix !== 'xml' && propertyAttribute.prefix !== 'xmlns' - && (propertyAttribute.prefix !== '' || propertyAttribute.local !== 'xmlns') - && propertyAttribute.uri) { + if (propertyAttribute.prefix !== 'xml' && propertyAttribute.prefix !== 'xmlns' && + (propertyAttribute.prefix !== '' || propertyAttribute.local !== 'xmlns') && + propertyAttribute.uri) { if (parseType || activeTag.datatype) { throw this.newParseError(`Found illegal rdf:* properties on property element with attribute: ${ propertyAttribute.value}`); @@ -619,13 +706,28 @@ while ${attribute.value} and ${activeSubjectValue} where found.`); // Create the subject value _after_ all attributes have been processed if (activeSubSubjectValue !== null) { const subjectParent: RDF.Term = activeTag.subject; - activeTag.subject = subSubjectValueBlank - ? this.dataFactory.blankNode(activeSubSubjectValue) : this.valueToUri(activeSubSubjectValue, activeTag); - this.emitTriple(subjectParent, activeTag.predicate, activeTag.subject, activeTag.reifiedStatementId, activeTag.childrenTripleTerms, activeTag.reifier); + activeTag.subject = subSubjectValueBlank ? + this.dataFactory.blankNode(activeSubSubjectValue) : + this.valueToUri(activeSubSubjectValue, activeTag); + this.emitTriple( + subjectParent, + activeTag.predicate, + activeTag.subject, + activeTag.reifiedStatementId, + activeTag.childrenTripleTerms, + activeTag.reifier, + ); // Emit our buffered triples - for (let i = 0; i < predicates.length; i++) { - this.emitTriple(activeTag.subject, predicates[i], objects[i], null, activeTag.childrenTripleTerms, activeTag.reifier); + for (const [ i, predicate ] of predicates.entries()) { + this.emitTriple( + activeTag.subject, + predicate, + objects[i], + null, + activeTag.childrenTripleTerms, + activeTag.reifier, + ); } activeTag.predicateEmitted = true; } else if (subSubjectValueBlank) { @@ -648,10 +750,14 @@ while ${attribute.value} and ${activeSubjectValue} where found.`); * @param childrenTripleTerms An optional array to push quads into instead of emitting them. * @param reifier The reifier to emit this triple under. */ - protected emitTriple(subject: RDF.Quad_Subject, predicate: RDF.Quad_Predicate, object: RDF.Quad_Object, - statementId?: RDF.NamedNode, - childrenTripleTerms?: RDF.Quad[], - reifier?: RDF.NamedNode | RDF.BlankNode) { + protected emitTriple( + subject: RDF.Quad_Subject, + predicate: RDF.Quad_Predicate, + object: RDF.Quad_Object, + statementId?: RDF.NamedNode, + childrenTripleTerms?: RDF.Quad[], + reifier?: RDF.NamedNode | RDF.BlankNode, + ): void { const quad = this.dataFactory.quad(subject, predicate, object, this.defaultGraph); if (childrenTripleTerms) { childrenTripleTerms.push(quad); @@ -659,21 +765,35 @@ while ${attribute.value} and ${activeSubjectValue} where found.`); this.push(quad); } if (reifier) { - this.push(this.dataFactory.quad(reifier, this.dataFactory.namedNode(RdfXmlParser.RDF + 'reifies'), quad)); + this.push(this.dataFactory.quad(reifier, this.dataFactory.namedNode(`${RdfXmlParser.RDF}reifies`), quad)); } // Reify triple if (statementId) { - this.push(this.dataFactory.quad(statementId, - this.dataFactory.namedNode(RdfXmlParser.RDF + 'type'), - this.dataFactory.namedNode(RdfXmlParser.RDF + 'Statement'), - this.defaultGraph)); - this.push(this.dataFactory.quad(statementId, - this.dataFactory.namedNode(RdfXmlParser.RDF + 'subject'), subject, this.defaultGraph)); - this.push(this.dataFactory.quad(statementId, - this.dataFactory.namedNode(RdfXmlParser.RDF + 'predicate'), predicate, this.defaultGraph)); - this.push(this.dataFactory.quad(statementId, - this.dataFactory.namedNode(RdfXmlParser.RDF + 'object'), object, this.defaultGraph)); + this.push(this.dataFactory.quad( + statementId, + this.dataFactory.namedNode(`${RdfXmlParser.RDF}type`), + this.dataFactory.namedNode(`${RdfXmlParser.RDF}Statement`), + this.defaultGraph, + )); + this.push(this.dataFactory.quad( + statementId, + this.dataFactory.namedNode(`${RdfXmlParser.RDF}subject`), + subject, + this.defaultGraph, + )); + this.push(this.dataFactory.quad( + statementId, + this.dataFactory.namedNode(`${RdfXmlParser.RDF}predicate`), + predicate, + this.defaultGraph, + )); + this.push(this.dataFactory.quad( + statementId, + this.dataFactory.namedNode(`${RdfXmlParser.RDF}object`), + object, + this.defaultGraph, + )); } } @@ -684,7 +804,7 @@ while ${attribute.value} and ${activeSubjectValue} where found.`); * This is used to check duplicate occurrences of rdf:ID in scope of the baseIRI. * @param {Term} term An RDF term. */ - protected claimNodeId(term: RDF.Term) { + protected claimNodeId(term: RDF.Term): void { if (!this.allowDuplicateRdfIds) { if (this.nodeIds[term.value]) { throw this.newParseError(`Found multiple occurrences of rdf:ID='${term.value}'.`); @@ -697,9 +817,10 @@ while ${attribute.value} and ${activeSubjectValue} where found.`); * Handle the given text string. * @param {string} text A parsed text string. */ - protected onText(text: string) { - const activeTag: IActiveTag = this.activeTagStack.length - ? this.activeTagStack[this.activeTagStack.length - 1] : null; + protected onText(text: string): void { + const activeTag: IActiveTag = this.activeTagStack.length > 0 ? + this.activeTagStack.at(-1) : + null; if (activeTag) { if (activeTag.childrenStringTags) { @@ -713,10 +834,11 @@ while ${attribute.value} and ${activeSubjectValue} where found.`); /** * Handle the closing of the last tag. */ - protected onCloseTag() { + protected onCloseTag(): void { const poppedTag: IActiveTag = this.activeTagStack.pop(); - const parentTag: IActiveTag = this.activeTagStack.length - ? this.activeTagStack[this.activeTagStack.length - 1] : null; + const parentTag: IActiveTag = this.activeTagStack.length > 0 ? + this.activeTagStack.at(-1) : + null; // If we were converting a tag to a string, and the tag was not self-closing, close it here. if (poppedTag.childrenStringEmitClosingTag) { @@ -725,37 +847,70 @@ while ${attribute.value} and ${activeSubjectValue} where found.`); // Set the literal value if we were collecting XML tags to string if (poppedTag.childrenTagsToString) { - poppedTag.datatype = this.dataFactory.namedNode(RdfXmlParser.RDF + 'XMLLiteral'); + poppedTag.datatype = this.dataFactory.namedNode(`${RdfXmlParser.RDF}XMLLiteral`); poppedTag.text = poppedTag.childrenStringTags.join(''); - poppedTag.hadChildren = false; // Force a literal triple to be emitted hereafter + // Force a literal triple to be emitted hereafter + poppedTag.hadChildren = false; } // Set the triple term value if we were collecting triple terms if (poppedTag.childrenTagsToTripleTerms && poppedTag.predicate && poppedTag.rdfVersion) { if (poppedTag.childrenTripleTerms.length !== 1) { - throw this.newParseError(`Expected exactly one triple term in rdf:parseType="Triple" but got ${poppedTag.childrenTripleTerms.length}`); + throw this.newParseError(`Expected exactly one triple term in rdf:parseType="Triple" but got ${ + poppedTag.childrenTripleTerms.length}`); } for (const tripleTerm of poppedTag.childrenTripleTerms) { - this.emitTriple(poppedTag.subject, poppedTag.predicate, tripleTerm, null, parentTag.childrenTripleTerms, parentTag.reifier); + this.emitTriple( + poppedTag.subject, + poppedTag.predicate, + tripleTerm, + null, + parentTag.childrenTripleTerms, + parentTag.reifier, + ); } poppedTag.predicateEmitted = true; } if (poppedTag.childrenCollectionSubject) { // Terminate the rdf:List - this.emitTriple(poppedTag.childrenCollectionSubject, poppedTag.childrenCollectionPredicate, - this.dataFactory.namedNode(RdfXmlParser.RDF + 'nil'), null, poppedTag.childrenTripleTerms); + this.emitTriple( + poppedTag.childrenCollectionSubject, + poppedTag.childrenCollectionPredicate, + this.dataFactory.namedNode(`${RdfXmlParser.RDF}nil`), + null, + poppedTag.childrenTripleTerms, + ); } else if (poppedTag.predicate) { if (!poppedTag.hadChildren && poppedTag.childrenParseType !== ParseType.PROPERTY) { // Property element contains text - this.emitTriple(poppedTag.subject, poppedTag.predicate, this.createLiteral(poppedTag.text || '', poppedTag), - poppedTag.reifiedStatementId, poppedTag.childrenTripleTerms, poppedTag.reifier); + this.emitTriple( + poppedTag.subject, + poppedTag.predicate, + this.createLiteral(poppedTag.text || '', poppedTag), + poppedTag.reifiedStatementId, + poppedTag.childrenTripleTerms, + poppedTag.reifier, + ); } else if (!poppedTag.predicateEmitted) { // Emit remaining properties on an anonymous property element const subject: RDF.Term = this.dataFactory.blankNode(); - this.emitTriple(poppedTag.subject, poppedTag.predicate, subject, poppedTag.reifiedStatementId, poppedTag.childrenTripleTerms, poppedTag.reifier); + this.emitTriple( + poppedTag.subject, + poppedTag.predicate, + subject, + poppedTag.reifiedStatementId, + poppedTag.childrenTripleTerms, + poppedTag.reifier, + ); for (let i = 0; i < poppedTag.predicateSubPredicates.length; i++) { - this.emitTriple(subject, poppedTag.predicateSubPredicates[i], poppedTag.predicateSubObjects[i], null, poppedTag.childrenTripleTerms); + this.emitTriple( + subject, + poppedTag.predicateSubPredicates[i], + poppedTag.predicateSubObjects[i], + null, + poppedTag.childrenTripleTerms, + ); } } } @@ -765,14 +920,14 @@ while ${attribute.value} and ${activeSubjectValue} where found.`); * Fetch local DOCTYPE ENTITY's and make the parser recognise them. * @param {string} doctype The read doctype. */ - protected onDoctype(doctype: string) { - doctype.replace(//g, (match, prefix, uri) => { + protected onDoctype(doctype: string): void { + doctype.replaceAll(//gu, (match, prefix: string, uri: string) => { this.saxParser.ENTITIES[prefix] = uri; return ''; }); } - private setDirection(activeTag: IActiveTag, value?: string) { + private setDirection(activeTag: IActiveTag, value?: string): void { if (value) { if (value !== 'ltr' && value !== 'rtl') { throw this.newParseError(`Base directions must either be 'ltr' or 'rtl', while '${value}' was found.`); @@ -783,7 +938,7 @@ while ${attribute.value} and ${activeSubjectValue} where found.`); } } - private setVersion(activeTag: IActiveTag, version: string) { + private setVersion(activeTag: IActiveTag, version: string): void { activeTag.rdfVersion = version; this.emit('version', version); if (!this.isValidVersion(version)) { @@ -853,7 +1008,7 @@ export interface IActiveTag { childrenTagsToString?: boolean; childrenStringTags?: string[]; childrenStringEmitClosingTag?: string; - // for creating rdf:Lists + // For creating rdf:Lists childrenCollectionSubject?: RDF.NamedNode | RDF.BlankNode; childrenCollectionPredicate?: RDF.NamedNode; childrenTagsToTripleTerms?: boolean; diff --git a/package.json b/package.json index 480cb84..b599042 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,20 @@ { "name": "rdfxml-streaming-parser", "version": "3.2.0", + "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e", "description": "Streaming RDF/XML parser", + "typings": "index", + "author": "Ruben Taelman ", + "license": "MIT", + "funding": { + "type": "individual", + "url": "https://github.com/sponsors/rubensworks/" + }, + "homepage": "https://github.com/rdfjs/rdfxml-streaming-parser.js#readme", + "repository": "git@github.com:rdfjs/rdfxml-streaming-parser.js.git", + "bugs": { + "url": "https://github.com/rdfjs/rdfxml-streaming-parser.js/issues" + }, "keywords": [ "rdf/xml", "streaming", @@ -11,54 +24,21 @@ "rdf", "linked data" ], + "sideEffects": false, "main": "index.js", - "typings": "index", - "repository": "git@github.com:rdfjs/rdfxml-streaming-parser.js.git", - "author": "Ruben Taelman ", - "funding": { - "type": "individual", - "url": "https://github.com/sponsors/rubensworks/" - }, - "bugs": { - "url": "https://github.com/rdfjs/rdfxml-streaming-parser.js/issues" - }, - "homepage": "https://github.com/rdfjs/rdfxml-streaming-parser.js#readme", - "license": "MIT", "files": [ - "lib/**/*.d.ts", - "lib/**/*.js", - "lib/**/*.js.map", "index.d.ts", + "index.js", "index.js.map", - "index.js" + "lib/**/*.d.ts", + "lib/**/*.js", + "lib/**/*.js.map" ], "pre-commit": [ "build", "lint", "test" ], - "devDependencies": { - "@types/jest": "^30.0.0", - "@types/minimist": "^1.2.0", - "@types/sax": "^1.0.1", - "arrayify-stream": "^3.0.0", - "coveralls": "^3.0.0", - "jest": "^30.2.0", - "jest-rdf": "^2.0.0", - "manual-git-changelog": "^1.0.0", - "pre-commit": "^1.2.2", - "rdf-quad": "^2.0.0", - "rdf-test-suite": "^2.1.4", - "streamify-array": "^2.0.0", - "streamify-string": "^1.0.1", - "ts-jest": "^29.4.6", - "ts-loader": "^9.3.1", - "tslint": "^6.0.0", - "tslint-eslint-rules": "^5.3.1", - "typescript": "^6.0.0", - "webpack": "^5.73.0", - "webpack-cli": "^7.0.0" - }, "jest": { "globals": { "ts-jest": { @@ -86,7 +66,7 @@ "test": "jest ${1}", "test-watch": "jest ${1} --watch", "coveralls": "jest --coverage && cat ./coverage/lcov.info | coveralls", - "lint": "tslint index.ts lib/**/*.ts test/**/*.ts --exclude '**/*.d.ts'", + "lint": "eslint . --cache", "build": "tsc", "validate": "npm ls", "prepare": "npm run build", @@ -99,14 +79,34 @@ "version": "manual-git-changelog onversion" }, "dependencies": { + "@rubensworks/saxes": "^6.0.1", "@types/readable-stream": "^4.0.18", "buffer": "^6.0.3", "rdf-data-factory": "^2.0.2", - "relative-to-absolute-iri": "^1.0.0", "readable-stream": "^4.4.2", - "@rubensworks/saxes": "^6.0.1", + "relative-to-absolute-iri": "^1.0.0", "validate-iri": "^1.0.0" }, - "sideEffects": false, - "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e" + "devDependencies": { + "@rubensworks/eslint-config": "^3.1.0", + "@types/jest": "^30.0.0", + "@types/minimist": "^1.2.0", + "@types/sax": "^1.0.1", + "arrayify-stream": "^3.0.0", + "coveralls": "^3.0.0", + "eslint": "^8.57.0", + "jest": "^30.2.0", + "jest-rdf": "^2.0.0", + "manual-git-changelog": "^1.0.0", + "pre-commit": "^1.2.2", + "rdf-quad": "^2.0.0", + "rdf-test-suite": "^2.1.4", + "streamify-array": "^2.0.0", + "streamify-string": "^1.0.1", + "ts-jest": "^29.4.6", + "ts-loader": "^9.3.1", + "typescript": "^6.0.0", + "webpack": "^5.73.0", + "webpack-cli": "^7.0.0" + } } diff --git a/perf/RdfXmlParser-perf.ts b/perf/RdfXmlParser-perf.ts index 222a359..e6dcde1 100644 --- a/perf/RdfXmlParser-perf.ts +++ b/perf/RdfXmlParser-perf.ts @@ -1,7 +1,7 @@ #!/usr/bin/env node -import {createReadStream} from "fs"; -import {resolve} from "path"; -import {RdfXmlParser} from ".."; +import { createReadStream } from 'node:fs'; +import { resolve } from 'node:path'; +import { RdfXmlParser } from '..'; if (process.argv.length !== 3) { console.error('Usage: RdfXmlParser-perf.js filename'); @@ -9,9 +9,9 @@ if (process.argv.length !== 3) { } const fileName = resolve(process.cwd(), process.argv[2]); -const options = { baseIRI: 'file://' + fileName }; +const options = { baseIRI: `file://${fileName}` }; -const TEST = '- Parsing file ' + fileName; +const TEST = `- Parsing file ${fileName}`; console.time(TEST); let count = 0; @@ -24,6 +24,6 @@ createReadStream(fileName) }) .on('end', () => { console.timeEnd(TEST); - console.log('* Quads parsed: ' + count); - console.log('* Memory usage: ' + Math.round(process.memoryUsage().rss / 1024 / 1024) + 'MB'); + console.log(`* Quads parsed: ${count}`); + console.log(`* Memory usage: ${Math.round(process.memoryUsage().rss / 1024 / 1024)}MB`); }); diff --git a/spec/earl-meta.json b/spec/earl-meta.json index f5de8de..ff92f4a 100644 --- a/spec/earl-meta.json +++ b/spec/earl-meta.json @@ -17,4 +17,4 @@ "specificationUris": [ "https://www.w3.org/TR/rdf-syntax-grammar/" ] -} \ No newline at end of file +} diff --git a/test/RdfXmlParser-test.ts b/test/RdfXmlParser-test.ts index 945e4b7..b4f6ceb 100644 --- a/test/RdfXmlParser-test.ts +++ b/test/RdfXmlParser-test.ts @@ -1,14 +1,16 @@ -import "jest-rdf"; -import * as RDF from "@rdfjs/types"; -import {SaxesParser} from "@rubensworks/saxes"; -import {PassThrough} from "stream"; -import {RdfXmlParser} from "../lib/RdfXmlParser"; -import {DataFactory} from "rdf-data-factory"; -const streamifyString = require('streamify-string'); -import { streamifyArray } from 'streamify-array'; +import 'jest-rdf'; +import { PassThrough } from 'node:stream'; +import type * as RDF from '@rdfjs/types'; +import { SaxesParser } from '@rubensworks/saxes'; import { arrayifyStream } from 'arrayify-stream'; -import {IriValidationStrategy} from "validate-iri"; +import { DataFactory } from 'rdf-data-factory'; +import { streamifyArray } from 'streamify-array'; +import { IriValidationStrategy } from 'validate-iri'; +import { RdfXmlParser } from '../lib/RdfXmlParser'; + const quad = require('rdf-quad'); +const streamifyString = require('streamify-string'); + const DF = new DataFactory(); /* Test inspired by https://www.w3.org/TR/rdf-syntax-grammar/#section-Syntax-intro */ @@ -16,7 +18,7 @@ const DF = new DataFactory(); describe('RdfXmlParser', () => { it('MIME_TYPE to be \'application/rdf+xml\'', () => { - expect(RdfXmlParser.MIME_TYPE).toEqual('application/rdf+xml'); + expect(RdfXmlParser.MIME_TYPE).toBe('application/rdf+xml'); }); it('should be constructable without args', () => { @@ -55,7 +57,7 @@ describe('RdfXmlParser', () => { const instance = new RdfXmlParser({ baseIRI: 'myBaseIRI' }); expect(instance).toBeInstanceOf(RdfXmlParser); expect(( instance).dataFactory).toBeInstanceOf(DataFactory); - expect(( instance).baseIRI).toEqual('myBaseIRI'); + expect(( instance).baseIRI).toBe('myBaseIRI'); expect(( instance).defaultGraph).toBe(DF.defaultGraph()); expect(( instance).saxParser).toBeInstanceOf(SaxesParser); }); @@ -65,7 +67,7 @@ describe('RdfXmlParser', () => { const instance = new RdfXmlParser({ defaultGraph }); expect(instance).toBeInstanceOf(RdfXmlParser); expect(( instance).dataFactory).toBeInstanceOf(DataFactory); - expect(( instance).baseIRI).toEqual(''); + expect(( instance).baseIRI).toBe(''); expect(( instance).defaultGraph).toBe(defaultGraph); expect(( instance).saxParser).toBeInstanceOf(SaxesParser); }); @@ -76,7 +78,7 @@ describe('RdfXmlParser', () => { const instance = new RdfXmlParser({ dataFactory, baseIRI: 'myBaseIRI', defaultGraph }); expect(instance).toBeInstanceOf(RdfXmlParser); expect(( instance).dataFactory).toBe(dataFactory); - expect(( instance).baseIRI).toEqual('myBaseIRI'); + expect(( instance).baseIRI).toBe('myBaseIRI'); expect(( instance).defaultGraph).toBe(defaultGraph); expect(( instance).saxParser).toBeInstanceOf(SaxesParser); }); @@ -101,13 +103,12 @@ describe('RdfXmlParser', () => { parser = new RdfXmlParser(); }); - it('should delegate xml errors', () => { - return expect(parse(new RdfXmlParser(), ` + it('should delegate xml errors', async() => { + await expect(parse(new RdfXmlParser(), ` abc`)).rejects.toBeTruthy(); }); describe('#valueToUri', () => { - it('create a named node from an absolute URI when no baseIRI is given', () => { expect(parser.valueToUri('http://example.org/', {})) .toEqual(DF.namedNode('http://example.org/')); @@ -164,7 +165,7 @@ abc`)).rejects.toBeTruthy(); }); it('error for a non-absolute baseIRI', () => { - expect(() => parser.valueToUri('abc', { baseIRI: 'def' })).toThrow(); + expect(() => parser.valueToUri('abc', { baseIRI: 'def' })).toThrow('Found invalid baseIRI'); }); it('create a named node that has the baseIRI scheme if the value starts with //', () => { @@ -214,88 +215,93 @@ abc`)).rejects.toBeTruthy(); }); describe('should error with line numbers', () => { - beforeEach(() => { parser = new RdfXmlParser({ trackPosition: true }); }); // 2.10 - it('on node elements with both rdf:about and rdf:nodeID', async () => { - return expect(parse(parser, ` + it('on node elements with both rdf:about and rdf:nodeID', async() => { + await expect(parse(parser, ` `)).rejects.toEqual( new Error('Line 5 column 91: Only one of rdf:about, rdf:nodeID and rdf:ID can be present, ' + - 'while abc and http://www.w3.org/TR/rdf-syntax-grammar where found.')); + 'while abc and http://www.w3.org/TR/rdf-syntax-grammar where found.'), + ); }); // 2.10 - it('on node elements with both rdf:nodeID and rdf:about', async () => { - return expect(parse(parser, ` + it('on node elements with both rdf:nodeID and rdf:about', async() => { + await expect(parse(parser, ` `)).rejects.toEqual( new Error('Line 5 column 91: Only one of rdf:about, rdf:nodeID and rdf:ID can be present, ' + - 'while http://www.w3.org/TR/rdf-syntax-grammar and abc where found.')); + 'while http://www.w3.org/TR/rdf-syntax-grammar and abc where found.'), + ); }); }); describe('should error', () => { // 2.10 - it('on node elements with both rdf:about and rdf:nodeID', async () => { - return expect(parse(parser, ` + it('on node elements with both rdf:about and rdf:nodeID', async() => { + await expect(parse(parser, ` `)).rejects.toEqual( new Error('Only one of rdf:about, rdf:nodeID and rdf:ID can be present, ' + - 'while abc and http://www.w3.org/TR/rdf-syntax-grammar where found.')); + 'while abc and http://www.w3.org/TR/rdf-syntax-grammar where found.'), + ); }); // 2.10 - it('on node elements with both rdf:nodeID and rdf:about', async () => { - return expect(parse(parser, ` + it('on node elements with both rdf:nodeID and rdf:about', async() => { + await expect(parse(parser, ` `)).rejects.toEqual( new Error('Only one of rdf:about, rdf:nodeID and rdf:ID can be present, ' + - 'while http://www.w3.org/TR/rdf-syntax-grammar and abc where found.')); + 'while http://www.w3.org/TR/rdf-syntax-grammar and abc where found.'), + ); }); // 2.10 - it('on node elements with both rdf:ID and rdf:nodeID', async () => { - return expect(parse(parser, ` + it('on node elements with both rdf:ID and rdf:nodeID', async() => { + await expect(parse(parser, ` `)).rejects.toEqual( new Error('Only one of rdf:about, rdf:nodeID and rdf:ID can be present, ' + - 'while abc and #xyz where found.')); + 'while abc and #xyz where found.'), + ); }); // 2.10 - it('on node elements with both rdf:nodeID and rdf:ID', async () => { - return expect(parse(parser, ` + it('on node elements with both rdf:nodeID and rdf:ID', async() => { + await expect(parse(parser, ` `)).rejects.toEqual( new Error('Only one of rdf:about, rdf:nodeID and rdf:ID can be present, ' + - 'while xyz and abc where found.')); + 'while xyz and abc where found.'), + ); }); // 2.10 - it('on node elements with both rdf:about and rdf:ID', async () => { - return expect(parse(parser, ` + it('on node elements with both rdf:about and rdf:ID', async() => { + await expect(parse(parser, ` `)).rejects.toEqual( new Error('Only one of rdf:about, rdf:nodeID and rdf:ID can be present, ' + - 'while abc and http://www.w3.org/TR/rdf-syntax-grammar where found.')); + 'while abc and http://www.w3.org/TR/rdf-syntax-grammar where found.'), + ); }); // 2.10 - it('on node elements with both rdf:ID and rdf:about', async () => { - return expect(parse(parser, ` + it('on node elements with both rdf:ID and rdf:about', async() => { + await expect(parse(parser, ` `)).rejects.toEqual( new Error('Only one of rdf:about, rdf:nodeID and rdf:ID can be present, ' + - 'while http://www.w3.org/TR/rdf-syntax-grammar and #abc where found.')); + 'while http://www.w3.org/TR/rdf-syntax-grammar and #abc where found.'), + ); }); // 2.10 - it('when multiple equal rdf:ID occurrences on node elements are found', async () => { - return expect(parse(parser, ` + it('when multiple equal rdf:ID occurrences on node elements are found', async() => { + await expect(parse(parser, ` `)).rejects.toEqual( - new Error('Found multiple occurrences of rdf:ID=\'http://base.org#abc\'.')); + new Error('Found multiple occurrences of rdf:ID=\'http://base.org#abc\'.'), + ); }); // 2.17 - it('when multiple equal rdf:ID occurrences on property elements are found', async () => { - return expect(parse(parser, ` + it('when multiple equal rdf:ID occurrences on property elements are found', async() => { + await expect(parse(parser, ` 2 `)).rejects.toEqual( - new Error('Found multiple occurrences of rdf:ID=\'http://base.org#abc\'.')); + new Error('Found multiple occurrences of rdf:ID=\'http://base.org#abc\'.'), + ); }); // 2.10, 2.17 - it('when multiple equal rdf:ID occurrences on node and property elements are found', async () => { - return expect(parse(parser, ` + it('when multiple equal rdf:ID occurrences on node and property elements are found', async() => { + await expect(parse(parser, ` 1 `)).rejects.toEqual( - new Error('Found multiple occurrences of rdf:ID=\'http://base.org#abc\'.')); + new Error('Found multiple occurrences of rdf:ID=\'http://base.org#abc\'.'), + ); }); - it('when rdf:ID is used without base', async () => { - return expect(parse(parser, ` + it('when rdf:ID is used without base', async() => { + await expect(parse(parser, ` @@ -370,12 +381,13 @@ abc`)).rejects.toBeTruthy(); 1 `)).rejects.toEqual( - new Error('Invalid IRI according to RDF Turtle: \'#abc\'')); + new Error('Invalid IRI according to RDF Turtle: \'#abc\''), + ); }); // 2.10 - it('on property elements with both rdf:nodeID and rdf:about', async () => { - return expect(parse(parser, ` + it('on property elements with both rdf:nodeID and rdf:about', async() => { + await expect(parse(parser, ` @@ -383,12 +395,13 @@ abc`)).rejects.toBeTruthy(); `)).rejects.toEqual( - new Error('Found both rdf:resource (http://www.w3.org/TR/rdf-syntax-grammar) and rdf:nodeID (abc).')); + new Error('Found both rdf:resource (http://www.w3.org/TR/rdf-syntax-grammar) and rdf:nodeID (abc).'), + ); }); // 2.10 - it('on property elements with both rdf:nodeID and rdf:about', async () => { - return expect(parse(parser, ` + it('on property elements with both rdf:resource and rdf:nodeID', async() => { + await expect(parse(parser, ` @@ -399,8 +412,8 @@ abc`)).rejects.toBeTruthy(); }); // 2.11 - it('on property elements with both rdf:parseType="Resource" and rdf:resource', async () => { - return expect(parse(parser, ` + it('on property elements with both rdf:parseType="Resource" and rdf:resource', async() => { + await expect(parse(parser, ` @@ -409,12 +422,13 @@ abc`)).rejects.toBeTruthy(); `)).rejects.toEqual( new Error('rdf:parseType is not allowed on property elements with rdf:resource ' + - '(http://www.w3.org/TR/rdf-syntax-grammar)')); + '(http://www.w3.org/TR/rdf-syntax-grammar)'), + ); }); // 2.11 - it('on property elements with both rdf:parseType="Resource" and rdf:datatype', async () => { - return expect(parse(parser, ` + it('on property elements with both rdf:parseType="Resource" and rdf:datatype', async() => { + await expect(parse(parser, ` @@ -423,12 +437,13 @@ abc`)).rejects.toBeTruthy(); `)).rejects.toEqual( new Error('rdf:parseType is not allowed on property elements with rdf:datatype ' + - '(http://www.w3.org/TR/rdf-syntax-grammar)')); + '(http://www.w3.org/TR/rdf-syntax-grammar)'), + ); }); // 2.12 - it('on property elements with both non-rdf:* properties and rdf:datatype', async () => { - return expect(parse(parser, ` + it('on property elements with both non-rdf:* properties and rdf:datatype', async() => { + await expect(parse(parser, ` @@ -440,8 +455,8 @@ abc`)).rejects.toBeTruthy(); }); // 2.11 - it('on property elements with both rdf:parseType="Resource" and rdf:nodeID', async () => { - return expect(parse(parser, ` + it('on property elements with both rdf:parseType="Resource" and rdf:nodeID', async() => { + await expect(parse(parser, ` @@ -453,8 +468,8 @@ abc`)).rejects.toBeTruthy(); }); // 2.12 - it('on property elements with both non-rdf:* properties and rdf:nodeID', async () => { - return expect(parse(parser, ` + it('on property elements with both non-rdf:* properties and rdf:nodeID', async() => { + await expect(parse(parser, ` @@ -465,8 +480,8 @@ abc`)).rejects.toBeTruthy(); }); // 2.11 - it('on property elements with both rdf:resource and rdf:parseType="Resource"', async () => { - return expect(parse(parser, ` + it('on property elements with both rdf:resource and rdf:parseType="Resource"', async() => { + await expect(parse(parser, ` @@ -475,12 +490,13 @@ abc`)).rejects.toBeTruthy(); `)).rejects.toEqual( new Error('rdf:parseType is not allowed on property elements with rdf:nodeID ' + - 'or rdf:resource (http://www.w3.org/TR/rdf-syntax-grammar)')); + 'or rdf:resource (http://www.w3.org/TR/rdf-syntax-grammar)'), + ); }); // 2.12 - it('on property elements with both rdf:datatype and rdf:parseType="Resource"', async () => { - return expect(parse(parser, ` + it('on property elements with both rdf:datatype and rdf:parseType="Resource"', async() => { + await expect(parse(parser, ` @@ -489,12 +505,13 @@ abc`)).rejects.toBeTruthy(); `)).rejects.toEqual( new Error('rdf:parseType is not allowed on property elements with rdf:datatype ' + - '(http://www.w3.org/TR/rdf-syntax-grammar)')); + '(http://www.w3.org/TR/rdf-syntax-grammar)'), + ); }); // 2.11 - it('on property elements with both rdf:nodeID and rdf:parseType="Resource"', async () => { - return expect(parse(parser, ` + it('on property elements with both rdf:nodeID and rdf:parseType="Resource"', async() => { + await expect(parse(parser, ` @@ -506,8 +523,8 @@ abc`)).rejects.toBeTruthy(); }); // 2.11, 2.12 - it('on property elements with attributes and rdf:parseType="Resource"', async () => { - return expect(parse(parser, ` + it('on property elements with attributes and rdf:parseType="Resource"', async() => { + await expect(parse(parser, ` @@ -519,8 +536,8 @@ abc`)).rejects.toBeTruthy(); }); // 2.11 - it('on property elements with rdf:parseType="Resource" and attributes', async () => { - return expect(parse(parser, ` + it('on property elements with rdf:parseType="Resource" and attributes', async() => { + await expect(parse(parser, ` @@ -531,8 +548,8 @@ abc`)).rejects.toBeTruthy(); }); // 2.12 - it('on property elements with rdf:datatype and attributes', async () => { - return expect(parse(parser, ` + it('on property elements with rdf:datatype and attributes', async() => { + await expect(parse(parser, ` { - return expect(parse(parser, ` + it('on Description as property element name', async() => { + await expect(parse(parser, ` @@ -554,8 +571,8 @@ abc`)).rejects.toBeTruthy(); }); // Forbidden property element name - it('on ID as property element name', async () => { - return expect(parse(parser, ` + it('on ID as property element name', async() => { + await expect(parse(parser, ` @@ -564,8 +581,8 @@ abc`)).rejects.toBeTruthy(); }); // Forbidden property element name - it('on RDF as property element name', async () => { - return expect(parse(parser, ` + it('on RDF as property element name', async() => { + await expect(parse(parser, ` @@ -574,8 +591,8 @@ abc`)).rejects.toBeTruthy(); }); // Forbidden property element name - it('on about as property element name', async () => { - return expect(parse(parser, ` + it('on about as property element name', async() => { + await expect(parse(parser, ` @@ -584,8 +601,8 @@ abc`)).rejects.toBeTruthy(); }); // Forbidden property element name - it('on bagID as property element name', async () => { - return expect(parse(parser, ` + it('on bagID as property element name', async() => { + await expect(parse(parser, ` @@ -594,8 +611,8 @@ abc`)).rejects.toBeTruthy(); }); // Forbidden property element name - it('on parseType as property element name', async () => { - return expect(parse(parser, ` + it('on parseType as property element name', async() => { + await expect(parse(parser, ` @@ -604,8 +621,8 @@ abc`)).rejects.toBeTruthy(); }); // Forbidden property element name - it('on resource as property element name', async () => { - return expect(parse(parser, ` + it('on resource as property element name', async() => { + await expect(parse(parser, ` @@ -614,8 +631,8 @@ abc`)).rejects.toBeTruthy(); }); // Forbidden property element name - it('on nodeID as property element name', async () => { - return expect(parse(parser, ` + it('on nodeID as property element name', async() => { + await expect(parse(parser, ` @@ -624,8 +641,8 @@ abc`)).rejects.toBeTruthy(); }); // Forbidden property element name - it('on aboutEach as property element name', async () => { - return expect(parse(parser, ` + it('on aboutEach as property element name', async() => { + await expect(parse(parser, ` @@ -634,8 +651,8 @@ abc`)).rejects.toBeTruthy(); }); // Forbidden property element name - it('on aboutEachPrefix as property element name', async () => { - return expect(parse(parser, ` + it('on aboutEachPrefix as property element name', async() => { + await expect(parse(parser, ` @@ -644,88 +661,88 @@ abc`)).rejects.toBeTruthy(); }); // Forbidden node element name - it('on RDF as node element name', async () => { - return expect(parse(parser, ` + it('on RDF as node element name', async() => { + await expect(parse(parser, ` `)).rejects.toEqual(new Error('Illegal node element name: RDF')); }); // Forbidden node element name - it('on ID as node element name', async () => { - return expect(parse(parser, ` + it('on ID as node element name', async() => { + await expect(parse(parser, ` `)).rejects.toEqual(new Error('Illegal node element name: ID')); }); // Forbidden node element name - it('on about as node element name', async () => { - return expect(parse(parser, ` + it('on about as node element name', async() => { + await expect(parse(parser, ` `)).rejects.toEqual(new Error('Illegal node element name: about')); }); // Forbidden node element name - it('on bagID as node element name', async () => { - return expect(parse(parser, ` + it('on bagID as node element name', async() => { + await expect(parse(parser, ` `)).rejects.toEqual(new Error('Illegal node element name: bagID')); }); // Forbidden node element name - it('on parseType as node element name', async () => { - return expect(parse(parser, ` + it('on parseType as node element name', async() => { + await expect(parse(parser, ` `)).rejects.toEqual(new Error('Illegal node element name: parseType')); }); // Forbidden node element name - it('on resource as node element name', async () => { - return expect(parse(parser, ` + it('on resource as node element name', async() => { + await expect(parse(parser, ` `)).rejects.toEqual(new Error('Illegal node element name: resource')); }); // Forbidden node element name - it('on nodeID as node element name', async () => { - return expect(parse(parser, ` + it('on nodeID as node element name', async() => { + await expect(parse(parser, ` `)).rejects.toEqual(new Error('Illegal node element name: nodeID')); }); // Forbidden node element name - it('on li as node element name', async () => { - return expect(parse(parser, ` + it('on li as node element name', async() => { + await expect(parse(parser, ` `)).rejects.toEqual(new Error('Illegal node element name: li')); }); // Forbidden node element name - it('on aboutEach as node element name', async () => { - return expect(parse(parser, ` + it('on aboutEach as node element name', async() => { + await expect(parse(parser, ` `)).rejects.toEqual(new Error('Illegal node element name: aboutEach')); }); // Forbidden node element name - it('on aboutEachPrefix as node element name', async () => { - return expect(parse(parser, ` + it('on aboutEachPrefix as node element name', async() => { + await expect(parse(parser, ` `)).rejects.toEqual(new Error('Illegal node element name: aboutEachPrefix')); }); // Illegal XML name production - it('on rdf:nodeID with illegal XML Name on a property element', async () => { - return expect(parse(parser, ` + it('on rdf:nodeID with illegal XML Name on a property element', async() => { + await expect(parse(parser, ` @@ -737,8 +754,8 @@ abc`)).rejects.toBeTruthy(); }); // Illegal XML name production - it('on rdf:nodeID with illegal XML Name on a node element', async () => { - return expect(parse(parser, ` + it('on rdf:nodeID with illegal XML Name on a node element', async() => { + await expect(parse(parser, ` @@ -747,8 +764,8 @@ abc`)).rejects.toBeTruthy(); }); // Illegal XML name production - it('on rdf:nodeID with illegal blank node on a resource node element', async () => { - return expect(parse(parser, ` + it('on rdf:nodeID with illegal blank node on a resource node element', async() => { + await expect(parse(parser, ` @@ -759,8 +776,8 @@ abc`)).rejects.toBeTruthy(); }); // Illegal XML name production - it('on rdf:ID with illegal XML Name', async () => { - return expect(parse(parser, ` + it('on rdf:ID with illegal XML Name', async() => { + await expect(parse(parser, ` @@ -774,8 +791,8 @@ abc`)).rejects.toBeTruthy(); }); // Deprecated rdf:bagID - it('on rdf:bagID on a property element', async () => { - return expect(parse(parser, ` + it('on rdf:bagID on a property element', async() => { + await expect(parse(parser, ` @@ -787,8 +804,8 @@ abc`)).rejects.toBeTruthy(); }); // Deprecated rdf:bagID - it('on rdf:bagID on a node element', async () => { - return expect(parse(parser, ` + it('on rdf:bagID on a node element', async() => { + await expect(parse(parser, ` @@ -797,8 +814,8 @@ abc`)).rejects.toBeTruthy(); }); // Deprecated rdf:aboutEach - it('on rdf:aboutEach', async () => { - return expect(parse(parser, ` + it('on rdf:aboutEach', async() => { + await expect(parse(parser, ` @@ -815,8 +832,8 @@ abc`)).rejects.toBeTruthy(); }); // Deprecated rdf:aboutEachPrefix - it('on rdf:aboutEachPrefix', async () => { - return expect(parse(parser, ` + it('on rdf:aboutEachPrefix', async() => { + await expect(parse(parser, ` @@ -832,8 +849,8 @@ abc`)).rejects.toBeTruthy(); }); // Forbidden rdf:li on node elements - it('on li node elements', async () => { - return expect(parse(parser, ` + it('on li node elements', async() => { + await expect(parse(parser, ` @@ -841,19 +858,20 @@ abc`)).rejects.toBeTruthy(); `)).rejects.toEqual(new Error('rdf:li on node elements are not supported.')); }); - it('on unknown prefixes in property tags', async () => { - return expect(parse(parser, ` + it('on unknown prefixes in property tags', async() => { + await expect(parse(parser, ` 1 `)).rejects.toEqual( - new Error('5:13: unbound namespace prefix: "ex".')); + new Error('5:13: unbound namespace prefix: "ex".'), + ); }); - it('on illegal its:dir values', async () => { - return expect(parse(parser, ` + it('on illegal its:dir values', async() => { + await expect(parse(parser, ` RDF 1.1 XML Syntax `)).rejects.toEqual( - new Error('Base directions must either be \'ltr\' or \'rtl\', while \'abc\' was found.')); + new Error('Base directions must either be \'ltr\' or \'rtl\', while \'abc\' was found.'), + ); }); - it('on rdf:parseType="Triple" with missing predicate in triple term', async () => { - return expect(parse(parser, ` + it('on rdf:parseType="Triple" with missing predicate in triple term', async() => { + await expect(parse(parser, ` `)).rejects.toEqual( - new Error('Expected exactly one triple term in rdf:parseType="Triple" but got 0')); + new Error('Expected exactly one triple term in rdf:parseType="Triple" but got 0'), + ); }); - it('on rdf:parseType="Triple" with multiple triple terms', async () => { - return expect(parse(parser, ` + it('on rdf:parseType="Triple" with multiple triple terms', async() => { + await expect(parse(parser, ` `)).rejects.toEqual( - new Error('Expected exactly one triple term in rdf:parseType="Triple" but got 2')); + new Error('Expected exactly one triple term in rdf:parseType="Triple" but got 2'), + ); }); }); describe('should parse', () => { // 2.6 - it('an empty document', async () => { - return expect(await parse(parser, ` -`)) + it('an empty document', async() => { + await expect(parse(parser, ` +`)).resolves .toBeRdfIsomorphic([]); }); // 2.6 - it('and ignore unknown xml:* attributes', async () => { - return expect(await parse(parser, ` + it('and ignore unknown xml:* attributes', async() => { + await expect(parse(parser, ` -`)) +`)).resolves .toBeRdfIsomorphic([]); }); // 2.6 - it('an empty rdf:Description', async () => { - return expect(await parse(parser, ` + it('an empty rdf:Description', async() => { + await expect(parse(parser, ` -`)) +`)).resolves .toBeRdfIsomorphic([]); }); // 2.6 - it('a self-closing empty rdf:Description', async () => { - return expect(await parse(parser, ` + it('a self-closing empty rdf:Description', async() => { + await expect(parse(parser, ` -`)) +`)).resolves .toBeRdfIsomorphic([]); }); // 2.6 - it('an rdf:Description without attributes', async () => { - return expect(await parse(parser, ` + it('an rdf:Description without attributes', async() => { + await expect(parse(parser, ` -`)) +`)).resolves .toBeRdfIsomorphic([]); }); // 2.6 - it('a self-closing rdf:Description without attributes', async () => { - return expect(await parse(parser, ` + it('a self-closing rdf:Description without attributes', async() => { + await expect(parse(parser, ` -`)) +`)).resolves .toBeRdfIsomorphic([]); }); // 2.5 - it('an rdf:Description with an attribute', async () => { - return expect(await parse(parser, ` + it('an rdf:Description with an attribute', async() => { + await expect(parse(parser, ` -`)) +`)).resolves .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', - 'http://purl.org/dc/elements/1.1/title', '"RDF1.1 XML Syntax"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF1.1 XML Syntax"'), ]); }); - it('declaration of the default namespace on the property element', async () => { - return expect(await parse(parser, ` + it('declaration of the default namespace on the property element', async() => { + await expect(parse(parser, ` RDF1.1 XML Syntax -`)) - .toBeRdfIsomorphic([ - quad('http://example.com', - 'http://purl.org/dc/terms/title', '"RDF1.1 XML Syntax"@en'), - ]); +`)).resolves + .toBeRdfIsomorphic([ + quad('http://example.com', 'http://purl.org/dc/terms/title', '"RDF1.1 XML Syntax"@en'), + ]); }); - it('declaration of the namespace on the property element', async () => { - return expect(await parse(parser, ` + it('declaration of the namespace on the property element', async() => { + await expect(parse(parser, ` RDF1.1 XML Syntax -`)) - .toBeRdfIsomorphic([ - quad('http://example.com', - 'http://purl.org/dc/terms/title', '"RDF1.1 XML Syntax"@en'), - ]); +`)).resolves + .toBeRdfIsomorphic([ + quad('http://example.com', 'http://purl.org/dc/terms/title', '"RDF1.1 XML Syntax"@en'), + ]); }); - it('declaration of the namespace on the resource element', async () => { - return expect(await parse(parser, ` + it('declaration of the namespace on the resource element', async() => { + await expect(parse(parser, ` RDF1.1 XML Syntax -`)) - .toBeRdfIsomorphic([ - quad('http://example.com', - 'http://purl.org/dc/terms/title', '"RDF1.1 XML Syntax"@en'), - ]); +`)).resolves + .toBeRdfIsomorphic([ + quad('http://example.com', 'http://purl.org/dc/terms/title', '"RDF1.1 XML Syntax"@en'), + ]); }); - it('declaration of the default namespace on the resource element', async () => { - return expect(await parse(parser, ` + it('declaration of the default namespace on the resource element', async() => { + await expect(parse(parser, ` RDF1.1 XML Syntax -`)) - .toBeRdfIsomorphic([ - quad('http://example.com', - 'http://purl.org/dc/terms/title', '"RDF1.1 XML Syntax"@en'), - ]); +`)).resolves + .toBeRdfIsomorphic([ + quad('http://example.com', 'http://purl.org/dc/terms/title', '"RDF1.1 XML Syntax"@en'), + ]); }); - - it('declaration of the namespace on a typed resource element', async () => { - return expect(await parse(parser, ` + it('declaration of the namespace on a typed resource element', async() => { + await expect(parse(parser, ` -`)) - .toBeRdfIsomorphic([ - quad('http://example.com', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://purl.org/dc/terms/Standard'), - ]); +`)).resolves + .toBeRdfIsomorphic([ + quad('http://example.com', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://purl.org/dc/terms/Standard'), + ]); }); - it('cdata support', async () => { - return expect(await parse(parser, ` + it('cdata support', async() => { + await expect(parse(parser, ` ]]> -`)) - .toBeRdfIsomorphic([ - quad('http://example.com', - 'http://purl.org/dc/terms/title', '"A title with a "'), - ]); +`)).resolves + .toBeRdfIsomorphic([ + quad('http://example.com', 'http://purl.org/dc/terms/title', '"A title with a "'), + ]); }); - it('DOCTYPE and ENTITY\'s', async () => { - return expect(await parse(parser, ` { + await expect(parse(parser, ` ]> @@ -1072,15 +1085,14 @@ abc`)).rejects.toBeTruthy(); -`)) +`)).resolves .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', - 'http://purl.org/dc/elements/1.1/title', '"RDF1.1 XML Syntax"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF1.1 XML Syntax"'), ]); }); - it('DOCTYPE and ENTITY\'s with single quotes', async () => { - return expect(await parse(parser, ` { + await expect(parse(parser, ` ]> @@ -1089,15 +1101,14 @@ abc`)).rejects.toBeTruthy(); -`)) +`)).resolves .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', - 'http://purl.org/dc/elements/1.1/title', '"RDF1.1 XML Syntax"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF1.1 XML Syntax"'), ]); }); - it('DOCTYPE and ENTITY\'s in xml:base with multiple whitespaces', async () => { - return expect(await parse(parser, ` { + await expect(parse(parser, ` ]> @@ -1110,17 +1121,15 @@ abc`)).rejects.toBeTruthy(); ABC -`)) +`)).resolves .toBeRdfIsomorphic([ - quad('http://purl.oclc.org/NET/ssnx/ssn', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/2002/07/owl#Ontology'), - quad('http://purl.oclc.org/NET/ssnx/ssn', - 'http://www.w3.org/2000/01/rdf-schema#comment', '"ABC"'), + quad('http://purl.oclc.org/NET/ssnx/ssn', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/2002/07/owl#Ontology'), + quad('http://purl.oclc.org/NET/ssnx/ssn', 'http://www.w3.org/2000/01/rdf-schema#comment', '"ABC"'), ]); }); - it('DOCTYPE and ENTITY\'s in xml:base', async () => { - return expect(await parse(parser, ` { + await expect(parse(parser, ` ]> @@ -1133,17 +1142,15 @@ abc`)).rejects.toBeTruthy(); ABC -`)) +`)).resolves .toBeRdfIsomorphic([ - quad('http://purl.oclc.org/NET/ssnx/ssn', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/2002/07/owl#Ontology'), - quad('http://purl.oclc.org/NET/ssnx/ssn', - 'http://www.w3.org/2000/01/rdf-schema#comment', '"ABC"'), + quad('http://purl.oclc.org/NET/ssnx/ssn', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/2002/07/owl#Ontology'), + quad('http://purl.oclc.org/NET/ssnx/ssn', 'http://www.w3.org/2000/01/rdf-schema#comment', '"ABC"'), ]); }); - it('DOCTYPE and ENTITY\'s in xmlns prefixes', async () => { - return expect(await parse(parser, ` { + await expect(parse(parser, ` @@ -1157,47 +1164,45 @@ abc`)).rejects.toBeTruthy(); ABC -`)) +`)).resolves .toBeRdfIsomorphic([ - quad('http://purl.oclc.org/NET/ssnx/ssn', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/2002/07/owl#Ontology'), - quad('http://purl.oclc.org/NET/ssnx/ssn', - 'http://www.w3.org/2000/01/rdf-schema#comment', '"ABC"'), + quad('http://purl.oclc.org/NET/ssnx/ssn', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/2002/07/owl#Ontology'), + quad('http://purl.oclc.org/NET/ssnx/ssn', 'http://www.w3.org/2000/01/rdf-schema#comment', '"ABC"'), ]); }); // 2.5 - it('an rdf:Description without rdf:about and with an attribute', async () => { - return expect(await parse(parser, ` + it('an rdf:Description without rdf:about and with an attribute', async() => { + await expect(parse(parser, ` -`)) +`)).resolves .toBeRdfIsomorphic([ quad('_:b', 'http://purl.org/dc/elements/1.1/title', '"RDF1.1 XML Syntax"'), ]); }); // 2.5 - it('an rdf:Description without rdf:about and with an attribute with a custom default', async () => { + it('an rdf:Description without rdf:about and with an attribute with a custom default', async() => { const myParser = new RdfXmlParser({ defaultGraph: DF.namedNode('http://example.org/g1') }); - return expect(await parse(myParser, ` + await expect(parse(myParser, ` -`)) +`)).resolves .toBeRdfIsomorphic([ quad('_:b', 'http://purl.org/dc/elements/1.1/title', '"RDF1.1 XML Syntax"', 'http://example.org/g1'), ]); }); // 2.5 - it('an rdf:Description with multiple attributes', async () => { - return expect(await parse(parser, ` + it('an rdf:Description with multiple attributes', async() => { + await expect(parse(parser, ` @@ -1205,17 +1210,15 @@ abc`)).rejects.toBeTruthy(); dc:title1="RDF1.1 XML Syntax" dc:title2="RDF1.1 XML Syntax bis"> -`)) +`)).resolves .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', - 'http://purl.org/dc/elements/1.1/title1', '"RDF1.1 XML Syntax"'), - quad('http://www.w3.org/TR/rdf-syntax-grammar', - 'http://purl.org/dc/elements/1.1/title2', '"RDF1.1 XML Syntax bis"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title1', '"RDF1.1 XML Syntax"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title2', '"RDF1.1 XML Syntax bis"'), ]); }); // 2.5 - it('an rdf:Description without rdf:about with multiple attributes and have the same blank node', async () => { + it('an rdf:Description without rdf:about with multiple attributes and have the same blank node', async() => { const array = await parse(parser, ` `); - return expect(array).toBeRdfIsomorphic([ + await expect(array).toBeRdfIsomorphic([ quad('_:b', 'http://purl.org/dc/elements/1.1/title1', '"RDF1.1 XML Syntax"'), quad('_:b', 'http://purl.org/dc/elements/1.1/title2', '"RDF1.1 XML Syntax bis"'), ]); }); - it('an rdf:Description with an empty property element should define an empty literal', async () => { - return expect(await parse(parser, ` + it('an rdf:Description with an empty property element should define an empty literal', async() => { + await expect(parse(parser, ` -`)) +`)).resolves .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', - 'http://example.org/stuff/1.0/editor', '""'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '""'), ]); }); // 2.2 - it('an rdf:Description with a valid property element', async () => { - return expect(await parse(parser, ` + it('an rdf:Description with a valid property element', async() => { + await expect(parse(parser, ` @@ -1255,15 +1257,14 @@ abc`)).rejects.toBeTruthy(); -`)) +`)).resolves .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', - 'http://example.org/stuff/1.0/editor', 'http://purl.org/net/dajobe/'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', 'http://purl.org/net/dajobe/'), ]); }); // 2.2 - it('nested property tags', async () => { + it('nested property tags', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('_:b1', 'http://example.org/stuff/1.0/editor', '_:b2'), quad('_:b2', 'http://example.org/stuff/1.0/homePage', '_:b3'), @@ -1287,7 +1288,7 @@ abc`)).rejects.toBeTruthy(); }); // 2.2 - it('nested property tags with IRIs', async () => { + it('nested property tags with IRIs', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b1'), quad('_:b1', 'http://example.org/stuff/1.0/homePage', 'http://purl.org/net/dajobe/'), @@ -1311,7 +1312,7 @@ abc`)).rejects.toBeTruthy(); }); // 2.3 - it('property values with strings', async () => { + it('property values with strings', async() => { const array = await parse(parser, ` RDF 1.1 XML Syntax `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"'), ]); }); // 2.3 - it('property values with empty strings', async () => { + it('property values with empty strings', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '""'), ]); }); // 2.2 - it('multiple rdf:Descriptions', async () => { + it('multiple rdf:Descriptions', async() => { const array = await parse(parser, ` RDF 1.1 XML Syntax `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b1'), quad('_:b1', 'http://example.org/stuff/1.0/homePage', 'http://purl.org/net/dajobe/'), quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b2'), quad('_:b2', 'http://example.org/stuff/1.0/fullName', '"Dave Beckett"'), - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"'), ]); }); // 2.3 - it('multiple abbreviated rdf:Descriptions', async () => { + it('multiple abbreviated rdf:Descriptions', async() => { const array = await parse(parser, ` RDF 1.1 XML Syntax `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b1'), quad('_:b1', 'http://example.org/stuff/1.0/homePage', 'http://purl.org/net/dajobe/'), quad('_:b1', 'http://example.org/stuff/1.0/fullName', '"Dave Beckett"'), - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"'), ]); }); // 2.4 - it('empty property elements with rdf:resource', async () => { + it('empty property elements with rdf:resource', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/homePage', - 'http://purl.org/net/dajobe/'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/homePage', 'http://purl.org/net/dajobe/'), ]); }); // 2.4 - it('empty property elements with rdf:resource mixed with other tags', async () => { + it('empty property elements with rdf:resource mixed with other tags', async() => { const array = await parse(parser, ` RDF 1.1 XML Syntax `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b1'), quad('_:b1', 'http://example.org/stuff/1.0/homePage', 'http://purl.org/net/dajobe/'), quad('_:b1', 'http://example.org/stuff/1.0/fullName', '"Dave Beckett"'), - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"'), ]); }); // 2.7 - it('xml:lang on node elements', async () => { + it('xml:lang on node elements', async() => { const array = await parse(parser, ` RDF 1.1 XML Syntax `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"@en-us'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"@en-us'), ]); }); // 2.8 - it('its:dir on node elements', async () => { + it('its:dir on node elements', async() => { const array = await parse(parser, ` RDF 1.1 XML Syntax `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"@en-us--ltr'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"@en-us--ltr'), + ]); }); // 2.7 - it('xml:lang on nested node elements', async () => { + it('xml:lang on nested node elements', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b'), quad('_:b', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"@en-us'), @@ -1512,7 +1506,7 @@ abc`)).rejects.toBeTruthy(); }); // 2.8 - it('its:dir on nested node elements', async () => { + it('its:dir on nested node elements', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b'), - quad('_:b', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"@en-us--ltr'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b'), + quad('_:b', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"@en-us--ltr'), + ]); }); // 2.7 - it('xml:lang resets on node elements', async () => { + it('xml:lang resets on node elements', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b'), quad('_:b', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"'), @@ -1556,7 +1550,7 @@ abc`)).rejects.toBeTruthy(); }); // 2.8 - it('its:dir resets on node elements', async () => { + it('its:dir resets on node elements', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b'), - quad('_:b', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b'), + quad('_:b', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"'), + ]); }); // 2.7 - it('xml:lang on property elements', async () => { + it('xml:lang on property elements', async() => { const array = await parse(parser, ` RDF 1.1 XML Syntax `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"@en-us'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"@en-us'), ]); }); // 2.8 - it('its:dir on property elements', async () => { + it('its:dir on property elements', async() => { const array = await parse(parser, ` RDF 1.1 XML Syntax `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"@en-us--rtl'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"@en-us--rtl'), + ]); }); // 2.7 - it('xml:lang resets on property elements', async () => { + it('xml:lang resets on property elements', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b'), quad('_:b', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"'), @@ -1635,7 +1627,7 @@ abc`)).rejects.toBeTruthy(); }); // 2.8 - it('its:dir resets on property elements', async () => { + it('its:dir resets on property elements', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b'), - quad('_:b', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b'), + quad('_:b', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"'), + ]); }); // 2.7 - it('mixed xml:lang usage', async () => { + it('mixed xml:lang usage', async() => { const array = await parse(parser, ` The Tree `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"'), - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"@en'), - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"@en-us'), - quad('http://example.org/buecher/baum', 'http://purl.org/dc/elements/1.1/title', - '"Der Baum"@de'), - quad('http://example.org/buecher/baum', 'http://purl.org/dc/elements/1.1/description', - '"Das Buch ist au\u00DFergew\u00F6hnlich"@de'), - quad('http://example.org/buecher/baum', 'http://purl.org/dc/elements/1.1/title', - '"The Tree"@en'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"@en'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"@en-us'), + quad('http://example.org/buecher/baum', 'http://purl.org/dc/elements/1.1/title', '"Der Baum"@de'), + quad('http://example.org/buecher/baum', 'http://purl.org/dc/elements/1.1/description', '"Das Buch ist au\u00DFergew\u00F6hnlich"@de'), + quad('http://example.org/buecher/baum', 'http://purl.org/dc/elements/1.1/title', '"The Tree"@en'), ]); }); // 2.8 - it('mixed its:dir usage', async () => { + it('mixed its:dir usage', async() => { const array = await parse(parser, ` The Tree `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"'), - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"@en--ltr'), - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF 1.1 XML Syntax"@en-us--rtl'), - quad('http://example.org/buecher/baum', 'http://purl.org/dc/elements/1.1/title', - '"Der Baum"@de--ltr'), - quad('http://example.org/buecher/baum', 'http://purl.org/dc/elements/1.1/description', - '"Das Buch ist au\u00DFergew\u00F6hnlich"@de--ltr'), - quad('http://example.org/buecher/baum', 'http://purl.org/dc/elements/1.1/title', - '"The Tree"@en--rtl'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"@en--ltr'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF 1.1 XML Syntax"@en-us--rtl'), + quad('http://example.org/buecher/baum', 'http://purl.org/dc/elements/1.1/title', '"Der Baum"@de--ltr'), + quad('http://example.org/buecher/baum', 'http://purl.org/dc/elements/1.1/description', '"Das Buch ist au\u00DFergew\u00F6hnlich"@de--ltr'), + quad('http://example.org/buecher/baum', 'http://purl.org/dc/elements/1.1/title', '"The Tree"@en--rtl'), + ]); }); // 2.8 - it('its:dir without rdf:version', async () => { + it('its:dir without rdf:version', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://example.org/joe', 'http://example.org/name', - '"bar"@en'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://example.org/joe', 'http://example.org/name', '"bar"@en'), + ]); }); // 2.9 - it('rdf:datatype on property elements', async () => { + it('rdf:datatype on property elements', async() => { const array = await parse(parser, ` @@ -1755,15 +1734,14 @@ abc`)).rejects.toBeTruthy(); 123 `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/item01', 'http://example.org/stuff/1.0/size', - '"123"^^http://www.w3.org/2001/XMLSchema#int'), + quad('http://example.org/item01', 'http://example.org/stuff/1.0/size', '"123"^^http://www.w3.org/2001/XMLSchema#int'), ]); }); // 2.9 - it('rdf:datatype on property elements and ignore any higher-level xml:lang', async () => { + it('rdf:datatype on property elements and ignore any higher-level xml:lang', async() => { const array = await parse(parser, ` @@ -1771,15 +1749,14 @@ abc`)).rejects.toBeTruthy(); 123 `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/item01', 'http://example.org/stuff/1.0/size', - '"123"^^http://www.w3.org/2001/XMLSchema#int'), + quad('http://example.org/item01', 'http://example.org/stuff/1.0/size', '"123"^^http://www.w3.org/2001/XMLSchema#int'), ]); }); // 2.10 - it('rdf:nodeID on property elements as blank nodes', async () => { + it('rdf:nodeID on property elements as blank nodes', async() => { const array = await parse(parser, ` @@ -1788,29 +1765,28 @@ abc`)).rejects.toBeTruthy(); `); expect(array[0].object).toEqual(DF.blankNode('abc')); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', - '_:b'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b'), ]); }); // 2.10 - it('rdf:nodeID on node elements as blank nodes', async () => { + it('rdf:nodeID on node elements as blank nodes', async() => { const array = await parse(parser, ` `); expect(array[0].subject).toEqual(DF.blankNode('abc')); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('_b', 'http://example.org/stuff/1.0/fullName', '"Dave Beckett"'), ]); }); // 2.10 - it('rdf:nodeID on mixed node elements', async () => { + it('rdf:nodeID on mixed node elements', async() => { const array = await parse(parser, ` { + it('nested property elements with rdf:parseType="resource"', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF/XML Syntax Specification (Revised)"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF/XML Syntax Specification (Revised)"'), quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b'), quad('_:b', 'http://example.org/stuff/1.0/fullName', '"Dave Beckett"'), quad('_:b', 'http://example.org/stuff/1.0/homePage', 'http://purl.org/net/dajobe/'), @@ -1862,7 +1836,7 @@ abc`)).rejects.toBeTruthy(); }); // 2.11 - it('and ignore rdf:parseType="resource"', async () => { + it('and ignore rdf:parseType="resource"', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF/XML Syntax Specification (Revised)"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF/XML Syntax Specification (Revised)"'), quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b'), ]); }); // 2.12 - it('property attributes on empty property elements', async () => { + it('property attributes on empty property elements', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', - '"RDF/XML Syntax Specification (Revised)"'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://purl.org/dc/elements/1.1/title', '"RDF/XML Syntax Specification (Revised)"'), quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/editor', '_:b'), quad('_:b', 'http://example.org/stuff/1.0/fullName', '"Dave Beckett"'), ]); }); // 2.13 - it('non-compacted typed node elements', async () => { + it('non-compacted typed node elements', async() => { const array = await parse(parser, ` A marvelous thing `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/thing', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://example.org/stuff/1.0/Document'), - quad('http://example.org/thing', 'http://purl.org/dc/elements/1.1/title', - '"A marvelous thing"'), + quad('http://example.org/thing', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://example.org/stuff/1.0/Document'), + quad('http://example.org/thing', 'http://purl.org/dc/elements/1.1/title', '"A marvelous thing"'), ]); }); // 2.13 - it('typed node elements', async () => { + it('typed node elements', async() => { const array = await parse(parser, ` A marvelous thing `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/thing', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://example.org/stuff/1.0/Document'), - quad('http://example.org/thing', 'http://purl.org/dc/elements/1.1/title', - '"A marvelous thing"'), + quad('http://example.org/thing', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://example.org/stuff/1.0/Document'), + quad('http://example.org/thing', 'http://purl.org/dc/elements/1.1/title', '"A marvelous thing"'), ]); }); // 2.14 - it('shortened URIs in rdf:about, rdf:resource and rdf:datatype with xml:base on the root tag', async () => { + it('shortened URIs in rdf:about, rdf:resource and rdf:datatype with xml:base on the root tag', async() => { const array = await parse(parser, ` def `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/here/snack', 'http://example.org/stuff/1.0/prop', - 'http://example.org/here/fruit/apple'), - quad('http://example.org/here/snack', 'http://example.org/stuff/1.0/prop2', - 'http://example.org/'), - quad('http://example.org/here/snack', 'http://example.org/stuff/1.0/editor', - '"def"^^http://example.org/here/abc'), + quad('http://example.org/here/snack', 'http://example.org/stuff/1.0/prop', 'http://example.org/here/fruit/apple'), + quad('http://example.org/here/snack', 'http://example.org/stuff/1.0/prop2', 'http://example.org/'), + quad('http://example.org/here/snack', 'http://example.org/stuff/1.0/editor', '"def"^^http://example.org/here/abc'), ]); }); // 2.14 - it('shortened URIs in rdf:about, rdf:resource and rdf:datatype with xml:base in the parser options', async () => { + it('shortened URIs in rdf:about, rdf:resource and rdf:datatype with xml:base in the parser options', async() => { const parserThis = new RdfXmlParser({ baseIRI: 'http://example.org/here/' }); const array = await parse(parserThis, ` def `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/here/snack', 'http://example.org/stuff/1.0/prop', - 'http://example.org/here/fruit/apple'), - quad('http://example.org/here/snack', 'http://example.org/stuff/1.0/prop2', - 'http://example.org/'), - quad('http://example.org/here/snack', 'http://example.org/stuff/1.0/editor', - '"def"^^http://example.org/here/abc'), + quad('http://example.org/here/snack', 'http://example.org/stuff/1.0/prop', 'http://example.org/here/fruit/apple'), + quad('http://example.org/here/snack', 'http://example.org/stuff/1.0/prop2', 'http://example.org/'), + quad('http://example.org/here/snack', 'http://example.org/stuff/1.0/editor', '"def"^^http://example.org/here/abc'), ]); }); // 2.14 - it('shortened URIs in rdf:about, rdf:resource and rdf:datatype with xml:base on the root and inner tag', - async () => { - const array = await parse(parser, ` + // eslint-disable-next-line max-len + it('shortened URIs in rdf:about, rdf:resource and rdf:datatype with xml:base on the root and inner tag', async() => { + const array = await parse(parser, ` @@ -1998,19 +1960,16 @@ abc`)).rejects.toBeTruthy(); def `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://example.org/here2/snack', 'http://example.org/stuff/1.0/prop', - 'http://example.org/here2/fruit/apple'), - quad('http://example.org/here2/snack', 'http://example.org/stuff/1.0/prop2', - 'http://example.org/'), - quad('http://example.org/here2/snack', 'http://example.org/stuff/1.0/editor', - '"def"^^http://example.org/here2/abc'), - ]); - }); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://example.org/here2/snack', 'http://example.org/stuff/1.0/prop', 'http://example.org/here2/fruit/apple'), + quad('http://example.org/here2/snack', 'http://example.org/stuff/1.0/prop2', 'http://example.org/'), + quad('http://example.org/here2/snack', 'http://example.org/stuff/1.0/editor', '"def"^^http://example.org/here2/abc'), + ]); + }); // 2.14 - it('rdf:ID with xml:base on the root tag', async () => { + it('rdf:ID with xml:base on the root tag', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/here/#snack', 'http://example.org/stuff/1.0/prop', - 'http://example.org/here/fruit/apple'), + quad('http://example.org/here/#snack', 'http://example.org/stuff/1.0/prop', 'http://example.org/here/fruit/apple'), ]); }); // 2.14 - it('With an xml:base with fragment the fragment is ignored', async () => { + it('With an xml:base with fragment the fragment is ignored', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/dir/file', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://example.org/type'), + quad('http://example.org/dir/file', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://example.org/type'), quad('http://example.org/dir/file#foo', 'http://example.org/value', 'http://example.org/dir/relpath'), ]); }); // 2.14 - it('With an xml:base in an rdf:Description should apply it to the node itself', async () => { + it('With an xml:base in an rdf:Description should apply it to the node itself', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://example.org/file2#frag', 'http://example.org/value', '"v"'), - quad('http://example.org/dir/relFile', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://example.org/type'), + quad('http://example.org/dir/relFile', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://example.org/type'), ]); }); - it('With an xml:base relative to the document IRI', async () => { + it('With an xml:base relative to the document IRI', async() => { parser = new RdfXmlParser({ baseIRI: 'http://document.org/' }); const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://document.org/relative', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://example.org/type'), + quad('http://document.org/relative', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://example.org/type'), quad('http://document.org/relative#foo', 'http://example.org/value', 'http://document.org/relpath'), ]); }); - it('With an empty xml:base should resolve to the document IRI', async () => { + it('With an empty xml:base should resolve to the document IRI', async() => { parser = new RdfXmlParser({ baseIRI: 'http://document.org/' }); const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://document.org/', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://example.org/type'), + quad('http://document.org/', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://example.org/type'), quad('http://document.org/#foo', 'http://example.org/value', 'http://document.org/relpath'), ]); }); // 2.15 - it('rdf:li properties', async () => { + it('rdf:li properties', async() => { const array = await parse(parser, ` @@ -2110,21 +2064,17 @@ abc`)).rejects.toBeTruthy(); `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/favourite-fruit', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Seq'), - quad('http://example.org/favourite-fruit', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#_1', - 'http://example.org/banana'), - quad('http://example.org/favourite-fruit', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#_2', - 'http://example.org/apple'), - quad('http://example.org/favourite-fruit', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#_3', - 'http://example.org/pear'), + quad('http://example.org/favourite-fruit', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Seq'), + quad('http://example.org/favourite-fruit', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#_1', 'http://example.org/banana'), + quad('http://example.org/favourite-fruit', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#_2', 'http://example.org/apple'), + quad('http://example.org/favourite-fruit', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#_3', 'http://example.org/pear'), ]); }); // 2.16 - it('properties in a rdf:parseType="Collection" to a linked list', async () => { + it('properties in a rdf:parseType="Collection" to a linked list', async() => { const array = await parse(parser, ` @@ -2136,7 +2086,7 @@ abc`)).rejects.toBeTruthy(); `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://example.org/basket', 'http://example.org/stuff/1.0/hasFruit', '_:b1'), quad('_:b1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#first', 'http://example.org/banana'), @@ -2144,13 +2094,12 @@ abc`)).rejects.toBeTruthy(); quad('_:b2', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#first', 'http://example.org/apple'), quad('_:b2', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#rest', '_:b3'), quad('_:b3', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#first', 'http://example.org/pear'), - quad('_:b3', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#rest', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#nil'), + quad('_:b3', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#rest', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#nil'), ]); }); // 2.16 - it('zero properties in an empty tag in a rdf:parseType="Collection" to a linked list', async () => { + it('zero properties in an empty tag in a rdf:parseType="Collection" to a linked list', async() => { const array = await parse(parser, ` @@ -2158,15 +2107,14 @@ abc`)).rejects.toBeTruthy(); `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/basket', 'http://example.org/stuff/1.0/hasFruit', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#nil'), + quad('http://example.org/basket', 'http://example.org/stuff/1.0/hasFruit', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#nil'), ]); }); // 2.16 - it('zero properties in a self-closing tag in a rdf:parseType="Collection" to a linked list', async () => { + it('zero properties in a self-closing tag in a rdf:parseType="Collection" to a linked list', async() => { const array = await parse(parser, ` @@ -2174,14 +2122,13 @@ abc`)).rejects.toBeTruthy(); `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/basket', 'http://example.org/stuff/1.0/hasFruit', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#nil'), + quad('http://example.org/basket', 'http://example.org/stuff/1.0/hasFruit', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#nil'), ]); }); - it('rdf:parseType="Collection" and rdf:ID', async () => { + it('rdf:parseType="Collection" and rdf:ID', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://example.org/eg#eric', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', '_:b99_a0'), - quad('_:b99_a0', 'http://example.org/eg#intersectionOf', '_:b99_a1'), - quad('http://example.com/#reif', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#subject', '_:b99_a0'), - quad('http://example.com/#reif', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', 'http://example.org/eg#intersectionOf'), - quad('http://example.com/#reif', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#object', '_:b99_a1'), - quad('http://example.com/#reif', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), - quad('_:b99_a1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#first', 'http://example.org/eg#Person'), - quad('_:b99_a1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#rest', '_:b99_a2'), - quad('_:b99_a2', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#first', 'http://example.org/eg#Male'), - quad('_:b99_a2', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#rest', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#nil'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://example.org/eg#eric', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', '_:b99_a0'), + quad('_:b99_a0', 'http://example.org/eg#intersectionOf', '_:b99_a1'), + quad('http://example.com/#reif', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#subject', '_:b99_a0'), + quad('http://example.com/#reif', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', 'http://example.org/eg#intersectionOf'), + quad('http://example.com/#reif', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#object', '_:b99_a1'), + quad('http://example.com/#reif', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), + quad('_:b99_a1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#first', 'http://example.org/eg#Person'), + quad('_:b99_a1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#rest', '_:b99_a2'), + quad('_:b99_a2', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#first', 'http://example.org/eg#Male'), + quad('_:b99_a2', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#rest', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#nil'), + ]); }); // 2.17 - it('rdf:ID on a property with a literal to a reified statement', async () => { + it('rdf:ID on a property with a literal to a reified statement', async() => { const array = await parse(parser, ` blah `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://example.org/', 'http://example.org/stuff/1.0/prop', '"blah"'), - quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), - quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#subject', - 'http://example.org/'), - quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', - 'http://example.org/stuff/1.0/prop'), - quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#object', - '"blah"'), + quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), + quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#subject', 'http://example.org/'), + quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', 'http://example.org/stuff/1.0/prop'), + quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#object', '"blah"'), ]); }); // 2.17 - it('rdf:ID on a property with a nested node to a reified statement', async () => { + it('rdf:ID on a property with a nested node to a reified statement', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://example.org/', 'http://example.org/stuff/1.0/prop', 'http://example.org/2'), - quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), - quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#subject', - 'http://example.org/'), - quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', - 'http://example.org/stuff/1.0/prop'), - quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#object', - 'http://example.org/2'), + quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), + quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#subject', 'http://example.org/'), + quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', 'http://example.org/stuff/1.0/prop'), + quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#object', 'http://example.org/2'), ]); }); - it('an anonymous property with properties with inner rdf:Description', async () => { + it('an anonymous property with properties with inner rdf:Description', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://example.org/', 'http://example.org/stuff/1.0/prop1', 'http://example.org/2'), quad('http://example.org/2', 'http://example.org/stuff/1.0/prop2', '"abc"'), @@ -2282,7 +2221,7 @@ abc`)).rejects.toBeTruthy(); }); // 2.17 - it('rdf:ID on a property with parseType=\'Resource\' to a reified statement', async () => { + it('rdf:ID on a property with parseType=\'Resource\' to a reified statement', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://example.org/', 'http://example.org/stuff/1.0/prop', '_:b'), - quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), - quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#subject', - 'http://example.org/'), - quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', - 'http://example.org/stuff/1.0/prop'), - quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#object', - '_:b'), + quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), + quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#subject', 'http://example.org/'), + quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', 'http://example.org/stuff/1.0/prop'), + quad('http://example.org/triples/#triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#object', '_:b'), quad('_:b', 'http://example.org/stuff/1.0/prop2', '"abc"'), ]); }); // 2.17 - it('Identifical rdf:ID\'s are allowed if they refer to different resources', async () => { + it('Identifical rdf:ID\'s are allowed if they refer to different resources', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://example.org/dir/file#frag', 'http://example.org/value', '"v"'), quad('http://example.org/triples#frag', 'http://example.org/value', '"v"'), @@ -2326,7 +2261,7 @@ abc`)).rejects.toBeTruthy(); }); // 2.8 - it('property element values with rdf:parseType="Literal" to literals', async () => { + it('property element values with rdf:parseType="Literal" to literals', async() => { const array = await parse(parser, ` @@ -2339,10 +2274,9 @@ abc`)).rejects.toBeTruthy(); `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/item01', 'http://example.org/stuff/1.0/prop', - '"\n \n' + + quad('http://example.org/item01', 'http://example.org/stuff/1.0/prop', '"\n \n' + ' \n' + ' abc\n' + ' \n' + @@ -2351,7 +2285,7 @@ abc`)).rejects.toBeTruthy(); }); // 2.8 - it('property element values with rdf:parseType="Literal" to literals without prefixes', async () => { + it('property element values with rdf:parseType="Literal" to literals without prefixes', async() => { const array = await parse(parser, ` @@ -2361,15 +2295,14 @@ abc`)).rejects.toBeTruthy(); `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/item01', 'http://example.org/stuff/1.0/prop', - '"\n \n' + + quad('http://example.org/item01', 'http://example.org/stuff/1.0/prop', '"\n \n' + ' "^^http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral'), ]); }); - it('and ignore unrecognized attributes on nodes', async () => { + it('and ignore unrecognized attributes on nodes', async() => { const array = await parse(parser, ` @@ -2377,13 +2310,13 @@ abc`)).rejects.toBeTruthy(); stuff `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://example.org/thing', 'http://example.org/schema#prop1', '"stuff"'), ]); }); - it('and ignore unrecognized attributes on properties', async () => { + it('and ignore unrecognized attributes on properties', async() => { const array = await parse(parser, ` @@ -2391,13 +2324,13 @@ abc`)).rejects.toBeTruthy(); stuff `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://example.org/thing', 'http://example.org/schema#prop1', '"stuff"'), ]); }); - it('and apply the language on node properties', async () => { + it('and apply the language on node properties', async() => { const array = await parse(parser, ` @@ -2405,13 +2338,13 @@ abc`)).rejects.toBeTruthy(); xml:lang="fr" eg:property="chat" /> `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://example.org/node', 'http://example.org/schema#property', '"chat"@fr'), ]); }); - it('and allow rdf:ID to be used with other attributes', async () => { + it('and allow rdf:ID to be used with other attributes', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('_:b0', 'http://example.org/prop1', '_:b1'), - quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), + quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#subject', '_:b0'), - quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', - 'http://example.org/prop1'), + quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', 'http://example.org/prop1'), quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#object', '_:b1'), quad('_:b1', 'http://example.org/prop2', '"val"'), ]); }); - it('and allow rdf:ID to be used with other attributes (in reverse order)', async () => { + it('and allow rdf:ID to be used with other attributes (in reverse order)', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('_:b0', 'http://example.org/prop1', '_:b1'), - quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), + quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#subject', '_:b0'), - quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', - 'http://example.org/prop1'), + quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', 'http://example.org/prop1'), quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#object', '_:b1'), quad('_:b1', 'http://example.org/prop2', '"val"'), ]); }); - it('and allow rdf:resource to be used with other attributes', async () => { + it('and allow rdf:resource to be used with other attributes', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('_:b', 'http://example.org/prop1', 'http://example.org/object#uriRef'), quad('http://example.org/object#uriRef', 'http://example.org/prop2', '"val"'), ]); }); - it('rdf:type on node elements should be seen as a named node instead of literal', async () => { + it('rdf:type on node elements should be seen as a named node instead of literal', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://example.org/resource/', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://example.org/class/'), + quad('http://example.org/resource/', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://example.org/class/'), ]); }); - it('a missing rdf:RDF', async () => { + it('a missing rdf:RDF', async() => { const array = await parse(parser, ` Dogs in Hats `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('_:b', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://example.org/terms#Book'), - quad('_:b', 'http://example.org/terms#title', - '"Dogs in Hats"'), + quad('_:b', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://example.org/terms#Book'), + quad('_:b', 'http://example.org/terms#title', '"Dogs in Hats"'), ]); }); - it('not error on duplicate rdf:IDs when allowDuplicateRdfIds is enabled', async () => { + it('not error on duplicate rdf:IDs when allowDuplicateRdfIds is enabled', async() => { parser = new RdfXmlParser({ allowDuplicateRdfIds: true }); const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('http://example.org/triples#frag', 'http://example.org/value', '"a"'), quad('http://example.org/triples#frag', 'http://example.org/value', '"b"'), ]); }); - it('multiple identical property nodes as distinct blank nodes', async () => { + it('multiple identical property nodes as distinct blank nodes', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ quad('https://example.com/', 'http://purl.org/dc/terms/creator', '_:b1'), quad('https://example.com/', 'http://purl.org/dc/terms/creator', '_:b2'), @@ -2544,7 +2470,7 @@ abc`)).rejects.toBeTruthy(); }); // 2.12 - it('on property elements with an xmlns property and rdf:datatype', async () => { + it('on property elements with an xmlns property and rdf:datatype', async() => { const array = await parse(parser, ` Yes `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://x.p.t/o/TBox#editor', - '"Yes"^^http://www.w3.org/TR/rdf-syntax-grammar'), + quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://x.p.t/o/TBox#editor', '"Yes"^^http://www.w3.org/TR/rdf-syntax-grammar'), ]); }); - it('on property elements with an xmlns property and rdf:nodeID', async () => { + it('on property elements with an xmlns property and rdf:nodeID', async() => { const array = await parse(parser, ` `); - return expect(array) + await expect(array) .toBeRdfIsomorphic([ - quad('http://ex.org/i/subject', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://ex.org/o/type'), + quad('http://ex.org/i/subject', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://ex.org/o/type'), quad('http://ex.org/i/subject', 'http://ex.org/o/hasBlankNode', '_:orange'), quad('http://ex.org/i/subject', 'http://anon.org/o/hasBlankNode', '_:yellow"'), ]); }); - it('rdf:version attribute on the root tag', async () => { + it('rdf:version attribute on the root tag', async() => { const cb = jest.fn(); parser.on('version', cb); await parse(parser, ` @@ -2596,10 +2520,10 @@ abc`)).rejects.toBeTruthy(); `); - return expect(cb).toHaveBeenCalledWith('1.2'); + await expect(cb).toHaveBeenCalledWith('1.2'); }); - it('rdf:version attribute a property tag', async () => { + it('rdf:version attribute a property tag', async() => { const cb = jest.fn(); parser.on('version', cb); await parse(parser, ` @@ -2612,10 +2536,10 @@ abc`)).rejects.toBeTruthy(); `); - return expect(cb).toHaveBeenCalledWith('1.2'); + await expect(cb).toHaveBeenCalledWith('1.2'); }); - it('rdf:version attribute an internal tag', async () => { + it('rdf:version attribute an internal tag', async() => { const cb = jest.fn(); parser.on('version', cb); await parse(parser, ` @@ -2628,10 +2552,10 @@ abc`)).rejects.toBeTruthy(); `); - return expect(cb).toHaveBeenCalledWith('1.2'); + await expect(cb).toHaveBeenCalledWith('1.2'); }); - it('throws on an unsupported rdf:version', async () => { + it('throws on an unsupported rdf:version', async() => { await expect(parse(parser, ` `)).rejects.toThrow(`Detected unsupported version: 1.2-unknown`); }); - it('handles an unsupported rdf:version when parseUnsupportedVersions is true', async () => { + it('handles an unsupported rdf:version when parseUnsupportedVersions is true', async() => { parser = new RdfXmlParser({ parseUnsupportedVersions: true }); await expect(parse(parser, ` `)).resolves.toHaveLength(1); }); - it('throws on an unsupported version media type parameter', async () => { + it('throws on an unsupported version media type parameter', async() => { parser = new RdfXmlParser({ version: '1.2-unknown' }); await expect(parse(parser, ` `)).rejects.toThrow(`Detected unsupported version as media type parameter: 1.2-unknown`); }); - it('handles an unsupported media type parameter when parseUnsupportedVersions is true', async () => { + it('handles an unsupported media type parameter when parseUnsupportedVersions is true', async() => { parser = new RdfXmlParser({ parseUnsupportedVersions: true, version: '1.2-unknown' }); await expect(parse(parser, ` { + it('on property elements with rdf:parseType="Triple"', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad( - 'http://example.org/', - 'http://example.org/stuff/1.0/prop', - '<>'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad( + 'http://example.org/', + 'http://example.org/stuff/1.0/prop', + '<>', + ), + ]); }); // 2.19 - it('on property elements with rdf:parseType="Triple" without rdf:version', async () => { + it('on property elements with rdf:parseType="Triple" without rdf:version', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([]); + await expect(array) + .toBeRdfIsomorphic([]); }); - it('on property elements with rdf:parseType="Triple" with blank subject', async () => { + it('on property elements with rdf:parseType="Triple" with blank subject', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad( - 'http://example.org/', - 'http://example.org/stuff/1.0/prop', - '<<_:b0 http://example.org/stuff/1.0/p http://example.org/stuff/1.0/o>>'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad( + 'http://example.org/', + 'http://example.org/stuff/1.0/prop', + '<<_:b0 http://example.org/stuff/1.0/p http://example.org/stuff/1.0/o>>', + ), + ]); }); - it('on property elements with rdf:parseType="Triple" with rdf:type', async () => { + it('on property elements with rdf:parseType="Triple" with rdf:type', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad( - 'http://example.org/', - 'http://example.org/stuff/1.0/prop', - '<<_:b0 http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://example.org/stuff/1.0/t>>'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad( + 'http://example.org/', + 'http://example.org/stuff/1.0/prop', + '<<_:b0 http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://example.org/stuff/1.0/t>>', + ), + ]); }); - it('on property elements with rdf:parseType="Triple" and rdf:nodeID', async () => { + it('on property elements with rdf:parseType="Triple" and rdf:nodeID', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad( - 'http://example.org/', - 'http://example.org/stuff/1.0/prop', - '<>'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad( + 'http://example.org/', + 'http://example.org/stuff/1.0/prop', + '<>', + ), + ]); }); - it('on property elements with nested rdf:parseType="Triple"', async () => { + it('on property elements with nested rdf:parseType="Triple"', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad( - 'http://example.org/', - 'http://example.org/stuff/1.0/prop', - '<>>>'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad( + 'http://example.org/', + 'http://example.org/stuff/1.0/prop', + '<>>>', + ), + ]); }); - it('on property elements with rdf:annotation', async () => { + it('on property elements with rdf:annotation', async() => { const array = await parse(parser, ` foo `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://example.org/', 'http://example.org/stuff/1.0/prop', '"blah"'), - quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), - quad('http://example.org/triple1', 'http://example.org/stuff/1.0/prop', '"foo"'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://example.org/', 'http://example.org/stuff/1.0/prop', '"blah"'), + quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), + quad('http://example.org/triple1', 'http://example.org/stuff/1.0/prop', '"foo"'), + ]); }); - it('on property elements with rdf:annotationNodeID', async () => { + it('on property elements with rdf:annotationNodeID', async() => { const array = await parse(parser, ` foo `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://example.org/', 'http://example.org/stuff/1.0/prop', '"blah"'), - quad('_:b0', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), - quad('_:b0', 'http://example.org/stuff/1.0/prop', '"foo"'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://example.org/', 'http://example.org/stuff/1.0/prop', '"blah"'), + quad('_:b0', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), + quad('_:b0', 'http://example.org/stuff/1.0/prop', '"foo"'), + ]); }); - it('on property elements with rdf:annotation with empty object literal', async () => { + it('on property elements with rdf:annotation with empty object literal', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://example.org/', 'http://example.org/stuff/1.0/prop', '""'), - quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://example.org/', 'http://example.org/stuff/1.0/prop', '""'), + quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), + ]); }); - it('on property elements with rdf:annotation with rdf:parseType="Resource"', async () => { + it('on property elements with rdf:annotation with rdf:parseType="Resource"', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://example.org/', 'http://example.org/stuff/1.0/prop', '_:b0'), - quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://example.org/', 'http://example.org/stuff/1.0/prop', '_:b0'), + quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), + ]); }); - it('on property elements with rdf:annotation with inline property', async () => { + it('on property elements with rdf:annotation with inline property', async() => { const array = await parse(parser, ` @@ -2905,15 +2834,15 @@ abc`)).rejects.toBeTruthy(); `); - return expect(array) - .toBeRdfIsomorphic([ - quad('_:b', 'http://example.org/prop2', '"val"'), - quad('_:c', 'http://example.org/prop1', '_:b'), - quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<<_:c http://example.org/prop1 _:b>>'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('_:b', 'http://example.org/prop2', '"val"'), + quad('_:c', 'http://example.org/prop1', '_:b'), + quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<<_:c http://example.org/prop1 _:b>>'), + ]); }); - it('on property elements with rdf:annotation with rdf:resource', async () => { + it('on property elements with rdf:annotation with rdf:resource', async() => { const array = await parse(parser, ` @@ -2923,14 +2852,14 @@ abc`)).rejects.toBeTruthy(); rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Resource"/> `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://example.org/', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Resource'), - quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://example.org/', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Resource'), + quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), + ]); }); - it('on property elements with rdf:annotation with rdf:nodeID', async () => { + it('on property elements with rdf:annotation with rdf:nodeID', async() => { const array = await parse(parser, ` @@ -2939,14 +2868,14 @@ abc`)).rejects.toBeTruthy(); `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://example.org/', 'http://example.org/prop', '_:object'), - quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://example.org/', 'http://example.org/prop', '_:object'), + quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), + ]); }); - it('on property elements with nested rdf:annotation', async () => { + it('on property elements with nested rdf:annotation', async() => { const array = await parse(parser, ` @@ -2959,16 +2888,16 @@ abc`)).rejects.toBeTruthy(); `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://example.org/b', 'http://example.org/prop', 'http://example.org/c'), - quad('http://example.org/triple2', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), - quad('http://example.org/a', 'http://example.org/prop', 'http://example.org/b'), - quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://example.org/b', 'http://example.org/prop', 'http://example.org/c'), + quad('http://example.org/triple2', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), + quad('http://example.org/a', 'http://example.org/prop', 'http://example.org/b'), + quad('http://example.org/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<>'), + ]); }); - it('on property elements with rdf:annotation over a collection', async () => { + it('on property elements with rdf:annotation over a collection', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://example.org/eg#eric', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', '_:an0'), - quad('_:an0', 'http://example.org/eg#intersectionOf', '_:an1'), - quad('http://example.com/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<<_:an0 http://example.org/eg#intersectionOf _:an1>>'), - quad('_:an1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#first', 'http://example.org/eg#Person'), - quad('_:an1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#rest', '_:an2'), - quad('_:an2', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#first', 'http://example.org/eg#Male'), - quad('_:an2', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#rest', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#nil'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://example.org/eg#eric', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', '_:an0'), + quad('_:an0', 'http://example.org/eg#intersectionOf', '_:an1'), + quad('http://example.com/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<<_:an0 http://example.org/eg#intersectionOf _:an1>>'), + quad('_:an1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#first', 'http://example.org/eg#Person'), + quad('_:an1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#rest', '_:an2'), + quad('_:an2', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#first', 'http://example.org/eg#Male'), + quad('_:an2', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#rest', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#nil'), + ]); }); - it('on property elements with rdf:annotation with literal parse type', async () => { + it('on property elements with rdf:annotation with literal parse type', async() => { const array = await parse(parser, ` `); - return expect(array) - .toBeRdfIsomorphic([ - quad('http://www.example.org/a', 'http://example.org/prop', '"

"^^http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral'), - quad('http://example.com/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<
"^^http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral>>'), - ]); + await expect(array) + .toBeRdfIsomorphic([ + quad('http://www.example.org/a', 'http://example.org/prop', '"

"^^http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral'), + quad('http://example.com/triple1', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies', '<
"^^http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral>>'), + ]); }); }); @@ -3058,10 +2987,8 @@ abc`)).rejects.toBeTruthy(); it('should emit 2 triples after closing the rdf:Description tag', () => { streamParser.write(`>`); - expect(streamParser.read(1)).toEqualRdfQuad(quad('http://www.w3.org/TR/rdf-syntax-grammar', - 'http://example.org/stuff/1.0/title1', '"Title1"')); - expect(streamParser.read(1)).toEqualRdfQuad(quad('http://www.w3.org/TR/rdf-syntax-grammar', - 'http://example.org/stuff/1.0/title2', '"Title2"')); + expect(streamParser.read(1)).toEqualRdfQuad(quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/title1', '"Title1"')); + expect(streamParser.read(1)).toEqualRdfQuad(quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/title2', '"Title2"')); expect(streamParser.read(1)).toBeFalsy(); }); @@ -3077,8 +3004,7 @@ abc`)).rejects.toBeTruthy(); it('should emit after closing the property tag', () => { streamParser.write(`/>`); - expect(streamParser.read(1)).toEqualRdfQuad(quad('http://www.w3.org/TR/rdf-syntax-grammar', - 'http://example.org/stuff/1.0/prop', 'http://example.org/')); + expect(streamParser.read(1)).toEqualRdfQuad(quad('http://www.w3.org/TR/rdf-syntax-grammar', 'http://example.org/stuff/1.0/prop', 'http://example.org/')); expect(streamParser.read(1)).toBeFalsy(); }); @@ -3098,9 +3024,8 @@ abc`)).rejects.toBeTruthy(); expect(streamParser.writable).toBeFalsy(); }); - - it('should properly support XML encoded URIs', async () => { - expect(parse(parser, ` + it('should properly support XML encoded URIs', async() => { + await expect(parse(parser, ` @@ -3119,7 +3044,6 @@ abc`)).rejects.toBeTruthy(); }); describe('#valueToUri', () => { - it('ignore a URI with an invalid scheme', () => { expect(() => parser.valueToUri('%https://example.com/', {})) .not.toThrow(new Error('Invalid URI: %https://example.com/')); @@ -3139,31 +3063,29 @@ abc`)).rejects.toBeTruthy(); parser = new RdfXmlParser(); }); - it('should parse a stream', async () => { + it('should parse a stream', async() => { const stream = streamifyString(` `); - return expect(await arrayifyStream(parser.import(stream))).toBeRdfIsomorphic([ - quad('http://example.org/resource/', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://example.org/class/'), + await expect(arrayifyStream(parser.import(stream))).resolves.toBeRdfIsomorphic([ + quad('http://example.org/resource/', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://example.org/class/'), ]); }); - it('should parse an object stream', async () => { - const stream = streamifyArray([Buffer.from(` + it('should parse an object stream', async() => { + const stream = streamifyArray([ Buffer.from(` -`)]); - return expect(await arrayifyStream(parser.import(stream))).toBeRdfIsomorphic([ - quad('http://example.org/resource/', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://example.org/class/'), +`) ]); + await expect(arrayifyStream(parser.import(stream))).resolves.toBeRdfIsomorphic([ + quad('http://example.org/resource/', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://example.org/class/'), ]); }); - it('should parse another stream', async () => { + it('should parse another stream', async() => { const stream = streamifyString(` `); - return expect(await arrayifyStream(parser.import(stream))).toBeRdfIsomorphic([ + await expect(arrayifyStream(parser.import(stream))).resolves.toBeRdfIsomorphic([ quad('_:b0', 'http://example.org/prop1', '_:b1'), - quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', - 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), + quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement'), quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#subject', '_:b0'), - quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', - 'http://example.org/prop1'), + quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate', 'http://example.org/prop1'), quad('http://example.org/triples#reify', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#object', '_:b1'), quad('_:b1', 'http://example.org/prop2', '"val"'), ]); }); - it('should forward error events', async () => { + it('should forward error events', async() => { const stream = new PassThrough(); stream._read = () => stream.emit('error', new Error('my error')); - return expect(arrayifyStream(parser.import(stream))).rejects.toThrow(new Error('my error')); + await expect(arrayifyStream(parser.import(stream))).rejects.toThrow(new Error('my error')); }); }); }); diff --git a/test/tsconfig.json b/test/tsconfig.json index 92b1a65..120ce03 100644 --- a/test/tsconfig.json +++ b/test/tsconfig.json @@ -1,12 +1,13 @@ { "compilerOptions": { - "module": "commonjs", - "types": ["node", "jest"], - "noImplicitAny": false, + "target": "es6", "lib": [ - "es6" + "es6", + "es2021.string" ], - "target": "es6", - "strictNullChecks": false + "module": "commonjs", + "types": ["node", "jest"], + "strictNullChecks": false, + "noImplicitAny": false } } diff --git a/test/tslint.json b/test/tslint.json deleted file mode 100644 index e237af2..0000000 --- a/test/tslint.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "defaultSeverity": "error", - "extends": [ - "../tslint.json" - ], - "rules": { - "no-var-requires": false, - "no-unused-expression": false - } -} diff --git a/tsconfig.eslint.json b/tsconfig.eslint.json new file mode 100644 index 0000000..a39d909 --- /dev/null +++ b/tsconfig.eslint.json @@ -0,0 +1,13 @@ +{ + "extends": "./tsconfig.json", + "include": [ + "index.ts", + "lib/**/*.ts", + "test/**/*.ts", + "bin/**/*.ts", + "perf/**/*.ts" + ], + "exclude": [ + "**/node_modules" + ] +} diff --git a/tsconfig.json b/tsconfig.json index 7efa711..d0ba8c7 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,21 +1,22 @@ { "compileOnSave": true, "compilerOptions": { - "module": "commonjs", + "target": "es6", "lib": [ "es6", + "es2021.string", "esnext.asynciterable", "dom" ], - "target": "es6", + "module": "commonjs", + "strictNullChecks": false, "noImplicitAny": true, - "removeComments": false, - "preserveConstEnums": true, - "sourceMap": true, - "inlineSources": true, "declaration": true, "importHelpers": false, - "strictNullChecks": false + "inlineSources": true, + "preserveConstEnums": true, + "removeComments": false, + "sourceMap": true }, "include": [ "index.ts", diff --git a/tslint.json b/tslint.json deleted file mode 100644 index f2cfbb2..0000000 --- a/tslint.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "defaultSeverity": "error", - "extends": [ - "tslint:recommended", - "tslint-eslint-rules" - ], - "jsRules": {}, - "rules": { - "array-type": [true, "array"], - "indent": [true, "spaces"], - "ter-indent": [true, 2], - "no-empty-interface": false, - "quotemark": false, - "no-trailing-whitespace": [true, "ignore-jsdoc"], - "valid-jsdoc": [false, { - "prefer": { - "return": "return" - }, - "requireReturn": false - }], - "no-angle-bracket-type-assertion": false, - "member-ordering": [true, { - "order": "fields-first" - }], - "forin": false - }, - "rulesDirectory": [] -} diff --git a/yarn.lock b/yarn.lock index 248a802..8ee1eaa 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10,6 +10,65 @@ "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.24" +"@antfu/eslint-config@2.6.4": + version "2.6.4" + resolved "https://registry.yarnpkg.com/@antfu/eslint-config/-/eslint-config-2.6.4.tgz#45e79c01111fdc37b20bef028e8d34c5f5e679f9" + integrity sha512-dMD/QC5KWS1OltdpKLhfZM7W7y7zils85opk8d4lyNr7yn0OFjZs7eMYtcC6DrrN2kQ1JrFvBM7uB0QdWn5PUQ== + dependencies: + "@antfu/eslint-define-config" "^1.23.0-2" + "@antfu/install-pkg" "^0.3.1" + "@eslint-types/jsdoc" "46.8.2-1" + "@eslint-types/typescript-eslint" "^6.19.1" + "@eslint-types/unicorn" "^50.0.1" + "@stylistic/eslint-plugin" "^1.5.4" + "@typescript-eslint/eslint-plugin" "^6.20.0" + "@typescript-eslint/parser" "^6.20.0" + eslint-config-flat-gitignore "^0.1.2" + eslint-merge-processors "^0.1.0" + eslint-plugin-antfu "^2.1.2" + eslint-plugin-eslint-comments "^3.2.0" + eslint-plugin-i "^2.29.1" + eslint-plugin-jsdoc "^48.0.4" + eslint-plugin-jsonc "^2.13.0" + eslint-plugin-markdown "^3.0.1" + eslint-plugin-n "^16.6.2" + eslint-plugin-no-only-tests "^3.1.0" + eslint-plugin-perfectionist "^2.5.0" + eslint-plugin-toml "^0.9.2" + eslint-plugin-unicorn "^50.0.1" + eslint-plugin-unused-imports "^3.0.0" + eslint-plugin-vitest "^0.3.21" + eslint-plugin-vue "^9.21.1" + eslint-plugin-yml "^1.12.2" + eslint-processor-vue-blocks "^0.1.1" + globals "^13.24.0" + jsonc-eslint-parser "^2.4.0" + local-pkg "^0.5.0" + parse-gitignore "^2.0.0" + picocolors "^1.0.0" + prompts "^2.4.2" + toml-eslint-parser "^0.9.3" + vue-eslint-parser "^9.4.2" + yaml-eslint-parser "^1.2.2" + yargs "^17.7.2" + +"@antfu/eslint-define-config@^1.23.0-2": + version "1.23.0-2" + resolved "https://registry.yarnpkg.com/@antfu/eslint-define-config/-/eslint-define-config-1.23.0-2.tgz#05681d45b7fd24e4666750b6fd8da2bd8bf30a1f" + integrity sha512-LvxY21+ZhpuBf/aHeBUtGQhSEfad4PkNKXKvDOSvukaM3XVTfBhwmHX2EKwAsdq5DlfjbT3qqYyMiueBIO5iDQ== + +"@antfu/install-pkg@^0.3.1": + version "0.3.5" + resolved "https://registry.yarnpkg.com/@antfu/install-pkg/-/install-pkg-0.3.5.tgz#f26e94520f877e6d508a5304fa8d740b49d0ef31" + integrity sha512-HwIACY0IzrM7FGafMbWZOqEDBSfCwPcylu+GacaRcxJm4Yvvuh3Dy2vZwqdJAzXponc6aLO9FaH4l75pq8/ZSA== + dependencies: + "@jsdevtools/ez-spawn" "^3.0.4" + +"@antfu/utils@^0.7.10": + version "0.7.10" + resolved "https://registry.yarnpkg.com/@antfu/utils/-/utils-0.7.10.tgz#ae829f170158e297a9b6a28f161a8e487d00814d" + integrity sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww== + "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.25.9", "@babel/code-frame@^7.26.0", "@babel/code-frame@^7.26.2": version "7.26.2" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.26.2.tgz#4b5fab97d33338eff916235055f0ebc21e573a85" @@ -183,16 +242,16 @@ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz#54da796097ab19ce67ed9f88b47bb2ec49367687" integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA== +"@babel/helper-validator-identifier@^7.22.20", "@babel/helper-validator-identifier@^7.28.5": + version "7.28.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz#010b6938fab7cb7df74aa2bbc06aa503b8fe5fb4" + integrity sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q== + "@babel/helper-validator-identifier@^7.25.9": version "7.25.9" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz#24b64e2c3ec7cd3b3c547729b8d16871f22cbdc7" integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ== -"@babel/helper-validator-identifier@^7.28.5": - version "7.28.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz#010b6938fab7cb7df74aa2bbc06aa503b8fe5fb4" - integrity sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q== - "@babel/helper-validator-option@^7.25.9": version "7.25.9" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz#86e45bd8a49ab7e03f276577f96179653d41da72" @@ -451,6 +510,81 @@ dependencies: tslib "^2.4.0" +"@es-joy/jsdoccomment@~0.46.0": + version "0.46.0" + resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.46.0.tgz#47a2ee4bfc0081f252e058272dfab680aaed464d" + integrity sha512-C3Axuq1xd/9VqFZpW4YAzOx5O9q/LP46uIQy/iNDpHG3fmPa6TBtvfglMCs3RBiBxAIi0Go97r8+jvTt55XMyQ== + dependencies: + comment-parser "1.4.1" + esquery "^1.6.0" + jsdoc-type-pratt-parser "~4.0.0" + +"@eslint-community/eslint-utils@^4.1.2", "@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0", "@eslint-community/eslint-utils@^4.5.1": + version "4.9.1" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz#4e90af67bc51ddee6cdef5284edf572ec376b595" + integrity sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ== + dependencies: + eslint-visitor-keys "^3.4.3" + +"@eslint-community/regexpp@^4.11.0", "@eslint-community/regexpp@^4.5.1", "@eslint-community/regexpp@^4.6.1": + version "4.12.2" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.2.tgz#bccdf615bcf7b6e8db830ec0b8d21c9a25de597b" + integrity sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew== + +"@eslint-types/jsdoc@46.8.2-1": + version "46.8.2-1" + resolved "https://registry.yarnpkg.com/@eslint-types/jsdoc/-/jsdoc-46.8.2-1.tgz#c1d9ec9ce032f0ad3a943613c346a648bcad9063" + integrity sha512-FwD7V0xX0jyaqj8Ul5ZY+TAAPohDfVqtbuXJNHb+OIv1aTIqZi5+Zn3F2UwQ5O3BnQd2mTduyK0+HjGx3/AMFg== + +"@eslint-types/typescript-eslint@^6.19.1": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@eslint-types/typescript-eslint/-/typescript-eslint-6.21.0.tgz#38f2d5da961c2b98504f63f06b0f403e74b753b2" + integrity sha512-ao4TdMLw+zFdAJ9q6iBBxC5GSrJ14Hpv0VKaergr++jRTDaGgoYiAq84tx1FYqUJzQgzJC7dm6s52IAQP7EiHA== + +"@eslint-types/unicorn@^50.0.1": + version "50.0.1" + resolved "https://registry.yarnpkg.com/@eslint-types/unicorn/-/unicorn-50.0.1.tgz#f11633d6355e61cb249c74a0d88818153314b7c3" + integrity sha512-nuJuipTNcg9f+oxZ+3QZw4tuDLmir4RJOPfM/oujgToiy1s+tePDZhwg5jUGc3q8OzTtPbVpsFSYX7QApjO3EA== + +"@eslint/eslintrc@^2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad" + 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" + +"@eslint/js@8.57.1": + version "8.57.1" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.1.tgz#de633db3ec2ef6a3c89e2f19038063e8a122e2c2" + integrity sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q== + +"@humanwhocodes/config-array@^0.13.0": + version "0.13.0" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.13.0.tgz#fb907624df3256d04b9aa2df50d7aa97ec648748" + integrity sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw== + dependencies: + "@humanwhocodes/object-schema" "^2.0.3" + debug "^4.3.1" + minimatch "^3.0.5" + +"@humanwhocodes/module-importer@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" + integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== + +"@humanwhocodes/object-schema@^2.0.3": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3" + integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA== + "@hutson/parse-repository-url@^3.0.0": version "3.0.2" resolved "https://registry.yarnpkg.com/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz#98c23c950a3d9b6c8f0daed06da6c3af06981340" @@ -773,6 +907,31 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" +"@jsdevtools/ez-spawn@^3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@jsdevtools/ez-spawn/-/ez-spawn-3.0.4.tgz#5641eb26fee6d31ec29f6788eba849470c52c7ff" + integrity sha512-f5DRIOZf7wxogefH03RjMPMdBF7ADTWUMoOs9kaJo06EfwF+aFhMZMDZxHg/Xe12hptN9xoZjGso2fdjapBRIA== + dependencies: + call-me-maybe "^1.0.1" + cross-spawn "^7.0.3" + string-argv "^0.3.1" + type-detect "^4.0.8" + +"@microsoft/tsdoc-config@0.16.2": + version "0.16.2" + resolved "https://registry.yarnpkg.com/@microsoft/tsdoc-config/-/tsdoc-config-0.16.2.tgz#b786bb4ead00d54f53839a458ce626c8548d3adf" + integrity sha512-OGiIzzoBLgWWR0UdRJX98oYO+XKGf7tiK4Zk6tQ/E4IJqGCe7dvkTvgDZV5cFJUzLGDOjeAXrnZoA6QkVySuxw== + dependencies: + "@microsoft/tsdoc" "0.14.2" + ajv "~6.12.6" + jju "~1.4.0" + resolve "~1.19.0" + +"@microsoft/tsdoc@0.14.2": + version "0.14.2" + resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.14.2.tgz#c3ec604a0b54b9a9b87e9735dfc59e1a5da6a5fb" + integrity sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug== + "@napi-rs/wasm-runtime@^0.2.11": version "0.2.12" resolved "https://registry.yarnpkg.com/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz#3e78a8b96e6c33a6c517e1894efbd5385a7cb6f2" @@ -782,11 +941,42 @@ "@emnapi/runtime" "^1.4.3" "@tybys/wasm-util" "^0.10.0" +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== + dependencies: + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== + +"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": + version "1.2.8" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== + dependencies: + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.0" + +"@nolyfill/is-core-module@1.0.39": + version "1.0.39" + resolved "https://registry.yarnpkg.com/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz#3dc35ba0f1e66b403c00b39344f870298ebb1c8e" + integrity sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA== + "@pkgjs/parseargs@^0.11.0": version "0.11.0" resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== +"@pkgr/core@^0.1.0": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@pkgr/core/-/core-0.1.2.tgz#1cf95080bb7072fafaa3cb13b442fab4695c3893" + integrity sha512-fdDH1LSGfZdTH2sxdpVMw31BanV28K/Gry0cVFxaNP77neJSkd82mM8ErPNYs9e+0O7SdHBLTDzDgwUuy18RnQ== + "@pkgr/core@^0.2.9": version "0.2.9" resolved "https://registry.yarnpkg.com/@pkgr/core/-/core-0.2.9.tgz#d229a7b7f9dac167a156992ef23c7f023653f53b" @@ -806,6 +996,22 @@ dependencies: "@types/node" "*" +"@rubensworks/eslint-config@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@rubensworks/eslint-config/-/eslint-config-3.1.0.tgz#d17cea6b8f51d01eb8ffb90e38ff942a13eb690c" + integrity sha512-G/+2HcZ4Mjc1EZwHrPmIjQSRvzDFWnhihK0bukNw3Sc8uqmHuZ2/Uqy1gwdfTduNYdS1NXTvooyepELvcX6RBA== + dependencies: + "@antfu/eslint-config" "2.6.4" + "@rushstack/eslint-patch" "^1.7.2" + eslint-import-resolver-typescript "^3.6.1" + eslint-plugin-extended "0.2.0" + eslint-plugin-import "2.29.1" + eslint-plugin-jest "^27.9.0" + eslint-plugin-react "7.33.2" + eslint-plugin-react-hooks "4.6.0" + eslint-plugin-style "^0.2.0" + eslint-plugin-tsdoc "^0.2.17" + "@rubensworks/saxes@^6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/@rubensworks/saxes/-/saxes-6.0.1.tgz#2f394548493a415c522d2bfd4f12fad67c9a6317" @@ -813,6 +1019,11 @@ dependencies: xmlchars "^2.2.0" +"@rushstack/eslint-patch@^1.7.2": + version "1.16.1" + resolved "https://registry.yarnpkg.com/@rushstack/eslint-patch/-/eslint-patch-1.16.1.tgz#4f97581e114fc79f246cee3723a5c4edd3b62415" + integrity sha512-TvZbIpeKqGQQ7X0zSCvPH9riMSFQFSggnfBjFZ1mEoILW+UuXCKwOoPcgjMwiUtRqFZ8jWhPJc4um14vC6I4ag== + "@sinclair/typebox@^0.34.0": version "0.34.47" resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.34.47.tgz#61b684d8a20d2890b9f1f7b0d4f76b4b39f5bc0d" @@ -832,6 +1043,55 @@ dependencies: "@sinonjs/commons" "^3.0.1" +"@stylistic/eslint-plugin-js@1.8.1", "@stylistic/eslint-plugin-js@^1.8.1": + version "1.8.1" + resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin-js/-/eslint-plugin-js-1.8.1.tgz#e99ebee73558932e57eb135698153c2e4c0f44a2" + integrity sha512-c5c2C8Mos5tTQd+NWpqwEu7VT6SSRooAguFPMj1cp2RkTYl1ynKoXo8MWy3k4rkbzoeYHrqC2UlUzsroAN7wtQ== + dependencies: + "@types/eslint" "^8.56.10" + acorn "^8.11.3" + escape-string-regexp "^4.0.0" + eslint-visitor-keys "^3.4.3" + espree "^9.6.1" + +"@stylistic/eslint-plugin-jsx@1.8.1": + version "1.8.1" + resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin-jsx/-/eslint-plugin-jsx-1.8.1.tgz#853acc3fb41b88db12c6f1dd4c0219c87f987e5c" + integrity sha512-k1Eb6rcjMP+mmjvj+vd9y5KUdWn1OBkkPLHXhsrHt5lCDFZxJEs0aVQzE5lpYrtVZVkpc5esTtss/cPJux0lfA== + dependencies: + "@stylistic/eslint-plugin-js" "^1.8.1" + "@types/eslint" "^8.56.10" + estraverse "^5.3.0" + picomatch "^4.0.2" + +"@stylistic/eslint-plugin-plus@1.8.1": + version "1.8.1" + resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin-plus/-/eslint-plugin-plus-1.8.1.tgz#b502f0029de048964e9b561d002c7cd043fa7861" + integrity sha512-4+40H3lHYTN8OWz+US8CamVkO+2hxNLp9+CAjorI7top/lHqemhpJvKA1LD9Uh+WMY9DYWiWpL2+SZ2wAXY9fQ== + dependencies: + "@types/eslint" "^8.56.10" + "@typescript-eslint/utils" "^6.21.0" + +"@stylistic/eslint-plugin-ts@1.8.1": + version "1.8.1" + resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin-ts/-/eslint-plugin-ts-1.8.1.tgz#9e6cce06530d3e579bafde0cf3bbb89453b3233f" + integrity sha512-/q1m+ZuO1JHfiSF16EATFzv7XSJkc5W6DocfvH5o9oB6WWYFMF77fVoBWnKT3wGptPOc2hkRupRKhmeFROdfWA== + dependencies: + "@stylistic/eslint-plugin-js" "1.8.1" + "@types/eslint" "^8.56.10" + "@typescript-eslint/utils" "^6.21.0" + +"@stylistic/eslint-plugin@^1.5.4": + version "1.8.1" + resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin/-/eslint-plugin-1.8.1.tgz#bcf97052b87bcfb3de003b7f0fae50e9d6f21403" + integrity sha512-64My6I7uCcmSQ//427Pfg2vjSf9SDzfsGIWohNFgISMLYdC5BzJqDo647iDDJzSxINh3WTC0Ql46ifiKuOoTyA== + dependencies: + "@stylistic/eslint-plugin-js" "1.8.1" + "@stylistic/eslint-plugin-jsx" "1.8.1" + "@stylistic/eslint-plugin-plus" "1.8.1" + "@stylistic/eslint-plugin-ts" "1.8.1" + "@types/eslint" "^8.56.10" + "@tybys/wasm-util@^0.10.0": version "0.10.1" resolved "https://registry.yarnpkg.com/@tybys/wasm-util/-/wasm-util-0.10.1.tgz#ecddd3205cf1e2d5274649ff0eedd2991ed7f414" @@ -888,6 +1148,14 @@ "@types/estree" "*" "@types/json-schema" "*" +"@types/eslint@^8.56.10": + version "8.56.12" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.56.12.tgz#1657c814ffeba4d2f84c0d4ba0f44ca7ea1ca53a" + integrity sha512-03ruubjWyOHlmljCVoxSuNDdmfZDzsrrz0P2LeJsOXr+ZwFQ+0yQIwNCwt/GYhV7Z31fgtXJTAEs+FYlEL851g== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + "@types/estree@*", "@types/estree@^1.0.6": version "1.0.6" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" @@ -927,7 +1195,7 @@ expect "^30.0.0" pretty-format "^30.0.0" -"@types/json-schema@*", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": +"@types/json-schema@*", "@types/json-schema@^7.0.12", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== @@ -937,6 +1205,18 @@ resolved "https://registry.yarnpkg.com/@types/json-stable-stringify/-/json-stable-stringify-1.1.0.tgz#41393e6b7a9a67221607346af4a79783aeb28aea" integrity sha512-ESTsHWB72QQq+pjUFIbEz9uSCZppD31YrVkbt2rnUciTYEvcwN6uZIhX5JZeBHqRlFJ41x/7MewCs7E2Qux6Cg== +"@types/json5@^0.0.29": + version "0.0.29" + resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" + integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== + +"@types/mdast@^3.0.0": + version "3.0.15" + resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.15.tgz#49c524a263f30ffa28b71ae282f813ed000ab9f5" + integrity sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ== + dependencies: + "@types/unist" "^2" + "@types/minimist@^1.2.0": version "1.2.5" resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.5.tgz#ec10755e871497bcd83efe927e43ec46e8c0747e" @@ -983,11 +1263,21 @@ dependencies: "@types/node" "*" +"@types/semver@^7.3.12", "@types/semver@^7.5.0": + version "7.7.1" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.7.1.tgz#3ce3af1a5524ef327d2da9e4fd8b6d95c8d70528" + integrity sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA== + "@types/stack-utils@^2.0.3": version "2.0.3" resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.3.tgz#6209321eb2c1712a7e7466422b8cb1fc0d9dd5d8" integrity sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw== +"@types/unist@^2", "@types/unist@^2.0.2": + version "2.0.11" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.11.tgz#11af57b127e32487774841f7a4e54eab166d03c4" + integrity sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA== + "@types/yargs-parser@*": version "21.0.3" resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15" @@ -1000,7 +1290,186 @@ dependencies: "@types/yargs-parser" "*" -"@ungap/structured-clone@^1.3.0": +"@typescript-eslint/eslint-plugin@^6.20.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz#30830c1ca81fd5f3c2714e524c4303e0194f9cd3" + integrity sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA== + dependencies: + "@eslint-community/regexpp" "^4.5.1" + "@typescript-eslint/scope-manager" "6.21.0" + "@typescript-eslint/type-utils" "6.21.0" + "@typescript-eslint/utils" "6.21.0" + "@typescript-eslint/visitor-keys" "6.21.0" + debug "^4.3.4" + graphemer "^1.4.0" + ignore "^5.2.4" + natural-compare "^1.4.0" + semver "^7.5.4" + ts-api-utils "^1.0.1" + +"@typescript-eslint/parser@^6.20.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.21.0.tgz#af8fcf66feee2edc86bc5d1cf45e33b0630bf35b" + integrity sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ== + dependencies: + "@typescript-eslint/scope-manager" "6.21.0" + "@typescript-eslint/types" "6.21.0" + "@typescript-eslint/typescript-estree" "6.21.0" + "@typescript-eslint/visitor-keys" "6.21.0" + debug "^4.3.4" + +"@typescript-eslint/scope-manager@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c" + integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w== + dependencies: + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/visitor-keys" "5.62.0" + +"@typescript-eslint/scope-manager@6.21.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz#ea8a9bfc8f1504a6ac5d59a6df308d3a0630a2b1" + integrity sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg== + dependencies: + "@typescript-eslint/types" "6.21.0" + "@typescript-eslint/visitor-keys" "6.21.0" + +"@typescript-eslint/scope-manager@7.18.0": + version "7.18.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.18.0.tgz#c928e7a9fc2c0b3ed92ab3112c614d6bd9951c83" + integrity sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA== + dependencies: + "@typescript-eslint/types" "7.18.0" + "@typescript-eslint/visitor-keys" "7.18.0" + +"@typescript-eslint/type-utils@6.21.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz#6473281cfed4dacabe8004e8521cee0bd9d4c01e" + integrity sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag== + dependencies: + "@typescript-eslint/typescript-estree" "6.21.0" + "@typescript-eslint/utils" "6.21.0" + debug "^4.3.4" + ts-api-utils "^1.0.1" + +"@typescript-eslint/types@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" + integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== + +"@typescript-eslint/types@6.21.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.21.0.tgz#205724c5123a8fef7ecd195075fa6e85bac3436d" + integrity sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg== + +"@typescript-eslint/types@7.18.0": + version "7.18.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.18.0.tgz#b90a57ccdea71797ffffa0321e744f379ec838c9" + integrity sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ== + +"@typescript-eslint/typescript-estree@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b" + integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA== + dependencies: + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/visitor-keys" "5.62.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + semver "^7.3.7" + tsutils "^3.21.0" + +"@typescript-eslint/typescript-estree@6.21.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz#c47ae7901db3b8bddc3ecd73daff2d0895688c46" + integrity sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ== + dependencies: + "@typescript-eslint/types" "6.21.0" + "@typescript-eslint/visitor-keys" "6.21.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + minimatch "9.0.3" + semver "^7.5.4" + ts-api-utils "^1.0.1" + +"@typescript-eslint/typescript-estree@7.18.0": + version "7.18.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.18.0.tgz#b5868d486c51ce8f312309ba79bdb9f331b37931" + integrity sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA== + dependencies: + "@typescript-eslint/types" "7.18.0" + "@typescript-eslint/visitor-keys" "7.18.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + minimatch "^9.0.4" + semver "^7.6.0" + ts-api-utils "^1.3.0" + +"@typescript-eslint/utils@6.21.0", "@typescript-eslint/utils@^6.21.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.21.0.tgz#4714e7a6b39e773c1c8e97ec587f520840cd8134" + integrity sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ== + dependencies: + "@eslint-community/eslint-utils" "^4.4.0" + "@types/json-schema" "^7.0.12" + "@types/semver" "^7.5.0" + "@typescript-eslint/scope-manager" "6.21.0" + "@typescript-eslint/types" "6.21.0" + "@typescript-eslint/typescript-estree" "6.21.0" + semver "^7.5.4" + +"@typescript-eslint/utils@^5.10.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86" + integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@types/json-schema" "^7.0.9" + "@types/semver" "^7.3.12" + "@typescript-eslint/scope-manager" "5.62.0" + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/typescript-estree" "5.62.0" + eslint-scope "^5.1.1" + semver "^7.3.7" + +"@typescript-eslint/utils@^6.13.0 || ^7.0.0", "@typescript-eslint/utils@^7.1.1": + version "7.18.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.18.0.tgz#bca01cde77f95fc6a8d5b0dbcbfb3d6ca4be451f" + integrity sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw== + dependencies: + "@eslint-community/eslint-utils" "^4.4.0" + "@typescript-eslint/scope-manager" "7.18.0" + "@typescript-eslint/types" "7.18.0" + "@typescript-eslint/typescript-estree" "7.18.0" + +"@typescript-eslint/visitor-keys@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e" + integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw== + dependencies: + "@typescript-eslint/types" "5.62.0" + eslint-visitor-keys "^3.3.0" + +"@typescript-eslint/visitor-keys@6.21.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz#87a99d077aa507e20e238b11d56cc26ade45fe47" + integrity sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A== + dependencies: + "@typescript-eslint/types" "6.21.0" + eslint-visitor-keys "^3.4.1" + +"@typescript-eslint/visitor-keys@7.18.0": + version "7.18.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz#0564629b6124d67607378d0f0332a0495b25e7d7" + integrity sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg== + dependencies: + "@typescript-eslint/types" "7.18.0" + eslint-visitor-keys "^3.4.3" + +"@ungap/structured-clone@^1.2.0", "@ungap/structured-clone@^1.3.0": version "1.3.0" resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.3.0.tgz#d06bbb384ebcf6c505fde1c3d0ed4ddffe0aaff8" integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g== @@ -1240,6 +1709,16 @@ abort-controller@^3.0.0: dependencies: event-target-shim "^5.0.0" +acorn-jsx@^5.3.2: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn@^8.11.3, acorn@^8.15.0, acorn@^8.16.0, acorn@^8.5.0, acorn@^8.9.0: + version "8.16.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.16.0.tgz#4ce79c89be40afe7afe8f3adb902a1f1ce9ac08a" + integrity sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw== + acorn@^8.14.0, acorn@^8.8.2: version "8.14.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.0.tgz#063e2c70cac5fb4f6467f0b11152e04c682795b0" @@ -1264,7 +1743,7 @@ ajv-keywords@^5.1.0: dependencies: fast-deep-equal "^3.1.3" -ajv@^6.12.3, ajv@^6.12.5: +ajv@^6.12.3, ajv@^6.12.5, ajv@~6.12.6: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -1274,6 +1753,16 @@ ajv@^6.12.3, ajv@^6.12.5: json-schema-traverse "^0.4.1" uri-js "^4.2.2" +ajv@^6.12.4: + version "6.14.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.14.0.tgz#fd067713e228210636ebb08c60bd3765d6dbe73a" + integrity sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw== + 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" + ajv@^8.0.0, ajv@^8.9.0: version "8.17.1" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6" @@ -1301,13 +1790,6 @@ ansi-regex@^6.0.1: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.2.2.tgz#60216eea464d864597ce2832000738a0589650c1" integrity sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg== -ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.3.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" @@ -1333,6 +1815,11 @@ anymatch@^3.1.3: normalize-path "^3.0.0" picomatch "^2.0.4" +are-docs-informative@^0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/are-docs-informative/-/are-docs-informative-0.0.2.tgz#387f0e93f5d45280373d387a59d34c96db321963" + integrity sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig== + argparse@^1.0.7: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" @@ -1340,6 +1827,95 @@ argparse@^1.0.7: dependencies: sprintf-js "~1.0.2" +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + +array-buffer-byte-length@^1.0.1, array-buffer-byte-length@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz#384d12a37295aec3769ab022ad323a18a51ccf8b" + integrity sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw== + dependencies: + call-bound "^1.0.3" + is-array-buffer "^3.0.5" + +array-includes@^3.1.6, array-includes@^3.1.7: + version "3.1.9" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.9.tgz#1f0ccaa08e90cdbc3eb433210f903ad0f17c3f3a" + integrity sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.4" + define-properties "^1.2.1" + es-abstract "^1.24.0" + es-object-atoms "^1.1.1" + get-intrinsic "^1.3.0" + is-string "^1.1.1" + math-intrinsics "^1.1.0" + +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + +array.prototype.findlastindex@^1.2.3: + version "1.2.6" + resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz#cfa1065c81dcb64e34557c9b81d012f6a421c564" + integrity sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.4" + define-properties "^1.2.1" + es-abstract "^1.23.9" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + es-shim-unscopables "^1.1.0" + +array.prototype.flat@^1.3.1, array.prototype.flat@^1.3.2: + version "1.3.3" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz#534aaf9e6e8dd79fb6b9a9917f839ef1ec63afe5" + integrity sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-shim-unscopables "^1.0.2" + +array.prototype.flatmap@^1.3.1, array.prototype.flatmap@^1.3.2, array.prototype.flatmap@^1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz#712cc792ae70370ae40586264629e33aab5dd38b" + integrity sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-shim-unscopables "^1.0.2" + +array.prototype.tosorted@^1.1.1: + version "1.1.4" + resolved "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz#fe954678ff53034e717ea3352a03f0b0b86f7ffc" + integrity sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.3" + es-errors "^1.3.0" + es-shim-unscopables "^1.0.2" + +arraybuffer.prototype.slice@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz#9d760d84dbdd06d0cbf92c8849615a1a7ab3183c" + integrity sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ== + dependencies: + array-buffer-byte-length "^1.0.1" + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + is-array-buffer "^3.0.4" + arrayify-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/arrayify-stream/-/arrayify-stream-1.0.0.tgz#9e8e113d43325c3a44e965c59b5b89d962b9a37f" @@ -1372,11 +1948,23 @@ assert-plus@1.0.0, assert-plus@^1.0.0: resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw== +async-function@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/async-function/-/async-function-1.0.0.tgz#509c9fca60eaf85034c6829838188e4e4c8ffb2b" + integrity sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA== + asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== +available-typed-arrays@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" + integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== + dependencies: + possible-typed-array-names "^1.0.0" + aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" @@ -1457,6 +2045,11 @@ base64-js@^1.3.1: resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== +baseline-browser-mapping@^2.10.12: + version "2.10.18" + resolved "https://registry.yarnpkg.com/baseline-browser-mapping/-/baseline-browser-mapping-2.10.18.tgz#565745085ba7743af7d4072707ad132db3a5a42f" + integrity sha512-VSnGQAOLtP5mib/DPyg2/t+Tlv65NTBz83BJBJvmLVHHuKJVaDOBvJJykiT5TR++em5nfAySPccDZDa4oSrn8A== + bcrypt-pbkdf@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" @@ -1464,6 +2057,11 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" +boolbase@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== + brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -1479,6 +2077,13 @@ brace-expansion@^2.0.1: dependencies: balanced-match "^1.0.0" +brace-expansion@^2.0.2: + version "2.1.0" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.1.0.tgz#4f41a41190216ee36067ec381526fe9539c4f0ae" + integrity sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w== + dependencies: + balanced-match "^1.0.0" + braces@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" @@ -1496,6 +2101,17 @@ browserslist@^4.24.0: node-releases "^2.0.19" update-browserslist-db "^1.1.1" +browserslist@^4.28.1: + version "4.28.2" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.28.2.tgz#f50b65362ef48974ca9f50b3680566d786b811d2" + integrity sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg== + dependencies: + baseline-browser-mapping "^2.10.12" + caniuse-lite "^1.0.30001782" + electron-to-chromium "^1.5.328" + node-releases "^2.0.36" + update-browserslist-db "^1.2.3" + bs-logger@^0.2.6: version "0.2.6" resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" @@ -1523,10 +2139,22 @@ buffer@^6.0.3: base64-js "^1.3.1" ieee754 "^1.2.1" -builtin-modules@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" - integrity sha512-wxXCdllwGhI2kCC0MnvTGYTMvnVZTvqgypkiTI8Pa5tcz2i6VqsqwYGgqwXji+4RgCzms6EajE4IxiUH6HH8nQ== +builtin-modules@3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.2.0.tgz#45d5db99e7ee5e6bc4f362e008bf917ab5049887" + integrity sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA== + +builtin-modules@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6" + integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw== + +builtins@^5.0.1: + version "5.1.0" + resolved "https://registry.yarnpkg.com/builtins/-/builtins-5.1.0.tgz#6d85eeb360c4ebc166c3fdef922a15aa7316a5e8" + integrity sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg== + dependencies: + semver "^7.0.0" call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1: version "1.0.1" @@ -1536,6 +2164,24 @@ call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1: es-errors "^1.3.0" function-bind "^1.1.2" +call-bind-apply-helpers@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" + integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== + dependencies: + es-errors "^1.3.0" + function-bind "^1.1.2" + +call-bind@^1.0.7, call-bind@^1.0.9: + version "1.0.9" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.9.tgz#39a644700c80bc7d0ca9102fc6d1d43b2fd7eee7" + integrity sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ== + dependencies: + call-bind-apply-helpers "^1.0.2" + es-define-property "^1.0.1" + get-intrinsic "^1.3.0" + set-function-length "^1.2.2" + call-bind@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c" @@ -1546,6 +2192,14 @@ call-bind@^1.0.8: get-intrinsic "^1.2.4" set-function-length "^1.2.2" +call-bound@^1.0.2, call-bound@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a" + integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== + dependencies: + call-bind-apply-helpers "^1.0.2" + get-intrinsic "^1.3.0" + call-bound@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.3.tgz#41cfd032b593e39176a71533ab4f384aa04fd681" @@ -1554,7 +2208,12 @@ call-bound@^1.0.3: call-bind-apply-helpers "^1.0.1" get-intrinsic "^1.2.6" -callsites@^3.1.0: +call-me-maybe@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.2.tgz#03f964f19522ba643b1b0693acb9152fe2074baa" + integrity sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ== + +callsites@^3.0.0, callsites@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== @@ -1583,6 +2242,11 @@ caniuse-lite@^1.0.30001688: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001690.tgz#f2d15e3aaf8e18f76b2b8c1481abde063b8104c8" integrity sha512-5ExiE3qQN6oF8Clf8ifIDcMRCRE/dMGcETG/XGMD8/XiXm6HXQgQTh1yZYLXXpSOsEUlJm1Xr7kGULZTuGtP/w== +caniuse-lite@^1.0.30001782: + version "1.0.30001787" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001787.tgz#fd25c5e42e2d35df5c75eddda00d15d9c0c68f81" + integrity sha512-mNcrMN9KeI68u7muanUpEejSLghOKlVhRqS/Za2IeyGllJ9I9otGpR9g3nsw7n4W378TE/LyIteA0+/FOZm4Kg== + canonicalize@^1.0.1: version "1.0.8" resolved "https://registry.yarnpkg.com/canonicalize/-/canonicalize-1.0.8.tgz#24d1f1a00ed202faafd9bf8e63352cd4450c6df1" @@ -1593,16 +2257,7 @@ caseless@~0.12.0: resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== -chalk@^2.3.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - 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" - -chalk@^4.1.0, chalk@^4.1.2: +chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== @@ -1615,11 +2270,31 @@ char-regex@^1.0.2: resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== +character-entities-legacy@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1" + integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== + +character-entities@^1.0.0: + version "1.2.4" + resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b" + integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== + +character-reference-invalid@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" + integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== + chrome-trace-event@^1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz#05bffd7ff928465093314708c93bdfa9bd1f0f5b" integrity sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ== +ci-info@^4.0.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-4.4.0.tgz#7d54eff9f54b45b62401c26032696eb59c8bd18c" + integrity sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg== + ci-info@^4.2.0: version "4.3.1" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-4.3.1.tgz#355ad571920810b5623e11d40232f443f16f1daa" @@ -1630,6 +2305,13 @@ cjs-module-lexer@^2.1.0: resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-2.2.0.tgz#b3ca5101843389259ade7d88c77bd06ce55849ca" integrity sha512-4bHTS2YuzUvtoLjdy+98ykbNB5jS0+07EvFNXerqZQJ89F7DI6ET7OQo/HJuW6K0aVsKA9hj9/RVb2kQVOrPDQ== +clean-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/clean-regexp/-/clean-regexp-1.0.0.tgz#8df7c7aae51fd36874e8f8d05b9180bc11a3fed7" + integrity sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw== + dependencies: + escape-string-regexp "^1.0.5" + cliui@^7.0.2: version "7.0.4" resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" @@ -1667,13 +2349,6 @@ collect-v8-coverage@^1.0.2: resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz#cc1f01eb8d02298cbc9a437c74c70ab4e5210b80" integrity sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw== -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - color-convert@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" @@ -1681,11 +2356,6 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== - color-name@~1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" @@ -1703,11 +2373,16 @@ commander@^14.0.3: resolved "https://registry.yarnpkg.com/commander/-/commander-14.0.3.tgz#425d79b48f9af82fcd9e4fc1ea8af6c5ec07bbc2" integrity sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw== -commander@^2.12.1, commander@^2.20.0: +commander@^2.20.0: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== +comment-parser@1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/comment-parser/-/comment-parser-1.4.1.tgz#bdafead37961ac079be11eb7ec65c4d021eaf9cc" + integrity sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg== + concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -1723,11 +2398,23 @@ concat-stream@^1.4.7: readable-stream "^2.2.2" typedarray "^0.0.6" +confbox@^0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/confbox/-/confbox-0.1.8.tgz#820d73d3b3c82d9bd910652c5d4d599ef8ff8b06" + integrity sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w== + convert-source-map@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== +core-js-compat@^3.34.0: + version "3.49.0" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.49.0.tgz#06145447d92f4aaf258a0c44f24b47afaeaffef6" + integrity sha512-VQXt1jr9cBz03b331DFDCCP90b3fanciLkgiOoy8SBHy06gNf+vQ1A3WFLqG7I8TipYIKeYK9wxd0tUrvHcOZA== + dependencies: + browserslist "^4.28.1" + core-util-is@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" @@ -1765,7 +2452,7 @@ cross-spawn@^5.0.1: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.3, cross-spawn@^7.0.6: +cross-spawn@^7.0.2, cross-spawn@^7.0.3, cross-spawn@^7.0.6: version "7.0.6" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== @@ -1774,6 +2461,11 @@ cross-spawn@^7.0.3, cross-spawn@^7.0.6: shebang-command "^2.0.0" which "^2.0.1" +cssesc@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== + dargs@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/dargs/-/dargs-7.0.0.tgz#04015c41de0bcb69ec84050f3d9be0caf8d6d5cc" @@ -1786,6 +2478,47 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" +data-view-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/data-view-buffer/-/data-view-buffer-1.0.2.tgz#211a03ba95ecaf7798a8c7198d79536211f88570" + integrity sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + is-data-view "^1.0.2" + +data-view-byte-length@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz#9e80f7ca52453ce3e93d25a35318767ea7704735" + integrity sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + is-data-view "^1.0.2" + +data-view-byte-offset@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz#068307f9b71ab76dbbe10291389e020856606191" + integrity sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + is-data-view "^1.0.1" + +debug@^3.2.7: + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + +debug@^4.0.0, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@^4.4.0: + version "4.4.3" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" + integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== + dependencies: + ms "^2.1.3" + debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: version "4.4.0" resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a" @@ -1811,12 +2544,17 @@ dedent@^1.6.0: resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.7.1.tgz#364661eea3d73f3faba7089214420ec2f8f13e15" integrity sha512-9JmrhGZpOlEgOLdQgSm0zxFaYoQon408V1v49aqTWuXENVlnCuY9JBZcXZiCsZQWDjTm5Qf/nIvAy77mXDAjEg== +deep-is@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== + deepmerge@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== -define-data-property@^1.1.4: +define-data-property@^1.0.1, define-data-property@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== @@ -1825,6 +2563,15 @@ define-data-property@^1.1.4: es-errors "^1.3.0" gopd "^1.0.1" +define-properties@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" + integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== + dependencies: + define-data-property "^1.0.1" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" + delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -1835,20 +2582,33 @@ detect-newline@^3.1.0: resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== -diff@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" - integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== +diff-sequences@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" + integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ== + +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +doctrine@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== + dependencies: + esutils "^2.0.2" -doctrine@0.7.2: - version "0.7.2" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-0.7.2.tgz#7cb860359ba3be90e040b26b729ce4bfa654c523" - integrity sha512-qiB/Rir6Un6Ad/TIgTRzsremsTGWzs8j7woXvp14jgq00676uBiBT5eUOi+FgRywZFVy5Us/c04ISRpZhRbS6w== +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== dependencies: - esutils "^1.1.6" - isarray "0.0.1" + esutils "^2.0.2" -dunder-proto@^1.0.1: +dunder-proto@^1.0.0, dunder-proto@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== @@ -1870,6 +2630,11 @@ ecc-jsbn@~0.1.1: jsbn "~0.1.0" safer-buffer "^2.1.0" +electron-to-chromium@^1.5.328: + version "1.5.335" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.335.tgz#0b957cea44ef86795c227c616d16b4803d119daa" + integrity sha512-q9n5T4BR4Xwa2cwbrwcsDJtHD/enpQ5S1xF1IAtdqf5AAgqDFmR/aakqH3ChFdqd/QXJhS3rnnXFtexU7rax6Q== + electron-to-chromium@^1.5.73: version "1.5.79" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.79.tgz#4424f23f319db7a653cf9ee76102e4ac283e6b3e" @@ -1910,6 +2675,66 @@ error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" +es-abstract@^1.23.2, es-abstract@^1.23.3, es-abstract@^1.23.5, es-abstract@^1.23.6, es-abstract@^1.23.9, es-abstract@^1.24.0, es-abstract@^1.24.2: + version "1.24.2" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.24.2.tgz#2dbd38c180735ee983f77585140a2706a963ed9a" + integrity sha512-2FpH9Q5i2RRwyEP1AylXe6nYLR5OhaJTZwmlcP0dL/+JCbgg7yyEo/sEK6HeGZRf3dFpWwThaRHVApXSkW3xeg== + dependencies: + array-buffer-byte-length "^1.0.2" + arraybuffer.prototype.slice "^1.0.4" + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + call-bound "^1.0.4" + data-view-buffer "^1.0.2" + data-view-byte-length "^1.0.2" + data-view-byte-offset "^1.0.1" + es-define-property "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + es-set-tostringtag "^2.1.0" + es-to-primitive "^1.3.0" + function.prototype.name "^1.1.8" + get-intrinsic "^1.3.0" + get-proto "^1.0.1" + get-symbol-description "^1.1.0" + globalthis "^1.0.4" + gopd "^1.2.0" + has-property-descriptors "^1.0.2" + has-proto "^1.2.0" + has-symbols "^1.1.0" + hasown "^2.0.2" + internal-slot "^1.1.0" + is-array-buffer "^3.0.5" + is-callable "^1.2.7" + is-data-view "^1.0.2" + is-negative-zero "^2.0.3" + is-regex "^1.2.1" + is-set "^2.0.3" + is-shared-array-buffer "^1.0.4" + is-string "^1.1.1" + is-typed-array "^1.1.15" + is-weakref "^1.1.1" + math-intrinsics "^1.1.0" + object-inspect "^1.13.4" + object-keys "^1.1.1" + object.assign "^4.1.7" + own-keys "^1.0.1" + regexp.prototype.flags "^1.5.4" + safe-array-concat "^1.1.3" + safe-push-apply "^1.0.0" + safe-regex-test "^1.1.0" + set-proto "^1.0.0" + stop-iteration-iterator "^1.1.0" + string.prototype.trim "^1.2.10" + string.prototype.trimend "^1.0.9" + string.prototype.trimstart "^1.0.8" + typed-array-buffer "^1.0.3" + typed-array-byte-length "^1.0.3" + typed-array-byte-offset "^1.0.4" + typed-array-length "^1.0.7" + unbox-primitive "^1.1.0" + which-typed-array "^1.1.19" + es-define-property@^1.0.0, es-define-property@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" @@ -1920,11 +2745,38 @@ es-errors@^1.3.0: resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== +es-iterator-helpers@^1.0.12: + version "1.3.2" + resolved "https://registry.yarnpkg.com/es-iterator-helpers/-/es-iterator-helpers-1.3.2.tgz#8f4ff1f3603cbd09fbdb72c747a679779a65cc7f" + integrity sha512-HVLACW1TppGYjJ8H6/jqH/pqOtKRw6wMlrB23xfExmFWxFquAIWCmwoLsOyN96K4a5KbmOf5At9ZUO3GZbetAw== + dependencies: + call-bind "^1.0.9" + call-bound "^1.0.4" + define-properties "^1.2.1" + es-abstract "^1.24.2" + es-errors "^1.3.0" + es-set-tostringtag "^2.1.0" + function-bind "^1.1.2" + get-intrinsic "^1.3.0" + globalthis "^1.0.4" + gopd "^1.2.0" + has-property-descriptors "^1.0.2" + has-proto "^1.2.0" + has-symbols "^1.1.0" + internal-slot "^1.1.0" + iterator.prototype "^1.1.5" + math-intrinsics "^1.1.0" + es-module-lexer@^1.2.1: version "1.6.0" resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.6.0.tgz#da49f587fd9e68ee2404fe4e256c0c7d3a81be21" integrity sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ== +es-module-lexer@^1.5.3: + version "1.7.0" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.7.0.tgz#9159601561880a85f2734560a9099b2c31e5372a" + integrity sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA== + es-object-atoms@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.0.0.tgz#ddb55cd47ac2e240701260bc2a8e31ecb643d941" @@ -1932,11 +2784,49 @@ es-object-atoms@^1.0.0: dependencies: es-errors "^1.3.0" -escalade@^3.1.1, escalade@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" - integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== - +es-object-atoms@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" + integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== + dependencies: + es-errors "^1.3.0" + +es-set-tostringtag@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d" + integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== + dependencies: + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + has-tostringtag "^1.0.2" + hasown "^2.0.2" + +es-shim-unscopables@^1.0.2, es-shim-unscopables@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz#438df35520dac5d105f3943d927549ea3b00f4b5" + integrity sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw== + dependencies: + hasown "^2.0.2" + +es-to-primitive@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.3.0.tgz#96c89c82cc49fd8794a24835ba3e1ff87f214e18" + integrity sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g== + dependencies: + is-callable "^1.2.7" + is-date-object "^1.0.5" + is-symbol "^1.0.4" + +escalade@^3.1.1, escalade@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" + integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== + +escape-string-regexp@4.0.0, escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" @@ -1947,7 +2837,347 @@ escape-string-regexp@^2.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== -eslint-scope@5.1.1: +eslint-compat-utils@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/eslint-compat-utils/-/eslint-compat-utils-0.4.1.tgz#498d9dad03961174a283f7741838a3fbe4a34e89" + integrity sha512-5N7ZaJG5pZxUeNNJfUchurLVrunD1xJvyg5kYOIVF8kg1f3ajTikmAu/5fZ9w100omNPOoMjngRszh/Q/uFGMg== + dependencies: + semver "^7.5.4" + +eslint-compat-utils@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/eslint-compat-utils/-/eslint-compat-utils-0.5.1.tgz#7fc92b776d185a70c4070d03fd26fde3d59652e4" + integrity sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q== + dependencies: + semver "^7.5.4" + +eslint-compat-utils@^0.6.0, eslint-compat-utils@^0.6.4: + version "0.6.5" + resolved "https://registry.yarnpkg.com/eslint-compat-utils/-/eslint-compat-utils-0.6.5.tgz#6b06350a1c947c4514cfa64a170a6bfdbadc7ec2" + integrity sha512-vAUHYzue4YAa2hNACjB8HvUQj5yehAZgiClyFVVom9cP8z5NSFq3PwB/TtJslN2zAMgRX6FCFCjYBbQh71g5RQ== + dependencies: + semver "^7.5.4" + +eslint-config-flat-gitignore@^0.1.2: + version "0.1.8" + resolved "https://registry.yarnpkg.com/eslint-config-flat-gitignore/-/eslint-config-flat-gitignore-0.1.8.tgz#3a5c0ac6ed7a5d925603263b529d217088ebb005" + integrity sha512-OEUbS2wzzYtUfshjOqzFo4Bl4lHykXUdM08TCnYNl7ki+niW4Q1R0j0FDFDr0vjVsI5ZFOz5LvluxOP+Ew+dYw== + dependencies: + find-up-simple "^1.0.0" + parse-gitignore "^2.0.0" + +eslint-import-resolver-node@^0.3.9: + version "0.3.10" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.10.tgz#84ce3005abfc300588cf23bbac1aabec1fc6e8c1" + integrity sha512-tRrKqFyCaKict5hOd244sL6EQFNycnMQnBe+j8uqGNXYzsImGbGUU4ibtoaBmv5FLwJwcFJNeg1GeVjQfbMrDQ== + dependencies: + debug "^3.2.7" + is-core-module "^2.16.1" + resolve "^2.0.0-next.6" + +eslint-import-resolver-typescript@^3.6.1: + version "3.10.1" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.10.1.tgz#23dac32efa86a88e2b8232eb244ac499ad636db2" + integrity sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ== + dependencies: + "@nolyfill/is-core-module" "1.0.39" + debug "^4.4.0" + get-tsconfig "^4.10.0" + is-bun-module "^2.0.0" + stable-hash "^0.0.5" + tinyglobby "^0.2.13" + unrs-resolver "^1.6.2" + +eslint-json-compat-utils@^0.2.1: + version "0.2.3" + resolved "https://registry.yarnpkg.com/eslint-json-compat-utils/-/eslint-json-compat-utils-0.2.3.tgz#f6ef27e80c750b56cbedb4de67a10b1d47f0a8a7" + integrity sha512-RbBmDFyu7FqnjE8F0ZxPNzx5UaptdeS9Uu50r7A+D7s/+FCX+ybiyViYEgFUaFIFqSWJgZRTpL5d8Kanxxl2lQ== + dependencies: + esquery "^1.6.0" + +eslint-merge-processors@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/eslint-merge-processors/-/eslint-merge-processors-0.1.0.tgz#30ac4c59725a63d12a9677de7d2b2ec2a09fb779" + integrity sha512-IvRXXtEajLeyssvW4wJcZ2etxkR9mUf4zpNwgI+m/Uac9RfXHskuJefkHUcawVzePnd6xp24enp5jfgdHzjRdQ== + +eslint-module-utils@^2.8.0: + version "2.12.1" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz#f76d3220bfb83c057651359295ab5854eaad75ff" + integrity sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw== + dependencies: + debug "^3.2.7" + +eslint-plugin-antfu@^2.1.2: + version "2.7.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-antfu/-/eslint-plugin-antfu-2.7.0.tgz#63e6da511da21fabcd1774c10f7d8b5681b2e560" + integrity sha512-gZM3jq3ouqaoHmUNszb1Zo2Ux7RckSvkGksjLWz9ipBYGSv1EwwBETN6AdiUXn+RpVHXTbEMPAPlXJazcA6+iA== + dependencies: + "@antfu/utils" "^0.7.10" + +eslint-plugin-es-x@^7.5.0: + version "7.8.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-es-x/-/eslint-plugin-es-x-7.8.0.tgz#a207aa08da37a7923f2a9599e6d3eb73f3f92b74" + integrity sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ== + dependencies: + "@eslint-community/eslint-utils" "^4.1.2" + "@eslint-community/regexpp" "^4.11.0" + eslint-compat-utils "^0.5.1" + +eslint-plugin-eslint-comments@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz#9e1cd7b4413526abb313933071d7aba05ca12ffa" + integrity sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ== + dependencies: + escape-string-regexp "^1.0.5" + ignore "^5.0.5" + +eslint-plugin-extended@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-extended/-/eslint-plugin-extended-0.2.0.tgz#8aa3357976803c11c64203d5b9d2642257e38819" + integrity sha512-LZw2wsNiD7U6JJG23iXV7s3BKaukblPf61+FBXUlI4ANvrLAbIpwD7HzAfJgTWWYIyVHPe5UaXGJUA8o2W7Ryw== + dependencies: + varname "2.0.2" + +eslint-plugin-i@^2.29.1: + version "2.29.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-i/-/eslint-plugin-i-2.29.1.tgz#97e4a055b6b2040cec0842700dd1d2066773b5a4" + integrity sha512-ORizX37MelIWLbMyqI7hi8VJMf7A0CskMmYkB+lkCX3aF4pkGV7kwx5bSEb4qx7Yce2rAf9s34HqDRPjGRZPNQ== + dependencies: + debug "^4.3.4" + doctrine "^3.0.0" + eslint-import-resolver-node "^0.3.9" + eslint-module-utils "^2.8.0" + get-tsconfig "^4.7.2" + is-glob "^4.0.3" + minimatch "^3.1.2" + semver "^7.5.4" + +eslint-plugin-import@2.29.1: + version "2.29.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz#d45b37b5ef5901d639c15270d74d46d161150643" + integrity sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw== + 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.15.0" + +eslint-plugin-jest@^27.9.0: + version "27.9.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-27.9.0.tgz#7c98a33605e1d8b8442ace092b60e9919730000b" + integrity sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug== + dependencies: + "@typescript-eslint/utils" "^5.10.0" + +eslint-plugin-jsdoc@^48.0.4: + version "48.11.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.11.0.tgz#7c8dae6ce0d814aff54b87fdb808f02635691ade" + integrity sha512-d12JHJDPNo7IFwTOAItCeJY1hcqoIxE0lHA8infQByLilQ9xkqrRa6laWCnsuCrf+8rUnvxXY1XuTbibRBNylA== + dependencies: + "@es-joy/jsdoccomment" "~0.46.0" + are-docs-informative "^0.0.2" + comment-parser "1.4.1" + debug "^4.3.5" + escape-string-regexp "^4.0.0" + espree "^10.1.0" + esquery "^1.6.0" + parse-imports "^2.1.1" + semver "^7.6.3" + spdx-expression-parse "^4.0.0" + synckit "^0.9.1" + +eslint-plugin-jsonc@^2.13.0: + version "2.21.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsonc/-/eslint-plugin-jsonc-2.21.1.tgz#ca1381a36baaa2227b73a2a103477cf69fb4168c" + integrity sha512-dbNR5iEnQeORwsK2WZzr3QaMtFCY3kKJVMRHPzUpKzMhmVy2zIpVgFDpX8MNoIdoqz6KCpCfOJavhfiSbZbN+w== + dependencies: + "@eslint-community/eslint-utils" "^4.5.1" + diff-sequences "^27.5.1" + eslint-compat-utils "^0.6.4" + eslint-json-compat-utils "^0.2.1" + espree "^9.6.1 || ^10.3.0" + graphemer "^1.4.0" + jsonc-eslint-parser "^2.4.0" + natural-compare "^1.4.0" + synckit "^0.6.2 || ^0.7.3 || ^0.11.5" + +eslint-plugin-markdown@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-markdown/-/eslint-plugin-markdown-3.0.1.tgz#fc6765bdb5f82a75e2438d7fac619602f2abc38c" + integrity sha512-8rqoc148DWdGdmYF6WSQFT3uQ6PO7zXYgeBpHAOAakX/zpq+NvFYbDA/H7PYzHajwtmaOzAwfxyl++x0g1/N9A== + dependencies: + mdast-util-from-markdown "^0.8.5" + +eslint-plugin-n@^16.6.2: + version "16.6.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-n/-/eslint-plugin-n-16.6.2.tgz#6a60a1a376870064c906742272074d5d0b412b0b" + integrity sha512-6TyDmZ1HXoFQXnhCTUjVFULReoBPOAjpuiKELMkeP40yffI/1ZRO+d9ug/VC6fqISo2WkuIBk3cvuRPALaWlOQ== + dependencies: + "@eslint-community/eslint-utils" "^4.4.0" + builtins "^5.0.1" + eslint-plugin-es-x "^7.5.0" + get-tsconfig "^4.7.0" + globals "^13.24.0" + ignore "^5.2.4" + is-builtin-module "^3.2.1" + is-core-module "^2.12.1" + minimatch "^3.1.2" + resolve "^1.22.2" + semver "^7.5.3" + +eslint-plugin-no-only-tests@^3.1.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-no-only-tests/-/eslint-plugin-no-only-tests-3.3.0.tgz#d9d42ccd4b5d099b4872fb5046cf95441188cfb5" + integrity sha512-brcKcxGnISN2CcVhXJ/kEQlNa0MEfGRtwKtWA16SkqXHKitaKIMrfemJKLKX1YqDU5C/5JY3PvZXd5jEW04e0Q== + +eslint-plugin-perfectionist@^2.5.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-perfectionist/-/eslint-plugin-perfectionist-2.11.0.tgz#d5cc32e0d12b649357ca5b104a105793956759ba" + integrity sha512-XrtBtiu5rbQv88gl+1e2RQud9te9luYNvKIgM9emttQ2zutHPzY/AQUucwxscDKV4qlTkvLTxjOFvxqeDpPorw== + dependencies: + "@typescript-eslint/utils" "^6.13.0 || ^7.0.0" + minimatch "^9.0.3" + natural-compare-lite "^1.4.0" + +eslint-plugin-react-hooks@4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz#4c3e697ad95b77e93f8646aaa1630c1ba607edd3" + integrity sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g== + +eslint-plugin-react@7.33.2: + version "7.33.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz#69ee09443ffc583927eafe86ffebb470ee737608" + 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" + +eslint-plugin-style@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-style/-/eslint-plugin-style-0.2.0.tgz#3184f16accba0b471319d90d32a75f602405ed5f" + integrity sha512-jzNVY7r/f+Q6cogzHCoiO3PQVfj+7X5uNOWC/knVq2HCSTgVEYnhjsmWVwc/vidMysj+WE+j4VjAdLsnWFBmIQ== + dependencies: + builtin-modules "3.2.0" + tslib "2.3.1" + +eslint-plugin-toml@^0.9.2: + version "0.9.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-toml/-/eslint-plugin-toml-0.9.2.tgz#f9489500bb6070115b75098caa08316cc53a97c4" + integrity sha512-ri0xf63PYf3pIq/WY9BIwrqxZmGTIwSkAO0bHddI0ajUwN4KGz6W8vOvdXFHOpRdRfzxlmXze/vfsY/aTEXESg== + dependencies: + debug "^4.1.1" + eslint-compat-utils "^0.4.0" + lodash "^4.17.19" + toml-eslint-parser "^0.9.0" + +eslint-plugin-tsdoc@^0.2.17: + version "0.2.17" + resolved "https://registry.yarnpkg.com/eslint-plugin-tsdoc/-/eslint-plugin-tsdoc-0.2.17.tgz#27789495bbd8778abbf92db1707fec2ed3dfe281" + integrity sha512-xRmVi7Zx44lOBuYqG8vzTXuL6IdGOeF9nHX17bjJ8+VE6fsxpdGem0/SBTmAwgYMKYB1WBkqRJVQ+n8GK041pA== + dependencies: + "@microsoft/tsdoc" "0.14.2" + "@microsoft/tsdoc-config" "0.16.2" + +eslint-plugin-unicorn@^50.0.1: + version "50.0.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-50.0.1.tgz#e539cdb02dfd893c603536264c4ed9505b70e3bf" + integrity sha512-KxenCZxqSYW0GWHH18okDlOQcpezcitm5aOSz6EnobyJ6BIByiPDviQRjJIUAjG/tMN11958MxaQ+qCoU6lfDA== + dependencies: + "@babel/helper-validator-identifier" "^7.22.20" + "@eslint-community/eslint-utils" "^4.4.0" + "@eslint/eslintrc" "^2.1.4" + ci-info "^4.0.0" + clean-regexp "^1.0.0" + core-js-compat "^3.34.0" + esquery "^1.5.0" + indent-string "^4.0.0" + is-builtin-module "^3.2.1" + jsesc "^3.0.2" + pluralize "^8.0.0" + read-pkg-up "^7.0.1" + regexp-tree "^0.1.27" + regjsparser "^0.10.0" + semver "^7.5.4" + strip-indent "^3.0.0" + +eslint-plugin-unused-imports@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-unused-imports/-/eslint-plugin-unused-imports-3.2.0.tgz#63a98c9ad5f622cd9f830f70bc77739f25ccfe0d" + integrity sha512-6uXyn6xdINEpxE1MtDjxQsyXB37lfyO2yKGVVgtD7WEWQGORSOZjgrD6hBhvGv4/SO+TOlS+UnC6JppRqbuwGQ== + dependencies: + eslint-rule-composer "^0.3.0" + +eslint-plugin-vitest@^0.3.21: + version "0.3.26" + resolved "https://registry.yarnpkg.com/eslint-plugin-vitest/-/eslint-plugin-vitest-0.3.26.tgz#0906893c1f8f7094614fc6ff255c0a369cfbf427" + integrity sha512-oxe5JSPgRjco8caVLTh7Ti8PxpwJdhSV0hTQAmkFcNcmy/9DnqLB/oNVRA11RmVRP//2+jIIT6JuBEcpW3obYg== + dependencies: + "@typescript-eslint/utils" "^7.1.1" + +eslint-plugin-vue@^9.21.1: + version "9.33.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-9.33.0.tgz#de33eba8f78e1d172c59c8ec7fbfd60c6ca35c39" + integrity sha512-174lJKuNsuDIlLpjeXc5E2Tss8P44uIimAfGD0b90k0NoirJqpG7stLuU9Vp/9ioTOrQdWVREc4mRd1BD+CvGw== + dependencies: + "@eslint-community/eslint-utils" "^4.4.0" + globals "^13.24.0" + natural-compare "^1.4.0" + nth-check "^2.1.1" + postcss-selector-parser "^6.0.15" + semver "^7.6.3" + vue-eslint-parser "^9.4.3" + xml-name-validator "^4.0.0" + +eslint-plugin-yml@^1.12.2: + version "1.19.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-yml/-/eslint-plugin-yml-1.19.1.tgz#38e26aab9693657fc33625198db08ea383615e04" + integrity sha512-bYkOxyEiXh9WxUhVYPELdSHxGG5pOjCSeJOVkfdIyj6tuiHDxrES2WAW1dBxn3iaZQey57XflwLtCYRcNPOiOg== + dependencies: + debug "^4.3.2" + diff-sequences "^27.5.1" + escape-string-regexp "4.0.0" + eslint-compat-utils "^0.6.0" + natural-compare "^1.4.0" + yaml-eslint-parser "^1.2.1" + +eslint-processor-vue-blocks@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/eslint-processor-vue-blocks/-/eslint-processor-vue-blocks-0.1.2.tgz#d472e0a5efe15e9eab5c3f2e2518c9a121097805" + integrity sha512-PfpJ4uKHnqeL/fXUnzYkOax3aIenlwewXRX8jFinA1a2yCFnLgMuiH3xvCgvHHUlV2xJWQHbCTdiJWGwb3NqpQ== + +eslint-rule-composer@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz#79320c927b0c5c0d3d3d2b76c8b4a488f25bbaf9" + integrity sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg== + +eslint-scope@5.1.1, eslint-scope@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== @@ -1955,11 +3185,98 @@ eslint-scope@5.1.1: esrecurse "^4.3.0" estraverse "^4.1.1" +eslint-scope@^7.1.1, eslint-scope@^7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f" + integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg== + dependencies: + esrecurse "^4.3.0" + estraverse "^5.2.0" + +eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: + version "3.4.3" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" + integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== + +eslint-visitor-keys@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz#4cfea60fe7dd0ad8e816e1ed026c1d5251b512c1" + integrity sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ== + +eslint@^8.57.0: + version "8.57.1" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.1.tgz#7df109654aba7e3bbe5c8eae533c5e461d3c6ca9" + integrity sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@eslint-community/regexpp" "^4.6.1" + "@eslint/eslintrc" "^2.1.4" + "@eslint/js" "8.57.1" + "@humanwhocodes/config-array" "^0.13.0" + "@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" + +espree@^10.1.0, "espree@^9.6.1 || ^10.3.0": + version "10.4.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-10.4.0.tgz#d54f4949d4629005a1fa168d937c3ff1f7e2a837" + integrity sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ== + dependencies: + acorn "^8.15.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^4.2.1" + +espree@^9.0.0, espree@^9.3.1, espree@^9.6.0, espree@^9.6.1: + version "9.6.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" + integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ== + dependencies: + acorn "^8.9.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^3.4.1" + esprima@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== +esquery@^1.4.0, esquery@^1.4.2, esquery@^1.5.0, esquery@^1.6.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.7.0.tgz#08d048f261f0ddedb5bae95f46809463d9c9496d" + integrity sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g== + dependencies: + estraverse "^5.1.0" + esrecurse@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" @@ -1972,15 +3289,15 @@ estraverse@^4.1.1: resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== -estraverse@^5.2.0: +estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== -esutils@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.1.6.tgz#c01ccaa9ae4b897c6d0c3e210ae52f3c7a844375" - integrity sha512-RG1ZkUT7iFJG9LSHr7KDuuMSlujfeTtMNIcInURxKAxhMtwQhI3NrQhz26gZQYlsYZQKzsnwtpKrFKj9K9Qu1A== +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== event-target-shim@^5.0.0: version "5.0.1" @@ -2044,11 +3361,27 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== +fast-glob@^3.2.9: + version "3.3.3" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.3.tgz#d06d585ce8dba90a16b0505c543c3ccfb3aeb818" + integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg== + 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.8" + fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== +fast-levenshtein@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== + fast-uri@^3.0.1: version "3.0.5" resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.5.tgz#19f5f9691d0dab9b85861a7bb5d98fca961da9cd" @@ -2059,6 +3392,13 @@ fastest-levenshtein@^1.0.12: resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz#210e61b6ff181de91ea9b3d1b84fdedd47e034e5" integrity sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg== +fastq@^1.6.0: + version "1.20.1" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.20.1.tgz#ca750a10dc925bc8b18839fd203e3ef4b3ced675" + integrity sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw== + dependencies: + reusify "^1.0.4" + fb-watchman@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" @@ -2066,6 +3406,18 @@ fb-watchman@^2.0.2: dependencies: bser "2.1.1" +fdir@^6.5.0: + version "6.5.0" + resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.5.0.tgz#ed2ab967a331ade62f18d077dae192684d50d350" + integrity sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg== + +file-entry-cache@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== + dependencies: + flat-cache "^3.0.4" + fill-range@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" @@ -2073,6 +3425,11 @@ fill-range@^7.1.1: dependencies: to-regex-range "^5.0.1" +find-up-simple@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/find-up-simple/-/find-up-simple-1.0.1.tgz#18fb90ad49e45252c4d7fca56baade04fa3fca1e" + integrity sha512-afd4O7zpqHeRyg4PfDQsXmlDe2PfdHtJt6Akt8jOWaApLOZk5JXs6VMR29lz03pRe9mpykrRCYIYxaJYcfpncQ== + find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -2081,11 +3438,40 @@ find-up@^4.0.0, find-up@^4.1.0: locate-path "^5.0.0" path-exists "^4.0.0" +find-up@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== + dependencies: + locate-path "^6.0.0" + path-exists "^4.0.0" + +flat-cache@^3.0.4: + version "3.2.0" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee" + integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw== + dependencies: + flatted "^3.2.9" + keyv "^4.5.3" + rimraf "^3.0.2" + flat@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== +flatted@^3.2.9: + version "3.4.2" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.4.2.tgz#f5c23c107f0f37de8dbdf24f13722b3b98d52726" + integrity sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA== + +for-each@^0.3.3, for-each@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.5.tgz#d650688027826920feeb0af747ee7b9421a41d47" + integrity sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg== + dependencies: + is-callable "^1.2.7" + foreground-child@^3.1.0: version "3.3.1" resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.1.tgz#32e8e9ed1b68a3497befb9ac2b6adf92a638576f" @@ -2123,6 +3509,28 @@ function-bind@^1.1.2: resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== +function.prototype.name@^1.1.6, function.prototype.name@^1.1.8: + version "1.1.8" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.8.tgz#e68e1df7b259a5c949eeef95cdbde53edffabb78" + integrity sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + functions-have-names "^1.2.3" + hasown "^2.0.2" + is-callable "^1.2.7" + +functions-have-names@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== + +generator-function@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/generator-function/-/generator-function-2.0.1.tgz#0e75dd410d1243687a0ba2e951b94eedb8f737a2" + integrity sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g== + gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" @@ -2149,6 +3557,22 @@ get-intrinsic@^1.2.4, get-intrinsic@^1.2.6: hasown "^2.0.2" math-intrinsics "^1.1.0" +get-intrinsic@^1.2.5, get-intrinsic@^1.2.7, get-intrinsic@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" + integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== + dependencies: + call-bind-apply-helpers "^1.0.2" + es-define-property "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + function-bind "^1.1.2" + get-proto "^1.0.1" + gopd "^1.2.0" + has-symbols "^1.1.0" + hasown "^2.0.2" + math-intrinsics "^1.1.0" + get-package-type@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" @@ -2164,7 +3588,7 @@ get-pkg-repo@^4.0.0: through2 "^2.0.0" yargs "^16.2.0" -get-proto@^1.0.0: +get-proto@^1.0.0, get-proto@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== @@ -2177,6 +3601,22 @@ get-stream@^6.0.0: resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== +get-symbol-description@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.1.0.tgz#7bdd54e0befe8ffc9f3b4e203220d9f1e881b6ee" + integrity sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + +get-tsconfig@^4.10.0, get-tsconfig@^4.7.0, get-tsconfig@^4.7.2: + version "4.13.7" + resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.13.7.tgz#b9d8b199b06033ceeea1a93df7ea5765415089bc" + integrity sha512-7tN6rFgBlMgpBML5j8typ92BKFi2sFQvIdpAqLA2beia5avZDrMs0FLZiM5etShWq5irVyGcGMEA1jcDaK7A/Q== + dependencies: + resolve-pkg-maps "^1.0.0" + getpass@^0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" @@ -2203,6 +3643,20 @@ git-semver-tags@^4.0.0: meow "^8.0.0" semver "^6.0.0" +glob-parent@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob-parent@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== + dependencies: + is-glob "^4.0.3" + glob-to-regexp@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" @@ -2220,7 +3674,7 @@ glob@^10.3.10: package-json-from-dist "^1.0.0" path-scurry "^1.11.1" -glob@^7.1.1, glob@^7.1.4: +glob@^7.1.3, glob@^7.1.4: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -2237,6 +3691,33 @@ globals@^11.1.0: resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== +globals@^13.19.0, globals@^13.24.0: + version "13.24.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171" + integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ== + dependencies: + type-fest "^0.20.2" + +globalthis@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236" + integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ== + dependencies: + define-properties "^1.2.1" + gopd "^1.0.1" + +globby@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + 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" + gopd@^1.0.1, gopd@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" @@ -2247,6 +3728,11 @@ graceful-fs@^4.1.2, graceful-fs@^4.2.11, graceful-fs@^4.2.4: resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== +graphemer@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" + integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== + handlebars@^4.7.8: version "4.7.8" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.8.tgz#41c42c18b1be2365439188c77c6afae71c0cd9e9" @@ -2277,28 +3763,42 @@ hard-rejection@^2.1.0: resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== +has-bigints@^1.0.2: + version "1.1.0" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.1.0.tgz#28607e965ac967e03cd2a2c70a2636a1edad49fe" + integrity sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg== has-flag@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-property-descriptors@^1.0.2: +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== dependencies: es-define-property "^1.0.0" -has-symbols@^1.1.0: +has-proto@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.2.0.tgz#5de5a6eabd95fdffd9818b43055e8065e39fe9d5" + integrity sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ== + dependencies: + dunder-proto "^1.0.0" + +has-symbols@^1.0.3, has-symbols@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== +has-tostringtag@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" + integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== + dependencies: + has-symbols "^1.0.3" + hash.js@^1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" @@ -2307,7 +3807,7 @@ hash.js@^1.1.7: inherits "^2.0.3" minimalistic-assert "^1.0.1" -hasown@^2.0.2: +hasown@^2.0.0, hasown@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== @@ -2355,6 +3855,19 @@ ieee754@^1.2.1: resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== +ignore@^5.0.5, ignore@^5.2.0, ignore@^5.2.4: + version "5.3.2" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" + integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== + +import-fresh@^3.2.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.1.tgz#9cecb56503c0ada1f2741dbbd6546e4b13b57ccf" + integrity sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + import-local@^3.0.2, import-local@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.2.0.tgz#c3d5c745798c02a6f8b897726aba5100186ee260" @@ -2386,23 +3899,133 @@ inherits@2, inherits@^2.0.3, inherits@~2.0.3: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== +internal-slot@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.1.0.tgz#1eac91762947d2f7056bc838d93e13b2e9604961" + integrity sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw== + dependencies: + es-errors "^1.3.0" + hasown "^2.0.2" + side-channel "^1.1.0" + interpret@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/interpret/-/interpret-3.1.1.tgz#5be0ceed67ca79c6c4bc5cf0d7ee843dcea110c4" integrity sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ== +is-alphabetical@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" + integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== + +is-alphanumerical@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" + integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== + dependencies: + is-alphabetical "^1.0.0" + is-decimal "^1.0.0" + +is-array-buffer@^3.0.4, is-array-buffer@^3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.5.tgz#65742e1e687bd2cc666253068fd8707fe4d44280" + integrity sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + get-intrinsic "^1.2.6" + is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== -is-core-module@^2.16.0, is-core-module@^2.5.0: +is-async-function@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-async-function/-/is-async-function-2.1.1.tgz#3e69018c8e04e73b738793d020bfe884b9fd3523" + integrity sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ== + dependencies: + async-function "^1.0.0" + call-bound "^1.0.3" + get-proto "^1.0.1" + has-tostringtag "^1.0.2" + safe-regex-test "^1.1.0" + +is-bigint@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.1.0.tgz#dda7a3445df57a42583db4228682eba7c4170672" + integrity sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ== + dependencies: + has-bigints "^1.0.2" + +is-boolean-object@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.2.2.tgz#7067f47709809a393c71ff5bb3e135d8a9215d9e" + integrity sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + +is-builtin-module@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-3.2.1.tgz#f03271717d8654cfcaf07ab0463faa3571581169" + integrity sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A== + dependencies: + builtin-modules "^3.3.0" + +is-bun-module@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-bun-module/-/is-bun-module-2.0.0.tgz#4d7859a87c0fcac950c95e666730e745eae8bddd" + integrity sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ== + dependencies: + semver "^7.7.1" + +is-callable@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" + integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== + +is-core-module@^2.1.0, is-core-module@^2.12.1, is-core-module@^2.13.1, is-core-module@^2.16.0, is-core-module@^2.16.1, is-core-module@^2.5.0: version "2.16.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.1.tgz#2a98801a849f43e2add644fbb6bc6229b19a4ef4" integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w== dependencies: hasown "^2.0.2" +is-data-view@^1.0.1, is-data-view@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.2.tgz#bae0a41b9688986c2188dda6657e56b8f9e63b8e" + integrity sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw== + dependencies: + call-bound "^1.0.2" + get-intrinsic "^1.2.6" + is-typed-array "^1.1.13" + +is-date-object@^1.0.5, is-date-object@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.1.0.tgz#ad85541996fc7aa8b2729701d27b7319f95d82f7" + integrity sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg== + dependencies: + call-bound "^1.0.2" + has-tostringtag "^1.0.2" + +is-decimal@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" + integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-finalizationregistry@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz#eefdcdc6c94ddd0674d9c85887bf93f944a97c90" + integrity sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg== + dependencies: + call-bound "^1.0.3" + is-fullwidth-code-point@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" @@ -2413,11 +4036,57 @@ is-generator-fn@^2.1.0: resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== +is-generator-function@^1.0.10: + version "1.1.2" + resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.1.2.tgz#ae3b61e3d5ea4e4839b90bad22b02335051a17d5" + integrity sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA== + dependencies: + call-bound "^1.0.4" + generator-function "^2.0.0" + get-proto "^1.0.1" + has-tostringtag "^1.0.2" + safe-regex-test "^1.1.0" + +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-hexadecimal@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7" + integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== + +is-map@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.3.tgz#ede96b7fe1e270b3c4465e3a465658764926d62e" + integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw== + +is-negative-zero@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" + integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw== + +is-number-object@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.1.1.tgz#144b21e95a1bc148205dcc2814a9134ec41b2541" + integrity sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== +is-path-inside@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== + is-plain-obj@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" @@ -2430,11 +4099,57 @@ is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" +is-regex@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.2.1.tgz#76d70a3ed10ef9be48eb577887d74205bf0cad22" + integrity sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g== + dependencies: + call-bound "^1.0.2" + gopd "^1.2.0" + has-tostringtag "^1.0.2" + hasown "^2.0.2" + +is-set@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.3.tgz#8ab209ea424608141372ded6e0cb200ef1d9d01d" + integrity sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg== + +is-shared-array-buffer@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz#9b67844bd9b7f246ba0708c3a93e34269c774f6f" + integrity sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A== + dependencies: + call-bound "^1.0.3" + is-stream@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== +is-string@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.1.1.tgz#92ea3f3d5c5b6e039ca8677e5ac8d07ea773cbb9" + integrity sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + +is-symbol@^1.0.4, is-symbol@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.1.1.tgz#f47761279f532e2b05a7024a7506dbbedacd0634" + integrity sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w== + dependencies: + call-bound "^1.0.2" + has-symbols "^1.1.0" + safe-regex-test "^1.1.0" + +is-typed-array@^1.1.13, is-typed-array@^1.1.14, is-typed-array@^1.1.15: + version "1.1.15" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.15.tgz#4bfb4a45b61cee83a5a46fba778e4e8d59c0ce0b" + integrity sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ== + dependencies: + which-typed-array "^1.1.16" + is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" @@ -2445,10 +4160,25 @@ is-unicode-supported@^0.1.0: resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== +is-weakmap@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.2.tgz#bf72615d649dfe5f699079c54b83e47d1ae19cfd" + integrity sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w== + +is-weakref@^1.0.2, is-weakref@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.1.1.tgz#eea430182be8d64174bd96bffbc46f21bf3f9293" + integrity sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew== + dependencies: + call-bound "^1.0.3" + +is-weakset@^2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.4.tgz#c9f5deb0bc1906c6d6f1027f284ddf459249daca" + integrity sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ== + dependencies: + call-bound "^1.0.3" + get-intrinsic "^1.2.6" isarray@^2.0.5: version "2.0.5" @@ -2517,6 +4247,18 @@ istanbul-reports@^3.1.3: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" +iterator.prototype@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/iterator.prototype/-/iterator.prototype-1.1.5.tgz#12c959a29de32de0aa3bbbb801f4d777066dae39" + integrity sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g== + dependencies: + define-data-property "^1.1.4" + es-object-atoms "^1.0.0" + get-intrinsic "^1.2.6" + get-proto "^1.0.0" + has-symbols "^1.1.0" + set-function-name "^2.0.2" + jackspeak@^3.1.2: version "3.4.3" resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.3.tgz#8833a9d89ab4acde6188942bd1c53b6390ed5a8a" @@ -2900,7 +4642,12 @@ jest@^30.2.0: import-local "^3.2.0" jest-cli "30.2.0" -js-tokens@^4.0.0: +jju@~1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/jju/-/jju-1.4.0.tgz#a3abe2718af241a2b2904f84a625970f389ae32a" + integrity sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA== + +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== @@ -2913,16 +4660,38 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" +js-yaml@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.1.tgz#854c292467705b699476e1a2decc0c8a3458806b" + integrity sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA== + dependencies: + argparse "^2.0.1" + jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg== +jsdoc-type-pratt-parser@~4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz#136f0571a99c184d84ec84662c45c29ceff71114" + integrity sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ== + jsesc@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.1.0.tgz#74d335a234f67ed19907fdadfac7ccf9d409825d" integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA== +jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== + +json-buffer@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" + integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== + json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" @@ -2943,6 +4712,11 @@ json-schema@0.4.0: resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== + json-stable-stringify@^1.0.1: version "1.2.1" resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.2.1.tgz#addb683c2b78014d0b78d704c2fcbdf0695a60e2" @@ -2959,11 +4733,28 @@ json-stringify-safe@~5.0.1: resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== +json5@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== + dependencies: + minimist "^1.2.0" + json5@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== +jsonc-eslint-parser@^2.4.0: + version "2.4.2" + resolved "https://registry.yarnpkg.com/jsonc-eslint-parser/-/jsonc-eslint-parser-2.4.2.tgz#f135454fd35784ecc1b848908f0d3e98a5be9433" + integrity sha512-1e4qoRgnn448pRuMvKGsFFymUCquZV0mpGgOyIKNgD3JVDTsVJyRBGH/Fm0tBb8WsWGgmB1mDe6/yJMQM37DUA== + dependencies: + acorn "^8.5.0" + eslint-visitor-keys "^3.0.0" + espree "^9.0.0" + semver "^7.3.5" + jsonify@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.1.tgz#2aa3111dae3d34a0f151c63f3a45d995d9420978" @@ -3005,11 +4796,33 @@ jsprim@^1.2.2: json-schema "0.4.0" verror "1.10.0" +"jsx-ast-utils@^2.4.1 || ^3.0.0": + version "3.3.5" + resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz#4766bd05a8e2a11af222becd19e15575e52a853a" + integrity sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ== + dependencies: + array-includes "^3.1.6" + array.prototype.flat "^1.3.1" + object.assign "^4.1.4" + object.values "^1.1.6" + +keyv@^4.5.3: + version "4.5.4" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" + integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== + dependencies: + json-buffer "3.0.1" + kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== +kleur@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== + lcov-parse@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lcov-parse/-/lcov-parse-1.0.0.tgz#eb0d46b54111ebc561acb4c408ef9363bdc8f7e0" @@ -3020,6 +4833,14 @@ leven@^3.1.0: resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + lines-and-columns@^1.1.6: version "1.2.4" resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" @@ -3030,6 +4851,14 @@ loader-runner@^4.2.0: resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== +local-pkg@^0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-0.5.1.tgz#69658638d2a95287534d4c2fff757980100dbb6d" + integrity sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ== + dependencies: + mlly "^1.7.3" + pkg-types "^1.2.1" + locate-path@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" @@ -3037,16 +4866,33 @@ locate-path@^5.0.0: dependencies: p-locate "^4.1.0" +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== + dependencies: + p-locate "^5.0.0" + lodash.memoize@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + lodash@^4.17.15: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== +lodash@^4.17.19, lodash@^4.17.21: + version "4.18.1" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.18.1.tgz#ff2b66c1f6326d59513de2407bf881439812771c" + integrity sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q== + log-driver@^1.2.7: version "1.2.7" resolved "https://registry.yarnpkg.com/log-driver/-/log-driver-1.2.7.tgz#63b95021f0702fedfa2c9bb0a24e7797d71871d8" @@ -3060,6 +4906,13 @@ log-symbols@^4.0.0: chalk "^4.1.0" is-unicode-supported "^0.1.0" +loose-envify@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== + dependencies: + js-tokens "^3.0.0 || ^4.0.0" + lru-cache@^10.2.0: version "10.4.3" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" @@ -3132,6 +4985,22 @@ math-intrinsics@^1.1.0: resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== +mdast-util-from-markdown@^0.8.5: + version "0.8.5" + resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz#d1ef2ca42bc377ecb0463a987910dae89bd9a28c" + integrity sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ== + dependencies: + "@types/mdast" "^3.0.0" + mdast-util-to-string "^2.0.0" + micromark "~2.11.0" + parse-entities "^2.0.0" + unist-util-stringify-position "^2.0.0" + +mdast-util-to-string@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz#b8cfe6a713e1091cb5b728fc48885a4767f8b97b" + integrity sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w== + meow@^8.0.0: version "8.1.2" resolved "https://registry.yarnpkg.com/meow/-/meow-8.1.2.tgz#bcbe45bda0ee1729d350c03cffc8395a36c4e897" @@ -3154,6 +5023,19 @@ merge-stream@^2.0.0: resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== +merge2@^1.3.0, merge2@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + +micromark@~2.11.0: + version "2.11.4" + resolved "https://registry.yarnpkg.com/micromark/-/micromark-2.11.4.tgz#d13436138eea826383e822449c9a5c50ee44665a" + integrity sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA== + dependencies: + debug "^4.0.0" + parse-entities "^2.0.0" + micromatch@^4.0.0, micromatch@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" @@ -3189,6 +5071,13 @@ minimalistic-assert@^1.0.1: resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== +minimatch@9.0.3: + version "9.0.3" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" + integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== + dependencies: + brace-expansion "^2.0.1" + minimatch@^3.0.4, minimatch@^3.1.1: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -3196,6 +5085,20 @@ minimatch@^3.0.4, minimatch@^3.1.1: dependencies: brace-expansion "^1.1.7" +minimatch@^3.0.5, minimatch@^3.1.2: + version "3.1.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.5.tgz#580c88f8d5445f2bd6aa8f3cadefa0de79fbd69e" + integrity sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w== + dependencies: + brace-expansion "^1.1.7" + +minimatch@^9.0.3: + version "9.0.9" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.9.tgz#9b0cb9fcb78087f6fd7eababe2511c4d3d60574e" + integrity sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg== + dependencies: + brace-expansion "^2.0.2" + minimatch@^9.0.4: version "9.0.5" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" @@ -3222,14 +5125,17 @@ minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== -mkdirp@^0.5.3: - version "0.5.6" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" - integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== +mlly@^1.7.3, mlly@^1.7.4: + version "1.8.2" + resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.8.2.tgz#e7f7919a82d13b174405613117249a3f449d78bb" + integrity sha512-d+ObxMQFmbt10sretNDytwt85VrbkhhUA/JBGm1MPaWJ65Cl4wOgLaB1NYvJSZ0Ef03MMEU/0xpPMXUIQ29UfA== dependencies: - minimist "^1.2.6" + acorn "^8.16.0" + pathe "^2.0.3" + pkg-types "^1.3.1" + ufo "^1.6.3" -ms@^2.1.3: +ms@^2.1.1, ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -3247,6 +5153,11 @@ napi-postinstall@^0.3.0: resolved "https://registry.yarnpkg.com/napi-postinstall/-/napi-postinstall-0.3.4.tgz#7af256d6588b5f8e952b9190965d6b019653bbb9" integrity sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ== +natural-compare-lite@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" + integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== + natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -3257,6 +5168,16 @@ neo-async@^2.6.2: resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== +node-exports-info@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/node-exports-info/-/node-exports-info-1.6.0.tgz#1aedafb01a966059c9a5e791a94a94d93f5c2a13" + integrity sha512-pyFS63ptit/P5WqUkt+UUfe+4oevH+bFeIiPPdfb0pFeYEu/1ELnJu5l+5EcTKYL5M7zaAa7S8ddywgXypqKCw== + dependencies: + array.prototype.flatmap "^1.3.3" + es-errors "^1.3.0" + object.entries "^1.1.9" + semver "^6.3.1" + node-fetch@^2.7.0: version "2.7.0" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" @@ -3274,6 +5195,11 @@ node-releases@^2.0.19: resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.19.tgz#9e445a52950951ec4d177d843af370b411caf314" integrity sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw== +node-releases@^2.0.36: + version "2.0.37" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.37.tgz#9bd4f10b77ba39c2b9402d4e8399c482a797f671" + integrity sha512-1h5gKZCF+pO/o3Iqt5Jp7wc9rH3eJJ0+nh/CIoiRwjRxde/hAHyLPXYN4V3CqKAbiZPSeJFSWHmJsbkicta0Eg== + normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" @@ -3306,16 +5232,93 @@ npm-run-path@^4.0.1: dependencies: path-key "^3.0.0" +nth-check@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" + integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== + dependencies: + boolbase "^1.0.0" + oauth-sign@~0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== +object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== + +object-inspect@^1.13.3, object-inspect@^1.13.4: + version "1.13.4" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213" + integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== + object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== +object.assign@^4.1.4, object.assign@^4.1.7: + version "4.1.7" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.7.tgz#8c14ca1a424c6a561b0bb2a22f66f5049a945d3d" + integrity sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + has-symbols "^1.1.0" + object-keys "^1.1.1" + +object.entries@^1.1.6, object.entries@^1.1.9: + version "1.1.9" + resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.9.tgz#e4770a6a1444afb61bd39f984018b5bede25f8b3" + integrity sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.4" + define-properties "^1.2.1" + es-object-atoms "^1.1.1" + +object.fromentries@^2.0.6, object.fromentries@^2.0.7: + version "2.0.8" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.8.tgz#f7195d8a9b97bd95cbc1999ea939ecd1a2b00c65" + integrity sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-object-atoms "^1.0.0" + +object.groupby@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.3.tgz#9b125c36238129f6f7b61954a1e7176148d5002e" + integrity sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + +object.hasown@^1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.4.tgz#e270ae377e4c120cdcb7656ce66884a6218283dc" + integrity sha512-FZ9LZt9/RHzGySlBARE3VF+gE26TxR38SdmqOqliuTnl9wrKulaQs+4dee1V+Io8VfxqzAfHu6YuRgUy8OHoTg== + dependencies: + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-object-atoms "^1.0.0" + +object.values@^1.1.6, object.values@^1.1.7: + version "1.2.1" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.2.1.tgz#deed520a50809ff7f75a7cfd4bc64c7a038c6216" + integrity sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + once@^1.3.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" @@ -3328,13 +5331,34 @@ onetime@^5.1.2: resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: - mimic-fn "^2.1.0" + mimic-fn "^2.1.0" + +optionator@^0.9.3: + version "0.9.4" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734" + integrity sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.5" os-shim@^0.1.2: version "0.1.3" resolved "https://registry.yarnpkg.com/os-shim/-/os-shim-0.1.3.tgz#6b62c3791cf7909ea35ed46e17658bb417cb3917" integrity sha512-jd0cvB8qQ5uVt0lvCIexBaROw1KyKm5sbulg2fWOHjETisuCzWyt+eTZKEMs8v6HwzoGs8xik26jg7eCM6pS+A== +own-keys@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/own-keys/-/own-keys-1.0.1.tgz#e4006910a2bf913585289676eebd6f390cf51358" + integrity sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg== + dependencies: + get-intrinsic "^1.2.6" + object-keys "^1.1.1" + safe-push-apply "^1.0.0" + p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" @@ -3342,7 +5366,7 @@ p-limit@^2.2.0: dependencies: p-try "^2.0.0" -p-limit@^3.1.0: +p-limit@^3.0.2, p-limit@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== @@ -3356,6 +5380,13 @@ p-locate@^4.1.0: dependencies: p-limit "^2.2.0" +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -3366,6 +5397,38 @@ package-json-from-dist@^1.0.0: resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parse-entities@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-2.0.0.tgz#53c6eb5b9314a1f4ec99fa0fdf7ce01ecda0cbe8" + integrity sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ== + dependencies: + character-entities "^1.0.0" + character-entities-legacy "^1.0.0" + character-reference-invalid "^1.0.0" + is-alphanumerical "^1.0.0" + is-decimal "^1.0.0" + is-hexadecimal "^1.0.0" + +parse-gitignore@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/parse-gitignore/-/parse-gitignore-2.0.0.tgz#81156b265115c507129f3faea067b8476da3b642" + integrity sha512-RmVuCHWsfu0QPNW+mraxh/xjQVw/lhUCUru8Zni3Ctq3AoMhpDTq0OVdKS6iesd6Kqb7viCV3isAL43dciOSog== + +parse-imports@^2.1.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/parse-imports/-/parse-imports-2.2.1.tgz#0a6e8b5316beb5c9905f50eb2bbb8c64a4805642" + integrity sha512-OL/zLggRp8mFhKL0rNORUTR4yBYujK/uU+xZL+/0Rgm2QE4nLO9v8PzEweSJEbMGKmDRjJE4R3IMJlL2di4JeQ== + dependencies: + es-module-lexer "^1.5.3" + slashes "^3.0.12" + parse-json@^5.0.0, parse-json@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" @@ -3391,7 +5454,7 @@ path-key@^3.0.0, path-key@^3.1.0: resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== -path-parse@^1.0.7: +path-parse@^1.0.6, path-parse@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== @@ -3404,6 +5467,16 @@ path-scurry@^1.11.1: lru-cache "^10.2.0" minipass "^5.0.0 || ^6.0.2 || ^7.0.0" +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + +pathe@^2.0.1, pathe@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/pathe/-/pathe-2.0.3.tgz#3ecbec55421685b70a9da872b2cff3e1cbed1716" + integrity sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w== + performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" @@ -3424,6 +5497,11 @@ picomatch@^4.0.2: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.3.tgz#796c76136d1eead715db1e7bad785dedd695a042" integrity sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q== +picomatch@^4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.4.tgz#fd6f5e00a143086e074dffe4c924b8fb293b0589" + integrity sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A== + pirates@^4.0.7: version "4.0.7" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.7.tgz#643b4a18c4257c8a65104b73f3049ce9a0a15e22" @@ -3436,6 +5514,33 @@ pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" +pkg-types@^1.2.1, pkg-types@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-1.3.1.tgz#bd7cc70881192777eef5326c19deb46e890917df" + integrity sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ== + dependencies: + confbox "^0.1.8" + mlly "^1.7.4" + pathe "^2.0.1" + +pluralize@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" + integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== + +possible-typed-array-names@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz#93e3582bc0e5426586d9d07b79ee40fc841de4ae" + integrity sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg== + +postcss-selector-parser@^6.0.15: + version "6.1.2" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz#27ecb41fb0e3b6ba7a1ec84fff347f734c7929de" + integrity sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" + pre-commit@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/pre-commit/-/pre-commit-1.2.2.tgz#dbcee0ee9de7235e57f79c56d7ce94641a69eec6" @@ -3445,6 +5550,11 @@ pre-commit@^1.2.2: spawn-sync "^1.0.15" which "1.2.x" +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + pretty-format@30.2.0, pretty-format@^30.0.0: version "30.2.0" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-30.2.0.tgz#2d44fe6134529aed18506f6d11509d8a62775ebe" @@ -3469,6 +5579,23 @@ promise-polyfill@^1.1.6: resolved "https://registry.yarnpkg.com/promise-polyfill/-/promise-polyfill-1.1.6.tgz#cd04eff46f5c95c3a7d045591d79b5e3e01f12d7" integrity sha512-7rrONfyLkDEc7OJ5QBkqa4KI4EBhCd340xRuIUPGCfu13znS+vx+VDdrT9ODAJHlXm7w4lbxN3DRjyv58EuzDg== +prompts@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== + dependencies: + kleur "^3.0.3" + sisteransi "^1.0.5" + +prop-types@^15.8.1: + version "15.8.1" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" + integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== + dependencies: + loose-envify "^1.4.0" + object-assign "^4.1.1" + react-is "^16.13.1" + pseudomap@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" @@ -3496,6 +5623,11 @@ qs@~6.5.2: resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + quick-lru@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" @@ -3624,6 +5756,11 @@ rdfxml-streaming-parser@^3.0.0: relative-to-absolute-iri "^1.0.0" validate-iri "^1.0.0" +react-is@^16.13.1: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + react-is@^18.3.1: version "18.3.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.3.1.tgz#e83557dc12eae63a99e003a46388b1dcbb44db7e" @@ -3703,6 +5840,44 @@ redent@^3.0.0: indent-string "^4.0.0" strip-indent "^3.0.0" +reflect.getprototypeof@^1.0.6, reflect.getprototypeof@^1.0.9: + version "1.0.10" + resolved "https://registry.yarnpkg.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz#c629219e78a3316d8b604c765ef68996964e7bf9" + integrity sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.9" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + get-intrinsic "^1.2.7" + get-proto "^1.0.1" + which-builtin-type "^1.2.1" + +regexp-tree@^0.1.27: + version "0.1.27" + resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.27.tgz#2198f0ef54518ffa743fe74d983b56ffd631b6cd" + integrity sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA== + +regexp.prototype.flags@^1.5.3, regexp.prototype.flags@^1.5.4: + version "1.5.4" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz#1ad6c62d44a259007e55b3970e00f746efbcaa19" + integrity sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-errors "^1.3.0" + get-proto "^1.0.1" + gopd "^1.2.0" + set-function-name "^2.0.2" + +regjsparser@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.10.0.tgz#b1ed26051736b436f22fdec1c8f72635f9f44892" + integrity sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA== + dependencies: + jsesc "~0.5.0" + relative-to-absolute-iri@^1.0.0, relative-to-absolute-iri@^1.0.5, relative-to-absolute-iri@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/relative-to-absolute-iri/-/relative-to-absolute-iri-1.0.7.tgz#f2fd6ee60c78d9ffc4926bd20bdf84479b91d765" @@ -3751,12 +5926,22 @@ resolve-cwd@^3.0.0: dependencies: resolve-from "^5.0.0" +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + resolve-from@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== -resolve@^1.10.0, resolve@^1.20.0, resolve@^1.3.2: +resolve-pkg-maps@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz#616b3dc2c57056b5588c31cdf4b3d64db133720f" + integrity sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw== + +resolve@^1.10.0, resolve@^1.20.0: version "1.22.10" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== @@ -3765,6 +5950,66 @@ resolve@^1.10.0, resolve@^1.20.0, resolve@^1.3.2: path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" +resolve@^1.22.2: + version "1.22.12" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.12.tgz#f5b2a680897c69c238a13cd16b15671f8b73549f" + integrity sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA== + dependencies: + es-errors "^1.3.0" + is-core-module "^2.16.1" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +resolve@^2.0.0-next.4, resolve@^2.0.0-next.6: + version "2.0.0-next.6" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.6.tgz#b3961812be69ace7b3bc35d5bf259434681294af" + integrity sha512-3JmVl5hMGtJ3kMmB3zi3DL25KfkCEyy3Tw7Gmw7z5w8M9WlwoPFnIvwChzu1+cF3iaK3sp18hhPz8ANeimdJfA== + dependencies: + es-errors "^1.3.0" + is-core-module "^2.16.1" + node-exports-info "^1.6.0" + object-keys "^1.1.1" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +resolve@~1.19.0: + version "1.19.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.19.0.tgz#1af5bf630409734a067cae29318aac7fa29a267c" + integrity sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg== + dependencies: + is-core-module "^2.1.0" + path-parse "^1.0.6" + +reusify@^1.0.4: + version "1.1.0" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.1.0.tgz#0fe13b9522e1473f51b558ee796e08f11f9b489f" + integrity sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw== + +rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" + +safe-array-concat@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.3.tgz#c9e54ec4f603b0bbb8e7e5007a5ee7aecd1538c3" + integrity sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + get-intrinsic "^1.2.6" + has-symbols "^1.1.0" + isarray "^2.0.5" + safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" @@ -3775,6 +6020,23 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== +safe-push-apply@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/safe-push-apply/-/safe-push-apply-1.0.0.tgz#01850e981c1602d398c85081f360e4e6d03d27f5" + integrity sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA== + dependencies: + es-errors "^1.3.0" + isarray "^2.0.5" + +safe-regex-test@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.1.0.tgz#7f87dfb67a3150782eaaf18583ff5d1711ac10c1" + integrity sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + is-regex "^1.2.1" + safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" @@ -3799,7 +6061,7 @@ schema-utils@^4.3.0: ajv-formats "^2.1.1" ajv-keywords "^5.1.0" -"semver@2 || 3 || 4 || 5", semver@^5.3.0: +"semver@2 || 3 || 4 || 5": version "5.7.2" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== @@ -3809,6 +6071,11 @@ semver@^6.0.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== +semver@^7.0.0, semver@^7.3.5, semver@^7.3.6, semver@^7.3.7, semver@^7.6.0, semver@^7.6.3, semver@^7.7.1: + version "7.7.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.4.tgz#28464e36060e991fa7a11d0279d2d3f3b57a7e8a" + integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA== + semver@^7.3.4, semver@^7.5.3, semver@^7.5.4: version "7.6.3" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" @@ -3838,6 +6105,25 @@ set-function-length@^1.2.2: gopd "^1.0.1" has-property-descriptors "^1.0.2" +set-function-name@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" + integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + functions-have-names "^1.2.3" + has-property-descriptors "^1.0.2" + +set-proto@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/set-proto/-/set-proto-1.0.0.tgz#0760dbcff30b2d7e801fd6e19983e56da337565e" + integrity sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw== + dependencies: + dunder-proto "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + shallow-clone@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" @@ -3869,6 +6155,46 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== +side-channel-list@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.1.tgz#c2e0b5a14a540aebee3bbc6c3f8666cc9b509127" + integrity sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w== + dependencies: + es-errors "^1.3.0" + object-inspect "^1.13.4" + +side-channel-map@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/side-channel-map/-/side-channel-map-1.0.1.tgz#d6bb6b37902c6fef5174e5f533fab4c732a26f42" + integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + object-inspect "^1.13.3" + +side-channel-weakmap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz#11dda19d5368e40ce9ec2bdc1fb0ecbc0790ecea" + integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + object-inspect "^1.13.3" + side-channel-map "^1.0.1" + +side-channel@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.1.0.tgz#c3fcff9c4da932784873335ec9765fa94ff66bc9" + integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw== + dependencies: + es-errors "^1.3.0" + object-inspect "^1.13.3" + side-channel-list "^1.0.0" + side-channel-map "^1.0.1" + side-channel-weakmap "^1.0.2" + signal-exit@^3.0.3: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" @@ -3879,11 +6205,21 @@ signal-exit@^4.0.1: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== +sisteransi@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== + slash@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== +slashes@^3.0.12: + version "3.0.12" + resolved "https://registry.yarnpkg.com/slashes/-/slashes-3.0.12.tgz#3d664c877ad542dc1509eaf2c50f38d483a6435a" + integrity sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA== + source-map-support@0.5.13: version "0.5.13" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" @@ -3960,6 +6296,14 @@ spdx-expression-parse@^3.0.0: spdx-exceptions "^2.1.0" spdx-license-ids "^3.0.0" +spdx-expression-parse@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-4.0.0.tgz#a23af9f3132115465dac215c099303e4ceac5794" + integrity sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + spdx-license-ids@^3.0.0: version "3.0.20" resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz#e44ed19ed318dd1e5888f93325cee800f0f51b89" @@ -3992,6 +6336,11 @@ sshpk@^1.7.0: safer-buffer "^2.0.2" tweetnacl "~0.14.0" +stable-hash@^0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/stable-hash/-/stable-hash-0.0.5.tgz#94e8837aaeac5b4d0f631d2972adef2924b40269" + integrity sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA== + stack-utils@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" @@ -3999,6 +6348,14 @@ stack-utils@^2.0.6: dependencies: escape-string-regexp "^2.0.0" +stop-iteration-iterator@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz#f481ff70a548f6124d0312c3aa14cbfa7aa542ad" + integrity sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ== + dependencies: + es-errors "^1.3.0" + internal-slot "^1.1.0" + stream-to-string@^1.1.0: version "1.2.1" resolved "https://registry.yarnpkg.com/stream-to-string/-/stream-to-string-1.2.1.tgz#15cb325d88b33cc62accb032c7093f85eb785db2" @@ -4021,6 +6378,11 @@ streamify-string@^1.0.1: resolved "https://registry.yarnpkg.com/streamify-string/-/streamify-string-1.0.1.tgz#9e220de33e1c475dd30e0206f5b1815cc6c9525b" integrity sha512-RXvBglotrvSIuQQ7oC55pdV40wZ/17gTb68ipMC4LA0SqMN4Sqfsf31Dpei7qXpYqZQ8ueVnPglUvtep3tlhqw== +string-argv@^0.3.1: + version "0.3.2" + resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.2.tgz#2b6d0ef24b656274d957d54e0a4bbf6153dc02b6" + integrity sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q== + string-length@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" @@ -4056,6 +6418,57 @@ string-width@^5.0.1, string-width@^5.1.2: emoji-regex "^9.2.2" strip-ansi "^7.0.1" +string.prototype.matchall@^4.0.8: + version "4.0.12" + resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz#6c88740e49ad4956b1332a911e949583a275d4c0" + integrity sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + es-abstract "^1.23.6" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + get-intrinsic "^1.2.6" + gopd "^1.2.0" + has-symbols "^1.1.0" + internal-slot "^1.1.0" + regexp.prototype.flags "^1.5.3" + set-function-name "^2.0.2" + side-channel "^1.1.0" + +string.prototype.trim@^1.2.10: + version "1.2.10" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz#40b2dd5ee94c959b4dcfb1d65ce72e90da480c81" + integrity sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + define-data-property "^1.1.4" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-object-atoms "^1.0.0" + has-property-descriptors "^1.0.2" + +string.prototype.trimend@^1.0.9: + version "1.0.9" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz#62e2731272cd285041b36596054e9f66569b6942" + integrity sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + +string.prototype.trimstart@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde" + integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + string_decoder@^1.1.1, string_decoder@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" @@ -4091,6 +6504,11 @@ strip-ansi@^7.0.1: dependencies: ansi-regex "^6.0.1" +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== + strip-bom@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" @@ -4113,13 +6531,6 @@ strip-json-comments@^3.1.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -supports-color@^5.3.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - supports-color@^7.1.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" @@ -4139,13 +6550,21 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -synckit@^0.11.8: +synckit@^0.11.8, "synckit@^0.6.2 || ^0.7.3 || ^0.11.5": version "0.11.12" resolved "https://registry.yarnpkg.com/synckit/-/synckit-0.11.12.tgz#abe74124264fbc00a48011b0d98bdc1cffb64a7b" integrity sha512-Bh7QjT8/SuKUIfObSXNHNSK6WHo6J1tHCqJsuaFDP7gP0fkzSfTxI8y85JrppZ0h8l0maIgc2tfuZQ6/t3GtnQ== dependencies: "@pkgr/core" "^0.2.9" +synckit@^0.9.1: + version "0.9.3" + resolved "https://registry.yarnpkg.com/synckit/-/synckit-0.9.3.tgz#1cfd60d9e61f931e07fb7f56f474b5eb31b826a7" + integrity sha512-JJoOEKTfL1urb1mDoEblhD9NhEbWmq9jHEMEnxoC4ujUaZ4itA8vKgwkFAyNClgxplLi9tsUKX+EduK0p/l7sg== + dependencies: + "@pkgr/core" "^0.1.0" + tslib "^2.6.2" + tapable@^2.1.1, tapable@^2.2.0: version "2.2.1" resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" @@ -4181,6 +6600,11 @@ test-exclude@^6.0.0: glob "^7.1.4" minimatch "^3.0.4" +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== + through2@^2.0.0: version "2.0.5" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" @@ -4196,6 +6620,14 @@ through2@^4.0.0: dependencies: readable-stream "3" +tinyglobby@^0.2.13: + version "0.2.16" + resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.16.tgz#1c3b7eb953fce42b226bc5a1ee06428281aff3d6" + integrity sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg== + dependencies: + fdir "^6.5.0" + picomatch "^4.0.4" + tmpl@1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" @@ -4208,6 +6640,13 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" +toml-eslint-parser@^0.9.0, toml-eslint-parser@^0.9.3: + version "0.9.3" + resolved "https://registry.yarnpkg.com/toml-eslint-parser/-/toml-eslint-parser-0.9.3.tgz#fc02498ba76e935f888c4b68b00e75b59789d272" + integrity sha512-moYoCvkNUAPCxSW9jmHmRElhm4tVJpHL8ItC/+uYD0EpPSFXbck7yREz9tNdJVTSpHVod8+HoipcpbQ0oE6gsw== + dependencies: + eslint-visitor-keys "^3.0.0" + tough-cookie@~2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" @@ -4226,6 +6665,11 @@ trim-newlines@^3.0.0: resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== +ts-api-utils@^1.0.1, ts-api-utils@^1.3.0: + version "1.4.3" + resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.4.3.tgz#bfc2215fe6528fecab2b0fba570a2e8a4263b064" + integrity sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw== + ts-jest@^29.4.6: version "29.4.6" resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.4.6.tgz#51cb7c133f227396818b71297ad7409bb77106e9" @@ -4252,57 +6696,32 @@ ts-loader@^9.3.1: semver "^7.3.4" source-map "^0.7.4" -tslib@1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.0.tgz#e37a86fda8cbbaf23a057f473c9f4dc64e5fc2e8" - integrity sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ== +tsconfig-paths@^3.15.0: + version "3.15.0" + resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz#5299ec605e55b1abb23ec939ef15edaf483070d4" + integrity sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg== + dependencies: + "@types/json5" "^0.0.29" + json5 "^1.0.2" + minimist "^1.2.6" + strip-bom "^3.0.0" + +tslib@2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" + integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== -tslib@^1.13.0, tslib@^1.8.1: +tslib@^1.8.1: version "1.14.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.4.0: +tslib@^2.4.0, tslib@^2.6.2: version "2.8.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== -tslint-eslint-rules@^5.3.1: - version "5.4.0" - resolved "https://registry.yarnpkg.com/tslint-eslint-rules/-/tslint-eslint-rules-5.4.0.tgz#e488cc9181bf193fe5cd7bfca213a7695f1737b5" - integrity sha512-WlSXE+J2vY/VPgIcqQuijMQiel+UtmXS+4nvK4ZzlDiqBfXse8FAvkNnTcYhnQyOTW5KFM+uRRGXxYhFpuBc6w== - dependencies: - doctrine "0.7.2" - tslib "1.9.0" - tsutils "^3.0.0" - -tslint@^6.0.0: - version "6.1.3" - resolved "https://registry.yarnpkg.com/tslint/-/tslint-6.1.3.tgz#5c23b2eccc32487d5523bd3a470e9aa31789d904" - integrity sha512-IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg== - dependencies: - "@babel/code-frame" "^7.0.0" - builtin-modules "^1.1.1" - chalk "^2.3.0" - commander "^2.12.1" - diff "^4.0.1" - glob "^7.1.1" - js-yaml "^3.13.1" - minimatch "^3.0.4" - mkdirp "^0.5.3" - resolve "^1.3.2" - semver "^5.3.0" - tslib "^1.13.0" - tsutils "^2.29.0" - -tsutils@^2.29.0: - version "2.29.0" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.29.0.tgz#32b488501467acbedd4b85498673a0812aca0b99" - integrity sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA== - dependencies: - tslib "^1.8.1" - -tsutils@^3.0.0: +tsutils@^3.21.0: version "3.21.0" resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== @@ -4321,16 +6740,33 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0: resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA== +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + type-detect@4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== +type-detect@^4.0.8: + version "4.1.0" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.1.0.tgz#deb2453e8f08dcae7ae98c626b13dddb0155906c" + integrity sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw== + type-fest@^0.18.0: version "0.18.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" integrity sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw== +type-fest@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== + type-fest@^0.21.3: version "0.21.3" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" @@ -4351,6 +6787,51 @@ type-fest@^4.41.0: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-4.41.0.tgz#6ae1c8e5731273c2bf1f58ad39cbae2c91a46c58" integrity sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA== +typed-array-buffer@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz#a72395450a4869ec033fd549371b47af3a2ee536" + integrity sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + is-typed-array "^1.1.14" + +typed-array-byte-length@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz#8407a04f7d78684f3d252aa1a143d2b77b4160ce" + integrity sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg== + dependencies: + call-bind "^1.0.8" + for-each "^0.3.3" + gopd "^1.2.0" + has-proto "^1.2.0" + is-typed-array "^1.1.14" + +typed-array-byte-offset@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz#ae3698b8ec91a8ab945016108aef00d5bff12355" + integrity sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + for-each "^0.3.3" + gopd "^1.2.0" + has-proto "^1.2.0" + is-typed-array "^1.1.15" + reflect.getprototypeof "^1.0.9" + +typed-array-length@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.7.tgz#ee4deff984b64be1e118b0de8c9c877d5ce73d3d" + integrity sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg== + dependencies: + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + is-typed-array "^1.1.13" + possible-typed-array-names "^1.0.0" + reflect.getprototypeof "^1.0.6" + typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" @@ -4361,11 +6842,26 @@ typescript@^6.0.0: resolved "https://registry.yarnpkg.com/typescript/-/typescript-6.0.2.tgz#0b1bfb15f68c64b97032f3d78abbf98bdbba501f" integrity sha512-bGdAIrZ0wiGDo5l8c++HWtbaNCWTS4UTv7RaTH/ThVIgjkveJt83m74bBHMJkuCbslY8ixgLBVZJIOiQlQTjfQ== +ufo@^1.6.3: + version "1.6.3" + resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.6.3.tgz#799666e4e88c122a9659805e30b9dc071c3aed4f" + integrity sha512-yDJTmhydvl5lJzBmy/hyOAA0d+aqCBuwl818haVdYCRrWV84o7YyeVm4QlVHStqNrrJSTb6jKuFAVqAFsr+K3Q== + uglify-js@^3.1.4: version "3.19.3" resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.19.3.tgz#82315e9bbc6f2b25888858acd1fff8441035b77f" integrity sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ== +unbox-primitive@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.1.0.tgz#8d9d2c9edeea8460c7f35033a88867944934d1e2" + integrity sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw== + dependencies: + call-bound "^1.0.3" + has-bigints "^1.0.2" + has-symbols "^1.1.0" + which-boxed-primitive "^1.1.1" + undici-types@~5.26.4: version "5.26.5" resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" @@ -4376,7 +6872,14 @@ undici-types@~6.20.0: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.20.0.tgz#8171bf22c1f588d1554d55bf204bc624af388433" integrity sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg== -unrs-resolver@^1.7.11: +unist-util-stringify-position@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz#cce3bfa1cdf85ba7375d1d5b17bdc4cada9bd9da" + integrity sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g== + dependencies: + "@types/unist" "^2.0.2" + +unrs-resolver@^1.6.2, unrs-resolver@^1.7.11: version "1.11.1" resolved "https://registry.yarnpkg.com/unrs-resolver/-/unrs-resolver-1.11.1.tgz#be9cd8686c99ef53ecb96df2a473c64d304048a9" integrity sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg== @@ -4411,6 +6914,14 @@ update-browserslist-db@^1.1.1: escalade "^3.2.0" picocolors "^1.1.1" +update-browserslist-db@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz#64d76db58713136acbeb4c49114366cc6cc2e80d" + integrity sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w== + dependencies: + escalade "^3.2.0" + picocolors "^1.1.1" + uri-js@^4.2.2: version "4.4.1" resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" @@ -4418,7 +6929,7 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -util-deprecate@^1.0.1, util-deprecate@~1.0.1: +util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== @@ -4450,6 +6961,11 @@ validate-npm-package-license@^3.0.1: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" +varname@2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/varname/-/varname-2.0.2.tgz#df7969952b882f6d011f85029e13b2c83e721158" + integrity sha512-+04KQt82uYOoagL2mutu7XYWILEQ8qhE+3zXyJN0Zz+MiuMYv8IvzVJeC4cD1RBfvVvuPPH2KH80MTFcU+cYRw== + verror@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" @@ -4459,6 +6975,19 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" +vue-eslint-parser@^9.4.2, vue-eslint-parser@^9.4.3: + version "9.4.3" + resolved "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-9.4.3.tgz#9b04b22c71401f1e8bca9be7c3e3416a4bde76a8" + integrity sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg== + dependencies: + debug "^4.3.4" + eslint-scope "^7.1.1" + eslint-visitor-keys "^3.3.0" + espree "^9.3.1" + esquery "^1.4.0" + lodash "^4.17.21" + semver "^7.3.6" + walker@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" @@ -4545,6 +7074,59 @@ whatwg-url@^5.0.0: tr46 "~0.0.3" webidl-conversions "^3.0.0" +which-boxed-primitive@^1.1.0, which-boxed-primitive@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz#d76ec27df7fa165f18d5808374a5fe23c29b176e" + integrity sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA== + dependencies: + is-bigint "^1.1.0" + is-boolean-object "^1.2.1" + is-number-object "^1.1.1" + is-string "^1.1.1" + is-symbol "^1.1.1" + +which-builtin-type@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/which-builtin-type/-/which-builtin-type-1.2.1.tgz#89183da1b4907ab089a6b02029cc5d8d6574270e" + integrity sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q== + dependencies: + call-bound "^1.0.2" + function.prototype.name "^1.1.6" + has-tostringtag "^1.0.2" + is-async-function "^2.0.0" + is-date-object "^1.1.0" + is-finalizationregistry "^1.1.0" + is-generator-function "^1.0.10" + is-regex "^1.2.1" + is-weakref "^1.0.2" + isarray "^2.0.5" + which-boxed-primitive "^1.1.0" + which-collection "^1.0.2" + which-typed-array "^1.1.16" + +which-collection@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.2.tgz#627ef76243920a107e7ce8e96191debe4b16c2a0" + integrity sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw== + dependencies: + is-map "^2.0.3" + is-set "^2.0.3" + is-weakmap "^2.0.2" + is-weakset "^2.0.3" + +which-typed-array@^1.1.16, which-typed-array@^1.1.19: + version "1.1.20" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.20.tgz#3fdb7adfafe0ea69157b1509f3a1cd892bd1d122" + integrity sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + call-bound "^1.0.4" + for-each "^0.3.5" + get-proto "^1.0.1" + gopd "^1.2.0" + has-tostringtag "^1.0.2" + which@1.2.x: version "1.2.14" resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" @@ -4571,6 +7153,11 @@ wildcard@^2.0.1: resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.1.tgz#5ab10d02487198954836b6349f74fff961e10f67" integrity sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ== +word-wrap@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" + integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== + wordwrap@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" @@ -4616,6 +7203,11 @@ write-file-atomic@^5.0.1: imurmurhash "^0.1.4" signal-exit "^4.0.1" +xml-name-validator@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835" + integrity sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw== + xmlchars@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" @@ -4646,6 +7238,19 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== +yaml-eslint-parser@^1.2.1, yaml-eslint-parser@^1.2.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/yaml-eslint-parser/-/yaml-eslint-parser-1.3.2.tgz#f62010fe8293d39930422d70e46f23b075bd13b5" + integrity sha512-odxVsHAkZYYglR30aPYRY4nUGJnoJ2y1ww2HDvZALo0BDETv9kWbi16J52eHs+PWRNmF4ub6nZqfVOeesOvntg== + dependencies: + eslint-visitor-keys "^3.0.0" + yaml "^2.0.0" + +yaml@^2.0.0: + version "2.8.3" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.8.3.tgz#a0d6bd2efb3dd03c59370223701834e60409bd7d" + integrity sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg== + yargs-parser@^20.2.2, yargs-parser@^20.2.3: version "20.2.9" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"