Ports all features except where JS interop is blocking us (declaration/path.js and instance/style.js). In particular, this has:
// src/declaration/attributes.js
// src/declaration/events.js
// src/declaration/polymer-element.js
// src/declaration/properties.js
// src/declaration/prototype.js
// src/declaration/styles.js
// src/instance/attributes.js
// src/instance/base.js
// src/instance/events.js
// src/instance/mdv.js
// src/instance/properties.js
// src/instance/utils.js
// src/lib/deserialize.js
// src/lib/job.js
// src/lib/dom.js -- not needed in Dart
// src/lib/lang.js -- not needed in Dart
// src/lib/super.js -- not needed in Dart
There's also a big architectural change: polymer-element data is now stored in the PolymerDeclaration class, which is separate from PolymerElement. This allows us to avoid duplicate work on every constructor, and should significantly speed up instance creation.
All code is from the same revision:
https://github.com/Polymer/polymer/blob/4dc481c11505991a7c43228d3797d28f21267779
The remaining unported files are for relatively minor features. "declaration/path.js" is for asset URL resolution, and we might have a Pub-based solution instead. "instance/style.js" has an opt-in, advanced style polyfill. It needs "ShadowCSS.shimPolyfillDirectives", and probably isn't too hard to make work in a follow up change.
Other changes:
* attributeChanged lifecycle method is implemented.
* ObservableAnnotation is public so Polymer's @published can subclass it
* bindProperty renamed to onPropertyChange to avoid conflict with Polymer member of the same name.
* polymer/lib/boot.js preload's polymer-element and link[rel=stylesheet]
R=blois@google.com
Review URL: https://codereview.chromium.org//24149003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28134 260f80e4-7a28-3924-810f-c04153c831b5
changes:
- deletes the old compiler entirely and switches over to the new linter.
- adds a new build_helper.dart (to replace components_build.dart)
- defines 'lint' and 'deploy' methods that can be called from build.dart
- includes options to limit the scope of what's an entrypoint, and to override
the currentPackage and packageDirs
- includes the '--deploy' flag to address: dartbug.com/13050
R=jmesserly@google.com
Review URL: https://codereview.chromium.org//23898009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27403 260f80e4-7a28-3924-810f-c04153c831b5