This is an automated email from the ASF dual-hosted git repository.
colegreer pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
The following commit(s) were added to refs/heads/master by this push:
new 82b3db5eaa Migrate from JSDoc to TypeDoc (#3375)
82b3db5eaa is described below
commit 82b3db5eaa1c6b9ed8fb5ca311f4d36a43d3aaf1
Author: Cole Greer <[email protected]>
AuthorDate: Tue Mar 31 16:53:12 2026 -0700
Migrate from JSDoc to TypeDoc (#3375)
---
gremlin-js/gremlin-javascript/lib/driver/client.ts | 19 +-
.../gremlin-javascript/lib/driver/connection.ts | 14 +-
.../lib/driver/driver-remote-connection.ts | 15 +-
.../lib/process/anonymous-traversal.ts | 12 +-
.../lib/process/graph-traversal.ts | 2 +-
.../lib/process/traversal-strategy.ts | 70 ++---
.../gremlin-javascript/lib/process/traversal.ts | 2 -
gremlin-js/gremlin-javascript/package.json | 4 +-
gremlin-js/package-lock.json | 339 +++++++++------------
9 files changed, 201 insertions(+), 276 deletions(-)
diff --git a/gremlin-js/gremlin-javascript/lib/driver/client.ts
b/gremlin-js/gremlin-javascript/lib/driver/client.ts
index e44dc345b8..35cffc28f6 100644
--- a/gremlin-js/gremlin-javascript/lib/driver/client.ts
+++ b/gremlin-js/gremlin-javascript/lib/driver/client.ts
@@ -33,7 +33,7 @@ export type RequestOptions = {
params?: Record<string, any>;
};
-type ClientOptions = ConnectionOptions & RequestOptions & { processor?: string
};
+export type ClientOptions = ConnectionOptions & RequestOptions & { processor?:
string };
/**
* A {@link Client} contains methods to send messages to a Gremlin Server.
@@ -44,22 +44,7 @@ export default class Client {
/**
* Creates a new instance of {@link Client}.
* @param {String} url The resource uri.
- * @param {Object} [options] The connection options.
- * @param {Array} [options.ca] Trusted certificates.
- * @param {String|Array|Buffer} [options.cert] The certificate key.
- * @param {String|Buffer} [options.pfx] The private key, certificate, and CA
certs.
- * @param {GraphBinaryReader} [options.reader] The reader to use.
- * @param {Boolean} [options.rejectUnauthorized] Determines whether to
verify or not the server certificate.
- * @param {String} [options.traversalSource] The traversal source. Defaults
to: 'g'.
- * @param {GraphBinaryWriter} [options.writer] The writer to use.
- * @param {Authenticator} [options.authenticator] The authentication handler
to use.
- * @param {Object} [options.headers] An associative array containing the
additional header key/values for the initial request.
- * @param {Boolean} [options.enableUserAgentOnConnect] Determines if a user
agent will be sent during connection handshake. Defaults to: true
- * @param {String} [options.processor] The name of the opProcessor to use,
leave it undefined or set 'session' when session mode.
- * @param {String} [options.session] The sessionId of Client in session
mode. Defaults to null means session-less Client.
- * @param {http.Agent} [options.agent] The http.Agent implementation to use.
- * @param {RequestInterceptor|RequestInterceptor[]} [options.interceptors]
One or more request interceptors to apply before each HTTP request.
- * @constructor
+ * @param {ClientOptions} [options] The connection options.
*/
constructor(
url: string,
diff --git a/gremlin-js/gremlin-javascript/lib/driver/connection.ts
b/gremlin-js/gremlin-javascript/lib/driver/connection.ts
index 9851f9d3b2..35e7e09285 100644
--- a/gremlin-js/gremlin-javascript/lib/driver/connection.ts
+++ b/gremlin-js/gremlin-javascript/lib/driver/connection.ts
@@ -81,19 +81,7 @@ export default class Connection extends EventEmitter {
/**
* Creates a new instance of {@link Connection}.
* @param {String} url The resource uri.
- * @param {Object} [options] The connection options.
- * @param {Array} [options.ca] Trusted certificates.
- * @param {String|Array|Buffer} [options.cert] The certificate key.
- * @param {String|Buffer} [options.pfx] The private key, certificate, and CA
certs.
- * @param {GraphBinaryReader} [options.reader] The reader to use.
- * @param {Boolean} [options.rejectUnauthorized] Determines whether to
verify or not the server certificate.
- * @param {String} [options.traversalSource] The traversal source. Defaults
to: 'g'.
- * @param {GraphBinaryWriter} [options.writer] The writer to use. Set to
null to skip serialization.
- * @param {Object} [options.headers] An associative array containing the
additional header key/values for the initial request.
- * @param {Boolean} [options.enableUserAgentOnConnect] Determines if a user
agent will be sent during connection handshake. Defaults to: true
- * @param {http.Agent} [options.agent] The http.Agent implementation to use.
- * @param {RequestInterceptor|RequestInterceptor[]} [options.interceptors]
One or more request interceptors to apply before each HTTP request.
- * @constructor
+ * @param {ConnectionOptions} [options] The connection options.
*/
constructor(
readonly url: string,
diff --git
a/gremlin-js/gremlin-javascript/lib/driver/driver-remote-connection.ts
b/gremlin-js/gremlin-javascript/lib/driver/driver-remote-connection.ts
index c59c010834..b6624b69c7 100644
--- a/gremlin-js/gremlin-javascript/lib/driver/driver-remote-connection.ts
+++ b/gremlin-js/gremlin-javascript/lib/driver/driver-remote-connection.ts
@@ -30,7 +30,7 @@ import GremlinLang from '../process/gremlin-lang.js';
import { ConnectionOptions } from './connection.js';
/**
- * Represents the default {@link RemoteConnection} implementation.
+ * Represents the default `RemoteConnection` implementation.
*/
export default class DriverRemoteConnection extends RemoteConnection {
private readonly _client: Client;
@@ -39,19 +39,6 @@ export default class DriverRemoteConnection extends
RemoteConnection {
* Creates a new instance of {@link DriverRemoteConnection}.
* @param {String} url The resource uri.
* @param {ConnectionOptions} [options] The connection options.
- * @param {Array} [options.ca] Trusted certificates.
- * @param {String|Array|Buffer} [options.cert] The certificate key.
- * @param {String|Buffer} [options.pfx] The private key, certificate, and CA
certs.
- * @param {GraphBinaryReader} [options.reader] The reader to use.
- * @param {Boolean} [options.rejectUnauthorized] Determines whether to
verify or not the server certificate.
- * @param {String} [options.traversalSource] The traversal source. Defaults
to: 'g'.
- * @param {GraphBinaryWriter} [options.writer] The writer to use.
- * @param {Authenticator} [options.authenticator] The authentication handler
to use.
- * @param {Object} [options.headers] An associative array containing the
additional header key/values for the initial request.
- * @param {Boolean} [options.enableUserAgentOnConnect] Determines if a user
agent will be sent during connection handshake. Defaults to: true
- * @param {http.Agent} [options.agent] The http.Agent implementation to use.
- * @param {RequestInterceptor|RequestInterceptor[]} [options.interceptors]
One or more request interceptors to apply before each HTTP request.
- * @constructor
*/
constructor(url: string, options: ConnectionOptions = {}) {
super(url, options);
diff --git a/gremlin-js/gremlin-javascript/lib/process/anonymous-traversal.ts
b/gremlin-js/gremlin-javascript/lib/process/anonymous-traversal.ts
index 03551d95d7..3432735ac3 100644
--- a/gremlin-js/gremlin-javascript/lib/process/anonymous-traversal.ts
+++ b/gremlin-js/gremlin-javascript/lib/process/anonymous-traversal.ts
@@ -30,9 +30,9 @@ import GremlinLang from './gremlin-lang.js';
*/
export default class AnonymousTraversalSource {
/**
- * Creates a new instance of {@code AnonymousTraversalSource}.
- * @param {Function} [traversalSourceClass] Optional {@code
GraphTraversalSource} constructor.
- * @param {Function} [traversalClass] Optional {@code GraphTraversal}
constructor.
+ * Creates a new instance of `AnonymousTraversalSource`.
+ * @param {Function} [traversalSourceClass] Optional `GraphTraversalSource`
constructor.
+ * @param {Function} [traversalClass] Optional `GraphTraversal` constructor.
*/
constructor(
readonly traversalSourceClass?: typeof GraphTraversalSource,
@@ -40,10 +40,10 @@ export default class AnonymousTraversalSource {
) {}
/**
- * Constructs an {@code AnonymousTraversalSource} which will then be
configured to spawn a
+ * Constructs an `AnonymousTraversalSource` which will then be configured to
spawn a
* {@link GraphTraversalSource}.
- * @param {Function} [traversalSourceClass] Optional {@code
GraphTraversalSource} constructor.
- * @param {Function} [traversalClass] Optional {@code GraphTraversalSource}
constructor.
+ * @param {Function} [traversalSourceClass] Optional `GraphTraversalSource`
constructor.
+ * @param {Function} [traversalClass] Optional `GraphTraversalSource`
constructor.
* @returns {AnonymousTraversalSource}.
*/
static traversal(traversalSourceClass?: typeof GraphTraversalSource,
traversalClass?: typeof GraphTraversal) {
diff --git a/gremlin-js/gremlin-javascript/lib/process/graph-traversal.ts
b/gremlin-js/gremlin-javascript/lib/process/graph-traversal.ts
index fc47bf4116..48362a148b 100644
--- a/gremlin-js/gremlin-javascript/lib/process/graph-traversal.ts
+++ b/gremlin-js/gremlin-javascript/lib/process/graph-traversal.ts
@@ -113,7 +113,7 @@ export class GraphTraversalSource {
/**
* Graph Traversal Source with method.
* @param {String} key
- * @param {Object} value if not specified, the value with default to {@code
true}
+ * @param {Object} value if not specified, the value with default to `true`
* @returns {GraphTraversalSource}
*/
with_(key: string, value: object | undefined = undefined):
GraphTraversalSource {
diff --git a/gremlin-js/gremlin-javascript/lib/process/traversal-strategy.ts
b/gremlin-js/gremlin-javascript/lib/process/traversal-strategy.ts
index 912e01a8dd..ab73ce98e8 100644
--- a/gremlin-js/gremlin-javascript/lib/process/traversal-strategy.ts
+++ b/gremlin-js/gremlin-javascript/lib/process/traversal-strategy.ts
@@ -30,7 +30,6 @@ export class TraversalStrategies {
/**
* Creates a new instance of TraversalStrategies.
* @param {TraversalStrategies} [parent] The parent strategies from where to
clone the values from.
- * @constructor
*/
constructor(parent?: TraversalStrategies) {
if (parent) {
@@ -106,7 +105,7 @@ export class ElementIdStrategy extends TraversalStrategy {
export class HaltedTraverserStrategy extends TraversalStrategy {
/**
- * @param {String} haltedTraverserFactory full qualified class name in Java
of a {@code HaltedTraverserFactory} implementation
+ * @param {String} haltedTraverserFactory full qualified class name in Java
of a `HaltedTraverserFactory` implementation
*/
constructor({haltedTraverserFactory = ""}) {
super({haltedTraverserFactory: haltedTraverserFactory});
@@ -127,14 +126,19 @@ export class OptionsStrategy extends TraversalStrategy {
export class PartitionStrategy extends TraversalStrategy {
/**
- * @param {Object} [options]
- * @param {String} [options.partitionKey] name of the property key to
partition by
- * @param {String} [options.writePartition] the value of the currently write
partition
- * @param {Array<String>} [options.readPartitions] list of strings
representing the partitions to include for reads
- * @param {boolean} [options.includeMetaProperties] determines if
meta-properties should be included in partitioning defaulting to false
+ * @param options
+ * @param options.partitionKey - name of the property key to partition by
+ * @param options.writePartition - the value of the currently write partition
+ * @param options.readPartitions - list of strings representing the
partitions to include for reads
+ * @param options.includeMetaProperties - determines if meta-properties
should be included in partitioning defaulting to false
*/
- constructor(options: TraversalStrategyConfiguration) {
- super(options);
+ constructor({partitionKey, writePartition, readPartitions,
includeMetaProperties}: {partitionKey?: string, writePartition?: string,
readPartitions?: string[], includeMetaProperties?: boolean} = {}) {
+ const config: Record<string, any> = {};
+ if (partitionKey !== undefined) config.partitionKey = partitionKey;
+ if (writePartition !== undefined) config.writePartition = writePartition;
+ if (readPartitions !== undefined) config.readPartitions = readPartitions;
+ if (includeMetaProperties !== undefined) config.includeMetaProperties =
includeMetaProperties;
+ super(config);
}
}
@@ -146,33 +150,29 @@ export class ProfileStrategy extends TraversalStrategy {
export class SubgraphStrategy extends TraversalStrategy {
/**
- * @param {Object} [options]
- * @param {GraphTraversal} [options.vertices] name of the property key to
partition by
- * @param {GraphTraversal} [options.edges] the value of the currently write
partition
- * @param {GraphTraversal} [options.vertexProperties] list of strings
representing the partitions to include for reads
- * @param {boolean} [options.checkAdjacentVertices] enables the strategy to
apply the {@code vertices} filter to the adjacent vertices of an edge.
+ * @param options
+ * @param options.vertices - traversal to filter vertices
+ * @param options.edges - traversal to filter edges
+ * @param options.vertexProperties - traversal to filter vertex properties
+ * @param options.checkAdjacentVertices - enables the strategy to apply the
`vertices` filter to the adjacent vertices of an edge.
*/
- constructor(options: TraversalStrategyConfiguration) {
- super(options);
- if (this.configuration.vertices instanceof Traversal) {
- this.configuration.vertices = this.configuration.vertices.gremlinLang;
- }
- if (this.configuration.edges instanceof Traversal) {
- this.configuration.edges = this.configuration.edges.gremlinLang;
- }
- if (this.configuration.vertexProperties instanceof Traversal) {
- this.configuration.vertexProperties =
this.configuration.vertexProperties.gremlinLang;
- }
+ constructor({vertices, edges, vertexProperties, checkAdjacentVertices}:
{vertices?: any, edges?: any, vertexProperties?: any, checkAdjacentVertices?:
boolean} = {}) {
+ const config: Record<string, any> = {};
+ if (vertices !== undefined) config.vertices = vertices instanceof
Traversal ? vertices.gremlinLang : vertices;
+ if (edges !== undefined) config.edges = edges instanceof Traversal ?
edges.gremlinLang : edges;
+ if (vertexProperties !== undefined) config.vertexProperties =
vertexProperties instanceof Traversal ? vertexProperties.gremlinLang :
vertexProperties;
+ if (checkAdjacentVertices !== undefined) config.checkAdjacentVertices =
checkAdjacentVertices;
+ super(config);
}
}
export class ProductiveByStrategy extends TraversalStrategy {
/**
- * @param {Object} [options]
- * @param {Array<String>} [options.productiveKeys] set of keys that will
always be productive
+ * @param options
+ * @param options.productiveKeys - set of keys that will always be productive
*/
- constructor(options: TraversalStrategyConfiguration) {
- super(options);
+ constructor({productiveKeys = []} = {}) {
+ super({productiveKeys});
}
}
@@ -313,8 +313,9 @@ export class ReadOnlyStrategy extends TraversalStrategy {
export class EdgeLabelVerificationStrategy extends TraversalStrategy {
/**
- * @param {boolean} logWarnings determines if warnings should be written to
the logger when verification fails
- * @param {boolean} throwException determines if exceptions should be thrown
when verifications fails
+ * @param options
+ * @param options.logWarnings - determines if warnings should be written to
the logger when verification fails
+ * @param options.throwException - determines if exceptions should be thrown
when verifications fails
*/
constructor({logWarnings = false, throwException = false} = {}) {
super({
@@ -326,9 +327,10 @@ export class EdgeLabelVerificationStrategy extends
TraversalStrategy {
export class ReservedKeysVerificationStrategy extends TraversalStrategy {
/**
- * @param {boolean} logWarnings determines if warnings should be written to
the logger when verification fails
- * @param {boolean} throwException determines if exceptions should be thrown
when verifications fails
- * @param {Array<String>} keys the list of reserved keys to verify
+ * @param options
+ * @param options.logWarnings - determines if warnings should be written to
the logger when verification fails
+ * @param options.throwException - determines if exceptions should be thrown
when verifications fails
+ * @param options.keys - the list of reserved keys to verify
*/
constructor({ logWarnings = false, throwException = false, keys = ['id',
'label'] } = {}) {
super({
diff --git a/gremlin-js/gremlin-javascript/lib/process/traversal.ts
b/gremlin-js/gremlin-javascript/lib/process/traversal.ts
index dad0650a77..5b4b6157be 100644
--- a/gremlin-js/gremlin-javascript/lib/process/traversal.ts
+++ b/gremlin-js/gremlin-javascript/lib/process/traversal.ts
@@ -255,7 +255,6 @@ class PeerPressure {
export class P<T1 = any, T2 = any> {
/**
* Represents an operation.
- * @constructor
*/
constructor(
public operator: string,
@@ -379,7 +378,6 @@ function createP(operator: string, args: any) {
export class TextP<T1 = any, T2 = any> {
/**
* Represents an operation.
- * @constructor
*/
constructor(
public operator: string,
diff --git a/gremlin-js/gremlin-javascript/package.json
b/gremlin-js/gremlin-javascript/package.json
index e44333fd74..9f87678562 100644
--- a/gremlin-js/gremlin-javascript/package.json
+++ b/gremlin-js/gremlin-javascript/package.json
@@ -67,11 +67,11 @@
"eslint-config-prettier": "^10.0.1",
"eslint-plugin-prettier": "^5.0.0",
"globals": "^15.14.0",
- "jsdoc": "^4.0.5",
"js-yaml": "^3.14.2",
"mocha": "^11.7.5",
"prettier": "^3.0.0",
"ts-node": "^10.9.2",
+ "typedoc": "^0.28.18",
"typescript": "^5.4.2"
},
"repository": {
@@ -98,7 +98,7 @@
"features-docker": "npm run features-graphbinary-docker",
"features-graphbinary-docker": "cross-env NODE_OPTIONS='--loader
ts-node/esm' TS_NODE_PROJECT='tsconfig.test.json'
CLIENT_MIMETYPE='application/vnd.graphbinary-v4.0' cucumber-js --tags \"not
@DataBigDecimal and not @DataBigInt and not @DataUUID and not @DataLong and not
@StepWrite\" --import test/cucumber ../gremlin-test/",
"lint": "eslint --ext .js .",
- "doc": "jsdoc -r -d doc -R README.md lib/"
+ "doc": "typedoc --out doc --readme README.md --entryPointStrategy expand
--entryPoints 'lib/**/*.ts' --tsconfig tsconfig.json --exclude
'lib/language/grammar/**'"
},
"engines": {
"node": ">=22"
diff --git a/gremlin-js/package-lock.json b/gremlin-js/package-lock.json
index 26863ab669..e9d8b55394 100644
--- a/gremlin-js/package-lock.json
+++ b/gremlin-js/package-lock.json
@@ -38,10 +38,11 @@
"eslint-config-prettier": "^10.0.1",
"eslint-plugin-prettier": "^5.0.0",
"globals": "^15.14.0",
- "jsdoc": "^4.0.5",
+ "js-yaml": "^3.14.2",
"mocha": "^11.7.5",
"prettier": "^3.0.0",
"ts-node": "^10.9.2",
+ "typedoc": "^0.28.18",
"typescript": "^5.4.2"
},
"engines": {
@@ -2990,6 +2991,20 @@
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
+ "node_modules/@gerrit0/mini-shiki": {
+ "version": "3.23.0",
+ "resolved":
"https://registry.npmjs.org/@gerrit0/mini-shiki/-/mini-shiki-3.23.0.tgz",
+ "integrity":
"sha512-bEMORlG0cqdjVyCEuU0cDQbORWX+kYCeo0kV1lbxF5bt4r7SID2l9bqsxJEM0zndaxpOUT7riCyIVEuqq/Ynxg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@shikijs/engine-oniguruma": "^3.23.0",
+ "@shikijs/langs": "^3.23.0",
+ "@shikijs/themes": "^3.23.0",
+ "@shikijs/types": "^3.23.0",
+ "@shikijs/vscode-textmate": "^10.0.2"
+ }
+ },
"node_modules/@humanfs/core": {
"version": "0.19.1",
"resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz",
@@ -3671,19 +3686,6 @@
"@jridgewell/sourcemap-codec": "^1.4.14"
}
},
- "node_modules/@jsdoc/salty": {
- "version": "0.2.10",
- "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.10.tgz",
- "integrity":
"sha512-VFHSsQAQp8y1NJvAJBpLs9I2shHE6hz9TwukocDObuUgGVAq62yZGbTgJg04Z3Fj0XSMWe0sJqGg5dhKGTV92A==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "lodash": "^4.17.23"
- },
- "engines": {
- "node": ">=v12.0.0"
- }
- },
"node_modules/@knighted/duel": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/@knighted/duel/-/duel-4.0.2.tgz",
@@ -4497,6 +4499,55 @@
"url": "https://opencollective.com/pkgr"
}
},
+ "node_modules/@shikijs/engine-oniguruma": {
+ "version": "3.23.0",
+ "resolved":
"https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.23.0.tgz",
+ "integrity":
"sha512-1nWINwKXxKKLqPibT5f4pAFLej9oZzQTsby8942OTlsJzOBZ0MWKiwzMsd+jhzu8YPCHAswGnnN1YtQfirL35g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@shikijs/types": "3.23.0",
+ "@shikijs/vscode-textmate": "^10.0.2"
+ }
+ },
+ "node_modules/@shikijs/langs": {
+ "version": "3.23.0",
+ "resolved":
"https://registry.npmjs.org/@shikijs/langs/-/langs-3.23.0.tgz",
+ "integrity":
"sha512-2Ep4W3Re5aB1/62RSYQInK9mM3HsLeB91cHqznAJMuylqjzNVAVCMnNWRHFtcNHXsoNRayP9z1qj4Sq3nMqYXg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@shikijs/types": "3.23.0"
+ }
+ },
+ "node_modules/@shikijs/themes": {
+ "version": "3.23.0",
+ "resolved":
"https://registry.npmjs.org/@shikijs/themes/-/themes-3.23.0.tgz",
+ "integrity":
"sha512-5qySYa1ZgAT18HR/ypENL9cUSGOeI2x+4IvYJu4JgVJdizn6kG4ia5Q1jDEOi7gTbN4RbuYtmHh0W3eccOrjMA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@shikijs/types": "3.23.0"
+ }
+ },
+ "node_modules/@shikijs/types": {
+ "version": "3.23.0",
+ "resolved":
"https://registry.npmjs.org/@shikijs/types/-/types-3.23.0.tgz",
+ "integrity":
"sha512-3JZ5HXOZfYjsYSk0yPwBrkupyYSLpAE26Qc0HLghhZNGTZg/SKxXIIgoxOpmmeQP0RRSDJTk1/vPfw9tbw+jSQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@shikijs/vscode-textmate": "^10.0.2",
+ "@types/hast": "^3.0.4"
+ }
+ },
+ "node_modules/@shikijs/vscode-textmate": {
+ "version": "10.0.2",
+ "resolved":
"https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz",
+ "integrity":
"sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/@sinclair/typebox": {
"version": "0.34.48",
"resolved":
"https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.48.tgz",
@@ -5286,6 +5337,16 @@
"dev": true,
"license": "MIT"
},
+ "node_modules/@types/hast": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz",
+ "integrity":
"sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/unist": "*"
+ }
+ },
"node_modules/@types/istanbul-lib-coverage": {
"version": "2.0.6",
"resolved":
"https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz",
@@ -5331,31 +5392,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/@types/linkify-it": {
- "version": "5.0.0",
- "resolved":
"https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz",
- "integrity":
"sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/markdown-it": {
- "version": "14.1.2",
- "resolved":
"https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.2.tgz",
- "integrity":
"sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/linkify-it": "^5",
- "@types/mdurl": "^2"
- }
- },
- "node_modules/@types/mdurl": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-2.0.0.tgz",
- "integrity":
"sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/@types/node": {
"version": "24.12.0",
"resolved": "https://registry.npmjs.org/@types/node/-/node-24.12.0.tgz",
@@ -5396,6 +5432,13 @@
"integrity":
"sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==",
"license": "MIT"
},
+ "node_modules/@types/unist": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz",
+ "integrity":
"sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/@types/uuid": {
"version": "9.0.8",
"resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.8.tgz",
@@ -6397,13 +6440,6 @@
"node": ">=6.0.0"
}
},
- "node_modules/bluebird": {
- "version": "3.7.2",
- "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
- "integrity":
"sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/body-parser": {
"version": "2.2.2",
"resolved":
"https://registry.npmjs.org/body-parser/-/body-parser-2.2.2.tgz",
@@ -6632,19 +6668,6 @@
"upper-case-first": "^2.0.2"
}
},
- "node_modules/catharsis": {
- "version": "0.9.0",
- "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.9.0.tgz",
- "integrity":
"sha512-prMTQVpcns/tzFgFVkVp6ak6RykZyWb3gu8ckUpd6YkTlacOd3DXGJjIpD4Q6zJirizvaiAjSSHlOsA+6sNh2A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "lodash": "^4.17.15"
- },
- "engines": {
- "node": ">= 10"
- }
- },
"node_modules/chai": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/chai/-/chai-4.5.0.tgz",
@@ -9846,69 +9869,6 @@
"js-yaml": "bin/js-yaml.js"
}
},
- "node_modules/js2xmlparser": {
- "version": "4.0.2",
- "resolved":
"https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.2.tgz",
- "integrity":
"sha512-6n4D8gLlLf1n5mNLQPRfViYzu9RATblzPEtm1SthMX1Pjao0r9YI9nw7ZIfRxQMERS87mcswrg+r/OYrPRX6jA==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "xmlcreate": "^2.0.4"
- }
- },
- "node_modules/jsdoc": {
- "version": "4.0.5",
- "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.5.tgz",
- "integrity":
"sha512-P4C6MWP9yIlMiK8nwoZvxN84vb6MsnXcHuy7XzVOvQoCizWX5JFCBsWIIWKXBltpoRZXddUOVQmCTOZt9yDj9g==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "@babel/parser": "^7.20.15",
- "@jsdoc/salty": "^0.2.1",
- "@types/markdown-it": "^14.1.1",
- "bluebird": "^3.7.2",
- "catharsis": "^0.9.0",
- "escape-string-regexp": "^2.0.0",
- "js2xmlparser": "^4.0.2",
- "klaw": "^3.0.0",
- "markdown-it": "^14.1.0",
- "markdown-it-anchor": "^8.6.7",
- "marked": "^4.0.10",
- "mkdirp": "^1.0.4",
- "requizzle": "^0.2.3",
- "strip-json-comments": "^3.1.0",
- "underscore": "~1.13.2"
- },
- "bin": {
- "jsdoc": "jsdoc.js"
- },
- "engines": {
- "node": ">=12.0.0"
- }
- },
- "node_modules/jsdoc/node_modules/escape-string-regexp": {
- "version": "2.0.0",
- "resolved":
"https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
- "integrity":
"sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jsdoc/node_modules/mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity":
"sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "mkdirp": "bin/cmd.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/jsesc": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz",
@@ -9999,16 +9959,6 @@
"json-buffer": "3.0.1"
}
},
- "node_modules/klaw": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz",
- "integrity":
"sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "graceful-fs": "^4.1.9"
- }
- },
"node_modules/knuth-shuffle-seeded": {
"version": "1.0.6",
"resolved":
"https://registry.npmjs.org/knuth-shuffle-seeded/-/knuth-shuffle-seeded-1.0.6.tgz",
@@ -10134,13 +10084,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/lodash": {
- "version": "4.17.23",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.23.tgz",
- "integrity":
"sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/lodash.memoize": {
"version": "4.1.2",
"resolved":
"https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz",
@@ -10308,6 +10251,13 @@
"yallist": "^3.0.2"
}
},
+ "node_modules/lunr": {
+ "version": "2.3.9",
+ "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz",
+ "integrity":
"sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/luxon": {
"version": "3.7.2",
"resolved": "https://registry.npmjs.org/luxon/-/luxon-3.7.2.tgz",
@@ -10386,17 +10336,6 @@
"markdown-it": "bin/markdown-it.mjs"
}
},
- "node_modules/markdown-it-anchor": {
- "version": "8.6.7",
- "resolved":
"https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.7.tgz",
- "integrity":
"sha512-FlCHFwNnutLgVTflOYHPW2pPcl2AACqVzExlkGQNsi4CJgqOHN7YTgDd4LuhgN1BFO3TS0vLAruV1Td6dwWPJA==",
- "dev": true,
- "license": "Unlicense",
- "peerDependencies": {
- "@types/markdown-it": "*",
- "markdown-it": "*"
- }
- },
"node_modules/markdown-it/node_modules/argparse": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
@@ -10404,19 +10343,6 @@
"dev": true,
"license": "Python-2.0"
},
- "node_modules/marked": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz",
- "integrity":
"sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "marked": "bin/marked.js"
- },
- "engines": {
- "node": ">= 12"
- }
- },
"node_modules/math-intrinsics": {
"version": "1.1.0",
"resolved":
"https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
@@ -11807,16 +11733,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/requizzle": {
- "version": "0.2.4",
- "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.4.tgz",
- "integrity":
"sha512-JRrFk1D4OQ4SqovXOgdav+K8EAhSB/LJZqCz8tbX0KObcdeM15Ss59ozWMBWmmINMagCwmqn4ZNryUGpBsl6Jw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "lodash": "^4.17.21"
- }
- },
"node_modules/resolve-cwd": {
"version": "3.0.0",
"resolved":
"https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
@@ -13016,6 +12932,69 @@
"node": ">= 0.6"
}
},
+ "node_modules/typedoc": {
+ "version": "0.28.18",
+ "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.28.18.tgz",
+ "integrity":
"sha512-NTWTUOFRQ9+SGKKTuWKUioUkjxNwtS3JDRPVKZAXGHZy2wCA8bdv2iJiyeePn0xkmK+TCCqZFT0X7+2+FLjngA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@gerrit0/mini-shiki": "^3.23.0",
+ "lunr": "^2.3.9",
+ "markdown-it": "^14.1.1",
+ "minimatch": "^10.2.4",
+ "yaml": "^2.8.2"
+ },
+ "bin": {
+ "typedoc": "bin/typedoc"
+ },
+ "engines": {
+ "node": ">= 18",
+ "pnpm": ">= 10"
+ },
+ "peerDependencies": {
+ "typescript": "5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x ||
5.6.x || 5.7.x || 5.8.x || 5.9.x || 6.0.x"
+ }
+ },
+ "node_modules/typedoc/node_modules/balanced-match": {
+ "version": "4.0.4",
+ "resolved":
"https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
+ "integrity":
"sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "18 || 20 || >=22"
+ }
+ },
+ "node_modules/typedoc/node_modules/brace-expansion": {
+ "version": "5.0.5",
+ "resolved":
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.5.tgz",
+ "integrity":
"sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^4.0.2"
+ },
+ "engines": {
+ "node": "18 || 20 || >=22"
+ }
+ },
+ "node_modules/typedoc/node_modules/minimatch": {
+ "version": "10.2.5",
+ "resolved":
"https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz",
+ "integrity":
"sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==",
+ "dev": true,
+ "license": "BlueOak-1.0.0",
+ "dependencies": {
+ "brace-expansion": "^5.0.5"
+ },
+ "engines": {
+ "node": "18 || 20 || >=22"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
"node_modules/typescript": {
"version": "5.9.3",
"resolved":
"https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
@@ -13075,13 +13054,6 @@
"node": ">=0.8.0"
}
},
- "node_modules/underscore": {
- "version": "1.13.8",
- "resolved":
"https://registry.npmjs.org/underscore/-/underscore-1.13.8.tgz",
- "integrity":
"sha512-DXtD3ZtEQzc7M8m4cXotyHR+FAS18C64asBYY5vqZexfYryNNnDc02W4hKg3rdQuqOYas1jkseX0+nZXjTXnvQ==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/undici": {
"version": "7.24.5",
"resolved": "https://registry.npmjs.org/undici/-/undici-7.24.5.tgz",
@@ -13616,13 +13588,6 @@
"node": ">=8.0"
}
},
- "node_modules/xmlcreate": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.4.tgz",
- "integrity":
"sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg==",
- "dev": true,
- "license": "Apache-2.0"
- },
"node_modules/y18n": {
"version": "5.0.8",
"resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",