Update to TypeDoc 0.24 (#3581)

This commit is contained in:
Natalie Weizenbaum 2023-05-18 16:09:10 -07:00 committed by GitHub
parent d2b85f8f8e
commit 1f88ea8db4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
25 changed files with 548 additions and 543 deletions

View File

@ -12,14 +12,14 @@ functions}.
## Usage ## Usage
The JavaScript API provides two entrypoints for compiling Sass to CSS, each of The JavaScript API provides two entrypoints for compiling Sass to CSS, each of
which has a synchronous variant that returns a plain [[CompileResult]] and an which has a synchronous variant that returns a plain {@link CompileResult} and
asynchronous variant that returns a `Promise`. **The asynchronous variants are an asynchronous variant that returns a `Promise`. **The asynchronous variants
much slower,** but they allow custom importers and functions to run are much slower,** but they allow custom importers and functions to run
asynchronously. asynchronously.
* [[compile]] and [[compileAsync]] take a path to a Sass file and return the * {@link compile} and {@link compileAsync} take a path to a Sass file and return
result of compiling that file to CSS. These functions accept an additional the result of compiling that file to CSS. These functions accept an additional
[[Options]] argument. {@link Options} argument.
```js ```js
const sass = require('sass'); const sass = require('sass');
@ -31,9 +31,10 @@ asynchronously.
console.log(compressed.css); console.log(compressed.css);
``` ```
* [[compileString]] and [[compileStringAsync]] take a string that represents the * {@link compileString} and {@link compileStringAsync} take a string that
contents of a Sass file and return the result of compiling that file to CSS. represents the contents of a Sass file and return the result of compiling that
These functions accept an additional [[StringOptions]] argument. file to CSS. These functions accept an additional {@link StringOptions}
argument.
```js ```js
const sass = require('sass'); const sass = require('sass');
@ -80,10 +81,10 @@ which is a native extension wrapper for the deprecated [LibSass] implementation.
[LibSass]: https://sass-lang.com/libsass [LibSass]: https://sass-lang.com/libsass
The legacy API has two entrypoints for compiling Sass to CSS. Each one can The legacy API has two entrypoints for compiling Sass to CSS. Each one can
compile either a Sass file by passing in [[LegacyFileOptions]] or a string of compile either a Sass file by passing in {@link LegacyFileOptions} or a string
Sass code by passing in a [[LegacyStringOptions]]. of Sass code by passing in a {@link LegacyStringOptions}.
* [[renderSync]] runs synchronously. It's **by far the fastest option** when * {@link renderSync} runs synchronously. It's **by far the fastest option** when
using Dart Sass, but at the cost of only supporting synchronous {@link using Dart Sass, but at the cost of only supporting synchronous {@link
LegacyImporter | importer} and {@link LegacyFunction | function} plugins. LegacyImporter | importer} and {@link LegacyFunction | function} plugins.
@ -94,7 +95,7 @@ Sass code by passing in a [[LegacyStringOptions]].
console.log(result.css.toString()); console.log(result.css.toString());
``` ```
* [[render]] runs asynchronously and calls a callback when it finishes. It's * {@link render} runs asynchronously and calls a callback when it finishes. It's
much slower when using Dart Sass, but it supports asynchronous {@link much slower when using Dart Sass, but it supports asynchronous {@link
LegacyImporter | importer} and {@link LegacyFunction | function} plugins. LegacyImporter | importer} and {@link LegacyFunction | function} plugins.

View File

@ -3,8 +3,8 @@ import {RawSourceMap} from 'source-map-js';
import {Options, StringOptions} from './options'; import {Options, StringOptions} from './options';
/** /**
* The result of compiling Sass to CSS. Returned by [[compile]], * The result of compiling Sass to CSS. Returned by {@link compile}, {@link
* [[compileAsync]], [[compileString]], and [[compileStringAsync]]. * compileAsync}, {@link compileString}, and {@link compileStringAsync}.
* *
* @category Compile * @category Compile
*/ */
@ -29,19 +29,20 @@ export interface CompileResult {
* generated CSS back to locations in the Sass source code. * generated CSS back to locations in the Sass source code.
* *
* This typically uses absolute `file:` URLs to refer to Sass files, although * This typically uses absolute `file:` URLs to refer to Sass files, although
* this can be controlled by having a custom [[Importer]] return * this can be controlled by having a custom {@link Importer} return {@link
* [[ImporterResult.sourceMapUrl]]. * ImporterResult.sourceMapUrl}.
* *
* This is set if and only if [[Options.sourceMap]] is `true`. * This is set if and only if {@link Options.sourceMap} is `true`.
*/ */
sourceMap?: RawSourceMap; sourceMap?: RawSourceMap;
} }
/** /**
* Synchronously compiles the Sass file at `path` to CSS. If it succeeds it * Synchronously compiles the Sass file at `path` to CSS. If it succeeds it
* returns a [[CompileResult]], and if it fails it throws an [[Exception]]. * returns a {@link CompileResult}, and if it fails it throws an {@link
* Exception}.
* *
* This only allows synchronous [[Importer]]s and [[CustomFunction]]s. * This only allows synchronous {@link Importer}s and {@link CustomFunction}s.
* *
* @example * @example
* *
@ -59,15 +60,15 @@ export function compile(path: string, options?: Options<'sync'>): CompileResult;
/** /**
* Asynchronously compiles the Sass file at `path` to CSS. Returns a promise * Asynchronously compiles the Sass file at `path` to CSS. Returns a promise
* that resolves with a [[CompileResult]] if it succeeds and rejects with an * that resolves with a {@link CompileResult} if it succeeds and rejects with an
* [[Exception]] if it fails. * {@link Exception} if it fails.
* *
* This only allows synchronous or asynchronous [[Importer]]s and * This only allows synchronous or asynchronous {@link Importer}s and
* [[CustomFunction]]s. * {@link CustomFunction}s.
* *
* **Heads up!** When using Dart Sass, **[[compile]] is almost twice as fast as * **Heads up!** When using Dart Sass, **{@link compile} is almost twice as fast
* [[compileAsync]]**, due to the overhead of making the entire evaluation * as {@link compileAsync}**, due to the overhead of making the entire
* process asynchronous. * evaluation process asynchronous.
* *
* @example * @example
* *
@ -88,10 +89,10 @@ export function compileAsync(
/** /**
* Synchronously compiles a stylesheet whose contents is `source` to CSS. If it * Synchronously compiles a stylesheet whose contents is `source` to CSS. If it
* succeeds it returns a [[CompileResult]], and if it fails it throws an * succeeds it returns a {@link CompileResult}, and if it fails it throws an
* [[Exception]]. * {@link Exception}.
* *
* This only allows synchronous [[Importer]]s and [[CustomFunction]]s. * This only allows synchronous {@link Importer}s and {@link CustomFunction}s.
* *
* @example * @example
* *
@ -118,15 +119,15 @@ export function compileString(
/** /**
* Asynchronously compiles a stylesheet whose contents is `source` to CSS. * Asynchronously compiles a stylesheet whose contents is `source` to CSS.
* Returns a promise that resolves with a [[CompileResult]] if it succeeds and * Returns a promise that resolves with a {@link CompileResult} if it succeeds
* rejects with an [[Exception]] if it fails. * and rejects with an {@link Exception} if it fails.
* *
* This only allows synchronous or asynchronous [[Importer]]s and * This only allows synchronous or asynchronous {@link Importer}s and {@link
* [[CustomFunction]]s. * CustomFunction}s.
* *
* **Heads up!** When using Dart Sass, **[[compile]] is almost twice as fast as * **Heads up!** When using Dart Sass, **{@link compile} is almost twice as fast
* [[compileAsync]]**, due to the overhead of making the entire evaluation * as {@link compileAsync}**, due to the overhead of making the entire
* process asynchronous. * evaluation process asynchronous.
* *
* @example * @example
* *

View File

@ -12,18 +12,18 @@ export class Exception extends Error {
* A human-friendly representation of the exception. * A human-friendly representation of the exception.
* *
* Because many tools simply print `Error.message` directly, this includes not * Because many tools simply print `Error.message` directly, this includes not
* only the textual description of what went wrong (the [[sassMessage]]) but * only the textual description of what went wrong (the {@link sassMessage})
* also an indication of where in the Sass stylesheet the error occurred (the * but also an indication of where in the Sass stylesheet the error occurred
* [[span]]) and the Sass stack trace at the point of error (the * (the {@link span}) and the Sass stack trace at the point of error (the
* [[sassStack]]). * {@link sassStack}).
*/ */
message: string; message: string;
/** /**
* A textual description of what went wrong. * A textual description of what went wrong.
* *
* Unlike [[message]], this does *not* include representations of [[span]] or * Unlike {@link message}, this does *not* include representations of {@link
* [[sassStack]]. * span} or {@link sassStack}.
*/ */
readonly sassMessage: string; readonly sassMessage: string;
@ -36,6 +36,6 @@ export class Exception extends Error {
/** The location the error occurred in the Sass file that triggered it. */ /** The location the error occurred in the Sass file that triggered it. */
readonly span: SourceSpan; readonly span: SourceSpan;
/** Returns the same string as [[message]]. */ /** Returns the same string as {@link message}. */
toString(): string; toString(): string;
} }

View File

