Skip to content

Commit

Permalink
Fix bug in JS MultiSpan
Browse files Browse the repository at this point in the history
Fixes #1790.
  • Loading branch information
jathak committed Sep 14, 2022
1 parent 5466dd7 commit 12f89c1
Show file tree
Hide file tree
Showing 5 changed files with 25 additions and 10 deletions.
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
## 1.55.1

### JS API

* Fix a bug in which certain warning spans would not have their properties
accessible by the JS API.

## 1.55.0

### Dart API
Expand Down
18 changes: 11 additions & 7 deletions lib/src/node/source_span.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

import 'package:source_span/source_span.dart';

import '../util/multi_span.dart';
import '../util/nullable.dart';
import 'reflection.dart';
import 'utils.dart';
Expand All @@ -12,14 +13,17 @@ import 'utils.dart';
/// that they match the JS API.
void updateSourceSpanPrototype() {
var span = SourceFile.fromString('').span(0);
var multiSpan = MultiSpan(span, '', {});

getJSClass(span).defineGetters({
'start': (FileSpan span) => span.start,
'end': (FileSpan span) => span.end,
'url': (FileSpan span) => span.sourceUrl.andThen(dartToJSUrl),
'text': (FileSpan span) => span.text,
'context': (FileSpan span) => span.context,
});
for (var item in [span, multiSpan]) {
getJSClass(item).defineGetters({
'start': (FileSpan span) => span.start,
'end': (FileSpan span) => span.end,
'url': (FileSpan span) => span.sourceUrl.andThen(dartToJSUrl),
'text': (FileSpan span) => span.text,
'context': (FileSpan span) => span.context,
});
}

// Offset is already accessible from JS because it's defined as a field rather
// than a getter.
Expand Down
4 changes: 4 additions & 0 deletions pkg/sass_api/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
## 3.1.1

* No user-visible changes.

## 3.1.0

### Dart API
Expand Down
4 changes: 2 additions & 2 deletions pkg/sass_api/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@ name: sass_api
# Note: Every time we add a new Sass AST node, we need to bump the *major*
# version because it's a breaking change for anyone who's implementing the
# visitor interface(s).
version: 3.1.0
version: 3.1.1
description: Additional APIs for Dart Sass.
homepage: https://github.com/sass/dart-sass

environment:
sdk: ">=2.17.0 <3.0.0"

dependencies:
sass: 1.55.0
sass: 1.55.1

dev_dependencies:
dartdoc: ^5.0.0
Expand Down
2 changes: 1 addition & 1 deletion pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: sass
version: 1.55.0
version: 1.55.1
description: A Sass implementation in Dart.
homepage: https://github.com/sass/dart-sass

Expand Down

0 comments on commit 12f89c1

Please sign in to comment.