# Copyright (c) 2015, the Dart project authors.  Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.

# The platform for running dart on the web with dart2js.
#
# Includes dart:html and associated libraries.
#
# This configuration used to exclude dart:io, but we made it OK to import it.
# This is allowed as a stopgap measure until config-specific imports are
# supported in the language.  The returned library is an implementation of
# dart:io that throws at runtime.

[dart-spec]
spec: 3rd edition.

[features]
# No extra features.

[libraries]
async: async/async.dart
_chrome: _chrome/dart2js/chrome_dart2js.dart
collection: collection/collection.dart
convert: convert/convert.dart
core: core/core.dart
developer: developer/developer.dart
html: html/dart2js/html_dart2js.dart
html_common: html/html_common/html_common_dart2js.dart
indexed_db: indexed_db/dart2js/indexed_db_dart2js.dart
io: unsupported:io/io.dart
isolate: isolate/isolate.dart
js: js/dart2js/js_dart2js.dart
js_util: js_util/dart2js/js_util_dart2js.dart
math: math/math.dart
mirrors: mirrors/mirrors.dart
nativewrappers: html/dartium/nativewrappers.dart
typed_data: typed_data/typed_data.dart
_native_typed_data: _internal/js_runtime/lib/native_typed_data.dart
svg: svg/dart2js/svg_dart2js.dart
web_audio: web_audio/dart2js/web_audio_dart2js.dart
web_gl: web_gl/dart2js/web_gl_dart2js.dart
web_sql: web_sql/dart2js/web_sql_dart2js.dart
_internal: internal/internal.dart
_js_helper: _internal/js_runtime/lib/js_helper.dart
_interceptors: _internal/js_runtime/lib/interceptors.dart
_foreign_helper: _internal/js_runtime/lib/foreign_helper.dart
_isolate_helper: _internal/js_runtime/lib/isolate_helper.dart
_js_mirrors: _internal/js_runtime/lib/js_mirrors.dart
_js_names: _internal/js_runtime/lib/js_names.dart
_js_primitives: _internal/js_runtime/lib/js_primitives.dart
_js_embedded_names: _internal/js_runtime/lib/shared/embedded_names.dart
_async_await_error_codes: _internal/js_runtime/lib/shared/async_await_error_codes.dart
_metadata: html/html_common/metadata.dart
_mirror_helper: unsupported:
