74 Commits
Author SHA1 Message Date
Peter Burns 26171d3385 Add release instructions based on what dfreedm and I figured out. (#5743) 2024-10-07 16:00:43 -07:00
Peter Burns 3d7e77854e 3.5.2 2024-10-07 14:33:37 -07:00
Peter Burns 443aadbbc8 Hack package-lock 2024-10-07 14:30:56 -07:00
Peter Burns cc635c1010 Bump version back so that np can be the one to bump the version. 2024-10-07 14:23:50 -07:00
Peter Burns ba58ae0f86 Correct public date. 2024-10-07 14:11:14 -07:00
Peter Burns 810b3fbd56 Update version numbers. 2024-10-07 14:10:29 -07:00
Peter Burns 076cb57581 Prepare to release v3.5.2 2024-09-16 15:16:12 -07:00
Peter Burns 3c2f7591c5 Fix an accidentally quadratic reduce(concat) in FlattenedNodesObserver (#5739)
Found by @mvanbem-goog debugging a perf issue in Gerrit
2024-09-16 15:13:03 -07:00
Peter Burns 10220c9af1 Add support for TrustedTypes (#5692)
* Add support for TrustedTypes to html-tag.js

This avoids setting innerHTML to a string.

* Comment on why .slice() the  XMLSerializer output

* Handle data binding Trusted Types into attributes

Fixes #5648

* Lint clean
2021-08-26 12:37:17 -07:00
Peter Burns ad2bca189f Fix a couple more compiler warnings
Fixes warnings in some internal builds.
2020-04-27 10:21:48 -07:00
Peter Burns 20b207e142 Annotate more return types as !defined (#5642) 2020-03-09 17:59:22 -07:00
Peter Burns afdd9119ad Rebase sanitize dom value getter onto legacy-undefined-noBatch (#5618)
* Add  getSanitizeDOMValue to settings API

For environments that don't well support `export let`.

* Add a test for getSanitizeDOMValue
2020-01-17 14:07:17 -08:00
Peter Burns aec4cb681e Add getSanitizeDOMValue to settings API (#5617)
* Add  getSanitizeDOMValue to settings API

For environments that don't well support `export let`.

* Add a test for getSanitizeDOMValue
2020-01-17 14:06:33 -08:00
Peter Burns 15747c832c Add node field to PolymerDomApi
And keep DomApiNative type compatible with PolymerDomApi.

Upstreaming cl/275091781
2019-10-17 23:56:22 -07:00
Peter Burns 4274bcecaa Improve types for the template field on Polymer elements. (#5596)
null is allowed!
2019-10-14 19:57:51 -07:00
Peter Burns 27779a32cf Only import each file once (#5588)
Easier on the reader, and silences a lint warning
2019-09-05 12:52:26 -07:00
Peter Burns 69ee4688af Add additional externs (#5575)
Upstreaming cl/259031976
2019-07-19 18:13:36 -07:00
Peter Burns 0d2c2e5dbc Remove other double import (#5565)
Debouncer is no longer used in the file, even as a type name.
2019-06-27 13:01:13 -07:00
Peter Burns 54f8b47fee Only use CONST_CASE for constants. (#5564)
Otherwise it looks suspicious to closure compiler, and triggers a warning.
2019-06-27 13:00:47 -07:00
Peter Burns 94585c3168 Don't import/export from the same file twice (#5562)
Quiets down an annoying build warning in some configurations
2019-06-23 17:09:01 -07:00
Peter Burns 733cf6831c Run resolveUrl for protocol-relative urls (#5530)
* Run resolveUrl for protocol-relative urls

This part of ABS_URL is trying to match on absolute paths, like `/images/logo.png` not protocol-relative urls like `//example.com/images/logo.png`

Added a test and confirmed that it fails without this change.

Also cleaned up a some over-aggressive modulizer escaping in resolveurl-elements.js

Upstreaming cl/245302268
2019-04-25 17:41:14 -07:00
Peter Burns 6960c2b9f8 Fix lint 2019-04-22 16:18:38 -07:00
Peter Burns 3437334942 Cast GestureEventListeners.
This improves the closure compiler type checking of GestureEventListeners. Upstreaming of cl/239878806
2019-04-22 16:13:25 -07:00
Peter Burns cc7702b476 Work around https://github.com/google/closure-compiler/issues/3240
Also add @nocollapse to all of our static methods and properties, because we never want static property collapsing on these methods.
2019-04-22 16:08:50 -07:00
Peter Burns 0d0da56967 Fix/suppress upcoming JSCompiler build errors
Upstreaming cl/236195240 from the jscompiler team.

These errors come from the compiler incorrectly overriding JSDoc on a declaration with its right-hand-side. In some cases the JSDoc should not have been there; in other cases the JSDoc was correct and this reveals an error elsewhere.
2019-03-04 15:27:50 -08:00
Peter Burns bdcd37c513 Lint clean 2019-01-15 12:54:09 -08:00
Peter Burns f15b137d14 Remove @override from static methods on mixins.
Closure compiler is improving its handling of class inheritance, and it does not understand our mixins well enough to notice that these methods override their superclasses. These annotations cause compiler errors in an upcoming version of the compiler.
2019-01-15 12:02:44 -08:00
Peter Burns cf2cd05e73 Suppress upcoming jscompiler errors.
These errors don't exist yet, but we need to suppress them in the files that will have them so that we're not broken when they're turned on.
2018-12-19 16:15:06 -08:00
Peter Burns 3a4db3b112 Document properties for eslint. 2018-11-19 10:06:48 -08:00
Peter Burns bbf24c0c67 Get typescript compiling again. 2018-11-09 17:13:30 -08:00
Peter Burns 419dce634d Fix merge conflict around toggleAttribute 2018-11-05 09:19:20 -08:00
Peter Burns 566dcfaefe Get Polymer compiling clean under closure recommended flags
With these changes we have zero errors and zero warnings with `RECOMMENDED_FLAGS`!

Most of the changes were adding `@override` for methods and properties in mixins. Apparently if you implement an interface you need to say `@override` for each method or property on the interface. This combines with our mixin strategy to the tune of needing to add `@override` on every non-private method and property.

I'm not sure this is intended behavior of the compiler. Filed https://github.com/google/closure-compiler/issues/3137 to see if it is.
2018-11-04 13:29:04 -08:00
Peter Burns b55c56f702 Expand type of LegacyElementMixin#listen and unlisten to accept EventTargets. 2018-09-18 15:16:46 -07:00
Peter Burns 84b6991802 Add @export
CustomStyle#getStyle is referred to as customStyle['getStyle'] in a few places, so it needs to be exported
2018-09-13 14:27:11 -07:00
Peter Burns 29428a822e Improve types of flattened-nodes-observer further. 2018-09-11 17:37:18 -07:00
Peter Burns b0aa913d51 Add cast for compilation
this._target is an Element, getFlattenedNodes accepts and HTMLElement

Upcoming version of closure compiler type checks this better
2018-09-10 20:00:27 -07:00
Peter Burns 82e705f7ac Collapse imports for file into one statement
This is a warning in the internal build system, and it does make the code a bit easier to read this way.

no-op change
2018-09-07 10:42:29 -07:00
Peter Burns 27036ea6be Add documentation to boot.js
This file's jsdoc had diverged a good bit from the internal version
2018-08-20 11:08:13 -07:00
Peter Burns 6cf5f9d05f The return type of mixinBehaviors is unknown
It's more than just the input class. Leaving it unknown allows the user to add annotations like:

```
 * @constructor
 * @extends {Polymer.Element}
 * @implements {IronValidatableBehaviorInterface}
```
2018-08-20 10:24:34 -07:00
Peter Burns b71f9f4e59 Export EventApi, same as DomApi
Both TypeScript and Closure need to be able to reach a class in order to use it for typing, and this is a useful type to annotate values with.
2018-08-18 11:58:37 -07:00
Peter Burns 7241ec5855 Use case-map lib in a saner way.
In this file currently you can refer to the function as: caseMap.dashToCamelCase, CaseMap.dashToCamelCase, or dashToCamelCase. Let's just do a standard import style here.
2018-08-16 14:29:39 -07:00
Peter Burns 658d1cf742 Fix a grab bag of closure compiler warnings.
This fixes all warnings in about half of the remaining files with warnings.
2018-08-16 14:23:55 -07:00
Peter Burns aaf2cca0c7 Protect DomModule.import against renaming 2018-08-15 18:33:07 -07:00
Peter Burns 4e4db7008b Add @nocollapse for jscompiler
See https://github.com/google/closure-compiler/issues/2763
2018-08-15 17:37:06 -07:00
Peter Burns a64dfb087a Ensure boot.js can only be parsed as a module
Closure compiler likes this
2018-08-15 15:39:02 -07:00
Peter Burns b26811708f Convert object to class for better compilation
Under some closure flags the hostStack object was being split out into three unrelated functions. Converting it to a class makes the code more regular, and compile with more optimizations on.

There's almost definitely a way to express what we were doing with closure annotations, but this seems more robust to me.
2018-06-27 14:52:45 -07:00
Peter Burns 2eade58542 Spelling 2018-05-21 14:08:14 -07:00
Peter Burns ab103dc142 Improve documentation and legibility.
- Did a pass for every place we were writing `Polymer.foo`.
- Basic cleanup of a number of places for legibility by both humans and polymer-analyzer.
2018-04-23 17:36:41 -07:00
Peter Burns 232b004285 Import Polymer function in tests from legacy/polymer-fn.js 2018-04-16 11:23:57 -07:00
Peter Burns 69f488b2a0 Export Polymer function from polymer-legacy.js 2018-04-16 11:23:56 -07:00
Peter Burns a4bedbfd2c Add new wct deps. 2018-04-16 11:23:56 -07:00
Peter Burns ac2fa81fb7 Fixup a few places where comments were misplaced. 2018-04-16 11:23:56 -07:00
Peter Burns f664f2512a Fixup license comments. 2018-04-16 11:23:56 -07:00
Peter Burns 5abf472816 Update package.json from modulizer's output, set polymer-element.js as main. 2018-04-16 11:23:50 -07:00
Peter Burns cf3b7215aa Replace sources with modulizer output. 2018-04-16 11:18:42 -07:00
Peter Burns 527d2cdd14 Rename HTML files to .js files to trick git's rename detection. 2018-04-16 11:15:46 -07:00
Peter Burns 03d859822f Delete typings for now. 2018-04-15 17:44:18 -07:00
Peter Burns 5357d64aef Update types. 2018-03-30 15:59:57 -07:00
Peter Burns f78b051895 Lint clean. 2018-03-30 15:59:53 -07:00
Peter Burns 91d4aebaa6 Pass through fourth namespace param on attributeChangedCallback. 2018-03-30 15:33:39 -07:00
Peter Burns 4095e12d63 Lint clean. 2017-08-03 14:27:42 -07:00
Peter Burns 49dbacb62c Separate scripts that modify configuration properties, as their ordering constraints are unusual. 2017-08-03 12:20:16 -07:00
Peter Burns c89155babb test: convert XNestedRepeat to use an inlined string template. 2017-08-03 12:19:19 -07:00
Peter Burns 28ed27e099 Don't rely on implicitly creating a global, does not. 2017-08-03 12:16:48 -07:00
Peter Burns 3555b4584c Refer to Gestures.recognizers consistently. 2017-08-03 12:15:32 -07:00
Peter Burns 328ce5945d Make test work in strict mode. 2017-08-03 12:14:51 -07:00
Peter Burns 674d468542 In tests, explicitly write to window when creating a new global for clarity. 2017-08-03 12:10:19 -07:00
Peter Burns 981a7600c1 Remove reference to Polymer._toOverride, it seems like an incomplete feature/part of the test. 2017-07-24 18:26:09 -07:00
Peter Burns bb20237806 Use customElements.get rather than referring to the global for Polymer.DomModule 2017-07-24 15:25:35 -07:00
Peter Burns dbedcfc00a Add import of dom-module to file that uses it. 2017-07-24 12:22:31 -07:00
Peter Burns b64e486240 Do not assign to a readonly property on window
If `window.customElements` exists there's a good chance that it's a readonly property as per spec, and assigning to readonly properties throws an exception in strict mode.
2017-07-22 17:20:49 -07:00
Peter Burns 0a0b580981 Revert style properties change from fd57784705
This broke a number of tests on an internal project.
2016-01-22 20:06:46 -08:00
Peter Burns 51d3fa6598 ES5 strict doesn't like function declarations inside inner blocks. 2015-11-20 17:07:58 -08:00
Peter Burns adad9ce68e Give dom-repeat#_targetFrameTime a type 2015-11-20 09:43:33 -08:00