1 | /**
|
2 | * @externs
|
3 | * @license
|
4 | * Copyright (c) 2016 The Polymer Project Authors. All rights reserved.
|
5 | * This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
|
6 | * The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
|
7 | * The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
|
8 | * Code distributed by Google as part of the polymer project is also
|
9 | * subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
|
10 | */
|
11 |
|
12 | /** @type {boolean|undefined} */
|
13 | CustomElementRegistry.prototype.forcePolyfill;
|
14 |
|
15 | /** @type {boolean|undefined} */
|
16 | CustomElementRegistry.prototype.noDocumentConstructionObserver;
|
17 |
|
18 | /** @type {boolean|undefined} */
|
19 | CustomElementRegistry.prototype.shadyDomFastWalk;
|
20 |
|
21 | /** @type {!Function|undefined} */
|
22 | CustomElementRegistry.prototype.polyfillWrapFlushCallback;
|
23 |
|
24 | class AlreadyConstructedMarkerType {}
|
25 |
|
26 | /**
|
27 | * @typedef {{
|
28 | * localName: string,
|
29 | * constructorFunction: !Function,
|
30 | * connectedCallback: Function,
|
31 | * disconnectedCallback: Function,
|
32 | * adoptedCallback: Function,
|
33 | * attributeChangedCallback: Function,
|
34 | * observedAttributes: !Array<string>,
|
35 | * constructionStack: !Array<!HTMLElement|!AlreadyConstructedMarkerType>,
|
36 | * }}
|
37 | */
|
38 | let CustomElementDefinition;
|
39 |
|
40 | // These properties are defined in the closure externs so that they will not be
|
41 | // renamed during minification.
|
42 |
|
43 | // Used for both Documents and Nodes which represent documents in the HTML
|
44 | // Imports polyfill.
|
45 |
|
46 | /** @type {!CustomElementRegistry|undefined} */
|
47 | Node.prototype.__CE_registry;
|
48 |
|
49 | /** @type {boolean|undefined} */
|
50 | Node.prototype.__CE_isImportDocument;
|
51 |
|
52 | /** @type {boolean|undefined} */
|
53 | Node.prototype.__CE_documentLoadHandled;
|
54 |
|
55 | // Apply generally to Node.
|
56 |
|
57 | /** @type {boolean|undefined} */
|
58 | Node.prototype.__CE_patched;
|
59 |
|
60 | /** @type {string} */
|
61 | Node.prototype.readyState;
|
62 |
|
63 | // Apply generally to Element.
|
64 |
|
65 | /** @type {number|undefined} */
|
66 | Element.prototype.__CE_state;
|
67 |
|
68 | /** @type {!CustomElementDefinition|undefined} */
|
69 | Element.prototype.__CE_definition;
|
70 |
|
71 | /** @type {!DocumentFragment|undefined} */
|
72 | Element.prototype.__CE_shadowRoot;
|
73 |
|
74 | // Note, the closure type is incorrect here.
|
75 | /** @type {!HTMLCollection} */
|
76 | DocumentFragment.prototype.children;
|
77 |
|
78 | /**
|
79 | * Non-standard Safari property.
|
80 | * @type {string|undefined}
|
81 | */
|
82 | Error.prototype.sourceURL;
|
83 |
|
84 | /**
|
85 | * Non-standard Safari property.
|
86 | * @type {number|undefined}
|
87 | */
|
88 | Error.prototype.line;
|
89 |
|
90 | /**
|
91 | * Non-standard Safari property.
|
92 | * @type {number|undefined}
|
93 | */
|
94 | Error.prototype.column;
|
95 |
|
96 | /**
|
97 | * Non-standard Firefox property.
|
98 | * @type {number|undefined}
|
99 | */
|
100 | Error.prototype.columnNumber;
|
101 |
|
102 | /**
|
103 | * Used by IE to configure ErrorEvents.
|
104 | * @see https://docs.microsoft.com/en-us/openspecs/ie_standards/ms-html5e/30b18240-7be6-4379-9e0a-262c99ed9529
|
105 | * @type {undefined|!function(string, boolean, boolean, string, string, number)}
|
106 | */
|
107 | ErrorEvent.prototype.initErrorEvent;
|