sass_embedded.simple module

Simple interface using Dart Sass.

This module to work Dart Sass by same process of command line interface.

Finally, this provides all features of Dart Sass CLI excluded something.

Note

This will not provide full-featured JavaScript API because it is to wrap CLI.

class sass_embedded.simple.CLI(options: CompileOptions)

Bases: object

CLI controls.

command_with_path(source: Path, dest: Path) list[str]
command_with_stdin(syntax: Literal['scss', 'sass', 'css']) list[str]
exe: Executable
options: CompileOptions
class sass_embedded.simple.CompileOptions(paths: list[Path] = <factory>, output_style: OutputStyle = 'expanded', sourcemap_options: Optional[SourceMapOptions] = None)

Bases: object

Compile option values for Dart Sass CLI.

get_cli_arguments(use_stdout: bool = False) list[str]

Retrieve arguments collection to pass CLI.

Parameters:

use_stdout – Set True when CLI write compile files into STDOUT.

output_style: OutputStyle = 'expanded'

Generating format for CSS.

Ref:

https://sass-lang.com/documentation/cli/dart-sass/#style

paths: list[Path]

Path list of external modules.

Ref:

https://sass-lang.com/documentation/cli/dart-sass/#load-path

sourcemap_options: SourceMapOptions | None = None

Generating options for source-map.

class sass_embedded.simple.Result(ok: 'bool', error: 'Optional[str]' = None, options: 'Optional[CompileOptions]' = None, output: 'Optional[T]' = None)

Bases: Generic[T]

error: str | None = None
ok: bool
options: CompileOptions | None = None
output: T | None = None
class sass_embedded.simple.SourceMapOptions(style: Literal['refer', 'embed'] = 'refer', source_url: Literal['relative', 'absolute'] = 'relative', source_embed: bool = False)

Bases: object

Source-map option values to compile for Dart Sass CLI.

get_arguments(use_stdout: bool) list[str]
source_embed: bool = False

Flag to inject sources into sourcemap.

Ref:

https://sass-lang.com/documentation/cli/dart-sass/#embed-sources

source_url: Literal['relative', 'absolute'] = 'relative'

Refer style for URL of source-map.

Ref:

https://sass-lang.com/documentation/cli/dart-sass/#source-map-urls

style: Literal['refer', 'embed'] = 'refer'

Generating format for source-map.

Ref:

https://sass-lang.com/documentation/cli/dart-sass/#embed-source-map

sass_embedded.simple.compile_directory(source: Path, dest: Path, load_paths: list[Path] | None = None, style: OutputStyle = 'expanded', no_sourcemap: bool = False, embed_sourcemap: bool = False, embed_sources: bool = False, source_urls: SourceMapUrl = 'relative') Result[list[Path]]

Compile all source files on specified directory.

This use Many-to-Many Mode of Dart Sass CLI.

See https://sass-lang.com/documentation/cli/dart-sass/#many-to-many-mode

Parameters:
  • source – Source path. It must have extension .sass, .scss or .css.

  • dest – Output destination.

  • load_paths – List of additional load path for Sass compile.

  • style – Output style.

  • no_sourcemap – Flag to skip generating source-maps.

  • embed_sourcemap – Flag to embed source-map into output.

  • embed_sources – Flag to embed sources into output.

  • source_urls – Style for refer to sources on source-maps.

sass_embedded.simple.compile_file(source: Path, dest: Path, load_paths: list[Path] | None = None, style: OutputStyle = 'expanded', no_sourcemap: bool = False, embed_sourcemap: bool = False, embed_sources: bool = False, source_urls: SourceMapUrl = 'relative') Result[Path]

Convert from Sass/SCSS source to CSS.

Parameters:
  • source – Source path. It must have extension .sass, .scss or .css.

  • dest – Output destination.

  • load_paths – List of additional load path for Sass compile.

  • style – Output style.

  • no_sourcemap – Flag to skip generating source-map.

  • embed_sourcemap – Flag to embed source-map into output.

  • embed_sources – Flag to embed sources into output.

  • source_urls – Style for refer to sources on source-map.

sass_embedded.simple.compile_string(source: str, syntax: Syntax = 'scss', load_paths: list[Path] | None = None, style: OutputStyle = 'expanded', embed_sourcemap: bool = False, embed_sources: bool = False) Result[str]

Convert from Sass/SCSS source to CSS.

Parameters:
  • source – Source text. It must be format for Sass or SCSS.

  • syntax – Source format.

  • load_paths – List of additional load path for Sass compile.

  • style – Output style.

  • embed_sourcemap – Flag to embed source-map into output.

  • embed_sources – Flag to embed sources into output. It works only when embed_sourcemap is True.