Index: packages/js/js.dart |
diff --git a/packages/js/js.dart b/packages/js/js.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..17b1ded20fe6c3cf7890b21f642afb89befe0b89 |
--- /dev/null |
+++ b/packages/js/js.dart |
@@ -0,0 +1,32 @@ |
+// 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. |
+ |
+/// Allows interoperability with Javascript APIs. |
+library js; |
+ |
+export 'dart:js' show allowInterop, allowInteropCaptureThis; |
+ |
+/// A metadata annotation that indicates that a Library, Class, or member is |
+/// implemented directly in JavaScript. All external members of a class or |
+/// library with this annotation implicitly have it as well. |
+/// |
+/// Specifying [name] customizes the JavaScript name to use. By default the |
+/// dart name is used. It is not valid to specify a custom [name] for class |
+/// instance members. |
+class JS { |
+ final String name; |
+ const JS([this.name]); |
+} |
+ |
+class _Anonymous { |
+ const _Anonymous(); |
+} |
+ |
+/// A metadata annotation that indicates that a @JS annotated class is |
+/// structural and does not have a known JavaScript prototype. |
+/// |
+/// Factory constructors for anonymous JavaScript classes desugar to creating |
+/// JavaScript object literals with name-value pairs corresponding to the |
+/// parameter names and values. |
+const _Anonymous anonymous = const _Anonymous(); |