diff --git a/CHANGELOG.md b/CHANGELOG.md index ce2159025..761a967d7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -568,7 +568,7 @@ * Recognize `::slotted()` as a superselector of other `::slotted()` selectors. - * Regonize `:current()` with a vendor prefix as a superselector. + * Recognize `:current()` with a vendor prefix as a superselector. ## 1.22.10 diff --git a/lib/src/ast/css/modifiable/node.dart b/lib/src/ast/css/modifiable/node.dart index 3b493c88a..ca489df71 100644 --- a/lib/src/ast/css/modifiable/node.dart +++ b/lib/src/ast/css/modifiable/node.dart @@ -13,7 +13,7 @@ import '../style_rule.dart'; /// /// Almost all CSS nodes are the modifiable classes under the covers. However, /// modification should only be done within the evaluation step, so the -/// unmodifiable types are used elsewhere to enfore that constraint. +/// unmodifiable types are used elsewhere to enforce that constraint. abstract class ModifiableCssNode extends CssNode { /// The node that contains this, or `null` for the root [CssStylesheet] node. ModifiableCssParentNode? get parent => _parent; diff --git a/lib/src/ast/sass/argument_declaration.dart b/lib/src/ast/sass/argument_declaration.dart index 9b7f71584..04b96c83e 100644 --- a/lib/src/ast/sass/argument_declaration.dart +++ b/lib/src/ast/sass/argument_declaration.dart @@ -28,7 +28,7 @@ class ArgumentDeclaration implements SassNode { FileSpan get spanWithName { var text = span.file.getText(0); - // Move backwards through and whitspace between the name and the arguments. + // Move backwards through any whitespace between the name and the arguments. var i = span.start.offset - 1; while (i > 0 && isWhitespace(text.codeUnitAt(i))) { i--; diff --git a/lib/src/ast/selector/pseudo.dart b/lib/src/ast/selector/pseudo.dart index 51e9fed05..884c5229f 100644 --- a/lib/src/ast/selector/pseudo.dart +++ b/lib/src/ast/selector/pseudo.dart @@ -80,7 +80,7 @@ class PseudoSelector extends SimpleSelector { // We don't consider `:not(%foo)` to be invisible because, semantically, it // means "doesn't match this selector that matches nothing", so it's // equivalent to *. If the entire compound selector is composed of `:not`s - // with invisible lists, the serialier emits it as `*`. + // with invisible lists, the serializer emits it as `*`. return name != 'not' && selector.isInvisible; } @@ -138,7 +138,7 @@ class PseudoSelector extends SimpleSelector { // [compound] has a different one than [this], unification fails. if (isElement) return null; - // Otherwise, this is a pseudo selector and should come before pseduo + // Otherwise, this is a pseudo selector and should come before pseudo // elements. result.add(this); addedThis = true; diff --git a/lib/src/callable.dart b/lib/src/callable.dart index 89beb9601..51e774413 100644 --- a/lib/src/callable.dart +++ b/lib/src/callable.dart @@ -40,7 +40,7 @@ export 'callable/user_defined.dart'; /// instead. /// /// * When manipulating values like lists, strings, and numbers that have -/// metadata (comma versus sepace separated, bracketed versus unbracketed, +/// metadata (comma versus space separated, bracketed versus unbracketed, /// quoted versus unquoted, units), the output metadata should match the input /// metadata. For lists, the [Value.changeList] method can be used to do this /// automatically. diff --git a/lib/src/callable/async.dart b/lib/src/callable/async.dart index f4413bf81..a4cbc10ea 100644 --- a/lib/src/callable/async.dart +++ b/lib/src/callable/async.dart @@ -14,7 +14,7 @@ import 'async_built_in.dart'; /// passing in arguments. /// /// This class represents callables that *need* to do asynchronous work. It's -/// only compatible with the asynchonous `compile()` methods. If a callback can +/// only compatible with the asynchronous `compile()` methods. If a callback can /// work synchronously, it should be a [Callable] instead. /// /// See [Callable] for more details. diff --git a/lib/src/extend/extension_store.dart b/lib/src/extend/extension_store.dart index 4f705c130..73a189ee8 100644 --- a/lib/src/extend/extension_store.dart +++ b/lib/src/extend/extension_store.dart @@ -389,7 +389,7 @@ class ExtensionStore { error.span); } - // If no extends actually happenedit (for example becaues unification + // If no extends actually happened (for example because unification // failed), we don't need to re-register the selector. if (identical(oldValue, selector.value)) continue; _registerSelector(selector.value, selector); diff --git a/lib/src/extend/functions.dart b/lib/src/extend/functions.dart index 25bc199ce..1b8b34b61 100644 --- a/lib/src/extend/functions.dart +++ b/lib/src/extend/functions.dart @@ -467,7 +467,7 @@ bool _mustUnify(List complex1, bool _isUnique(SimpleSelector simple) => simple is IDSelector || (simple is PseudoSelector && simple.isElement); -/// Returns all orderings of initial subseqeuences of [queue1] and [queue2]. +/// Returns all orderings of initial subsequences of [queue1] and [queue2]. /// /// The [done] callback is used to determine the extent of the initial /// subsequences. It's called with each queue until it returns `true`. diff --git a/lib/src/functions/map.dart b/lib/src/functions/map.dart index d211e3dd8..f3fd5b007 100644 --- a/lib/src/functions/map.dart +++ b/lib/src/functions/map.dart @@ -206,7 +206,7 @@ SassMap _deepMergeImpl(SassMap map1, SassMap map2) { } // Because values in `map2` take precedence over `map1`, we just check if any - // entires in `map1` don't have corresponding keys in `map2`, or if they're + // entries in `map1` don't have corresponding keys in `map2`, or if they're // maps that need to be merged in their own right. map1.contents.forEach((key, value) { var resultValue = result[key]; diff --git a/lib/src/logger/tracking.dart b/lib/src/logger/tracking.dart index e7ec08696..75522c7d3 100644 --- a/lib/src/logger/tracking.dart +++ b/lib/src/logger/tracking.dart @@ -15,7 +15,7 @@ class TrackingLogger implements Logger { bool get emittedWarning => _emittedWarning; bool _emittedWarning = false; - /// WHether [debug] has been called on this logger. + /// Whether [debug] has been called on this logger. bool get emittedDebug => _emittedDebug; bool _emittedDebug = false; diff --git a/lib/src/parse/stylesheet.dart b/lib/src/parse/stylesheet.dart index 8dbddf592..1e507e5cc 100644 --- a/lib/src/parse/stylesheet.dart +++ b/lib/src/parse/stylesheet.dart @@ -99,7 +99,7 @@ abstract class StylesheetParser extends Parser { }); scanner.expectDone(); - /// Ensure that all gloal variable assignments produce a variable in this + /// Ensure that all global variable assignments produce a variable in this /// stylesheet, even if they aren't evaluated. See sass/language#50. statements.addAll(_globalVariables.values.map((declaration) => VariableDeclaration(declaration.name, @@ -1263,11 +1263,11 @@ abstract class StylesheetParser extends Parser { /// Consumes a `@moz-document` rule. /// - /// Gecko's `@-moz-document` diverges from [the specificiation][] allows the + /// Gecko's `@-moz-document` diverges from [the specification][] allows the /// `url-prefix` and `domain` functions to omit quotation marks, contrary to /// the standard. /// - /// [the specificiation]: http://www.w3.org/TR/css3-conditional/ + /// [the specification]: http://www.w3.org/TR/css3-conditional/ @protected AtRule mozDocumentRule(LineScannerState start, Interpolation name) { var valueStart = scanner.state; @@ -2392,7 +2392,7 @@ relase. For details, see http://bit.ly/moz-document. return UnaryOperationExpression(operator, operand, scanner.spanFrom(start)); } - /// Returns the unsary operator corresponding to [character], or `null` if + /// Returns the unary operator corresponding to [character], or `null` if /// the character is not a unary operator. UnaryOperator? _unaryOperatorFor(int character) { switch (character) { diff --git a/lib/src/util/character.dart b/lib/src/util/character.dart index 5bf423740..a1c5b3846 100644 --- a/lib/src/util/character.dart +++ b/lib/src/util/character.dart @@ -42,7 +42,7 @@ bool isNameStart(int character) => bool isName(int character) => isNameStart(character) || isDigit(character) || character == $minus; -/// Returns whether [character] is a hexadeicmal digit. +/// Returns whether [character] is a hexadecimal digit. bool isHex(int? character) { if (character == null) return false; if (isDigit(character)) return true; diff --git a/lib/src/value/external/number.dart b/lib/src/value/external/number.dart index 6385b9658..3db7c90a5 100644 --- a/lib/src/value/external/number.dart +++ b/lib/src/value/external/number.dart @@ -105,7 +105,7 @@ abstract class SassNumber extends Value { /// /// Unlike [convertToMatch], this does *not* throw an error if this number is /// unitless and [other] is not, or vice versa. Instead, it treats all - /// unitless numbers as convertable to and from all units without changing the + /// unitless numbers as convertible to and from all units without changing the /// value. /// /// Note that [coerceValueToMatch] is generally more efficient if the value is @@ -123,7 +123,7 @@ abstract class SassNumber extends Value { /// /// Unlike [convertValueToMatch], this does *not* throw an error if this /// number is unitless and [other] is not, or vice versa. Instead, it treats - /// all unitless numbers as convertable to and from all units without changing + /// all unitless numbers as convertible to and from all units without changing /// the value. /// /// Throws a [SassScriptException] if this number's units aren't compatible @@ -165,7 +165,7 @@ abstract class SassNumber extends Value { /// /// This does *not* throw an error if this number is unitless and /// [newNumerators]/[newDenominators] are not empty, or vice versa. Instead, - /// it treats all unitless numbers as convertable to and from all units + /// it treats all unitless numbers as convertible to and from all units /// without changing the value. /// /// Note that [coerceValue] is generally more efficient if the value is going @@ -184,7 +184,7 @@ abstract class SassNumber extends Value { /// /// This does *not* throw an error if this number is unitless and /// [newNumerators]/[newDenominators] are not empty, or vice versa. Instead, - /// it treats all unitless numbers as convertable to and from all units + /// it treats all unitless numbers as convertible to and from all units /// without changing the value. /// /// Throws a [SassScriptException] if this number's units aren't compatible diff --git a/lib/src/value/list.dart b/lib/src/value/list.dart index 4e973465e..79bc1feb3 100644 --- a/lib/src/value/list.dart +++ b/lib/src/value/list.dart @@ -69,7 +69,7 @@ class ListSeparator { /// A separator that hasn't yet been determined. /// - /// Singleton lists and empty lists don't have separators defiend. This means + /// Singleton lists and empty lists don't have separators defined. This means /// that list functions will prefer other lists' separators if possible. static const undecided = ListSeparator._("undecided", null); diff --git a/lib/src/value/number.dart b/lib/src/value/number.dart index c4c3e2b0f..92a67a8f3 100644 --- a/lib/src/value/number.dart +++ b/lib/src/value/number.dart @@ -290,7 +290,7 @@ abstract class SassNumber extends Value implements ext.SassNumber { /// Converts [value] to [newNumerators] and [newDenominators]. /// - /// If [coerceUnitless] is `true`, this considers unitless numbers convertable + /// If [coerceUnitless] is `true`, this considers unitless numbers convertible /// to and from any unit. Otherwise, it will throw a [SassScriptException] for /// such a conversion. /// diff --git a/lib/src/visitor/async_evaluate.dart b/lib/src/visitor/async_evaluate.dart index 83b910270..fe10027db 100644 --- a/lib/src/visitor/async_evaluate.dart +++ b/lib/src/visitor/async_evaluate.dart @@ -128,7 +128,7 @@ class _EvaluateVisitor /// compiled to Node.js. final NodeImporter? _nodeImporter; - /// Built-in functions that are globally-acessible, even under the new module + /// Built-in functions that are globally-accessible, even under the new module /// system. final _builtInFunctions = {}; @@ -278,7 +278,7 @@ class _EvaluateVisitor /// The configuration for the current module. /// - /// If this is empty, that indicates that the current module is not confiured. + /// If this is empty, that indicates that the current module is not configured. var _configuration = const Configuration.empty(); /// Creates a new visitor. @@ -1897,7 +1897,7 @@ class _EvaluateVisitor } } - /// Evlauates [condition] and converts it to a plain CSS string, with + /// Evaluates [condition] and converts it to a plain CSS string, with /// parentheses if necessary. /// /// If [operator] is passed, it's the operator for the surrounding @@ -2592,7 +2592,7 @@ class _EvaluateVisitor // stylesheets that themselves contain `@use` rules, and CSS included via the // `load-css()` function. When we load a module using one of these constructs, // we first convert it to CSS (we can't evaluate it as Sass directly because - // it may be used elsewhere and it must only be evaluatedonce). Then we + // it may be used elsewhere and it must only be evaluated once). Then we // execute that CSS more or less as though it were Sass (we can't inject it // into the stylesheet as-is because the `@import` may be nested in other // rules). That's what these rules implement. diff --git a/lib/src/visitor/evaluate.dart b/lib/src/visitor/evaluate.dart index dc2b70566..e57a0cc65 100644 --- a/lib/src/visitor/evaluate.dart +++ b/lib/src/visitor/evaluate.dart @@ -5,7 +5,7 @@ // DO NOT EDIT. This file was generated from async_evaluate.dart. // See tool/grind/synchronize.dart for details. // -// Checksum: 6b82405fdc448ac69ca703bc6bffbb8d50f3fced +// Checksum: acaafcfe17e8cb582fb01ea8b95afaf871af4eed // // ignore_for_file: unused_import @@ -136,7 +136,7 @@ class _EvaluateVisitor /// compiled to Node.js. final NodeImporter? _nodeImporter; - /// Built-in functions that are globally-acessible, even under the new module + /// Built-in functions that are globally-accessible, even under the new module /// system. final _builtInFunctions = {}; @@ -286,7 +286,7 @@ class _EvaluateVisitor /// The configuration for the current module. /// - /// If this is empty, that indicates that the current module is not confiured. + /// If this is empty, that indicates that the current module is not configured. var _configuration = const Configuration.empty(); /// Creates a new visitor. @@ -1890,7 +1890,7 @@ class _EvaluateVisitor } } - /// Evlauates [condition] and converts it to a plain CSS string, with + /// Evaluates [condition] and converts it to a plain CSS string, with /// parentheses if necessary. /// /// If [operator] is passed, it's the operator for the surrounding @@ -2576,7 +2576,7 @@ class _EvaluateVisitor // stylesheets that themselves contain `@use` rules, and CSS included via the // `load-css()` function. When we load a module using one of these constructs, // we first convert it to CSS (we can't evaluate it as Sass directly because - // it may be used elsewhere and it must only be evaluatedonce). Then we + // it may be used elsewhere and it must only be evaluated once). Then we // execute that CSS more or less as though it were Sass (we can't inject it // into the stylesheet as-is because the `@import` may be nested in other // rules). That's what these rules implement. diff --git a/test/cli/shared.dart b/test/cli/shared.dart index fb945ad7b..5ca3a19df 100644 --- a/test/cli/shared.dart +++ b/test/cli/shared.dart @@ -315,7 +315,7 @@ void sharedTests( // Regression test for an issue mentioned in sass/linter#15 test( - "gracefully reports errors for binary operations with parentheized " + "gracefully reports errors for binary operations with parenthesized " "operands", () async { var sass = await runSass(["--no-unicode", "-"]); sass.stdin.writeln("a {b: (#123) + (#456)}"); diff --git a/test/dart_api/value/boolean_test.dart b/test/dart_api/value/boolean_test.dart index 606cfab7d..f9c101357 100644 --- a/test/dart_api/value/boolean_test.dart +++ b/test/dart_api/value/boolean_test.dart @@ -41,7 +41,7 @@ void main() { late Value value; setUp(() => value = parseValue("false")); - test("is falsey", () { + test("is falsy", () { expect(value.isTruthy, isFalse); }); diff --git a/test/dart_api/value/null_test.dart b/test/dart_api/value/null_test.dart index 329f45f4d..995b3fbeb 100644 --- a/test/dart_api/value/null_test.dart +++ b/test/dart_api/value/null_test.dart @@ -14,7 +14,7 @@ void main() { late Value value; setUp(() => value = parseValue("null")); - test("is falsey", () { + test("is falsy", () { expect(value.isTruthy, isFalse); }); diff --git a/test/dart_api/value/string_test.dart b/test/dart_api/value/string_test.dart index f625ce8b3..a77e8ff98 100644 --- a/test/dart_api/value/string_test.dart +++ b/test/dart_api/value/string_test.dart @@ -142,7 +142,7 @@ void main() { }); }); - group("an unquoted Unicde", () { + group("an unquoted Unicode", () { late SassString value; setUp(() => value = parseValue("a👭b👬c") as SassString); diff --git a/test/source_map_test.dart b/test/source_map_test.dart index 6d1c3a828..3f838c93c 100644 --- a/test/source_map_test.dart +++ b/test/source_map_test.dart @@ -32,7 +32,7 @@ void main() { """); }); - test("with a mutliline selector", () { + test("with a multiline selector", () { _expectSourceMap(""" {{1}}foo, bar @@ -754,7 +754,7 @@ void _expectSassSourceMap(String sass, String css, _expectMapMatches(sassMap, sassText, cssText, sassLocations, cssLocations); } -/// Returns [string] with leading whitepsace stripped from each line so that the +/// Returns [string] with leading whitespace stripped from each line so that the /// least-indented line has zero indentation. String _reindent(String string) { var lines = trimAsciiRight(string).split("\n");