@ -3,22 +3,23 @@ import {PromiseOr} from './util/promise_or';
/** /**
* A special type of importer that redirects all loads to existing files on * A special type of importer that redirects all loads to existing files on
* disk. Although this is less powerful than a full [[Importer]], it * disk. Although this is less powerful than a full {@link Importer}, it
* automatically takes care of Sass features like resolving partials and file * automatically takes care of Sass features like resolving partials and file
* extensions and of loading the file from disk. * extensions and of loading the file from disk.
* *
* Like all importers, this implements custom Sass loading logic for [`@use` * Like all importers, this implements custom Sass loading logic for [`@use`
* rules](https://sass-lang.com/documentation/at-rules/use) and [`@import` * rules](https://sass-lang.com/documentation/at-rules/use) and [`@import`
* rules](https://sass-lang.com/documentation/at-rules/import). It can be passed * rules](https://sass-lang.com/documentation/at-rules/import). It can be passed
* to [[Options.importers]] or [[StringOptionsWithImporter.importer]]. * to {@link Options.importers} or {@link StringOptionsWithImporter.importer}.
* *
* @typeParam sync - A `FileImporter<'sync'>`'s [[findFileUrl]] must return * @typeParam sync - A `FileImporter<'sync'>`'s {@link findFileUrl} must return
* synchronously, but in return it can be passed to [[compile]] and * synchronously, but in return it can be passed to {@link compile} and {@link
* [[compileString]] in addition to [[compileAsync]] and [[compileStringAsync]]. * compileString} in addition to {@link compileAsync} and {@link
* compileStringAsync}.
* *
* A `FileImporter<'async'>`'s [[findFileUrl]] may either return synchronously * A `FileImporter<'async'>`'s {@link findFileUrl} may either return
* or asynchronously, but it can only be used with [[compileAsync]] and * synchronously or asynchronously, but it can only be used with {@link
* [[compileStringAsync]]. * compileAsync} and {@link compileStringAsync}.
* *
* @example * @example
* *
@ -48,12 +49,12 @@ export interface FileImporter<
* [`@import`](https://sass-lang.com/documentation/at-rules/import)) to a file * [`@import`](https://sass-lang.com/documentation/at-rules/import)) to a file
* on disk. * on disk.
* *
* Unlike an [[Importer]], the compiler will automatically handle relative * Unlike an {@link Importer}, the compiler will automatically handle relative
* loads for a [[FileImporter]]. See [[Options.importers]] for more details on * loads for a {@link FileImporter}. See {@link Options.importers} for more
* the way loads are resolved. * details on the way loads are resolved.
* *
* @param url - The loaded URL. Since this might be relative, it's represented * @param url - The loaded URL. Since this might be relative, it's represented
* as a string rather than a [[URL]] object. * as a string rather than a {@link URL} object.
* *
* @param options.fromImport - Whether this is being invoked because of a Sass * @param options.fromImport - Whether this is being invoked because of a Sass
* `@import` rule, as opposed to a `@use` or `@forward` rule. * `@import` rule, as opposed to a `@use` or `@forward` rule.
@ -73,8 +74,8 @@ export interface FileImporter<
* handle it. * handle it.
* *
* This may also return a `Promise`, but if it does the importer may only be * This may also return a `Promise`, but if it does the importer may only be
* passed to [[compileAsync]] and [[compileStringAsync]], not [[compile]] or * passed to {@link compileAsync} and {@link compileStringAsync}, not {@link
* [[compileString]]. * compile} or {@link compileString}.
* *
* @throws any - If this importer recognizes `url` but determines that it's * @throws any - If this importer recognizes `url` but determines that it's
* invalid, it may throw an exception that will be wrapped by Sass. If the * invalid, it may throw an exception that will be wrapped by Sass. If the
@ -95,35 +96,38 @@ export interface FileImporter<
* An object that implements custom Sass loading logic for [`@use` * An object that implements custom Sass loading logic for [`@use`
* rules](https://sass-lang.com/documentation/at-rules/use) and [`@import` * rules](https://sass-lang.com/documentation/at-rules/use) and [`@import`
* rules](https://sass-lang.com/documentation/at-rules/import). It can be passed * rules](https://sass-lang.com/documentation/at-rules/import). It can be passed
* to [[Options.importers]] or [[StringOptionsWithImporter.importer]]. * to {@link Options.importers} or {@link StringOptionsWithImporter.importer}.
* *
* Importers that simply redirect to files on disk are encouraged to use the * Importers that simply redirect to files on disk are encouraged to use the
* [[FileImporter]] interface instead. * {@link FileImporter} interface instead.
* *
* See [[Options.importers]] for more details on the way loads are resolved. * ### Resolving a Load
*
* @typeParam sync - An `Importer<'sync'>`'s [[canonicalize]] and [[load]] must
* return synchronously, but in return it can be passed to [[compile]] and
* [[compileString]] in addition to [[compileAsync]] and [[compileStringAsync]].
*
* An `Importer<'async'>`'s [[canonicalize]] and [[load]] may either return
* synchronously or asynchronously, but it can only be used with
* [[compileAsync]] and [[compileStringAsync]].
*
* @example Resolving a Load
* *
* This is the process of resolving a load using a custom importer: * This is the process of resolving a load using a custom importer:
* *
* - The compiler encounters `@use "db:foo/bar/baz"`. * - The compiler encounters `@use "db:foo/bar/baz"`.
* - It calls [[canonicalize]] with `"db:foo/bar/baz"`. * - It calls {@link canonicalize} with `"db:foo/bar/baz"`.
* - [[canonicalize]] returns `new URL("db:foo/bar/baz/_index.scss")`. * - {@link canonicalize} returns `new URL("db:foo/bar/baz/_index.scss")`.
* - If the compiler has already loaded a stylesheet with this canonical URL, it * - If the compiler has already loaded a stylesheet with this canonical URL, it
* re-uses the existing module. * re-uses the existing module.
* - Otherwise, it calls [[load]] with `new URL("db:foo/bar/baz/_index.scss")`. * - Otherwise, it calls {@link load} with `new
* - [[load]] returns an [[ImporterResult]] that the compiler uses as the * URL("db:foo/bar/baz/_index.scss")`.
* contents of the module. * - {@link load} returns an {@link ImporterResult} that the compiler uses as
* the contents of the module.
* *
* @example Code Sample * See {@link Options.importers} for more details on the way loads are resolved
* using multiple importers and load paths.
*
* @typeParam sync - An `Importer<'sync'>`'s {@link canonicalize} and {@link
* load} must return synchronously, but in return it can be passed to {@link
* compile} and {@link compileString} in addition to {@link compileAsync} and
* {@link compileStringAsync}.
*
* An `Importer<'async'>`'s {@link canonicalize} and {@link load} may either
* return synchronously or asynchronously, but it can only be used with {@link
* compileAsync} and {@link compileStringAsync}.
*
* @example
* *
* ```js * ```js
* sass.compile('style.scss', { * sass.compile('style.scss', {
@ -192,29 +196,29 @@ export interface Importer<sync extends 'sync' | 'async' = 'sync' | 'async'> {
* *
* If no stylesheets are found, the importer should return `null`. * If no stylesheets are found, the importer should return `null`.
* *
* Calling [[canonicalize]] multiple times with the same URL must return the * Calling {@link canonicalize} multiple times with the same URL must return
* same result. Calling [[canonicalize]] with a URL returned by a previous * the same result. Calling {@link canonicalize} with a URL returned by a
* call to [[canonicalize]] must return that URL. * previous call to {@link canonicalize} must return that URL.
* *
* Relative loads in stylesheets loaded from an importer are handled by * Relative loads in stylesheets loaded from an importer are handled by
* resolving the loaded URL relative to the canonical URL of the stylesheet * resolving the loaded URL relative to the canonical URL of the stylesheet
* that contains it, and passing that URL back to the importer's * that contains it, and passing that URL back to the importer's {@link
* [[canonicalize]] method. For example, suppose the "Resolving a Load" * canonicalize} method. For example, suppose the "Resolving a Load" example
* example {@link Importer | above} returned a stylesheet that contained * {@link Importer | above} returned a stylesheet that contained `@use
* `@use "mixins"`: * "mixins"`:
* *
* - The compiler resolves the URL `mixins` relative to the current * - The compiler resolves the URL `mixins` relative to the current
* stylesheet's canonical URL `db:foo/bar/baz/_index.scss` to get * stylesheet's canonical URL `db:foo/bar/baz/_index.scss` to get
* `db:foo/bar/baz/mixins`. * `db:foo/bar/baz/mixins`.
* - It calls [[canonicalize]] with `"db:foo/bar/baz/mixins"`. * - It calls {@link canonicalize} with `"db:foo/bar/baz/mixins"`.
* - [[canonicalize]] returns `new URL("db:foo/bar/baz/_mixins.scss")`. * - {@link canonicalize} returns `new URL("db:foo/bar/baz/_mixins.scss")`.
* *
* Because of this, [[canonicalize]] must return a meaningful result when * Because of this, {@link canonicalize} must return a meaningful result when
* called with a URL relative to one returned by an earlier call to * called with a URL relative to one returned by an earlier call to {@link
* [[canonicalize]]. * canonicalize}.
* *
* @param url - The loaded URL. Since this might be relative, it's represented * @param url - The loaded URL. Since this might be relative, it's represented
* as a string rather than a [[URL]] object. * as a string rather than a {@link URL} object.
* *
* @param options.fromImport - Whether this is being invoked because of a Sass * @param options.fromImport - Whether this is being invoked because of a Sass
* `@import` rule, as opposed to a `@use` or `@forward` rule. * `@import` rule, as opposed to a `@use` or `@forward` rule.
@ -227,8 +231,8 @@ export interface Importer<sync extends 'sync' | 'async' = 'sync' | 'async'> {
* Options.loadPaths | load paths} may handle the load. * Options.loadPaths | load paths} may handle the load.
* *
* This may also return a `Promise`, but if it does the importer may only be * This may also return a `Promise`, but if it does the importer may only be
* passed to [[compileAsync]] and [[compileStringAsync]], not [[compile]] or * passed to {@link compileAsync} and {@link compileStringAsync}, not {@link
* [[compileString]]. * compile} or {@link compileString}.
* *
* @throws any - If this importer recognizes `url` but determines that it's * @throws any - If this importer recognizes `url` but determines that it's
* invalid, it may throw an exception that will be wrapped by Sass. If the * invalid, it may throw an exception that will be wrapped by Sass. If the
@ -246,15 +250,15 @@ export interface Importer<sync extends 'sync' | 'async' = 'sync' | 'async'> {
* importer can't find the stylesheet it refers to. * importer can't find the stylesheet it refers to.
* *
* @param canonicalUrl - The canonical URL of the stylesheet to load. This is * @param canonicalUrl - The canonical URL of the stylesheet to load. This is
* guaranteed to come from a call to [[canonicalize]], although not every call * guaranteed to come from a call to {@link canonicalize}, although not every
* to [[canonicalize]] will result in a call to [[load]]. * call to {@link canonicalize} will result in a call to {@link load}.
* *
* @returns The contents of the stylesheet at `canonicalUrl` if it can be * @returns The contents of the stylesheet at `canonicalUrl` if it can be
* loaded, or `null` if it can't. * loaded, or `null` if it can't.
* *
* This may also return a `Promise`, but if it does the importer may only be * This may also return a `Promise`, but if it does the importer may only be
* passed to [[compileAsync]] and [[compileStringAsync]], not [[compile]] or * passed to {@link compileAsync} and {@link compileStringAsync}, not {@link
* [[compileString]]. * compile} or {@link compileString}.
* *
* @throws any - If this importer finds a stylesheet at `url` but it fails to * @throws any - If this importer finds a stylesheet at `url` but it fails to
* load for some reason, or if `url` is uniquely associated with this importer * load for some reason, or if `url` is uniquely associated with this importer
@ -271,7 +275,7 @@ export interface Importer<sync extends 'sync' | 'async' = 'sync' | 'async'> {
} }
/** /**
* The result of successfully loading a stylesheet with an [[Importer]]. * The result of successfully loading a stylesheet with an {@link Importer}.
* *
* @category Importer * @category Importer
*/ */
@ -279,7 +283,7 @@ export interface ImporterResult {
/** The contents of the stylesheet. */ /** The contents of the stylesheet. */
contents: string; contents: string;
/** The syntax with which to parse [[contents]]. */ /** The syntax with which to parse {@link contents}. */
syntax: Syntax; syntax: Syntax;
/** /**

View File

@ -1,11 +1,11 @@
/** /**
* The exception type thrown by [[renderSync]] and passed as the error to * The exception type thrown by {@link renderSync} and passed as the error to
* [[render]]'s callback. * {@link render}'s callback.
* *
* @category Legacy * @category Legacy
* @deprecated This is only thrown by the legacy [[render]] and [[renderSync]] * @deprecated This is only thrown by the legacy {@link render} and {@link
* APIs. Use [[compile]], [[compileString]], [[compileAsync]], and * renderSync} APIs. Use {@link compile}, {@link compileString}, {@link
* [[compileStringAsync]] instead. * compileAsync}, and {@link compileStringAsync} instead.
*/ */
export interface LegacyException extends Error { export interface LegacyException extends Error {
/** /**
@ -17,8 +17,8 @@ export interface LegacyException extends Error {
/** /**
* The error message. For Dart Sass, this is the same as the result of calling * The error message. For Dart Sass, this is the same as the result of calling
* [[toString]], which is itself the same as [[message]] but with the prefix * {@link toString}, which is itself the same as {@link message} but with the
* "Error:". * prefix "Error:".
*/ */
formatted: string; formatted: string;
@ -29,8 +29,9 @@ export interface LegacyException extends Error {
line?: number; line?: number;
/** /**
* The (1-based) column number within [[line]] at which the error occurred, if * The (1-based) column number within {@link line} at which the error
* this exception is associated with a specific Sass file location. * occurred, if this exception is associated with a specific Sass file
* location.
*/ */
column?: number; column?: number;
@ -46,9 +47,9 @@ export interface LegacyException extends Error {
* *
* * If the Sass file was loaded from disk, this is the path to that file. * * If the Sass file was loaded from disk, this is the path to that file.
* * If the Sass file was generated by an importer, this is its canonical URL. * * If the Sass file was generated by an importer, this is its canonical URL.
* * If the Sass file was passed as [[LegacyStringOptions.data]] without a * * If the Sass file was passed as {@link LegacyStringOptions.data} without a
* corresponding [[LegacyStringOptions.file]], this is the special string * corresponding {@link LegacyStringOptions.file}, this is the special
* `"stdin"`. * string `"stdin"`.
*/ */
file?: string; file?: string;
} }

View File

@ -2,8 +2,8 @@ import {LegacyPluginThis} from './plugin_this';
/** /**
* A synchronous callback that implements a custom Sass function. This can be * A synchronous callback that implements a custom Sass function. This can be
* passed to [[LegacySharedOptions.functions]] for either [[render]] or * passed to {@link LegacySharedOptions.functions} for either {@link render} or
* [[renderSync]]. * {@link renderSync}.
* *
* If this throws an error, Sass will treat that as the function failing with * If this throws an error, Sass will treat that as the function failing with
* that error message. * that error message.
@ -25,14 +25,15 @@ import {LegacyPluginThis} from './plugin_this';
* ``` * ```
* *
* @param args - One argument for each argument that's declared in the signature * @param args - One argument for each argument that's declared in the signature
* that's passed to [[LegacySharedOptions.functions]]. If the signature [takes * that's passed to {@link LegacySharedOptions.functions}. If the signature
* arbitrary arguments](https://sass-lang.com/documentation/at-rules/function#taking-arbitrary-arguments), * [takes arbitrary
* arguments](https://sass-lang.com/documentation/at-rules/function#taking-arbitrary-arguments),
* they're passed as a single argument list in the last argument. * they're passed as a single argument list in the last argument.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[CustomFunction]] with [[compile]], [[compileString]], * renderSync} APIs. Use {@link CustomFunction} with {@link compile}, {@link
* [[compileAsync]], and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export type LegacySyncFunction = ( export type LegacySyncFunction = (
this: LegacyPluginThis, this: LegacyPluginThis,
@ -41,7 +42,7 @@ export type LegacySyncFunction = (
/** /**
* An asynchronous callback that implements a custom Sass function. This can be * An asynchronous callback that implements a custom Sass function. This can be
* passed to [[LegacySharedOptions.functions]], but only for [[render]]. * passed to {@link LegacySharedOptions.functions}, but only for {@link render}.
* *
* An asynchronous function must return `undefined`. Its final argument will * An asynchronous function must return `undefined`. Its final argument will
* always be a callback, which it should call with the result of the function * always be a callback, which it should call with the result of the function
@ -69,16 +70,16 @@ export type LegacySyncFunction = (
* ``` * ```
* *
* This is passed one argument for each argument that's declared in the * This is passed one argument for each argument that's declared in the
* signature that's passed to [[LegacySharedOptions.functions]]. If the * signature that's passed to {@link LegacySharedOptions.functions}. If the
* signature [takes arbitrary * signature [takes arbitrary
* arguments](https://sass-lang.com/documentation/at-rules/function#taking-arbitrary-arguments), * arguments](https://sass-lang.com/documentation/at-rules/function#taking-arbitrary-arguments),
* they're passed as a single argument list in the last argument before the * they're passed as a single argument list in the last argument before the
* callback. * callback.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[CustomFunction]] with [[compile]], [[compileString]], * renderSync} APIs. Use {@link CustomFunction} with {@link compile}, {@link
* [[compileAsync]], and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export type LegacyAsyncFunction = export type LegacyAsyncFunction =
| ((this: LegacyPluginThis, done: (result: LegacyValue) => void) => void) | ((this: LegacyPluginThis, done: (result: LegacyValue) => void) => void)
@ -133,34 +134,34 @@ export type LegacyAsyncFunction =
) => void); ) => void);
/** /**
* The function called by a [[LegacyAsyncFunction]] to indicate that it's * The function called by a {@link LegacyAsyncFunction} to indicate that it's
* finished. * finished.
* *
* @param result - If this is a [[LegacyValue]], that indicates that the * @param result - If this is a {@link LegacyValue}, that indicates that the
* function call completed successfully. If it's a [[types.Error]], that * function call completed successfully. If it's a {@link types.Error}, that
* indicates that the function call failed. * indicates that the function call failed.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[CustomFunction]] with [[compile]], [[compileString]], * renderSync} APIs. Use {@link CustomFunction} with {@link compile}, {@link
* [[compileAsync]], and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export type LegacyAsyncFunctionDone = ( export type LegacyAsyncFunctionDone = (
result: LegacyValue | types.Error result: LegacyValue | types.Error
) => void; ) => void;
/** /**
* A callback that implements a custom Sass function. For [[renderSync]], this * A callback that implements a custom Sass function. For {@link renderSync},
* must be a [[LegacySyncFunction]] which returns its result directly; for * this must be a {@link LegacySyncFunction} which returns its result directly;
* [[render]], it may be either a [[LegacySyncFunction]] or a * for {@link render}, it may be either a {@link LegacySyncFunction} or a {@link
* [[LegacyAsyncFunction]] which calls a callback with its result. * LegacyAsyncFunction} which calls a callback with its result.
* *
* See [[LegacySharedOptions.functions]] for more details. * See {@link LegacySharedOptions.functions} for more details.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[CustomFunction]] with [[compile]], [[compileString]], * renderSync} APIs. Use {@link CustomFunction} with {@link compile}, {@link
* [[compileAsync]], and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export type LegacyFunction<sync extends 'sync' | 'async'> = sync extends 'async' export type LegacyFunction<sync extends 'sync' | 'async'> = sync extends 'async'
? LegacySyncFunction | LegacyAsyncFunction ? LegacySyncFunction | LegacyAsyncFunction
@ -168,12 +169,12 @@ export type LegacyFunction<sync extends 'sync' | 'async'> = sync extends 'async'
/** /**
* A type representing all the possible values that may be passed to or returned * A type representing all the possible values that may be passed to or returned
* from a [[LegacyFunction]]. * from a {@link LegacyFunction}.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[Value]] with [[compile]], [[compileString]], [[compileAsync]], * renderSync} APIs. Use {@link Value} with {@link compile}, {@link
* and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export type LegacyValue = export type LegacyValue =
| types.Null | types.Null
@ -188,9 +189,9 @@ export type LegacyValue =
* A shorthand for `sass.types.Boolean.TRUE`. * A shorthand for `sass.types.Boolean.TRUE`.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[sassTrue]] with [[compile]], [[compileString]], [[compileAsync]], * renderSync} APIs. Use {@link sassTrue} with {@link compile}, {@link
* and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export const TRUE: types.Boolean<true>; export const TRUE: types.Boolean<true>;
@ -198,9 +199,9 @@ export const TRUE: types.Boolean<true>;
* A shorthand for `sass.types.Boolean.FALSE`. * A shorthand for `sass.types.Boolean.FALSE`.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[sassFalse]] with [[compile]], [[compileString]], [[compileAsync]], * renderSync} APIs. Use {@link sassFalse} with {@link compile}, {@link
* and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export const FALSE: types.Boolean<false>; export const FALSE: types.Boolean<false>;
@ -208,9 +209,9 @@ export const FALSE: types.Boolean<false>;
* A shorthand for `sass.types.Null.NULL`. * A shorthand for `sass.types.Null.NULL`.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[sassNull]] with [[compile]], [[compileString]], [[compileAsync]], * renderSync} APIs. Use {@link sassNull} with {@link compile}, {@link
* and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export const NULL: types.Null; export const NULL: types.Null;
@ -218,15 +219,15 @@ export const NULL: types.Null;
* The namespace for value types used in the legacy function API. * The namespace for value types used in the legacy function API.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[Value]] with [[compile]], [[compileString]], [[compileAsync]], * renderSync} APIs. Use {@link Value} with {@link compile}, {@link
* and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export namespace types { export namespace types {
/** /**
* The class for Sass's singleton [`null` * The class for Sass's singleton [`null`
* value](https://sass-lang.com/documentation/values/null). The value itself * value](https://sass-lang.com/documentation/values/null). The value itself
* can be accessed through the [[NULL]] field. * can be accessed through the {@link NULL} field.
*/ */
export class Null { export class Null {
/** Sass's singleton `null` value. */ /** Sass's singleton `null` value. */
@ -280,13 +281,13 @@ export namespace types {
* Destructively modifies this number by setting its numeric value to * Destructively modifies this number by setting its numeric value to
* `value`, independent of its units. * `value`, independent of its units.
* *
* @deprecated Use [[constructor]] instead. * @deprecated Use {@link constructor} instead.
*/ */
setValue(value: number): void; setValue(value: number): void;
/** /**
* Returns a string representation of this number's units. Complex units are * Returns a string representation of this number's units. Complex units are
* returned in the same format that [[constructor]] accepts them. * returned in the same format that {@link constructor} accepts them.
* *
* @example * @example
* *
@ -303,9 +304,9 @@ export namespace types {
/** /**
* Destructively modifies this number by setting its units to `unit`, * Destructively modifies this number by setting its units to `unit`,
* independent of its numeric value. Complex units are specified in the same * independent of its numeric value. Complex units are specified in the same
* format as [[constructor]]. * format as {@link constructor}.
* *
* @deprecated Use [[constructor]] instead. * @deprecated Use {@link constructor} instead.
*/ */
setUnit(unit: string): void; setUnit(unit: string): void;
} }
@ -360,7 +361,7 @@ export namespace types {
* **Heads up!** Even if the string was originally quoted, this will cause * **Heads up!** Even if the string was originally quoted, this will cause
* it to become unquoted. * it to become unquoted.
* *
* @deprecated Use [[constructor]] instead. * @deprecated Use {@link constructor} instead.
*/ */
setValue(value: string): void; setValue(value: string): void;
} }
@ -373,7 +374,7 @@ export namespace types {
* by treating `false` and `null` as falsey and everything else as truthy. * by treating `false` and `null` as falsey and everything else as truthy.
* *
* **Heads up!** Boolean values can't be constructed, they can only be * **Heads up!** Boolean values can't be constructed, they can only be
* accessed through the [[TRUE]] and [[FALSE]] constants. * accessed through the {@link TRUE} and {@link FALSE} constants.
*/ */
export class Boolean<T extends boolean = boolean> { export class Boolean<T extends boolean = boolean> {
/** /**
@ -451,7 +452,7 @@ export namespace types {
* Sets the red channel of the color. The value must be an integer between 0 * Sets the red channel of the color. The value must be an integer between 0
* and 255 (inclusive). * and 255 (inclusive).
* *
* @deprecated Use [[constructor]] instead. * @deprecated Use {@link constructor} instead.
*/ */
setR(value: number): void; setR(value: number): void;
@ -474,7 +475,7 @@ export namespace types {
* Sets the green channel of the color. The value must be an integer between * Sets the green channel of the color. The value must be an integer between
* 0 and 255 (inclusive). * 0 and 255 (inclusive).
* *
* @deprecated Use [[constructor]] instead. * @deprecated Use {@link constructor} instead.
*/ */
setG(value: number): void; setG(value: number): void;
@ -497,7 +498,7 @@ export namespace types {
* Sets the blue channel of the color. The value must be an integer between * Sets the blue channel of the color. The value must be an integer between
* 0 and 255 (inclusive). * 0 and 255 (inclusive).
* *
* @deprecated Use [[constructor]] instead. * @deprecated Use {@link constructor} instead.
*/ */
setB(value: number): void; setB(value: number): void;
@ -520,7 +521,7 @@ export namespace types {
* Sets the alpha channel of the color. The value must be between 0 and 1 * Sets the alpha channel of the color. The value must be between 0 and 1
* (inclusive). * (inclusive).
* *
* @deprecated Use [[constructor]] instead. * @deprecated Use {@link constructor} instead.
*/ */
setA(value: number): void; setA(value: number): void;
} }
@ -537,8 +538,8 @@ export namespace types {
* Creates a new Sass list. * Creates a new Sass list.
* *
* **Heads up!** The initial values of the list elements are undefined. * **Heads up!** The initial values of the list elements are undefined.
* These elements must be set using [[setValue]] before accessing them or * These elements must be set using {@link setValue} before accessing them
* passing the list back to Sass. * or passing the list back to Sass.
* *
* @example * @example
* *
@ -643,8 +644,8 @@ export namespace types {
* Creates a new Sass map. * Creates a new Sass map.
* *
* **Heads up!** The initial keys and values of the map are undefined. They * **Heads up!** The initial keys and values of the map are undefined. They
* must be set using [[setKey]] and [[setValue]] before accessing them or * must be set using {@link setKey} and {@link setValue} before accessing
* passing the map back to Sass. * them or passing the map back to Sass.
* *
* @example * @example
* *
@ -748,7 +749,7 @@ export namespace types {
/** /**
* An error that can be returned from a Sass function to signal that it * An error that can be returned from a Sass function to signal that it
* encountered an error. This is the only way to signal an error * encountered an error. This is the only way to signal an error
* asynchronously from a [[LegacyAsyncFunction]]. * asynchronously from a {@link LegacyAsyncFunction}.
*/ */
export class Error { export class Error {
constructor(message: string); constructor(message: string);

View File

@ -1,12 +1,12 @@
import {LegacyPluginThis} from './plugin_this'; import {LegacyPluginThis} from './plugin_this';
/** /**
* The value of `this` in the context of a [[LegacyImporter]] function. * The value of `this` in the context of a {@link LegacyImporter} function.
* *
* @category Legacy * @category Legacy
* @deprecated This is only used by the legacy [[render]] and [[renderSync]] * @deprecated This is only used by the legacy {@link render} and {@link
* APIs. Use [[Importer]] with [[compile]], [[compileString]], [[compileAsync]], * renderSync} APIs. Use {@link Importer} with {@link compile}, {@link
* and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
interface LegacyImporterThis extends LegacyPluginThis { interface LegacyImporterThis extends LegacyPluginThis {
/** /**
@ -22,8 +22,8 @@ interface LegacyImporterThis extends LegacyPluginThis {
} }
/** /**
* The result of running a [[LegacyImporter]]. It must be one of the following * The result of running a {@link LegacyImporter}. It must be one of the
* types: * following types:
* *
* * An object with the key `contents` whose value is the contents of a stylesheet * * An object with the key `contents` whose value is the contents of a stylesheet
* (in SCSS syntax). This causes Sass to load that stylesheets contents. * (in SCSS syntax). This causes Sass to load that stylesheets contents.
@ -38,9 +38,9 @@ interface LegacyImporterThis extends LegacyPluginThis {
* object, indicating that importing failed. * object, indicating that importing failed.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[ImporterResult]] with [[compile]], [[compileString]], * renderSync} APIs. Use {@link ImporterResult} with {@link compile}, {@link
* [[compileAsync]], and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export type LegacyImporterResult = export type LegacyImporterResult =
| {file: string} | {file: string}
@ -52,10 +52,10 @@ export type LegacyImporterResult =
* A synchronous callback that implements custom Sass loading logic for * A synchronous callback that implements custom Sass loading logic for
* [`@import` rules](https://sass-lang.com/documentation/at-rules/import) and * [`@import` rules](https://sass-lang.com/documentation/at-rules/import) and
* [`@use` rules](https://sass-lang.com/documentation/at-rules/use). This can be * [`@use` rules](https://sass-lang.com/documentation/at-rules/use). This can be
* passed to [[LegacySharedOptions.importer]] for either [[render]] or * passed to {@link LegacySharedOptions.importer} for either {@link render} or
* [[renderSync]]. * {@link renderSync}.
* *
* See [[LegacySharedOptions.importer]] for more detailed documentation. * See {@link LegacySharedOptions.importer} for more detailed documentation.
* *
* ```js * ```js
* sass.renderSync({ * sass.renderSync({
@ -85,9 +85,9 @@ export type LegacyImporterResult =
* * If the stylesheet came from the data option, its the string "stdin". * * If the stylesheet came from the data option, its the string "stdin".
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[Importer]] with [[compile]], [[compileString]], [[compileAsync]], * renderSync} APIs. Use {@link Importer} with {@link compile}, {@link
* and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
type LegacySyncImporter = ( type LegacySyncImporter = (
this: LegacyImporterThis, this: LegacyImporterThis,
@ -99,13 +99,13 @@ type LegacySyncImporter = (
* An asynchronous callback that implements custom Sass loading logic for * An asynchronous callback that implements custom Sass loading logic for
* [`@import` rules](https://sass-lang.com/documentation/at-rules/import) and * [`@import` rules](https://sass-lang.com/documentation/at-rules/import) and
* [`@use` rules](https://sass-lang.com/documentation/at-rules/use). This can be * [`@use` rules](https://sass-lang.com/documentation/at-rules/use). This can be
* passed to [[LegacySharedOptions.importer]] for either [[render]] or * passed to {@link LegacySharedOptions.importer} for either {@link render} or
* [[renderSync]]. * {@link renderSync}.
* *
* An asynchronous importer must return `undefined`, and then call `done` with * An asynchronous importer must return `undefined`, and then call `done` with
* the result of its [[LegacyImporterResult]] once it's done running. * the result of its {@link LegacyImporterResult} once it's done running.
* *
* See [[LegacySharedOptions.importer]] for more detailed documentation. * See {@link LegacySharedOptions.importer} for more detailed documentation.
* *
* ```js * ```js
* sass.render({ * sass.render({
@ -137,9 +137,9 @@ type LegacySyncImporter = (
* @param done - The callback to call once the importer has finished running. * @param done - The callback to call once the importer has finished running.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[Importer]] with [[compile]], [[compileString]], [[compileAsync]], * renderSync} APIs. Use {@link Importer} with {@link compile}, {@link
* and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
type LegacyAsyncImporter = ( type LegacyAsyncImporter = (
this: LegacyImporterThis, this: LegacyImporterThis,
@ -151,17 +151,18 @@ type LegacyAsyncImporter = (
/** /**
* A callback that implements custom Sass loading logic for [`@import` * A callback that implements custom Sass loading logic for [`@import`
* rules](https://sass-lang.com/documentation/at-rules/import) and [`@use` * rules](https://sass-lang.com/documentation/at-rules/import) and [`@use`
* rules](https://sass-lang.com/documentation/at-rules/use). For [[renderSync]], * rules](https://sass-lang.com/documentation/at-rules/use). For {@link
* this must be a [[LegacySyncImporter]] which returns its result directly; for * renderSync}, this must be a {@link LegacySyncImporter} which returns its
* [[render]], it may be either a [[LegacySyncImporter]] or a * result directly; for {@link render}, it may be either a {@link
* [[LegacyAsyncImporter]] which calls a callback with its result. * LegacySyncImporter} or a {@link LegacyAsyncImporter} which calls a callback
* with its result.
* *
* See [[LegacySharedOptions.importer]] for more details. * See {@link LegacySharedOptions.importer} for more details.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[Importer]] with [[compile]], [[compileString]], [[compileAsync]], * renderSync} APIs. Use {@link Importer} with {@link compile}, {@link
* and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export type LegacyImporter<sync = 'sync' | 'async'> = sync extends 'async' export type LegacyImporter<sync = 'sync' | 'async'> = sync extends 'async'
? LegacySyncImporter | LegacyAsyncImporter ? LegacySyncImporter | LegacyAsyncImporter

View File

@ -3,17 +3,17 @@ import {LegacyImporter} from './importer';
import {LegacyFunction} from './function'; import {LegacyFunction} from './function';
/** /**
* Options for [[render]] and [[renderSync]] that are shared between * Options for {@link render} and {@link renderSync} that are shared between
* [[LegacyFileOptions]] and [[LegacyStringOptions]]. * {@link LegacyFileOptions} and {@link LegacyStringOptions}.
* *
* @typeParam sync - This lets the TypeScript checker verify that * @typeParam sync - This lets the TypeScript checker verify that {@link
* [[LegacyAsyncImporter]]s and [[LegacyAsyncFunction]]s aren't passed to * LegacyAsyncImporter}s and {@link LegacyAsyncFunction}s aren't passed to
* [[renderSync]]. * {@link renderSync}.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[Options]] with [[compile]], [[compileString]], [[compileAsync]], * renderSync} APIs. Use {@link Options} with {@link compile}, {@link
* and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export interface LegacySharedOptions<sync extends 'sync' | 'async'> { export interface LegacySharedOptions<sync extends 'sync' | 'async'> {
/** /**
@ -67,8 +67,8 @@ export interface LegacySharedOptions<sync extends 'sync' | 'async'> {
indentType?: 'space' | 'tab'; indentType?: 'space' | 'tab';
/** /**
* How many spaces or tabs (depending on [[indentType]]) should be used per * How many spaces or tabs (depending on {@link indentType}) should be used
* indentation level in the generated CSS. It must be between 0 and 10 * per indentation level in the generated CSS. It must be between 0 and 10
* (inclusive). * (inclusive).
* *
* @defaultValue `2` * @defaultValue `2`
@ -206,19 +206,19 @@ export interface LegacySharedOptions<sync extends 'sync' | 'async'> {
/** /**
* Whether or not Sass should generate a source map. If it does, the source * Whether or not Sass should generate a source map. If it does, the source
* map will be available as [[LegacyResult.map]] (unless [[sourceMapEmbed]] is * map will be available as {@link LegacyResult.map} (unless {@link
* `true`). * sourceMapEmbed} is `true`).
* *
* If this option is a string, its the path that the source map is expected * If this option is a string, its the path that the source map is expected
* to be written to, which is used to link to the source map from the * to be written to, which is used to link to the source map from the
* generated CSS and to link *from* the source map to the Sass source files. * generated CSS and to link *from* the source map to the Sass source files.
* Note that if `sourceMap` is a string and [[outFile]] isnt passed, Sass * Note that if `sourceMap` is a string and {@link outFile} isnt passed, Sass
* assumes that the CSS will be written to the same directory as the file * assumes that the CSS will be written to the same directory as the file
* option if its passed. * option if its passed.
* *
* If this option is `true`, the path is assumed to be [[outFile]] with `.map` * If this option is `true`, the path is assumed to be {@link outFile} with
* added to the end. If its `true` and [[outFile]] isnt passed, it has no * `.map` added to the end. If its `true` and {@link outFile} isnt passed,
* effect. * it has no effect.
* *
* @example * @example
* *
@ -302,12 +302,12 @@ export interface LegacySharedOptions<sync extends 'sync' | 'async'> {
* Additional handler(s) for loading files when a [`@use` * Additional handler(s) for loading files when a [`@use`
* rule](https://sass-lang.com/documentation/at-rules/use) or an [`@import` * rule](https://sass-lang.com/documentation/at-rules/use) or an [`@import`
* rule](https://sass-lang.com/documentation/at-rules/import) is encountered. * rule](https://sass-lang.com/documentation/at-rules/import) is encountered.
* It can either be a single [[LegacyImporter]] function, or an array of * It can either be a single {@link LegacyImporter} function, or an array of
* [[LegacyImporter]]s. * {@link LegacyImporter}s.
* *
* Importers take the URL of the `@import` or `@use` rule and return a * Importers take the URL of the `@import` or `@use` rule and return a {@link
* [[LegacyImporterResult]] indicating how to handle that rule. For more * LegacyImporterResult} indicating how to handle that rule. For more details,
* details, see [[LegacySyncImporter]] and [[LegacyAsyncImporter]]. * see {@link LegacySyncImporter} and {@link LegacyAsyncImporter}.
* *
* Loads are resolved by trying, in order: * Loads are resolved by trying, in order:
* *
@ -318,7 +318,7 @@ export interface LegacySharedOptions<sync extends 'sync' | 'async'> {
* *
* * Loading a file relative to the current working directory. * * Loading a file relative to the current working directory.
* *
* * Each load path in [[includePaths]]. * * Each load path in {@link includePaths}.
* *
* * Each load path specified in the `SASS_PATH` environment variable, which * * Each load path specified in the `SASS_PATH` environment variable, which
* should be semicolon-separated on Windows and colon-separated elsewhere. * should be semicolon-separated on Windows and colon-separated elsewhere.
@ -371,7 +371,7 @@ export interface LegacySharedOptions<sync extends 'sync' | 'async'> {
* @compatibility feature: "Import order", dart: "1.20.2", node: false * @compatibility feature: "Import order", dart: "1.20.2", node: false
* *
* Versions of Dart Sass before 1.20.2 preferred resolving imports using * Versions of Dart Sass before 1.20.2 preferred resolving imports using
* [[includePaths]] before resolving them using custom importers. * {@link includePaths} before resolving them using custom importers.
* *
* All versions of Node Sass currently pass imports to importers before * All versions of Node Sass currently pass imports to importers before
* loading them relative to the file in which the `@import` appears. This * loading them relative to the file in which the `@import` appears. This
@ -387,8 +387,8 @@ export interface LegacySharedOptions<sync extends 'sync' | 'async'> {
/** /**
* Additional built-in Sass functions that are available in all stylesheets. * Additional built-in Sass functions that are available in all stylesheets.
* This option takes an object whose keys are Sass function signatures and * This option takes an object whose keys are Sass function signatures and
* whose values are [[LegacyFunction]]s. Each function should take the same * whose values are {@link LegacyFunction}s. Each function should take the
* arguments as its signature. * same arguments as its signature.
* *
* Functions are passed JavaScript representations of [Sass value * Functions are passed JavaScript representations of [Sass value
* types](https://sass-lang.com/documentation/js-api#value-types), and must * types](https://sass-lang.com/documentation/js-api#value-types), and must
@ -464,18 +464,18 @@ export interface LegacySharedOptions<sync extends 'sync' | 'async'> {
/** /**
* If this option is set to `true`, Sass wont print warnings that are caused * If this option is set to `true`, Sass wont print warnings that are caused
* by dependencies. A dependency is defined as any file thats loaded * by dependencies. A dependency is defined as any file thats loaded
* through [[loadPaths]] or [[importer]]. Stylesheets that are imported * through {@link includePaths} or {@link importer}. Stylesheets that are
* relative to the entrypoint are not considered dependencies. * imported relative to the entrypoint are not considered dependencies.
* *
* This is useful for silencing deprecation warnings that you cant fix on * This is useful for silencing deprecation warnings that you cant fix on
* your own. However, please <em>also</em> notify your dependencies of the deprecations * your own. However, please <em>also</em> notify your dependencies of the deprecations
* so that they can get fixed as soon as possible! * so that they can get fixed as soon as possible!
* *
* **Heads up!** If [[render]] or [[renderSync]] is called without * **Heads up!** If {@link render} or {@link renderSync} is called without
* [[LegacyFileOptions.file]] or [[LegacyStringOptions.file]], <em>all</em> * {@link LegacyFileOptions.file} or {@link LegacyStringOptions.file},
* stylesheets it loads will be considered dependencies. Since it doesnt have * <em>all</em> stylesheets it loads will be considered dependencies. Since it
* a path of its own, everything it loads is coming from a load path rather * doesnt have a path of its own, everything it loads is coming from a load
* than a relative import. * path rather than a relative import.
* *
* @defaultValue `false` * @defaultValue `false`
* @category Messages * @category Messages
@ -499,10 +499,10 @@ export interface LegacySharedOptions<sync extends 'sync' | 'async'> {
* An object to use to handle warnings and/or debug messages from Sass. * An object to use to handle warnings and/or debug messages from Sass.
* *
* By default, Sass emits warnings and debug messages to standard error, but * By default, Sass emits warnings and debug messages to standard error, but
* if [[Logger.warn]] or [[Logger.debug]] is set, this will invoke them * if {@link Logger.warn} or {@link Logger.debug} is set, this will invoke
* instead. * them instead.
* *
* The special value [[Logger.silent]] can be used to easily silence all * The special value {@link Logger.silent} can be used to easily silence all
* messages. * messages.
* *
* @category Messages * @category Messages
@ -512,12 +512,12 @@ export interface LegacySharedOptions<sync extends 'sync' | 'async'> {
} }
/** /**
* If [[file]] is passed without [[data]], Sass will load the stylesheet at * If {@link file} is passed without {@link data}, Sass will load the stylesheet
* [[file]] and compile it to CSS. * at {@link file} and compile it to CSS.
* *
* @typeParam sync - This lets the TypeScript checker verify that * @typeParam sync - This lets the TypeScript checker verify that {@link
* [[LegacyAsyncImporter]]s and [[LegacyAsyncFunction]]s aren't passed to * LegacyAsyncImporter}s and {@link LegacyAsyncFunction}s aren't passed to
* [[renderSync]]. * {@link renderSync}.
*/ */
export interface LegacyFileOptions<sync extends 'sync' | 'async'> export interface LegacyFileOptions<sync extends 'sync' | 'async'>
extends LegacySharedOptions<sync> { extends LegacySharedOptions<sync> {
@ -548,8 +548,8 @@ export interface LegacyFileOptions<sync extends 'sync' | 'async'>
file: string; file: string;
/** /**
* See [[LegacyStringOptions.file]] for documentation of passing [[file]] along * See {@link LegacyStringOptions.file} for documentation of passing {@link
* with [[data]]. * file} along with {@link data}.
* *
* @category Input * @category Input
*/ */
@ -557,26 +557,26 @@ export interface LegacyFileOptions<sync extends 'sync' | 'async'>
} }
/** /**
* If [[data]] is passed, Sass will use it as the contents of the stylesheet to * If {@link data} is passed, Sass will use it as the contents of the stylesheet
* compile. * to compile.
* *
* @typeParam sync - This lets the TypeScript checker verify that * @typeParam sync - This lets the TypeScript checker verify that {@link
* [[LegacyAsyncImporter]]s and [[LegacyAsyncFunction]]s aren't passed to * LegacyAsyncImporter}s and {@link LegacyAsyncFunction}s aren't passed to
* [[renderSync]]. * {@link renderSync}.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[StringOptions]] with [[compile]], [[compileString]], * renderSync} APIs. Use {@link StringOptions} with {@link compile}, {@link
* [[compileAsync]], and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export interface LegacyStringOptions<sync extends 'sync' | 'async'> export interface LegacyStringOptions<sync extends 'sync' | 'async'>
extends LegacySharedOptions<sync> { extends LegacySharedOptions<sync> {
/** /**
* The contents of the stylesheet to compile. Unless [[file]] is passed as * The contents of the stylesheet to compile. Unless {@link file} is passed as
* well, the stylesheets URL is set to `"stdin"`. * well, the stylesheets URL is set to `"stdin"`.
* *
* By default, this stylesheet is parsed as SCSS. This can be controlled using * By default, this stylesheet is parsed as SCSS. This can be controlled using
* [[indentedSyntax]]. * {@link indentedSyntax}.
* *
* @example * @example
* *
@ -594,17 +594,17 @@ export interface LegacyStringOptions<sync extends 'sync' | 'async'>
data: string; data: string;
/** /**
* If `file` and [[data]] are both passed, `file` is used as the path of the * If `file` and {@link data} are both passed, `file` is used as the path of
* stylesheet for error reporting, but [[data]] is used as the contents of the * the stylesheet for error reporting, but {@link data} is used as the
* stylesheet. In this case, `file`s extension is not used to determine the * contents of the stylesheet. In this case, `file`s extension is not used to
* syntax of the stylesheet. * determine the syntax of the stylesheet.
* *
* @category Input * @category Input
*/ */
file?: string; file?: string;
/** /**
* This flag controls whether [[data]] is parsed as the indented syntax or * This flag controls whether {@link data} is parsed as the indented syntax or
* not. * not.
* *
* @example * @example
@ -625,17 +625,17 @@ export interface LegacyStringOptions<sync extends 'sync' | 'async'>
} }
/** /**
* Options for [[render]] and [[renderSync]]. This can either be * Options for {@link render} and {@link renderSync}. This can either be {@link
* [[LegacyFileOptions]] to load a file from disk, or [[LegacyStringOptions]] to * LegacyFileOptions} to load a file from disk, or {@link LegacyStringOptions}
* compile a string of Sass code. * to compile a string of Sass code.
* *
* See [[LegacySharedOptions]] for options that are shared across both file and * See {@link LegacySharedOptions} for options that are shared across both file
* string inputs. * and string inputs.
* *
* @category Legacy * @category Legacy
* @deprecated This only works with the legacy [[render]] and [[renderSync]] * @deprecated This only works with the legacy {@link render} and {@link
* APIs. Use [[Options]] with [[compile]], [[compileString]], [[compileAsync]], * renderSync} APIs. Use {@link Options} with {@link compile}, {@link
* and [[compileStringAsync]] instead. * compileString}, {@link compileAsync}, and {@link compileStringAsync} instead.
*/ */
export type LegacyOptions<sync extends 'sync' | 'async'> = export type LegacyOptions<sync extends 'sync' | 'async'> =
| LegacyFileOptions<sync> | LegacyFileOptions<sync>

View File

@ -1,32 +1,32 @@
/** /**
* The value of `this` in the context of a [[LegacyImporter]] or * The value of `this` in the context of a {@link LegacyImporter} or {@link
* [[LegacyFunction]] callback. * LegacyFunction} callback.
* *
* @category Legacy * @category Legacy
* @deprecated This is only used by the legacy [[render]] and [[renderSync]] * @deprecated This is only used by the legacy {@link render} and {@link
* APIs. Use [[compile]], [[compileString]], [[compileAsync]], and * renderSync} APIs. Use {@link compile}, {@link compileString}, {@link
* [[compileStringAsync]] instead. * compileAsync}, and {@link compileStringAsync} instead.
*/ */
export interface LegacyPluginThis { export interface LegacyPluginThis {
/** /**
* A partial representation of the options passed to [[render]] or * A partial representation of the options passed to {@link render} or {@link
* [[renderSync]]. * renderSync}.
*/ */
options: { options: {
/** The same [[LegacyPluginThis]] instance that contains this object. */ /** The same {@link LegacyPluginThis} instance that contains this object. */
context: LegacyPluginThis; context: LegacyPluginThis;
/** /**
* The value passed to [[LegacyFileOptions.file]] or * The value passed to {@link LegacyFileOptions.file} or {@link
* [[LegacyStringOptions.file]]. * LegacyStringOptions.file}.
*/ */
file?: string; file?: string;
/** The value passed to [[LegacyStringOptions.data]]. */ /** The value passed to {@link LegacyStringOptions.data}. */
data?: string; data?: string;
/** /**
* The value passed to [[LegacySharedOptions.includePaths]] separated by * The value passed to {@link LegacySharedOptions.includePaths} separated by
* `";"` on Windows or `":"` on other operating systems. This always * `";"` on Windows or `":"` on other operating systems. This always
* includes the current working directory as the first entry. * includes the current working directory as the first entry.
*/ */
@ -38,21 +38,22 @@ export interface LegacyPluginThis {
/** Always the number 1. */ /** Always the number 1. */
style: 1; style: 1;
/** 1 if [[LegacySharedOptions.indentType]] was `"tab"`, 0 otherwise. */ /** 1 if {@link LegacySharedOptions.indentType} was `"tab"`, 0 otherwise. */
indentType: 1 | 0; indentType: 1 | 0;
/** /**
* The value passed to [[LegacySharedOptions.indentWidth]], or `2` otherwise. * The value passed to {@link LegacySharedOptions.indentWidth}, or `2`
* otherwise.
*/ */
indentWidth: number; indentWidth: number;
/** /**
* The value passed to [[LegacySharedOptions.linefeed]], or `"\n"` * The value passed to {@link LegacySharedOptions.linefeed}, or `"\n"`
* otherwise. * otherwise.
*/ */
linefeed: '\r' | '\r\n' | '\n' | '\n\r'; linefeed: '\r' | '\r\n' | '\n' | '\n\r';
/** A partially-constructed [[LegacyResult]] object. */ /** A partially-constructed {@link LegacyResult} object. */
result: { result: {
/** Partial information about the compilation in progress. */ /** Partial information about the compilation in progress. */
stats: { stats: {
@ -63,7 +64,7 @@ export interface LegacyPluginThis {
start: number; start: number;
/** /**
* [[LegacyFileOptions.file]] if it was passed, otherwise the string * {@link LegacyFileOptions.file} if it was passed, otherwise the string
* `"data"`. * `"data"`.
*/ */
entry: string; entry: string;

View File

@ -2,13 +2,13 @@ import {LegacyException} from './exception';
import {LegacyOptions} from './options'; import {LegacyOptions} from './options';
/** /**
* The object returned by [[render]] and [[renderSync]] after a successful * The object returned by {@link render} and {@link renderSync} after a
* compilation. * successful compilation.
* *
* @category Legacy * @category Legacy
* @deprecated This is only used by the legacy [[render]] and [[renderSync]] * @deprecated This is only used by the legacy {@link render} and {@link
* APIs. Use [[compile]], [[compileString]], [[compileAsync]], and * renderSync} APIs. Use {@link compile}, {@link compileString}, {@link
* [[compileStringAsync]] instead. * compileAsync}, and {@link compileStringAsync} instead.
*/ */
export interface LegacyResult { export interface LegacyResult {
/** /**
@ -32,14 +32,14 @@ export interface LegacyResult {
* *
* This is `undefined` unless either * This is `undefined` unless either
* *
* * [[LegacySharedOptions.sourceMap]] is a string; or * * {@link LegacySharedOptions.sourceMap} is a string; or
* * [[LegacySharedOptions.sourceMap]] is `true` and * * {@link LegacySharedOptions.sourceMap} is `true` and
* [[LegacySharedOptions.outFile]] is set. * {@link LegacySharedOptions.outFile} is set.
* *
* The source map uses absolute [`file:` * The source map uses absolute [`file:`
* URLs](https://en.wikipedia.org/wiki/File_URI_scheme) to link to the Sass * URLs](https://en.wikipedia.org/wiki/File_URI_scheme) to link to the Sass
* source files, except if the source file comes from * source files, except if the source file comes from {@link
* [[LegacyStringOptions.data]] in which case it lists its URL as `"stdin"`. * LegacyStringOptions.data} in which case it lists its URL as `"stdin"`.
* *
* @example * @example
* *
@ -58,9 +58,9 @@ export interface LegacyResult {
/** Additional information about the compilation. */ /** Additional information about the compilation. */
stats: { stats: {
/** /**
* The absolute path of [[LegacyFileOptions.file]] or * The absolute path of {@link LegacyFileOptions.file} or {@link
* [[LegacyStringOptions.file]], or `"data"` if [[LegacyStringOptions.file]] * LegacyStringOptions.file}, or `"data"` if {@link
* wasn't set. * LegacyStringOptions.file} wasn't set.
*/ */
entry: string; entry: string;
@ -84,8 +84,8 @@ export interface LegacyResult {
/** /**
* An array of the absolute paths of all Sass files loaded during * An array of the absolute paths of all Sass files loaded during
* compilation. If a stylesheet was loaded from a [[LegacyImporter]] that * compilation. If a stylesheet was loaded from a {@link LegacyImporter}
* returned the stylesheets contents, the raw string of the `@use` or * that returned the stylesheets contents, the raw string of the `@use` or
* `@import` that loaded that stylesheet included in this array. * `@import` that loaded that stylesheet included in this array.
*/ */
includedFiles: string[]; includedFiles: string[];
@ -106,18 +106,18 @@ export interface LegacyResult {
* ``` * ```
* *
* @category Legacy * @category Legacy
* @deprecated Use [[compile]] or [[compileString]] instead. * @deprecated Use {@link compile} or {@link compileString} instead.
*/ */
export function renderSync(options: LegacyOptions<'sync'>): LegacyResult; export function renderSync(options: LegacyOptions<'sync'>): LegacyResult;
/** /**
* This function asynchronously compiles a Sass file to CSS, and calls * This function asynchronously compiles a Sass file to CSS, and calls
* `callback` with a [[LegacyResult]] if compilation succeeds or * `callback` with a {@link LegacyResult} if compilation succeeds or {@link
* [[LegacyException]] if it fails. * LegacyException} if it fails.
* *
* **Heads up!** When using Dart Sass, **[[renderSync]] is almost twice as fast * **Heads up!** When using Dart Sass, **{@link renderSync} is almost twice as
* as [[render]]** by default, due to the overhead of making the entire * fast as {@link render}** by default, due to the overhead of making the entire
* evaluation process asynchronous. * evaluation process asynchronous.
* *
* ```js * ```js
@ -131,7 +131,7 @@ export function renderSync(options: LegacyOptions<'sync'>): LegacyResult;
* ``` * ```
* *
* @category Legacy * @category Legacy
* @deprecated Use [[compileAsync]] or [[compileStringAsync]] instead. * @deprecated Use {@link compileAsync} or {@link compileStringAsync} instead.
*/ */
export function render( export function render(
options: LegacyOptions<'async'>, options: LegacyOptions<'async'>,

View File

@ -4,8 +4,8 @@ export {SourceLocation} from './source_location';
export {SourceSpan} from './source_span'; export {SourceSpan} from './source_span';
/** /**
* An object that can be passed to [[LegacySharedOptions.logger]] to control how * An object that can be passed to {@link LegacySharedOptions.logger} to control
* Sass emits warnings and debug messages. * how Sass emits warnings and debug messages.
* *
* @example * @example
* *
@ -70,14 +70,14 @@ export interface Logger {
} }
/** /**
* A namespace for built-in [[Logger]]s. * A namespace for built-in {@link Logger}s.
* *
* @category Logger * @category Logger
* @compatibility dart: "1.43.0", node: false * @compatibility dart: "1.43.0", node: false
*/ */
export namespace Logger { export namespace Logger {
/** /**
* A [[Logger]] that silently ignores all warnings and debug messages. * A {@link Logger} that silently ignores all warnings and debug messages.
* *
* @example * @example
* *

View File

@ -1,8 +1,8 @@
/** /**
* A specific location within a source file. * A specific location within a source file.
* *
* This is always associated with a [[SourceSpan]] which indicates *which* file * This is always associated with a {@link SourceSpan} which indicates *which*
* it refers to. * file it refers to.
* *
* @category Logger * @category Logger
*/ */

View File

@ -12,9 +12,9 @@ export interface SourceSpan {
/** /**
* The end of this span, exclusive. * The end of this span, exclusive.
* *
* If [[start]] and [[end]] refer to the same location, the span has zero * If {@link start} and {@link end} refer to the same location, the span has
* length and refers to the point immediately after [[start]] and before the * zero length and refers to the point immediately after {@link start} and
* next character. * before the next character.
*/ */
end: SourceLocation; end: SourceLocation;

View File

@ -32,7 +32,7 @@ export type OutputStyle = 'expanded' | 'compressed';
/** /**
* A callback that implements a custom Sass function. This can be passed to * A callback that implements a custom Sass function. This can be passed to
* [[Options.functions]]. * {@link Options.functions}.
* *
* ```js * ```js
* const result = sass.compile('style.scss', { * const result = sass.compile('style.scss', {
@ -49,21 +49,21 @@ export type OutputStyle = 'expanded' | 'compressed';
* ``` * ```
* *
* @typeParam sync - A `CustomFunction<'sync'>` must return synchronously, but * @typeParam sync - A `CustomFunction<'sync'>` must return synchronously, but
* in return it can be passed to [[compile]] and [[compileString]] in addition * in return it can be passed to {@link compile} and {@link compileString} in
* to [[compileAsync]] and [[compileStringAsync]]. * addition to {@link compileAsync} and {@link compileStringAsync}.
* *
* A `CustomFunction<'async'>` may either return synchronously or * A `CustomFunction<'async'>` may either return synchronously or
* asynchronously, but it can only be used with [[compileAsync]] and * asynchronously, but it can only be used with {@link compileAsync} and {@link
* [[compileStringAsync]]. * compileStringAsync}.
* *
* @param args - An array of arguments passed by the function's caller. If the * @param args - An array of arguments passed by the function's caller. If the
* function takes [arbitrary * function takes [arbitrary
* arguments](https://sass-lang.com/documentation/at-rules/function#taking-arbitrary-arguments), * arguments](https://sass-lang.com/documentation/at-rules/function#taking-arbitrary-arguments),
* the last element will be a [[SassArgumentList]]. * the last element will be a {@link SassArgumentList}.
* *
* @returns The function's result. This may be in the form of a `Promise`, but * @returns The function's result. This may be in the form of a `Promise`, but
* if it is the function may only be passed to [[compileAsync]] and * if it is the function may only be passed to {@link compileAsync} and {@link
* [[compileStringAsync]], not [[compile]] or [[compileString]]. * compileStringAsync}, not {@link compile} or {@link compileString}.
* *
* @throws any - This function may throw an error, which the Sass compiler will * @throws any - This function may throw an error, which the Sass compiler will
* treat as the function call failing. If the exception object has a `message` * treat as the function call failing. If the exception object has a `message`
@ -78,12 +78,12 @@ export type CustomFunction<sync extends 'sync' | 'async'> = (
) => PromiseOr<Value, sync>; ) => PromiseOr<Value, sync>;
/** /**
* Options that can be passed to [[compile]], [[compileAsync]], * Options that can be passed to {@link compile}, {@link compileAsync}, {@link
* [[compileString]], or [[compileStringAsync]]. * compileString}, or {@link compileStringAsync}.
* *
* @typeParam sync - This lets the TypeScript checker verify that asynchronous * @typeParam sync - This lets the TypeScript checker verify that asynchronous
* [[Importer]]s, [[FileImporter]]s, and [[CustomFunction]]s aren't passed to * {@link Importer}s, {@link FileImporter}s, and {@link CustomFunction}s aren't
* [[compile]] or [[compileString]]. * passed to {@link compile} or {@link compileString}.
* *
* @category Options * @category Options
*/ */
@ -127,7 +127,7 @@ export interface Options<sync extends 'sync' | 'async'> {
* This option takes an object whose keys are Sass function signatures like * This option takes an object whose keys are Sass function signatures like
* you'd write for the [`@function * you'd write for the [`@function
* rule`](https://sass-lang.com/documentation/at-rules/function) and whose * rule`](https://sass-lang.com/documentation/at-rules/function) and whose
* values are [[CustomFunction]]s. * values are {@link CustomFunction}s.
* *
* Functions are passed JavaScript representations of [Sass value * Functions are passed JavaScript representations of [Sass value
* types](https://sass-lang.com/documentation/js-api#value-types), and must * types](https://sass-lang.com/documentation/js-api#value-types), and must
@ -137,18 +137,18 @@ export interface Options<sync extends 'sync' | 'async'> {
* and as close to the standards set by Sass's core functions as possible. Some * and as close to the standards set by Sass's core functions as possible. Some
* good guidelines to follow include: * good guidelines to follow include:
* *
* * Use `Value.assert*` methods, like [[Value.assertString]], to cast untyped * * Use `Value.assert*` methods, like {@link Value.assertString}, to cast
* `Value` objects to more specific types. For values that were passed * untyped `Value` objects to more specific types. For values that were
* directly as arguments, pass in the argument name as well. This ensures * passed directly as arguments, pass in the argument name as well. This
* that the user gets good error messages when they pass in the wrong type * ensures that the user gets good error messages when they pass in the
* to your function. * wrong type to your function.
* *
* * Individual classes may have more specific `assert*` methods, like * * Individual classes may have more specific `assert*` methods, like {@link
* [[SassNumber.assertInt]], which should be used when possible. * SassNumber.assertInt}, which should be used when possible.
* *
* * In Sass, every value counts as a list. Rather than trying to detect the * * In Sass, every value counts as a list. Rather than trying to detect the
* [[SassList]] type, you should use [[Value.asList]] to treat all values as * {@link SassList} type, you should use {@link Value.asList} to treat all
* lists. * values as lists.
* *
* * When manipulating values like lists, strings, and numbers that have * * When manipulating values like lists, strings, and numbers that have
* metadata (comma versus space separated, bracketed versus unbracketed, * metadata (comma versus space separated, bracketed versus unbracketed,
@ -160,9 +160,8 @@ export interface Options<sync extends 'sync' | 'async'> {
* *
* * In Sass, lists and strings use one-based indexing and use negative * * In Sass, lists and strings use one-based indexing and use negative
* indices to index from the end of value. Functions should follow these * indices to index from the end of value. Functions should follow these
* conventions. [[Value.sassIndexToListIndex]] and * conventions. {@link Value.sassIndexToListIndex} and {@link
* [[SassString.sassIndexToStringIndex]] can be used to do this * SassString.sassIndexToStringIndex} can be used to do this automatically.
* automatically.
* *
* * String indexes in Sass refer to Unicode code points while JavaScript * * String indexes in Sass refer to Unicode code points while JavaScript
* string indices refer to UTF-16 code units. For example, the character * string indices refer to UTF-16 code units. For example, the character
@ -170,9 +169,9 @@ export interface Options<sync extends 'sync' | 'async'> {
* is represented in UTF-16 as two code units (`0xD83D` and `0xDE0A`). So in * is represented in UTF-16 as two code units (`0xD83D` and `0xDE0A`). So in
* JavaScript, `"a😊b".charCodeAt(1)` returns `0xD83D`, whereas in Sass * JavaScript, `"a😊b".charCodeAt(1)` returns `0xD83D`, whereas in Sass
* `str-slice("a😊b", 1, 1)` returns `"😊"`. Functions should follow Sass's * `str-slice("a😊b", 1, 1)` returns `"😊"`. Functions should follow Sass's
* convention. [[SassString.sassIndexToStringIndex]] can be used to do this * convention. {@link SassString.sassIndexToStringIndex} can be used to do
* automatically, and the [[SassString.sassLength]] getter can be used to * this automatically, and the {@link SassString.sassLength} getter can be
* access a string's length in code points. * used to access a string's length in code points.
* *
* @example * @example
* *
@ -209,9 +208,10 @@ export interface Options<sync extends 'sync' | 'async'> {
* - The importer that was used to load the current stylesheet, with the * - The importer that was used to load the current stylesheet, with the
* loaded URL resolved relative to the current stylesheet's canonical URL. * loaded URL resolved relative to the current stylesheet's canonical URL.
* *
* - Each [[Importer]] or [[FileImporter]] in [[importers]], in order. * - Each {@link Importer} or {@link FileImporter} in {@link importers}, in
* order.
* *
* - Each load path in [[loadPaths]], in order. * - Each load path in {@link loadPaths}, in order.
* *
* If none of these return a Sass file, the load fails and Sass throws an * If none of these return a Sass file, the load fails and Sass throws an
* error. * error.
@ -225,7 +225,7 @@ export interface Options<sync extends 'sync' | 'async'> {
* [`@use`](https://sass-lang.com/documentation/at-rules/use) and * [`@use`](https://sass-lang.com/documentation/at-rules/use) and
* [`@import`](https://sass-lang.com/documentation/at-rules/import). * [`@import`](https://sass-lang.com/documentation/at-rules/import).
* *
* A load path `loadPath` is equivalent to the following [[FileImporter]]: * A load path `loadPath` is equivalent to the following {@link FileImporter}:
* *
* ```js * ```js
* { * {
@ -245,10 +245,10 @@ export interface Options<sync extends 'sync' | 'async'> {
* An object to use to handle warnings and/or debug messages from Sass. * An object to use to handle warnings and/or debug messages from Sass.
* *
* By default, Sass emits warnings and debug messages to standard error, but * By default, Sass emits warnings and debug messages to standard error, but
* if [[Logger.warn]] or [[Logger.debug]] is set, this will invoke them * if {@link Logger.warn} or {@link Logger.debug} is set, this will invoke
* instead. * them instead.
* *
* The special value [[Logger.silent]] can be used to easily silence all * The special value {@link Logger.silent} can be used to easily silence all
* messages. * messages.
* *
* @category Messages * @category Messages
@ -258,18 +258,18 @@ export interface Options<sync extends 'sync' | 'async'> {
/** /**
* If this option is set to `true`, Sass wont print warnings that are caused * If this option is set to `true`, Sass wont print warnings that are caused
* by dependencies. A dependency is defined as any file thats loaded * by dependencies. A dependency is defined as any file thats loaded
* through [[loadPaths]] or [[importer]]. Stylesheets that are imported * through {@link loadPaths} or {@link importers}. Stylesheets that are
* relative to the entrypoint are not considered dependencies. * imported relative to the entrypoint are not considered dependencies.
* *
* This is useful for silencing deprecation warnings that you cant fix on * This is useful for silencing deprecation warnings that you cant fix on
* your own. However, please <em>also</em> notify your dependencies of the deprecations * your own. However, please <em>also</em> notify your dependencies of the deprecations
* so that they can get fixed as soon as possible! * so that they can get fixed as soon as possible!
* *
* **Heads up!** If [[compileString]] or [[compileStringAsync]] is called * **Heads up!** If {@link compileString} or {@link compileStringAsync} is
* without [[StringWithoutImporter.url]], <em>all</em> stylesheets it loads * called without {@link StringOptionsWithoutImporter.url}, <em>all</em>
* will be considered dependencies. Since it doesnt have a path of its own, * stylesheets it loads will be considered dependencies. Since it doesnt have
* everything it loads is coming from a load path rather than a relative * a path of its own, everything it loads is coming from a load path rather
* import. * than a relative import.
* *
* @defaultValue `false` * @defaultValue `false`
* @category Messages * @category Messages
@ -278,7 +278,7 @@ export interface Options<sync extends 'sync' | 'async'> {
/** /**
* Whether or not Sass should generate a source map. If it does, the source * Whether or not Sass should generate a source map. If it does, the source
* map will be available as [[CompileResult.sourceMap]]. * map will be available as {@link CompileResult.sourceMap}.
* *
* **Heads up!** Sass doesn't automatically add a `sourceMappingURL` comment * **Heads up!** Sass doesn't automatically add a `sourceMappingURL` comment
* to the generated CSS. It's up to callers to do that, since callers have * to the generated CSS. It's up to callers to do that, since callers have
@ -293,7 +293,7 @@ export interface Options<sync extends 'sync' | 'async'> {
/** /**
* Whether Sass should include the sources in the generated source map. * Whether Sass should include the sources in the generated source map.
* *
* This option has no effect if [[sourceMap]] is `false`. * This option has no effect if {@link sourceMap} is `false`.
* *
* @defaultValue `false` * @defaultValue `false`
* @category Output * @category Output
@ -301,7 +301,7 @@ export interface Options<sync extends 'sync' | 'async'> {
sourceMapIncludeSources?: boolean; sourceMapIncludeSources?: boolean;
/** /**
* The [[OutputStyle]] of the compiled CSS. * The {@link OutputStyle} of the compiled CSS.
* *
* @example * @example
* *
@ -345,22 +345,23 @@ export interface Options<sync extends 'sync' | 'async'> {
} }
/** /**
* Options that can be passed to [[compileString]] or [[compileStringAsync]]. * Options that can be passed to {@link compileString} or {@link
* compileStringAsync}.
* *
* If the [[StringOptionsWithImporter.importer]] field isn't passed, the * If the {@link StringOptionsWithImporter.importer} field isn't passed, the
* entrypoint file can load files relative to itself if a `file://` URL is * entrypoint file can load files relative to itself if a `file://` URL is
* passed to the [[url]] field. * passed to the {@link url} field.
* *
* @typeParam sync - This lets the TypeScript checker verify that asynchronous * @typeParam sync - This lets the TypeScript checker verify that asynchronous
* [[Importer]]s, [[FileImporter]]s, and [[CustomFunction]]s aren't passed to * {@link Importer}s, {@link FileImporter}s, and {@link CustomFunction}s aren't
* [[compile]] or [[compileString]]. * passed to {@link compile} or {@link compileString}.
* *
* @category Options * @category Options
*/ */
export interface StringOptionsWithoutImporter<sync extends 'sync' | 'async'> export interface StringOptionsWithoutImporter<sync extends 'sync' | 'async'>
extends Options<sync> { extends Options<sync> {
/** /**
* The [[Syntax]] to use to parse the entrypoint stylesheet. * The {@link Syntax} to use to parse the entrypoint stylesheet.
* *
* @default `'scss'` * @default `'scss'`
* *
@ -371,9 +372,10 @@ export interface StringOptionsWithoutImporter<sync extends 'sync' | 'async'>
/** /**
* The canonical URL of the entrypoint stylesheet. * The canonical URL of the entrypoint stylesheet.
* *
* A relative load's URL is first resolved relative to [[url]], then resolved * A relative load's URL is first resolved relative to {@link url}, then
* to a file on disk if it's a `file://` URL. If it can't be resolved to a * resolved to a file on disk if it's a `file://` URL. If it can't be resolved
* file on disk, it's then passed to [[importers]] and [[loadPaths]]. * to a file on disk, it's then passed to {@link importers} and {@link
* loadPaths}.
* *
* @category Input * @category Input
*/ */
@ -381,15 +383,16 @@ export interface StringOptionsWithoutImporter<sync extends 'sync' | 'async'>
} }
/** /**
* Options that can be passed to [[compileString]] or [[compileStringAsync]]. * Options that can be passed to {@link compileString} or {@link
* compileStringAsync}.
* *
* If the [[StringOptionsWithImporter.importer]] field is passed, the entrypoint * If the {@link StringOptionsWithImporter.importer} field is passed, the
* file uses it to load files relative to itself and the [[url]] field is * entrypoint file uses it to load files relative to itself and the {@link url}
* mandatory. * field is mandatory.
* *
* @typeParam sync - This lets the TypeScript checker verify that asynchronous * @typeParam sync - This lets the TypeScript checker verify that asynchronous
* [[Importer]]s, [[FileImporter]]s, and [[CustomFunction]]s aren't passed to * {@link Importer}s, {@link FileImporter}s, and {@link CustomFunction}s aren't
* [[compile]] or [[compileString]]. * passed to {@link compile} or {@link compileString}.
* *
* @category Options * @category Options
*/ */
@ -399,9 +402,9 @@ export interface StringOptionsWithImporter<sync extends 'sync' | 'async'>
* The importer to use to handle loads that are relative to the entrypoint * The importer to use to handle loads that are relative to the entrypoint
* stylesheet. * stylesheet.
* *
* A relative load's URL is first resolved relative to [[url]], then passed to * A relative load's URL is first resolved relative to {@link url}, then
* [[importer]]. If the importer doesn't recognize it, it's then passed to * passed to {@link importer}. If the importer doesn't recognize it, it's then
* [[importers]] and [[loadPaths]]. * passed to {@link importers} and {@link loadPaths}.
* *
* @category Input * @category Input
*/ */
@ -409,8 +412,8 @@ export interface StringOptionsWithImporter<sync extends 'sync' | 'async'>
/** /**
* The canonical URL of the entrypoint stylesheet. If this is passed along * The canonical URL of the entrypoint stylesheet. If this is passed along
* with [[importer]], it's used to resolve relative loads in the entrypoint * with {@link importer}, it's used to resolve relative loads in the
* stylesheet. * entrypoint stylesheet.
* *
* @category Input * @category Input
*/ */
@ -418,15 +421,16 @@ export interface StringOptionsWithImporter<sync extends 'sync' | 'async'>
} }
/** /**
* Options that can be passed to [[compileString]] or [[compileStringAsync]]. * Options that can be passed to {@link compileString} or {@link
* compileStringAsync}.
* *
* This is a [[StringOptionsWithImporter]] if it has a * This is a {@link StringOptionsWithImporter} if it has a {@link
* [[StringOptionsWithImporter.importer]] field, and a * StringOptionsWithImporter.importer} field, and a {@link
* [[StringOptionsWithoutImporter]] otherwise. * StringOptionsWithoutImporter} otherwise.
* *
* @typeParam sync - This lets the TypeScript checker verify that asynchronous * @typeParam sync - This lets the TypeScript checker verify that asynchronous
* [[Importer]]s, [[FileImporter]]s, and [[CustomFunction]]s aren't passed to * {@link Importer}s, {@link FileImporter}s, and {@link CustomFunction}s aren't
* [[compile]] or [[compileString]]. * passed to {@link compile} or {@link compileString}.
* *
* @category Options * @category Options
*/ */

View File

@ -2,10 +2,10 @@
* A utility type for choosing between synchronous and asynchronous return * A utility type for choosing between synchronous and asynchronous return
* values. * values.
* *
* This is used as the return value for plugins like [[CustomFunction]], * This is used as the return value for plugins like {@link CustomFunction},
* [[Importer]], and [[FileImporter]] so that TypeScript enforces that * {@link Importer}, and {@link FileImporter} so that TypeScript enforces that
* asynchronous plugins are only passed to [[compileAsync]] and * asynchronous plugins are only passed to {@link compileAsync} and {@link
* [[compileStringAsync]], not [[compile]] or [[compileString]]. * compileStringAsync}, not {@link compile} or {@link compileString}.
* *
* @typeParam sync - If this is `'sync'`, this can only be a `T`. If it's * @typeParam sync - If this is `'sync'`, this can only be a `T`. If it's
* `'async'`, this can be either a `T` or a `Promise<T>`. * `'async'`, this can be either a `T` or a `Promise<T>`.

View File

@ -8,8 +8,8 @@ import {SassList, ListSeparator} from './list';
* type](https://sass-lang.com/documentation/values/lists#argument-lists). * type](https://sass-lang.com/documentation/values/lists#argument-lists).
* *
* An argument list comes from a rest argument. It's distinct from a normal * An argument list comes from a rest argument. It's distinct from a normal
* [[SassList]] in that it may contain a keyword map as well as the positional * {@link SassList} in that it may contain a keyword map as well as the
* arguments. * positional arguments.
* *
* @category Custom Function * @category Custom Function
*/ */
@ -19,13 +19,13 @@ export class SassArgumentList extends SassList {
* *
* @param contents - The positional arguments that make up the primary * @param contents - The positional arguments that make up the primary
* contents of the list. This may be either a plain JavaScript array or an * contents of the list. This may be either a plain JavaScript array or an
* immutable [[List]] from the [`immutable` * immutable {@link List} from the [`immutable`
* package](https://immutable-js.com/). * package](https://immutable-js.com/).
* *
* @param keywords - The keyword arguments attached to this argument list, * @param keywords - The keyword arguments attached to this argument list,
* whose names should exclude `$`. This can be either a plain JavaScript * whose names should exclude `$`. This can be either a plain JavaScript
* object with argument names as fields, or an immutable [[OrderedMap]] from * object with argument names as fields, or an immutable {@link OrderedMap}
* the [`immutable` package](https://immutable-js.com/) * from the [`immutable` package](https://immutable-js.com/)
* *
* @param separator - The separator for this list. Defaults to `','`. * @param separator - The separator for this list. Defaults to `','`.
*/ */
@ -40,7 +40,7 @@ export class SassArgumentList extends SassList {
* *
* The argument names don't include `$`. * The argument names don't include `$`.
* *
* @returns An immutable [[OrderedMap]] from the [`immutable` * @returns An immutable {@link OrderedMap} from the [`immutable`
* package](https://immutable-js.com/). * package](https://immutable-js.com/).
*/ */
get keywords(): OrderedMap<string, Value>; get keywords(): OrderedMap<string, Value>;

View File

@ -16,7 +16,7 @@ export class SassFunction extends Value {
* @param signature - The function signature, like you'd write for the * @param signature - The function signature, like you'd write for the
* [`@function rule`](https://sass-lang.com/documentation/at-rules/function). * [`@function rule`](https://sass-lang.com/documentation/at-rules/function).
* @param callback - The callback that's invoked when this function is called, * @param callback - The callback that's invoked when this function is called,
* just like for a [[CustomFunction]]. * just like for a {@link CustomFunction}.
*/ */
constructor(signature: string, callback: (args: Value[]) => Value); constructor(signature: string, callback: (args: Value[]) => Value);
} }

View File

@ -27,8 +27,8 @@ export const sassNull: Value;
/** /**
* The abstract base class of Sass's value types. * The abstract base class of Sass's value types.
* *
* This is passed to and returned by [[CustomFunction]]s, which are passed into * This is passed to and returned by {@link CustomFunction}s, which are passed
* the Sass implementation using [[Options.functions]]. * into the Sass implementation using {@link Options.functions}.
* *
* @category Custom Function * @category Custom Function
*/ */
@ -41,7 +41,7 @@ export abstract class Value implements ValueObject {
* All SassScript values can be used as lists. Maps count as lists of pairs, * All SassScript values can be used as lists. Maps count as lists of pairs,
* and all other values count as single-value lists. * and all other values count as single-value lists.
* *
* @returns An immutable [[List]] from the [`immutable` * @returns An immutable {@link List} from the [`immutable`
* package](https://immutable-js.com/). * package](https://immutable-js.com/).
*/ */
get asList(): List<Value>; get asList(): List<Value>;
@ -61,7 +61,7 @@ export abstract class Value implements ValueObject {
get isTruthy(): boolean; get isTruthy(): boolean;
/** /**
* Returns JavaScript's `null` value if this is [[sassNull]], and returns * Returns JavaScript's `null` value if this is {@link sassNull}, and returns
* `this` otherwise. * `this` otherwise.
*/ */
get realNull(): null | Value; get realNull(): null | Value;
@ -76,7 +76,7 @@ export abstract class Value implements ValueObject {
/** /**
* Converts `sassIndex` into a JavaScript-style index into the list returned * Converts `sassIndex` into a JavaScript-style index into the list returned
* by [[asList]]. * by {@link asList}.
* *
* Sass indexes are one-based, while JavaScript indexes are zero-based. Sass * Sass indexes are one-based, while JavaScript indexes are zero-based. Sass
* indexes may also be negative in order to index from the end of the list. * indexes may also be negative in order to index from the end of the list.
@ -85,7 +85,7 @@ export abstract class Value implements ValueObject {
* @param name - The name of the function argument `sassIndex` came from * @param name - The name of the function argument `sassIndex` came from
* (without the `$`) if it came from an argument. Used for error reporting. * (without the `$`) if it came from an argument. Used for error reporting.
* @throws `Error` If `sassIndex` isn't a number, if that number isn't an * @throws `Error` If `sassIndex` isn't a number, if that number isn't an
* integer, or if that integer isn't a valid index for [[asList]]. * integer, or if that integer isn't a valid index for {@link asList}.
*/ */
sassIndexToListIndex(sassIndex: Value, name?: string): number; sassIndexToListIndex(sassIndex: Value, name?: string): number;
@ -106,9 +106,9 @@ export abstract class Value implements ValueObject {
get(index: number): Value | undefined; get(index: number): Value | undefined;
/** /**
* Throws if `this` isn't a [[SassBoolean]]. * Throws if `this` isn't a {@link SassBoolean}.
* *
* **Heads up!** Functions should generally use [[isTruthy]] rather than * **Heads up!** Functions should generally use {@link isTruthy} rather than
* requiring a literal boolean. * requiring a literal boolean.
* *
* @param name - The name of the function argument `this` came from (without * @param name - The name of the function argument `this` came from (without
@ -117,7 +117,7 @@ export abstract class Value implements ValueObject {
assertBoolean(name?: string): SassBoolean; assertBoolean(name?: string): SassBoolean;
/** /**
* Throws if `this` isn't a [[SassColor]]. * Throws if `this` isn't a {@link SassColor}.
* *
* @param name - The name of the function argument `this` came from (without * @param name - The name of the function argument `this` came from (without
* the `$`) if it came from an argument. Used for error reporting. * the `$`) if it came from an argument. Used for error reporting.
@ -125,7 +125,7 @@ export abstract class Value implements ValueObject {
assertColor(name?: string): SassColor; assertColor(name?: string): SassColor;
/** /**
* Throws if `this` isn't a [[SassFunction]]. * Throws if `this` isn't a {@link SassFunction}.
* *
* @param name - The name of the function argument `this` came from (without * @param name - The name of the function argument `this` came from (without
* the `$`) if it came from an argument. Used for error reporting. * the `$`) if it came from an argument. Used for error reporting.
@ -133,7 +133,7 @@ export abstract class Value implements ValueObject {
assertFunction(name?: string): SassFunction; assertFunction(name?: string): SassFunction;
/** /**
* Throws if `this` isn't a [[SassMap]]. * Throws if `this` isn't a {@link SassMap}.
* *
* @param name - The name of the function argument `this` came from (without * @param name - The name of the function argument `this` came from (without
* the `$`) if it came from an argument. Used for error reporting. * the `$`) if it came from an argument. Used for error reporting.
@ -141,7 +141,7 @@ export abstract class Value implements ValueObject {
assertMap(name?: string): SassMap; assertMap(name?: string): SassMap;
/** /**
* Throws if `this` isn't a [[SassNumber]]. * Throws if `this` isn't a {@link SassNumber}.
* *
* @param name - The name of the function argument `this` came from (without * @param name - The name of the function argument `this` came from (without
* the `$`) if it came from an argument. Used for error reporting. * the `$`) if it came from an argument. Used for error reporting.
@ -149,7 +149,7 @@ export abstract class Value implements ValueObject {
assertNumber(name?: string): SassNumber; assertNumber(name?: string): SassNumber;
/** /**
* Throws if `this` isn't a [[SassString]]. * Throws if `this` isn't a {@link SassString}.
* *
* @param name - The name of the function argument `this` came from (without * @param name - The name of the function argument `this` came from (without
* the `$`) if it came from an argument. Used for error reporting. * the `$`) if it came from an argument. Used for error reporting.

View File

@ -21,7 +21,7 @@ export class SassList extends Value {
* Creates a new list. * Creates a new list.
* *
* @param contents - The contents of the list. This may be either a plain * @param contents - The contents of the list. This may be either a plain
* JavaScript array or an immutable [[List]] from the [`immutable` * JavaScript array or an immutable {@link List} from the [`immutable`
* package](https://immutable-js.com/). * package](https://immutable-js.com/).
* *
* @param options.separator - The separator to use between elements of this * @param options.separator - The separator to use between elements of this

View File

@ -13,13 +13,13 @@ export class SassMap extends Value {
* Creates a new map. * Creates a new map.
* *
* @param contents - The contents of the map. This is an immutable * @param contents - The contents of the map. This is an immutable
* [[OrderedMap]] from the [`immutable` package](https://immutable-js.com/). * `OrderedMap` from the [`immutable` package](https://immutable-js.com/).
* Defaults to an empty map. * Defaults to an empty map.
*/ */
constructor(contents?: OrderedMap<Value, Value>); constructor(contents?: OrderedMap<Value, Value>);
/** /**
* Returns the contents of this map as an immutable [[OrderedMap]] from the * Returns the contents of this map as an immutable {@link OrderedMap} from the
* [`immutable` package](https://immutable-js.com/). * [`immutable` package](https://immutable-js.com/).
*/ */
get contents(): OrderedMap<Value, Value>; get contents(): OrderedMap<Value, Value>;
@ -33,7 +33,7 @@ export class SassMap extends Value {
*/ */
get(key: Value): Value | undefined; get(key: Value): Value | undefined;
/** Inherited from [[Value.get]]. */ /** Inherited from {@link Value.get}. */
get(index: number): SassList | undefined; get(index: number): SassList | undefined;
/** @hidden */ /** @hidden */

View File

@ -21,12 +21,12 @@ export class SassNumber extends Value {
* *
* @param unit.numeratorUnits - If passed, these are the numerator units to * @param unit.numeratorUnits - If passed, these are the numerator units to
* use for the number. This may be either a plain JavaScript array or an * use for the number. This may be either a plain JavaScript array or an
* immutable [[List]] from the [`immutable` * immutable {@link List} from the [`immutable`
* package](https://immutable-js.com/). * package](https://immutable-js.com/).
* *
* @param unit.denominatorUnits - If passed, these are the denominator units * @param unit.denominatorUnits - If passed, these are the denominator units
* to use for the number. This may be either a plain JavaScript array or an * to use for the number. This may be either a plain JavaScript array or an
* immutable [[List]] from the [`immutable` * immutable {@link List} from the [`immutable`
* package](https://immutable-js.com/). * package](https://immutable-js.com/).
*/ */
constructor( constructor(
@ -42,23 +42,23 @@ export class SassNumber extends Value {
/** This number's numeric value. */ /** This number's numeric value. */
get value(): number; get value(): number;
/** Whether [[value]] is an integer according to Sass's equality logic. */ /** Whether {@link value} is an integer according to Sass's equality logic. */
get isInt(): boolean; get isInt(): boolean;
/** /**
* If [[value]] is an integer according to [[isInt]], returns [[value]] * If {@link value} is an integer according to {@link isInt}, returns {@link
* rounded to that integer. If it's not an integer, returns `null`. * value} rounded to that integer. If it's not an integer, returns `null`.
*/ */
get asInt(): number | null; get asInt(): number | null;
/** /**
* This number's numerator units as an immutable [[List]] from the * This number's numerator units as an immutable {@link List} from the
* [`immutable` package](https://immutable-js.com/). * [`immutable` package](https://immutable-js.com/).
*/ */
get numeratorUnits(): List<string>; get numeratorUnits(): List<string>;
/** /**
* This number's denominator units as an immutable [[List]] from the * This number's denominator units as an immutable {@link List} from the
* [`immutable` package](https://immutable-js.com/). * [`immutable` package](https://immutable-js.com/).
*/ */
get denominatorUnits(): List<string>; get denominatorUnits(): List<string>;
@ -67,8 +67,8 @@ export class SassNumber extends Value {
get hasUnits(): boolean; get hasUnits(): boolean;
/** /**
* If [[value]] is an integer according to [[isInt]], returns it rounded to * If {@link value} is an integer according to {@link isInt}, returns it
* that integer. Otherwise, throws an error. * rounded to that integer. Otherwise, throws an error.
* *
* @param name - The name of the function argument `this` came from (without * @param name - The name of the function argument `this` came from (without
* the `$`) if it came from an argument. Used for error reporting. * the `$`) if it came from an argument. Used for error reporting.
@ -76,9 +76,9 @@ export class SassNumber extends Value {
assertInt(name?: string): number; assertInt(name?: string): number;
/** /**
* Returns [[value]] if it's within `min` and `max`. If [[value]] is equal to * Returns {@link value} if it's within `min` and `max`. If {@link value} is
* `min` or `max` according to Sass's equality, returns `min` or `max` * equal to `min` or `max` according to Sass's equality, returns `min` or
* respectively. Otherwise, throws an error. * `max` respectively. Otherwise, throws an error.
* *
* @param name - The name of the function argument `this` came from (without * @param name - The name of the function argument `this` came from (without
* the `$`) if it came from an argument. Used for error reporting. * the `$`) if it came from an argument. Used for error reporting.
@ -120,12 +120,12 @@ export class SassNumber extends Value {
* either `newNumerators` or `newDenominators` are not empty, or vice-versa. * either `newNumerators` or `newDenominators` are not empty, or vice-versa.
* *
* @param newNumerators - The numerator units to convert this number to. This * @param newNumerators - The numerator units to convert this number to. This
* may be either a plain JavaScript array or an immutable [[List]] from the * may be either a plain JavaScript array or an immutable {@link List} from
* [`immutable` package](https://immutable-js.com/). * the [`immutable` package](https://immutable-js.com/).
* *
* @param newDenominators - The denominator units to convert this number to. * @param newDenominators - The denominator units to convert this number to.
* This may be either a plain JavaScript array or an immutable [[List]] from * This may be either a plain JavaScript array or an immutable {@link List}
* the [`immutable` package](https://immutable-js.com/). * from the [`immutable` package](https://immutable-js.com/).
* *
* @param name - The name of the function argument `this` came from (without * @param name - The name of the function argument `this` came from (without
* the `$`) if it came from an argument. Used for error reporting. * the `$`) if it came from an argument. Used for error reporting.
@ -155,20 +155,20 @@ export class SassNumber extends Value {
): SassNumber; ): SassNumber;
/** /**
* Returns [[value]], converted to the units represented by `newNumerators` * Returns {@link value}, converted to the units represented by
* and `newDenominators`. * `newNumerators` and `newDenominators`.
* *
* @throws `Error` if this number's units are incompatible with * @throws `Error` if this number's units are incompatible with
* `newNumerators` and `newDenominators`; or if this number is unitless and * `newNumerators` and `newDenominators`; or if this number is unitless and
* either `newNumerators` or `newDenominators` are not empty, or vice-versa. * either `newNumerators` or `newDenominators` are not empty, or vice-versa.
* *
* @param newNumerators - The numerator units to convert [[value]] to. This * @param newNumerators - The numerator units to convert {@link value} to.
* may be either a plain JavaScript array or an immutable [[List]] from the * This may be either a plain JavaScript array or an immutable {@link List}
* [`immutable` package](https://immutable-js.com/). * from the [`immutable` package](https://immutable-js.com/).
* *
* @param newDenominators - The denominator units to convert [[value]] to. * @param newDenominators - The denominator units to convert {@link value} to.
* This may be either a plain JavaScript array or an immutable [[List]] from * This may be either a plain JavaScript array or an immutable {@link List}
* the [`immutable` package](https://immutable-js.com/). * from the [`immutable` package](https://immutable-js.com/).
* *
* @param name - The name of the function argument `this` came from (without * @param name - The name of the function argument `this` came from (without
* the `$`) if it came from an argument. Used for error reporting. * the `$`) if it came from an argument. Used for error reporting.
@ -180,7 +180,7 @@ export class SassNumber extends Value {
): number; ): number;
/** /**
* Returns [[value]], converted to the same units as `other`. * Returns {@link value}, converted to the same units as `other`.
* *
* @throws `Error` if this number's units are incompatible with `other`'s * @throws `Error` if this number's units are incompatible with `other`'s
* units, or if either number is unitless but the other is not. * units, or if either number is unitless but the other is not.
@ -201,7 +201,7 @@ export class SassNumber extends Value {
* Returns a copy of this number, converted to the units represented by * Returns a copy of this number, converted to the units represented by
* `newNumerators` and `newDenominators`. * `newNumerators` and `newDenominators`.
* *
* Unlike [[convert]] this does *not* throw an error if this number is * Unlike {@link convert} this does *not* throw an error if this number is
* unitless and either `newNumerators` or `newDenominators` are not empty, or * unitless and either `newNumerators` or `newDenominators` are not empty, or
* vice-versa. Instead, it treats all unitless numbers as convertible to and * vice-versa. Instead, it treats all unitless numbers as convertible to and
* from all units without changing the value. * from all units without changing the value.
@ -210,12 +210,12 @@ export class SassNumber extends Value {
* `newNumerators` and `newDenominators`. * `newNumerators` and `newDenominators`.
* *
* @param newNumerators - The numerator units to convert this number to. This * @param newNumerators - The numerator units to convert this number to. This
* may be either a plain JavaScript array or an immutable [[List]] from the * may be either a plain JavaScript array or an immutable {@link List} from
* [`immutable` package](https://immutable-js.com/). * the [`immutable` package](https://immutable-js.com/).
* *
* @param newDenominators - The denominator units to convert this number to. * @param newDenominators - The denominator units to convert this number to.
* This may be either a plain JavaScript array or an immutable [[List]] from * This may be either a plain JavaScript array or an immutable {@link List}
* the [`immutable` package](https://immutable-js.com/). * from the [`immutable` package](https://immutable-js.com/).
* *
* @param name - The name of the function argument `this` came from (without * @param name - The name of the function argument `this` came from (without
* the `$`) if it came from an argument. Used for error reporting. * the `$`) if it came from an argument. Used for error reporting.
@ -230,10 +230,10 @@ export class SassNumber extends Value {
* Returns a copy of this number, converted to the units represented by * Returns a copy of this number, converted to the units represented by
* `newNumerators` and `newDenominators`. * `newNumerators` and `newDenominators`.
* *
* Unlike [[convertToMatch]] this does *not* throw an error if this number is * Unlike {@link convertToMatch} this does *not* throw an error if this number
* unitless and either `newNumerators` or `newDenominators` are not empty, or * is unitless and either `newNumerators` or `newDenominators` are not empty,
* vice-versa. Instead, it treats all unitless numbers as convertible to and * or vice-versa. Instead, it treats all unitless numbers as convertible to
* from all units without changing the value. * and from all units without changing the value.
* *
* @throws `Error` if this number's units are incompatible with `other`'s * @throws `Error` if this number's units are incompatible with `other`'s
* units. * units.
@ -251,24 +251,24 @@ export class SassNumber extends Value {
): SassNumber; ): SassNumber;
/** /**
* Returns [[value]], converted to the units represented by `newNumerators` and * Returns {@link value}, converted to the units represented by
* `newDenominators`. * `newNumerators` and `newDenominators`.
* *
* Unlike [[convertValue]] this does *not* throw an error if this number is * Unlike {@link convertValue} this does *not* throw an error if this number
* unitless and either `newNumerators` or `newDenominators` are not empty, or * is unitless and either `newNumerators` or `newDenominators` are not empty,
* vice-versa. Instead, it treats all unitless numbers as convertible to and * or vice-versa. Instead, it treats all unitless numbers as convertible to
* from all units without changing the value. * and from all units without changing the value.
* *
* @throws `Error` if this number's units are incompatible with * @throws `Error` if this number's units are incompatible with
* `newNumerators` and `newDenominators`. * `newNumerators` and `newDenominators`.
* *
* @param newNumerators - The numerator units to convert [[value]] to. This * @param newNumerators - The numerator units to convert {@link value} to.
* may be either a plain JavaScript array or an immutable [[List]] from the * This may be either a plain JavaScript array or an immutable {@link List}
* [`immutable` package](https://immutable-js.com/). * from the [`immutable` package](https://immutable-js.com/).
* *
* @param newDenominators - The denominator units to convert [[value]] to. * @param newDenominators - The denominator units to convert {@link value} to.
* This may be either a plain JavaScript array or an immutable [[List]] from * This may be either a plain JavaScript array or an immutable {@link List}
* the [`immutable` package](https://immutable-js.com/). * from the [`immutable` package](https://immutable-js.com/).
* *
* @param name - The name of the function argument `this` came from (without * @param name - The name of the function argument `this` came from (without
* the `$`) if it came from an argument. Used for error reporting. * the `$`) if it came from an argument. Used for error reporting.
@ -280,10 +280,10 @@ export class SassNumber extends Value {
): number; ): number;
/** /**
* Returns [[value]], converted to the units represented by `newNumerators` * Returns {@link value}, converted to the units represented by
* and `newDenominators`. * `newNumerators` and `newDenominators`.
* *
* Unlike [[convertValueToMatch]] this does *not* throw an error if this * Unlike {@link convertValueToMatch} this does *not* throw an error if this
* number is unitless and either `newNumerators` or `newDenominators` are not * number is unitless and either `newNumerators` or `newDenominators` are not
* empty, or vice-versa. Instead, it treats all unitless numbers as * empty, or vice-versa. Instead, it treats all unitless numbers as
* convertible to and from all units without changing the value. * convertible to and from all units without changing the value.

View File

@ -62,7 +62,7 @@ export class SassString extends Value {
get sassLength(): number; get sassLength(): number;
/** /**
* Converts `sassIndex` to a JavaScript index into [[text]]. * Converts `sassIndex` to a JavaScript index into {@link text}.
* *
* Sass indices are one-based, while JavaScript indices are zero-based. Sass * Sass indices are one-based, while JavaScript indices are zero-based. Sass
* indices may also be negative in order to index from the end of the string. * indices may also be negative in order to index from the end of the string.

151
package-lock.json generated
View File

@ -22,12 +22,12 @@
"source-map-js": "^0.6.2", "source-map-js": "^0.6.2",
"ts-dedent": "^2.2.0", "ts-dedent": "^2.2.0",
"ts-node": "^10.2.1", "ts-node": "^10.2.1",
"typedoc": "^0.22.4" "typedoc": "^0.24.7"
}, },
"devDependencies": { "devDependencies": {
"@types/node": "^14.11.2", "@types/node": "^14.11.2",
"gts": "^3.1.0", "gts": "^3.1.0",
"typescript": "^4.0.3" "typescript": "^5.0.4"
}, },
"engines": { "engines": {
"node": ">=14.0.0" "node": ">=14.0.0"
@ -569,6 +569,11 @@
"node": ">=8" "node": ">=8"
} }
}, },
"node_modules/ansi-sequence-parser": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/ansi-sequence-parser/-/ansi-sequence-parser-1.1.0.tgz",
"integrity": "sha512-lEm8mt52to2fT8GhciPCGeCXACSz2UwIN4X2e2LJSnZ5uAbn2/dsYdOmUXq0AtWS5cpAupysIneExOgH0Vd2TQ=="
},
"node_modules/ansi-styles": { "node_modules/ansi-styles": {
"version": "4.3.0", "version": "4.3.0",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
@ -1994,6 +1999,7 @@
"version": "1.0.6", "version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
"dev": true,
"dependencies": { "dependencies": {
"once": "^1.3.0", "once": "^1.3.0",
"wrappy": "1" "wrappy": "1"
@ -2786,6 +2792,7 @@
"version": "1.4.0", "version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"dev": true,
"dependencies": { "dependencies": {
"wrappy": "1" "wrappy": "1"
} }
@ -3451,13 +3458,14 @@
} }
}, },
"node_modules/shiki": { "node_modules/shiki": {
"version": "0.10.1", "version": "0.14.2",
"resolved": "https://registry.npmjs.org/shiki/-/shiki-0.10.1.tgz", "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.2.tgz",
"integrity": "sha512-VsY7QJVzU51j5o1+DguUd+6vmCmZ5v/6gYu4vyYAhzjuNQU6P/vmSy4uQaOhvje031qQMiW0d2BwgMH52vqMng==", "integrity": "sha512-ltSZlSLOuSY0M0Y75KA+ieRaZ0Trf5Wl3gutE7jzLuIcWxLp5i/uEnLoQWNvgKXQ5OMpGkJnVMRLAuzjc0LJ2A==",
"dependencies": { "dependencies": {
"jsonc-parser": "^3.0.0", "ansi-sequence-parser": "^1.1.0",
"vscode-oniguruma": "^1.6.1", "jsonc-parser": "^3.2.0",
"vscode-textmate": "5.2.0" "vscode-oniguruma": "^1.7.0",
"vscode-textmate": "^8.0.0"
} }
}, },
"node_modules/signal-exit": { "node_modules/signal-exit": {
@ -3877,24 +3885,23 @@
} }
}, },
"node_modules/typedoc": { "node_modules/typedoc": {
"version": "0.22.18", "version": "0.24.7",
"resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.22.18.tgz", "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.24.7.tgz",
"integrity": "sha512-NK9RlLhRUGMvc6Rw5USEYgT4DVAUFk7IF7Q6MYfpJ88KnTZP7EneEa4RcP+tX1auAcz7QT1Iy0bUSZBYYHdoyA==", "integrity": "sha512-zzfKDFIZADA+XRIp2rMzLe9xZ6pt12yQOhCr7cD7/PBTjhPmMyMvGrkZ2lPNJitg3Hj1SeiYFNzCsSDrlpxpKw==",
"dependencies": { "dependencies": {
"glob": "^8.0.3",
"lunr": "^2.3.9", "lunr": "^2.3.9",
"marked": "^4.0.16", "marked": "^4.3.0",
"minimatch": "^5.1.0", "minimatch": "^9.0.0",
"shiki": "^0.10.1" "shiki": "^0.14.1"
}, },
"bin": { "bin": {
"typedoc": "bin/typedoc" "typedoc": "bin/typedoc"
}, },
"engines": { "engines": {
"node": ">= 12.10.0" "node": ">= 14.14"
}, },
"peerDependencies": { "peerDependencies": {
"typescript": "4.0.x || 4.1.x || 4.2.x || 4.3.x || 4.4.x || 4.5.x || 4.6.x || 4.7.x" "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x"
} }
}, },
"node_modules/typedoc/node_modules/brace-expansion": { "node_modules/typedoc/node_modules/brace-expansion": {
@ -3905,45 +3912,30 @@
"balanced-match": "^1.0.0" "balanced-match": "^1.0.0"
} }
}, },
"node_modules/typedoc/node_modules/glob": { "node_modules/typedoc/node_modules/minimatch": {
"version": "8.1.0", "version": "9.0.0",
"resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
"integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==",
"dependencies": { "dependencies": {
"fs.realpath": "^1.0.0", "brace-expansion": "^2.0.1"
"inflight": "^1.0.4",
"inherits": "2",
"minimatch": "^5.0.1",
"once": "^1.3.0"
}, },
"engines": { "engines": {
"node": ">=12" "node": ">=16 || 14 >=14.17"
}, },
"funding": { "funding": {
"url": "https://github.com/sponsors/isaacs" "url": "https://github.com/sponsors/isaacs"
} }
}, },
"node_modules/typedoc/node_modules/minimatch": {
"version": "5.1.6",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
"integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
"dependencies": {
"brace-expansion": "^2.0.1"
},
"engines": {
"node": ">=10"
}
},
"node_modules/typescript": { "node_modules/typescript": {
"version": "4.4.4", "version": "5.0.4",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz",
"integrity": "sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==", "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==",
"bin": { "bin": {
"tsc": "bin/tsc", "tsc": "bin/tsc",
"tsserver": "bin/tsserver" "tsserver": "bin/tsserver"
}, },
"engines": { "engines": {
"node": ">=4.2.0" "node": ">=12.20"
} }
}, },
"node_modules/uri-js": { "node_modules/uri-js": {
@ -3982,9 +3974,9 @@
"integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==" "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA=="
}, },
"node_modules/vscode-textmate": { "node_modules/vscode-textmate": {
"version": "5.2.0", "version": "8.0.0",
"resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-5.2.0.tgz", "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz",
"integrity": "sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==" "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg=="
}, },
"node_modules/which": { "node_modules/which": {
"version": "2.0.2", "version": "2.0.2",
@ -4013,7 +4005,8 @@
"node_modules/wrappy": { "node_modules/wrappy": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
"dev": true
}, },
"node_modules/write-file-atomic": { "node_modules/write-file-atomic": {
"version": "3.0.3", "version": "3.0.3",
@ -4447,6 +4440,11 @@
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"dev": true "dev": true
}, },
"ansi-sequence-parser": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/ansi-sequence-parser/-/ansi-sequence-parser-1.1.0.tgz",
"integrity": "sha512-lEm8mt52to2fT8GhciPCGeCXACSz2UwIN4X2e2LJSnZ5uAbn2/dsYdOmUXq0AtWS5cpAupysIneExOgH0Vd2TQ=="
},
"ansi-styles": { "ansi-styles": {
"version": "4.3.0", "version": "4.3.0",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
@ -5495,6 +5493,7 @@
"version": "1.0.6", "version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
"dev": true,
"requires": { "requires": {
"once": "^1.3.0", "once": "^1.3.0",
"wrappy": "1" "wrappy": "1"
@ -6120,6 +6119,7 @@
"version": "1.4.0", "version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"dev": true,
"requires": { "requires": {
"wrappy": "1" "wrappy": "1"
} }
@ -6583,13 +6583,14 @@
"dev": true "dev": true
}, },
"shiki": { "shiki": {
"version": "0.10.1", "version": "0.14.2",
"resolved": "https://registry.npmjs.org/shiki/-/shiki-0.10.1.tgz", "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.2.tgz",
"integrity": "sha512-VsY7QJVzU51j5o1+DguUd+6vmCmZ5v/6gYu4vyYAhzjuNQU6P/vmSy4uQaOhvje031qQMiW0d2BwgMH52vqMng==", "integrity": "sha512-ltSZlSLOuSY0M0Y75KA+ieRaZ0Trf5Wl3gutE7jzLuIcWxLp5i/uEnLoQWNvgKXQ5OMpGkJnVMRLAuzjc0LJ2A==",
"requires": { "requires": {
"jsonc-parser": "^3.0.0", "ansi-sequence-parser": "^1.1.0",
"vscode-oniguruma": "^1.6.1", "jsonc-parser": "^3.2.0",
"vscode-textmate": "5.2.0" "vscode-oniguruma": "^1.7.0",
"vscode-textmate": "^8.0.0"
} }
}, },
"signal-exit": { "signal-exit": {
@ -6906,15 +6907,14 @@
} }
}, },
"typedoc": { "typedoc": {
"version": "0.22.18", "version": "0.24.7",
"resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.22.18.tgz", "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.24.7.tgz",
"integrity": "sha512-NK9RlLhRUGMvc6Rw5USEYgT4DVAUFk7IF7Q6MYfpJ88KnTZP7EneEa4RcP+tX1auAcz7QT1Iy0bUSZBYYHdoyA==", "integrity": "sha512-zzfKDFIZADA+XRIp2rMzLe9xZ6pt12yQOhCr7cD7/PBTjhPmMyMvGrkZ2lPNJitg3Hj1SeiYFNzCsSDrlpxpKw==",
"requires": { "requires": {
"glob": "^8.0.3",
"lunr": "^2.3.9", "lunr": "^2.3.9",
"marked": "^4.0.16", "marked": "^4.3.0",
"minimatch": "^5.1.0", "minimatch": "^9.0.0",
"shiki": "^0.10.1" "shiki": "^0.14.1"
}, },
"dependencies": { "dependencies": {
"brace-expansion": { "brace-expansion": {
@ -6925,22 +6925,10 @@
"balanced-match": "^1.0.0" "balanced-match": "^1.0.0"
} }
}, },
"glob": {
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz",
"integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
"requires": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
"minimatch": "^5.0.1",
"once": "^1.3.0"
}
},
"minimatch": { "minimatch": {
"version": "5.1.6", "version": "9.0.0",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
"integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==",
"requires": { "requires": {
"brace-expansion": "^2.0.1" "brace-expansion": "^2.0.1"
} }
@ -6948,9 +6936,9 @@
} }
}, },
"typescript": { "typescript": {
"version": "4.4.4", "version": "5.0.4",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz",
"integrity": "sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==" "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw=="
}, },
"uri-js": { "uri-js": {
"version": "4.4.1", "version": "4.4.1",
@ -6988,9 +6976,9 @@
"integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==" "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA=="
}, },
"vscode-textmate": { "vscode-textmate": {
"version": "5.2.0", "version": "8.0.0",
"resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-5.2.0.tgz", "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz",
"integrity": "sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==" "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg=="
}, },
"which": { "which": {
"version": "2.0.2", "version": "2.0.2",
@ -7010,7 +6998,8 @@
"wrappy": { "wrappy": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
"dev": true
}, },
"write-file-atomic": { "write-file-atomic": {
"version": "3.0.3", "version": "3.0.3",

View File

@ -36,11 +36,11 @@
"source-map-js": "^0.6.2", "source-map-js": "^0.6.2",
"ts-dedent": "^2.2.0", "ts-dedent": "^2.2.0",
"ts-node": "^10.2.1", "ts-node": "^10.2.1",
"typedoc": "^0.22.4" "typedoc": "^0.24.7"
}, },
"devDependencies": { "devDependencies": {
"@types/node": "^14.11.2", "@types/node": "^14.11.2",
"gts": "^3.1.0", "gts": "^3.1.0",
"typescript": "^4.0.3" "typescript": "^5.0.4"
} }
} }

View File

@ -1,6 +1,8 @@
{ {
"excludePrivate": true, "navigation": {
"excludeProtected": true, "includeCategories": true,
},
"hideParameterTypesInTitle": false,
"categorizeByGroup": false, "categorizeByGroup": false,
"categoryOrder": [ "categoryOrder": [
"Compile", "Compile",