dart-sass/pkg/sass_api
Jennifer Thakar d419df7d9c
Add shared interfaces for various AST nodes (#1445)
Fixes #1401 and #1414.

Adds `Dependency`, `SassDeclaration`, and `SassReference` interfaces,
which expose some getters that multiple AST nodes have in common with a
single type.

These also add getters for common subspans (URL, name, and namespace) to
the interfaces.
2021-08-23 16:33:36 -07:00
..
doc Add a sass_api package and publishing infrastructure 2021-07-30 18:23:14 -07:00
lib Add a sass_api package and publishing infrastructure 2021-07-30 18:23:14 -07:00
CHANGELOG.md Add shared interfaces for various AST nodes (#1445) 2021-08-23 16:33:36 -07:00
dartdoc_options.yaml Add a sass_api package and publishing infrastructure 2021-07-30 18:23:14 -07:00
LICENSE Manually resolve symlinks before deploying sub-packages (#1419) 2021-08-03 23:26:27 +00:00
pubspec.yaml Add shared interfaces for various AST nodes (#1445) 2021-08-23 16:33:36 -07:00
README.md Add a sass_api package and publishing infrastructure 2021-07-30 18:23:14 -07:00

This package exposes additional APIs for working with Dart Sass, including access to the Sass AST and its load resolution logic.

This is split out into a separate package because so that it can be versioned separately. The sass_api package's API is expected to evolve more quickly than the Sass language itself, and will likely have more breaking changes as the internals evolve to suit the needs of the Sass compiler.

Depending on Development Versions

Sometimes it's necessary to depend on a version of a package that hasn't been released yet. Because this package directly re-exports names from the main sass package, you'll need to make sure you have a Git dependency on both it and the sass package:

dependency_overrides:
  sass:
    git:
      url: git://github.com/sass/sass
      ref: main # Replace this with a feature branch if necessary
  sass_api:
    git:
      url: git://github.com/sass/sass
      ref: main # Make sure this is the same as above!
      path: pkg/sass_api