Merge branch 'master' into rewrite-expression-parser

This commit is contained in:
Tim van der Lippe
2018-03-02 16:51:47 +01:00
10 changed files with 281 additions and 63 deletions

5
.gitignore vendored
View File

@@ -11,4 +11,7 @@ dist
# misc
.DS_Store
npm-debug.log
npm-debug.log
# Analyzer output used in the docs
analysis.json

View File

@@ -149,3 +149,14 @@ to run tests on a subset of available browsers, or to run tests remotely using S
See the [`web-component-tester` README](https://github.com/Polymer/web-component-tester) for
information on configuring the tool.
### Viewing the source documentation locally
You can view the updates you make to the source documentation locally with the following steps.
Make sure to rerun step 1 after every change you make.
1. Run `polymer analyze > analysis.json`
1. Run `polymer serve`
1. Open `http://127.0.0.1:PORT/components/polymer/` to view the documentation

View File

@@ -27,6 +27,9 @@ Polymer 2.0 is released, and will be the future focus of Polymer development goi
👀 **Looking for Polymer v1.x?** Please see the [the v1 branch](https://github.com/Polymer/polymer/tree/1.x).
⁉️ **Looking to use Polymer with npm?** Polymer 1.x and 2.x both use `bower` for version management, but v3 and on will use `npm`. Please see our [v3 announcement](https://www.polymer-project.org/blog/2017-08-22-npm-modules.html) and [v3 hand-on](https://www.polymer-project.org/blog/2017-08-23-hands-on-30-preview.html) to use a preview version of v3.
Versions before 3.0 are also published to npm "as-is" and are generally unsupported. These packages are for advanced users who configure their own tooling to work around the differences between Bower and npm packages, like package folder layout.
## Overview
Polymer is a lightweight library built on top of the web standards-based [Web Components](http://webcomponents.org/) APIs, and makes it easier to build your very own custom HTML elements. Creating reusable custom elements - and using elements built by others - can make building complex web applications easier and more efficient. By being based on the Web Components API's built in the browser (or [polyfilled](https://github.com/webcomponents/webcomponentsjs) where needed), Polymer elements are interoperable at the browser level, and can be used with other frameworks or libraries that work with modern browsers.

View File

@@ -26,6 +26,7 @@
"devDependencies": {
"web-component-tester": "^6.0.0",
"test-fixture": "PolymerElements/test-fixture#3.0.0-rc.1",
"iron-component-page": "PolymerElements/iron-component-page#^3.0.1",
"perf-tester": "polymerlabs/perf-tester"
},
"private": true,

View File

@@ -24,7 +24,7 @@ const size = require('gulp-size');
const lazypipe = require('lazypipe');
const closure = require('google-closure-compiler').gulp();
const minimalDocument = require('./util/minimalDocument.js');
const dom5 = require('dom5');
const dom5 = require('dom5/lib/index-next');
const parse5 = require('parse5');
const replace = require('gulp-replace');

View File

@@ -164,6 +164,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
*
* @return {void}
* @override
* @suppress {invalidCasts}
*/
_initializeProperties() {
let proto = Object.getPrototypeOf(this);
@@ -172,7 +173,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
this._registered();
}
super._initializeProperties();
this.root = this;
this.root = /** @type {HTMLElement} */(this);
this.created();
}

View File

@@ -610,6 +610,9 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
*
* These properties are retained unless a value of `null` is set.
*
* Note: This function does not support updating CSS mixins.
* You can not dynamically change the value of an `@apply`.
*
* @param {Object=} properties Bag of custom property key/values to
* apply to this element.
* @return {void}

301
package-lock.json generated
View File

@@ -2735,24 +2735,14 @@
}
},
"dom5": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/dom5/-/dom5-2.3.0.tgz",
"integrity": "sha1-+CBJdb0NrLvltYqKk//B/tD/zSo=",
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/dom5/-/dom5-3.0.0.tgz",
"integrity": "sha512-PbE+7C4Sh1dHDTLNuSDaMUGD1ivDiSZw0L+a9xVUzUKeQ8w3vdzfKHRA07CxcrFZZOa1SGl2nIJ9T49j63q+bg==",
"dev": true,
"requires": {
"@types/clone": "0.1.30",
"@types/node": "6.0.96",
"@types/parse5": "2.2.34",
"clone": "2.1.1",
"parse5": "2.2.3"
},
"dependencies": {
"parse5": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/parse5/-/parse5-2.2.3.tgz",
"integrity": "sha1-DE/EHBAAxea5PUiwP4CDg3g06fY=",
"dev": true
}
"parse5": "4.0.0"
}
},
"domelementtype": {
@@ -3834,9 +3824,9 @@
"dev": true
},
"fs-extra": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz",
"integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==",
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-5.0.0.tgz",
"integrity": "sha512-66Pm4RYbjzdyeuqudYqhFiNBbCIuI9kgRqLPSHIlXHidW8NIQtVdkM1yeZ4lXwuhbTETv3EUGMNHAAw6hiundQ==",
"dev": true,
"requires": {
"graceful-fs": "4.1.11",
@@ -4192,9 +4182,9 @@
}
},
"google-closure-compiler": {
"version": "20171112.0.0",
"resolved": "https://registry.npmjs.org/google-closure-compiler/-/google-closure-compiler-20171112.0.0.tgz",
"integrity": "sha1-eHENtO+J/1QGOdgA5tWffLfPLZg=",
"version": "20180204.0.0",
"resolved": "https://registry.npmjs.org/google-closure-compiler/-/google-closure-compiler-20180204.0.0.tgz",
"integrity": "sha1-sJf/t1DGXKB6LaRp12xVHTuOIaM=",
"dev": true,
"requires": {
"chalk": "1.1.3",
@@ -4325,18 +4315,105 @@
}
},
"gulp-size": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/gulp-size/-/gulp-size-2.1.0.tgz",
"integrity": "sha1-HCtk8X+QcdWr2Z0VS3s0gfj7oSg=",
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/gulp-size/-/gulp-size-3.0.0.tgz",
"integrity": "sha1-yxrI5rqD3t5SQwxH/QOTJPAD/4I=",
"dev": true,
"requires": {
"chalk": "1.1.3",
"gulp-util": "3.0.8",
"gzip-size": "3.0.0",
"object-assign": "4.1.1",
"pretty-bytes": "3.0.1",
"chalk": "2.3.1",
"fancy-log": "1.3.2",
"gzip-size": "4.1.0",
"plugin-error": "0.1.2",
"pretty-bytes": "4.0.2",
"stream-counter": "1.0.0",
"through2": "2.0.3"
},
"dependencies": {
"ansi-styles": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz",
"integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==",
"dev": true,
"requires": {
"color-convert": "1.9.1"
}
},
"arr-diff": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz",
"integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=",
"dev": true,
"requires": {
"arr-flatten": "1.1.0",
"array-slice": "0.2.3"
}
},
"arr-union": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz",
"integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=",
"dev": true
},
"array-slice": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz",
"integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=",
"dev": true
},
"chalk": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.1.tgz",
"integrity": "sha512-QUU4ofkDoMIVO7hcx1iPTISs88wsO8jA92RQIm4JAwZvFGGAV2hSAA1NX7oVj2Ej2Q6NDTcRDjPTFrMCRZoJ6g==",
"dev": true,
"requires": {
"ansi-styles": "3.2.0",
"escape-string-regexp": "1.0.5",
"supports-color": "5.2.0"
}
},
"extend-shallow": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz",
"integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=",
"dev": true,
"requires": {
"kind-of": "1.1.0"
}
},
"has-flag": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
"dev": true
},
"kind-of": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz",
"integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=",
"dev": true
},
"plugin-error": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz",
"integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=",
"dev": true,
"requires": {
"ansi-cyan": "0.1.1",
"ansi-red": "0.1.1",
"arr-diff": "1.1.0",
"arr-union": "2.1.0",
"extend-shallow": "1.1.4"
}
},
"supports-color": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.2.0.tgz",
"integrity": "sha512-F39vS48la4YvTZUPVeTqsjsFNrvcMwrV3RLZINsmHo+7djCvuUzSIeXOnZ5hmjef4bajL1dNccN+tg5XAliO5Q==",
"dev": true,
"requires": {
"has-flag": "3.0.0"
}
}
}
},
"gulp-sourcemaps": {
@@ -4456,14 +4533,67 @@
}
},
"gulp-vulcanize": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/gulp-vulcanize/-/gulp-vulcanize-6.1.0.tgz",
"integrity": "sha1-HAZsWmR+3O49k1cDy0moaZUonEQ=",
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/gulp-vulcanize/-/gulp-vulcanize-7.0.0.tgz",
"integrity": "sha512-SnyChu0+DbCK7QWN0UStPKEG8igkv0feLfx25jLAbrEULTHmvUPhx1BF3vYz6SsA32Azxp5UoU6jNI4Q8PzBPQ==",
"dev": true,
"requires": {
"gulp-util": "3.0.8",
"plugin-error": "0.1.2",
"safe-buffer": "5.1.1",
"through2": "2.0.3",
"vulcanize": "1.16.0"
},
"dependencies": {
"arr-diff": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz",
"integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=",
"dev": true,
"requires": {
"arr-flatten": "1.1.0",
"array-slice": "0.2.3"
}
},
"arr-union": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz",
"integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=",
"dev": true
},
"array-slice": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz",
"integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=",
"dev": true
},
"extend-shallow": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz",
"integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=",
"dev": true,
"requires": {
"kind-of": "1.1.0"
}
},
"kind-of": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz",
"integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=",
"dev": true
},
"plugin-error": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz",
"integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=",
"dev": true,
"requires": {
"ansi-cyan": "0.1.1",
"ansi-red": "0.1.1",
"arr-diff": "1.1.0",
"arr-union": "2.1.0",
"extend-shallow": "1.1.4"
}
}
}
},
"gulplog": {
@@ -4476,12 +4606,13 @@
}
},
"gzip-size": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-3.0.0.tgz",
"integrity": "sha1-VGGI6b3DN/Zzdy+BZgRks4nc5SA=",
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-4.1.0.tgz",
"integrity": "sha1-iuCWJX6r59acRb4rZ8RIEk/7UXw=",
"dev": true,
"requires": {
"duplexer": "0.1.1"
"duplexer": "0.1.1",
"pify": "3.0.0"
}
},
"handle-thing": {
@@ -6670,13 +6801,10 @@
"dev": true
},
"parse5": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz",
"integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==",
"dev": true,
"requires": {
"@types/node": "6.0.96"
}
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz",
"integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==",
"dev": true
},
"parseqs": {
"version": "0.0.5",
@@ -6951,6 +7079,19 @@
"strip-indent": "2.0.0"
},
"dependencies": {
"dom5": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/dom5/-/dom5-2.3.0.tgz",
"integrity": "sha1-+CBJdb0NrLvltYqKk//B/tD/zSo=",
"dev": true,
"requires": {
"@types/clone": "0.1.30",
"@types/node": "6.0.96",
"@types/parse5": "2.2.34",
"clone": "2.1.1",
"parse5": "2.2.3"
}
},
"parse5": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/parse5/-/parse5-2.2.3.tgz",
@@ -7021,6 +7162,27 @@
"integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=",
"dev": true
},
"dom5": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/dom5/-/dom5-2.3.0.tgz",
"integrity": "sha1-+CBJdb0NrLvltYqKk//B/tD/zSo=",
"dev": true,
"requires": {
"@types/clone": "0.1.30",
"@types/node": "6.0.96",
"@types/parse5": "2.2.34",
"clone": "2.1.1",
"parse5": "2.2.3"
},
"dependencies": {
"clone": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz",
"integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs=",
"dev": true
}
}
},
"duplexer2": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
@@ -7313,6 +7475,19 @@
"integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=",
"dev": true
},
"dom5": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/dom5/-/dom5-2.3.0.tgz",
"integrity": "sha1-+CBJdb0NrLvltYqKk//B/tD/zSo=",
"dev": true,
"requires": {
"@types/clone": "0.1.30",
"@types/node": "6.0.96",
"@types/parse5": "2.2.34",
"clone": "2.1.1",
"parse5": "2.2.3"
}
},
"parse5": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/parse5/-/parse5-2.2.3.tgz",
@@ -7506,6 +7681,27 @@
"integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=",
"dev": true
},
"dom5": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/dom5/-/dom5-2.3.0.tgz",
"integrity": "sha1-+CBJdb0NrLvltYqKk//B/tD/zSo=",
"dev": true,
"requires": {
"@types/clone": "0.1.30",
"@types/node": "6.0.101",
"@types/parse5": "2.2.34",
"clone": "2.1.1",
"parse5": "2.2.3"
},
"dependencies": {
"@types/node": {
"version": "6.0.101",
"resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.101.tgz",
"integrity": "sha512-IQ7V3D6+kK1DArTqTBrnl3M+YgJZLw8ta8w3Q9xjR79HaJzMAoTbZ8TNzUTztrkCKPTqIstE2exdbs1FzsYLUw==",
"dev": true
}
}
},
"etag": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/etag/-/etag-1.7.0.tgz",
@@ -7645,13 +7841,10 @@
"dev": true
},
"pretty-bytes": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-3.0.1.tgz",
"integrity": "sha1-J9AAjXeAY6C0gRuzXHnxvV1fvM8=",
"dev": true,
"requires": {
"number-is-nan": "1.0.1"
}
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-4.0.2.tgz",
"integrity": "sha1-sr+C5zUNZcbDOqlaqlpPYyf2HNk=",
"dev": true
},
"pretty-hrtime": {
"version": "1.0.3",
@@ -10138,13 +10331,13 @@
"integrity": "sha1-6Cekk6RDsVbhtYKi5MO9wAQPLuc=",
"dev": true,
"requires": {
"@types/node": "6.0.96"
"@types/node": "6.0.101"
},
"dependencies": {
"@types/node": {
"version": "6.0.96",
"resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.96.tgz",
"integrity": "sha512-fsOOY6tMQ3jCB2wD51XFDmmpgm4wVKkJECdcVRqapbJEa7awJDcr+SaH8toz+4r4KW8YQ3M7ybXMoSDo1QGewA==",
"version": "6.0.101",
"resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.101.tgz",
"integrity": "sha512-IQ7V3D6+kK1DArTqTBrnl3M+YgJZLw8ta8w3Q9xjR79HaJzMAoTbZ8TNzUTztrkCKPTqIstE2exdbs1FzsYLUw==",
"dev": true
}
}

View File

@@ -14,20 +14,20 @@
"@webcomponents/webcomponentsjs": "^1.1.0",
"babel-preset-minify": "^0.2.0",
"del": "^3.0.0",
"dom5": "^2.3.0",
"dom5": "^3.0.0",
"eslint-plugin-html": "^4.0.1",
"fs-extra": "^4.0.3",
"google-closure-compiler": "^20171112.0.0",
"fs-extra": "^5.0.0",
"google-closure-compiler": "^20180204.0.0",
"gulp": "^3.9.1",
"gulp-babel": "^6.1.2",
"gulp-eslint": "^4.0.0",
"gulp-if": "^2.0.1",
"gulp-replace": "^0.6.1",
"gulp-size": "^2.1.0",
"gulp-vulcanize": "^6.0.1",
"gulp-size": "^3.0.0",
"gulp-vulcanize": "^7.0.0",
"lazypipe": "^1.0.1",
"merge-stream": "^1.0.1",
"parse5": "^3.0.3",
"parse5": "^4.0.0",
"polymer-build": "^2.1.1",
"run-sequence": "^2.2.0",
"through2": "^2.0.0",

View File

@@ -198,6 +198,9 @@ declare namespace Polymer {
*
* These properties are retained unless a value of `null` is set.
*
* Note: This function does not support updating CSS mixins.
* You can not dynamically change the value of an `@apply`.
*
* @param properties Bag of custom property key/values to
* apply to this element.
*/