diff --git a/polymer-micro.html b/polymer-micro.html
index 818fa15a02..4acbc14eec 100644
--- a/polymer-micro.html
+++ b/polymer-micro.html
@@ -17,21 +17,17 @@
diff --git a/polymer.html b/polymer.html
index a56f23c92b..114fa83171 100644
--- a/polymer.html
+++ b/polymer.html
@@ -21,34 +21,30 @@
diff --git a/src/features/micro/extends.html b/src/features/micro/extends.html
index fe00835c02..53805f4253 100644
--- a/src/features/micro/extends.html
+++ b/src/features/micro/extends.html
@@ -12,52 +12,67 @@
/**
* Support `extends` property (for type-extension only).
*
- * If the mixin is String-valued, the corresponding Polymer module
- * is mixed in.
+ * If the mixin is String-valued, the corresponding Polymer module
+ * is mixed in.
*
* Polymer({
- * mixins: [
- * someObject,
- * 'PolymerMixinModuleName'
- * ],
+ * is: 'pro-input',
+ * extends: 'input',
* ...
* });
+ *
+ * Type-extension objects are created using `is` notation in HTML, or via
+ * the secondary argument to `document.createElement` (the type-extension
+ * rules are part of the Custom Elements specification, not something
+ * created by Polymer).
+ *
+ * Example:
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
diff --git a/src/features/mini/shady.html b/src/features/mini/shady.html
index b5e6c88e2e..a9819f1df1 100644
--- a/src/features/mini/shady.html
+++ b/src/features/mini/shady.html
@@ -11,14 +11,14 @@
diff --git a/src/features/mini/template.html b/src/features/mini/template.html
index 6c754418bc..d0655d8b61 100644
--- a/src/features/mini/template.html
+++ b/src/features/mini/template.html
@@ -15,50 +15,45 @@
* The `template` feature locates and instances a `` element
* corresponding to the current Polymer prototype.
*
- * As of this writing, the `` element must be immediately
- * preceeding the script that invokes `Polymer()`. This is not the final
- * API.
+ * The `` element may be immediately preceeding the script that
+ * invokes `Polymer()`.
*
* @class standard feature: template
*/
- using('Base', function(Base) {
-
- var domModule = document.createElement('dom-module');
-
- Base.addFeature({
-
- _prepTemplate: function() {
- // locate template using dom-module
- this._template = this._template || domModule.import(this.is, 'template');
- // fallback to look at the node previous to the currentScript.
- if (!this._template) {
- var script = document._currentScript || document.currentScript;
- var prev = script && script.previousElementSibling;
- if (prev && prev.localName === 'template') {
- this._template = prev;
- }
- }
- },
-
- _stampTemplate: function() {
- if (this._template) {
- // note: root is now a fragment which can be manipulated
- // while not attached to the element.
- this.root = this.instanceTemplate(this._template);
+ Polymer.Base.addFeature({
+
+ _prepTemplate: function() {
+ // locate template using dom-module
+ this._template =
+ this._template || Polymer.DomModule.import(this.is, 'template');
+ // fallback to look at the node previous to the currentScript.
+ if (!this._template) {
+ var script = document._currentScript || document.currentScript;
+ var prev = script && script.previousElementSibling;
+ if (prev && prev.localName === 'template') {
+ this._template = prev;
}
- },
-
- instanceTemplate: function(template) {
- var dom = document.importNode(template._content || template.content, true);
- // TODO(sjmiles): hello prollyfill
- if (window.CustomElements && CustomElements.upgradeSubtree) {
- CustomElements.upgradeSubtree(dom);
- }
- return dom;
}
+ },
- });
+ _stampTemplate: function() {
+ if (this._template) {
+ // note: root is now a fragment which can be manipulated
+ // while not attached to the element.
+ this.root = this.instanceTemplate(this._template);
+ }
+ },
+
+ instanceTemplate: function(template) {
+ var dom =
+ document.importNode(template._content || template.content, true);
+ // TODO(sjmiles): hello prollyfill
+ if (window.CustomElements && CustomElements.upgradeSubtree) {
+ CustomElements.upgradeSubtree(dom);
+ }
+ return dom;
+ }
});
diff --git a/src/features/standard/annotations.html b/src/features/standard/annotations.html
index 885f6423a7..9c2fb2c02c 100644
--- a/src/features/standard/annotations.html
+++ b/src/features/standard/annotations.html
@@ -113,83 +113,81 @@
*/
- using(['Base', 'Annotations', 'ResolveUrl'],
- function(Base, Annotations, resolver) {
-
- Base.addFeature({
-
- // registration-time
-
- _prepAnnotations: function() {
- // TODO(sorvell): ad hoc method of plugging behavior into Annotations.
- Annotations.prepElement = this._prepElement.bind(this);
- this._annotes = !this._template ? []
- : Annotations.parseAnnotations(this._template);
- Annotations.prepElement = null;
- },
+ Polymer.Base.addFeature({
+
+ // registration-time
+
+ _prepAnnotations: function() {
+ if (!this._template) {
+ this._annotes = [];
+ } else {
+ // TODO(sorvell): ad hoc method of plugging behavior into Annotations
+ Polymer.Annotations.prepElement = this._prepElement.bind(this);
+ this._annotes = Polymer.Annotations.parseAnnotations(this._template);
+ Polymer.Annotations.prepElement = null;
+ }
+ },
- _prepElement: function(element) {
- resolver.resolveAttrs(element, this._template.ownerDocument);
- },
+ _prepElement: function(element) {
+ Polymer.ResolveUrl.resolveAttrs(element, this._template.ownerDocument);
+ },
- // instance-time
+ // instance-time
- findAnnotatedNode: Annotations.findAnnotatedNode,
+ findAnnotatedNode: Polymer.Annotations.findAnnotatedNode,
- // marshal all teh things
- _marshalAnnotationReferences: function() {
- if (this._template) {
- this._marshalTemplateContent();
- this._marshalIdNodes();
- this._marshalAnnotatedNodes();
- this._marshalAnnotatedListeners();
+ // marshal all teh things
+ _marshalAnnotationReferences: function() {
+ if (this._template) {
+ this._marshalTemplateContent();
+ this._marshalIdNodes();
+ this._marshalAnnotatedNodes();
+ this._marshalAnnotatedListeners();
+ }
+ },
+
+ // nested template contents have been stored prototypically to avoid
+ // unnecessary duplication, here we put references to the
+ // indirected contents onto the nested template instances
+ _marshalTemplateContent: function() {
+ this._annotes.forEach(function(note) {
+ if (note.templateContent) {
+ var template = this.findAnnotatedNode(this.root, note);
+ template._content = note.templateContent;
}
- },
-
- // nested template contents have been stored prototypically to avoid
- // unnecessary duplication, here we put references to the
- // indirected contents onto the nested template instances
- _marshalTemplateContent: function() {
- this._annotes.forEach(function(note) {
- if (note.templateContent) {
- var template = this.findAnnotatedNode(this.root, note);
- template._content = note.templateContent;
- }
- }, this);
- },
-
- // construct `$` map (from id annotations)
- _marshalIdNodes: function() {
- this.$ = {};
- this._annotes.forEach(function(a) {
- if (a.id) {
- this.$[a.id] = Annotations.findAnnotatedNode(this.root, a);
- }
- }, this);
- },
+ }, this);
+ },
- // concretize `_nodes` map (from anonymous annotations)
- _marshalAnnotatedNodes: function() {
- if (this._nodes) {
- this._nodes = this._nodes.map(function(a) {
- return Annotations.findAnnotatedNode(this.root, a);
- }, this);
+ // construct `$` map (from id annotations)
+ _marshalIdNodes: function() {
+ this.$ = {};
+ this._annotes.forEach(function(a) {
+ if (a.id) {
+ this.$[a.id] = this.findAnnotatedNode(this.root, a);
}
- },
-
- // install event listeners (from event annotations)
- _marshalAnnotatedListeners: function() {
- this._annotes.forEach(function(a) {
- if (a.events && a.events.length) {
- var node = Annotations.findAnnotatedNode(this.root, a);
- a.events.forEach(function(e) {
- this.listen(node, e.name, e.value);
- }, this);
- }
+ }, this);
+ },
+
+ // concretize `_nodes` map (from anonymous annotations)
+ _marshalAnnotatedNodes: function() {
+ if (this._nodes) {
+ this._nodes = this._nodes.map(function(a) {
+ return this.findAnnotatedNode(this.root, a);
}, this);
}
+ },
- });
+ // install event listeners (from event annotations)
+ _marshalAnnotatedListeners: function() {
+ this._annotes.forEach(function(a) {
+ if (a.events && a.events.length) {
+ var node = this.findAnnotatedNode(this.root, a);
+ a.events.forEach(function(e) {
+ this.listen(node, e.name, e.value);
+ }, this);
+ }
+ }, this);
+ }
});
diff --git a/src/features/standard/configure.html b/src/features/standard/configure.html
index 7e89268c43..266bd0ebea 100644
--- a/src/features/standard/configure.html
+++ b/src/features/standard/configure.html
@@ -41,123 +41,119 @@
directly (on-foo-changed).
*/
- using(['Base'], function(Base) {
-
- Base.addFeature({
-
- // storage for configuration
- _setupConfigure: function(initialConfig) {
- this._config = initialConfig || {};
- this._handlers = [];
- },
-
- // static attributes are deserialized into _config
- _takeAttributes: function() {
- this._takeAttributesToModel(this._config);
- },
-
- // at configure time values are stored in _config
- _configValue: function(name, value) {
- this._config[name] = value;
- },
-
- // configure: returns user supplied default property values
- // combines with _config to create final property values
- _configure: function() {
- this._beforeConfigure();
- var i;
- // get individual default values from property config
- var config = {};
- for (i in this.properties) {
- var c = this.properties[i];
- if (c.value !== undefined) {
- if (typeof c.value == 'function') {
- config[i] = c.value.call(this, this._config);
- } else {
- config[i] = c.value;
- }
+ Polymer.Base.addFeature({
+
+ // storage for configuration
+ _setupConfigure: function(initialConfig) {
+ this._config = initialConfig || {};
+ this._handlers = [];
+ },
+
+ // static attributes are deserialized into _config
+ _takeAttributes: function() {
+ this._takeAttributesToModel(this._config);
+ },
+
+ // at configure time values are stored in _config
+ _configValue: function(name, value) {
+ this._config[name] = value;
+ },
+
+ // configure: returns user supplied default property values
+ // combines with _config to create final property values
+ _configure: function() {
+ this._beforeConfigure();
+ var i;
+ // get individual default values from property config
+ var config = {};
+ for (i in this.properties) {
+ var c = this.properties[i];
+ if (c.value !== undefined) {
+ if (typeof c.value == 'function') {
+ config[i] = c.value.call(this, this._config);
+ } else {
+ config[i] = c.value;
}
}
- // get add'l default values from central configure
- mixin(config, this.configure(this._config));
- // combine defaults returned from configure with inputs in _config
- mixin(config, this._config);
- // this is the new _config, which are the final values to be applied
- this._config = config;
- // pass configuration data to bindings
- this._distributeConfig(this._config);
- },
-
- // system override point
- _beforeConfigure: function() {},
-
- // distribute config values to bound nodes.
- _distributeConfig: function(config) {
- var fx$ = this._propertyEffects;
- if (fx$) {
- for (var p in config) {
- var fx = fx$[p];
- if (fx) {
- for (var i=0, l=fx.length, x; (i
diff --git a/src/features/standard/resolveUrl.html b/src/features/standard/resolveUrl.html
index e3579e9961..8e22806766 100644
--- a/src/features/standard/resolveUrl.html
+++ b/src/features/standard/resolveUrl.html
@@ -8,15 +8,12 @@
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-->
diff --git a/src/features/standard/styling.html b/src/features/standard/styling.html
index c65c9a8d7e..484003e39c 100644
--- a/src/features/standard/styling.html
+++ b/src/features/standard/styling.html
@@ -7,41 +7,40 @@
Code distributed by Google as part of the polymer project is also
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-->
+
+
diff --git a/src/features/standard/utils.html b/src/features/standard/utils.html
index 9bc2b40597..57bafccf9c 100644
--- a/src/features/standard/utils.html
+++ b/src/features/standard/utils.html
@@ -13,9 +13,7 @@
diff --git a/src/lib/annotations/annotations.html b/src/lib/annotations/annotations.html
index 8ac10f955c..226d65a136 100644
--- a/src/lib/annotations/annotations.html
+++ b/src/lib/annotations/annotations.html
@@ -62,217 +62,212 @@
* @class Template feature
*/
- modulate('Annotations', function() {
+ // null-array (shared empty array to avoid null-checks)
+ Polymer.nar = [];
- // null-array (shared empty array to avoid null-checks)
- var nar = [];
+ Polymer.Annotations = {
- var Annotations = {
+ // preprocess-time
- // preprocess-time
+ // construct and return a list of annotation records
+ // by scanning `template`'s content
+ //
+ parseAnnotations: function(template) {
+ var list = [];
+ var content = template._content || template.content;
+ this._parseNodeAnnotations(content, list);
+ return list;
+ },
- // construct and return a list of annotation records
- // by scanning `template`'s content
- //
- parseAnnotations: function(template) {
- var list = [];
- var content = template._content || template.content;
- this._parseNodeAnnotations(content, list);
- return list;
- },
+ // add annotations gleaned from subtree at `node` to `list`
+ _parseNodeAnnotations: function(node, list) {
+ return node.nodeType === Node.TEXT_NODE ?
+ this._parseTextNodeAnnotation(node, list) :
+ // TODO(sjmiles): are there other nodes we may encounter
+ // that are not TEXT_NODE but also not ELEMENT?
+ this._parseElementAnnotations(node, list);
+ },
- // add annotations gleaned from subtree at `node` to `list`
- _parseNodeAnnotations: function(node, list) {
- return node.nodeType === Node.TEXT_NODE ?
- this._parseTextNodeAnnotation(node, list) :
- // TODO(sjmiles): are there other nodes we may encounter
- // that are not TEXT_NODE but also not ELEMENT?
- this._parseElementAnnotations(node, list);
- },
-
- // add annotations gleaned from TextNode `node` to `list`
- _parseTextNodeAnnotation: function(node, list) {
- var v = node.textContent, escape = v.slice(0, 2);
- if (escape === '{{' || escape === '[[') {
- // NOTE: use a space here so the textNode remains; some browsers
- // (IE) evacipate an empty textNode.
- node.textContent = ' ';
- var annote = {
- bindings: [{
- kind: 'text',
- mode: escape[0],
- value: v.slice(2, -2)
- }]
- };
- list.push(annote);
- return annote;
- }
- },
-
- // add annotations gleaned from Element `node` to `list`
- _parseElementAnnotations: function(element, list) {
+ // add annotations gleaned from TextNode `node` to `list`
+ _parseTextNodeAnnotation: function(node, list) {
+ var v = node.textContent, escape = v.slice(0, 2);
+ if (escape === '{{' || escape === '[[') {
+ // NOTE: use a space here so the textNode remains; some browsers
+ // (IE) evacipate an empty textNode.
+ node.textContent = ' ';
var annote = {
- bindings: [],
- events: []
+ bindings: [{
+ kind: 'text',
+ mode: escape[0],
+ value: v.slice(2, -2)
+ }]
};
- this._parseChildNodesAnnotations(element, annote, list);
- // TODO(sjmiles): is this for non-ELEMENT nodes? If so, we should
- // change the contract of this method, or filter these out above.
- if (element.attributes) {
- this._parseNodeAttributeAnnotations(element, annote, list);
- // TODO(sorvell): ad hoc callback for doing work on elements while
- // leveraging annotator's tree walk.
- // Consider adding an node callback registry and moving specific
- // processing out of this module.
- if (this.prepElement) {
- this.prepElement(element);
- }
- }
- if (annote.bindings.length || annote.events.length || annote.id) {
- list.push(annote);
- }
+ list.push(annote);
return annote;
- },
+ }
+ },
- // add annotations gleaned from children of `root` to `list`, `root`'s
- // `annote` is supplied as it is the annote.parent of added annotations
- _parseChildNodesAnnotations: function(root, annote, list, callback) {
- if (root.firstChild) {
- for (var i=0, node=root.firstChild; node; node=node.nextSibling, i++){
- if (node.localName === 'template') {
- // TODO(sjmiles): simply altering the .content reference didn't
- // work (there was some confusion, might need verification)
- var content = document.createDocumentFragment();
- content.appendChild(node.content);
- // TODO(sjmiles): using `nar` to avoid unnecessary allocation;
- // in general the handling of these arrays needs some cleanup
- // in this module
- list.push({
- bindings: nar,
- events: nar,
- templateContent: content,
- parent: annote,
- index: i
- });
- }
- //
- var childAnnotation = this._parseNodeAnnotations(node, list, callback);
- if (childAnnotation) {
- childAnnotation.parent = annote;
- childAnnotation.index = i;
- }
- }
+ // add annotations gleaned from Element `node` to `list`
+ _parseElementAnnotations: function(element, list) {
+ var annote = {
+ bindings: [],
+ events: []
+ };
+ this._parseChildNodesAnnotations(element, annote, list);
+ // TODO(sjmiles): is this for non-ELEMENT nodes? If so, we should
+ // change the contract of this method, or filter these out above.
+ if (element.attributes) {
+ this._parseNodeAttributeAnnotations(element, annote, list);
+ // TODO(sorvell): ad hoc callback for doing work on elements while
+ // leveraging annotator's tree walk.
+ // Consider adding an node callback registry and moving specific
+ // processing out of this module.
+ if (this.prepElement) {
+ this.prepElement(element);
}
- },
+ }
+ if (annote.bindings.length || annote.events.length || annote.id) {
+ list.push(annote);
+ }
+ return annote;
+ },
- // add annotation data from attributes to the `annotation` for node `node`
- // TODO(sjmiles): the distinction between an `annotation` and
- // `annotation data` is not as clear as it could be
- _parseNodeAttributeAnnotations: function(node, annotation) {
- for (var i=0, a; (a=node.attributes[i]); i++) {
- var n = a.name, v = a.value;
- // id
- if (n === 'id') {
- annotation.id = v;
- }
- // events (on-*)
- else if (n.slice(0, 3) === 'on-') {
- i--;
- node.removeAttribute(n);
- annotation.events.push({
- name: n.slice(3),
- value: v
+ // add annotations gleaned from children of `root` to `list`, `root`'s
+ // `annote` is supplied as it is the annote.parent of added annotations
+ _parseChildNodesAnnotations: function(root, annote, list, callback) {
+ if (root.firstChild) {
+ for (var i=0, node=root.firstChild; node; node=node.nextSibling, i++){
+ if (node.localName === 'template') {
+ // TODO(sjmiles): simply altering the .content reference didn't
+ // work (there was some confusion, might need verification)
+ var content = document.createDocumentFragment();
+ content.appendChild(node.content);
+ // TODO(sjmiles): using `nar` to avoid unnecessary allocation;
+ // in general the handling of these arrays needs some cleanup
+ // in this module
+ list.push({
+ bindings: Polymer.nar,
+ events: Polymer.nar,
+ templateContent: content,
+ parent: annote,
+ index: i
});
}
- // bindings (other attributes)
- else {
- var b = this._parseNodeAttributeAnnotation(node, n, v);
- if (b) {
- i--;
- annotation.bindings.push(b);
- }
+ //
+ var childAnnotation = this._parseNodeAnnotations(node, list, callback);
+ if (childAnnotation) {
+ childAnnotation.parent = annote;
+ childAnnotation.index = i;
}
}
- },
+ }
+ },
- // construct annotation data from a generic attribute, or undefined
- _parseNodeAttributeAnnotation: function(node, n, v) {
- var mode = '', escape = v.slice(0, 2), name = n;
- if (escape === '{{' || escape === '[[') {
- // Mode (one-way or two)
- mode = escape[0];
- v = v.slice(2, -2);
- // Negate
- var not = false;
- if (v[0] == '!') {
- v = v.substring(1);
- not = true;
- }
- // Attribute or property
- var kind = 'property';
- if (n[n.length-1] == '$') {
- name = n.slice(0, -1);
- kind = 'attribute';
- }
- // Remove annotation
+ // add annotation data from attributes to the `annotation` for node `node`
+ // TODO(sjmiles): the distinction between an `annotation` and
+ // `annotation data` is not as clear as it could be
+ _parseNodeAttributeAnnotations: function(node, annotation) {
+ for (var i=0, a; (a=node.attributes[i]); i++) {
+ var n = a.name, v = a.value;
+ // id
+ if (n === 'id') {
+ annotation.id = v;
+ }
+ // events (on-*)
+ else if (n.slice(0, 3) === 'on-') {
+ i--;
node.removeAttribute(n);
- // Case hackery: attributes are lower-case, but bind targets
- // (properties) are case sensitive. Gambit is to map dash-case to
- // camel-case: `foo-bar` becomes `fooBar`.
- // Attribute bindings are excepted.
- if (kind === 'property') {
- name = Annotations.dashToCamelCase(name);
+ annotation.events.push({
+ name: n.slice(3),
+ value: v
+ });
+ }
+ // bindings (other attributes)
+ else {
+ var b = this._parseNodeAttributeAnnotation(node, n, v);
+ if (b) {
+ i--;
+ annotation.bindings.push(b);
}
- return {
- kind: kind,
- mode: mode,
- name: name,
- value: v,
- negate: not
- };
}
- },
+ }
+ },
- dashToCamelCase: function(dash) {
- // TODO(sjmiles): is rejection test actually helping perf?
- if (dash.indexOf('-') < 0) {
- return dash;
+ // construct annotation data from a generic attribute, or undefined
+ _parseNodeAttributeAnnotation: function(node, n, v) {
+ var mode = '', escape = v.slice(0, 2), name = n;
+ if (escape === '{{' || escape === '[[') {
+ // Mode (one-way or two)
+ mode = escape[0];
+ v = v.slice(2, -2);
+ // Negate
+ var not = false;
+ if (v[0] == '!') {
+ v = v.substring(1);
+ not = true;
}
- return dash.replace(/-([a-z])/g,
- function(m) {
- return m[1].toUpperCase();
- }
- );
- },
+ // Attribute or property
+ var kind = 'property';
+ if (n[n.length-1] == '$') {
+ name = n.slice(0, -1);
+ kind = 'attribute';
+ }
+ // Remove annotation
+ node.removeAttribute(n);
+ // Case hackery: attributes are lower-case, but bind targets
+ // (properties) are case sensitive. Gambit is to map dash-case to
+ // camel-case: `foo-bar` becomes `fooBar`.
+ // Attribute bindings are excepted.
+ if (kind === 'property') {
+ name = Polymer.Annotations.dashToCamelCase(name);
+ }
+ return {
+ kind: kind,
+ mode: mode,
+ name: name,
+ value: v,
+ negate: not
+ };
+ }
+ },
- camelToDashCase: function(camel) {
- return camel.replace(/([a-z][A-Z])/g,
- function (g) {
- return g[0] + '-' + g[1].toLowerCase()
- }
- );
- },
+ dashToCamelCase: function(dash) {
+ // TODO(sjmiles): is rejection test actually helping perf?
+ if (dash.indexOf('-') < 0) {
+ return dash;
+ }
+ return dash.replace(/-([a-z])/g,
+ function(m) {
+ return m[1].toUpperCase();
+ }
+ );
+ },
- // instance-time
+ camelToDashCase: function(camel) {
+ return camel.replace(/([a-z][A-Z])/g,
+ function (g) {
+ return g[0] + '-' + g[1].toLowerCase()
+ }
+ );
+ },
- _localSubTree: function(node, host) {
- return (node === host) ? node.childNodes :
- (node.lightChildren || node.childNodes);
- },
+ // instance-time
- findAnnotatedNode: function(root, annote) {
- // recursively ascend tree until we hit root
- var parent = annote.parent &&
- Annotations.findAnnotatedNode(root, annote.parent);
- // unwind the stack, returning the indexed node at each level
- return !parent ? root :
- Annotations._localSubTree(parent, root)[annote.index];
- }
+ _localSubTree: function(node, host) {
+ return (node === host) ? node.childNodes :
+ (node.lightChildren || node.childNodes);
+ },
- };
+ findAnnotatedNode: function(root, annote) {
+ // recursively ascend tree until we hit root
+ var parent = annote.parent &&
+ Polymer.Annotations.findAnnotatedNode(root, annote.parent);
+ // unwind the stack, returning the indexed node at each level
+ return !parent ? root :
+ Polymer.Annotations._localSubTree(parent, root)[annote.index];
+ }
- return Annotations;
+ };
- });
diff --git a/src/lib/array-splice.html b/src/lib/array-splice.html
index e88ac06cb3..f51279a717 100644
--- a/src/lib/array-splice.html
+++ b/src/lib/array-splice.html
@@ -8,7 +8,8 @@
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-->
\ No newline at end of file
diff --git a/src/lib/async.html b/src/lib/async.html
index a7dbc9e4ae..652bf53c82 100644
--- a/src/lib/async.html
+++ b/src/lib/async.html
@@ -9,7 +9,7 @@
-->
diff --git a/src/lib/base.html b/src/lib/base.html
index 7870cb6956..84b71b2e7e 100644
--- a/src/lib/base.html
+++ b/src/lib/base.html
@@ -9,97 +9,95 @@
-->
diff --git a/src/lib/bind/bind-annotations.html b/src/lib/bind/bind-annotations.html
index a2c6e4e444..84e280cb38 100644
--- a/src/lib/bind/bind-annotations.html
+++ b/src/lib/bind/bind-annotations.html
@@ -10,71 +10,65 @@
diff --git a/src/lib/bind/bind-effects.html b/src/lib/bind/bind-effects.html
index a73823049a..652e5fd00a 100644
--- a/src/lib/bind/bind-effects.html
+++ b/src/lib/bind/bind-effects.html
@@ -9,179 +9,179 @@
-->
diff --git a/src/lib/collection.html b/src/lib/collection.html
index 5b77e39ef8..b11477d552 100644
--- a/src/lib/collection.html
+++ b/src/lib/collection.html
@@ -13,12 +13,10 @@
diff --git a/src/lib/css-parse.html b/src/lib/css-parse.html
index e7a75a11f7..97deac195c 100644
--- a/src/lib/css-parse.html
+++ b/src/lib/css-parse.html
@@ -4,7 +4,7 @@
Extremely simple css parser. Intended to be not more than what we need
and definitely not necessarly correct =).
*/
-modulate('CssParse', function() {
+(function() {
// given a string of css, return a simple rule tree
function parse(text) {
@@ -121,11 +121,11 @@
};
// exports
- return {
+ Polymer.CssParse = {
parse: parse,
stringify: stringify
};
-});
+})();
\ No newline at end of file
diff --git a/src/lib/debounce.html b/src/lib/debounce.html
index fa41fae13d..f787670173 100644
--- a/src/lib/debounce.html
+++ b/src/lib/debounce.html
@@ -9,7 +9,7 @@
-->
diff --git a/src/lib/dom-api.html b/src/lib/dom-api.html
index cbd20403d3..b0700aabfa 100644
--- a/src/lib/dom-api.html
+++ b/src/lib/dom-api.html
@@ -10,7 +10,10 @@
diff --git a/src/lib/polymer.html b/src/lib/polymer.html
new file mode 100644
index 0000000000..d4fef6916d
--- /dev/null
+++ b/src/lib/polymer.html
@@ -0,0 +1,68 @@
+
+
+
diff --git a/src/lib/resolve-url.html b/src/lib/resolve-url.html
index de110cb06a..c336ac2f40 100644
--- a/src/lib/resolve-url.html
+++ b/src/lib/resolve-url.html
@@ -9,7 +9,7 @@
-->
\ No newline at end of file
diff --git a/src/lib/settings.html b/src/lib/settings.html
index 4dff8b338d..67fb88881d 100644
--- a/src/lib/settings.html
+++ b/src/lib/settings.html
@@ -8,7 +8,8 @@
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-->
\ No newline at end of file
diff --git a/src/lib/style-transformer.html b/src/lib/style-transformer.html
index 6dce7427f4..3ab4b79177 100644
--- a/src/lib/style-transformer.html
+++ b/src/lib/style-transformer.html
@@ -7,10 +7,12 @@
Code distributed by Google as part of the polymer project is also
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-->
+
+
diff --git a/src/lib/style-util.html b/src/lib/style-util.html
index 831c10b348..26b7effb57 100644
--- a/src/lib/style-util.html
+++ b/src/lib/style-util.html
@@ -7,19 +7,21 @@
Code distributed by Google as part of the polymer project is also
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-->
+
+
\ No newline at end of file
diff --git a/src/lib/template/templatizer.html b/src/lib/template/templatizer.html
index 98e707a99b..bab1c06f93 100644
--- a/src/lib/template/templatizer.html
+++ b/src/lib/template/templatizer.html
@@ -10,9 +10,7 @@
\ No newline at end of file
diff --git a/src/lib/template/x-repeat.html b/src/lib/template/x-repeat.html
index 3c6ac4f59d..c36ad2a529 100644
--- a/src/lib/template/x-repeat.html
+++ b/src/lib/template/x-repeat.html
@@ -52,7 +52,7 @@
},
mixins: [
- 'Templatizer'
+ Polymer.Templatizer
],
observers: {
diff --git a/src/lib/template/x-template.html b/src/lib/template/x-template.html
index 485acb1db6..da2430c2ea 100644
--- a/src/lib/template/x-template.html
+++ b/src/lib/template/x-template.html
@@ -27,7 +27,7 @@
extends: 'template',
mixins: [
- 'Templatizer'
+ Polymer.Templatizer
],
ready: function() {
diff --git a/src/polymer.html b/src/polymer.html
index d82c50c238..d0d8e78165 100644
--- a/src/polymer.html
+++ b/src/polymer.html
@@ -7,55 +7,8 @@
Code distributed by Google as part of the polymer project is also
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-->
-
+
+
-
-
diff --git a/test/unit/async.html b/test/unit/async.html
index 3f0b18eb5f..4462dd4304 100644
--- a/test/unit/async.html
+++ b/test/unit/async.html
@@ -13,7 +13,7 @@
-
+
@@ -21,9 +21,7 @@
-
+
+
+
+
css-parse
+
+
+