diff --git a/JS.fsx b/JS.fsx old mode 100644 new mode 100755 diff --git a/README.md b/README.md old mode 100644 new mode 100755 diff --git a/Shared.fsx b/Shared.fsx old mode 100644 new mode 100755 diff --git a/TS.fsx b/TS.fsx old mode 100644 new mode 100755 index c98974df0..535ad7198 --- a/TS.fsx +++ b/TS.fsx @@ -545,13 +545,20 @@ let EmitAddedInterface (ai: JsonItems.ItemsType.Root) = match ai.Extends with | Some e -> Pt.printl "interface %s extends %s {" ai.Name.Value ai.Extends.Value | None -> Pt.printl "interface %s {" ai.Name.Value - + ai.Properties |> Array.iter (fun p -> Pt.printWithAddedIndent "%s: %s;" p.Name p.Type) ai.Methods |> Array.collect (fun m -> m.Signatures) |> Array.iter (Pt.printWithAddedIndent "%s;") ai.Indexer |> Array.collect (fun i -> i.Signatures) |> Array.iter (Pt.printWithAddedIndent "%s;") Pt.printl "}" Pt.printl "" + if ai.ConstructorSignatures.Length > 0 then + Pt.printl "declare var %s: {" ai.Name.Value + Pt.printWithAddedIndent "prototype: %s;" ai.Name.Value + ai.ConstructorSignatures |> Array.iter (Pt.printWithAddedIndent "%s;") + Pt.printl "}" + Pt.printl "" + let EmitTheWholeThing flavor (target:TextWriter) = Pt.reset() Pt.printl "/////////////////////////////" diff --git a/baselines/dom.generated.d.ts b/baselines/dom.generated.d.ts index ebbd5b55d..e55bc54e4 100644 --- a/baselines/dom.generated.d.ts +++ b/baselines/dom.generated.d.ts @@ -12610,6 +12610,15 @@ interface ProgressEventInit extends EventInit { total?: number; } +interface HTMLTemplateElement extends HTMLElement { + content: DocumentFragment; +} + +declare var HTMLTemplateElement: { + prototype: HTMLTemplateElement; + new(): HTMLTemplateElement; +} + declare type EventListenerOrEventListenerObject = EventListener | EventListenerObject; interface ErrorEventHandler { diff --git a/build.cmd b/build.cmd old mode 100644 new mode 100755 diff --git a/build.fsx b/build.fsx old mode 100644 new mode 100755 diff --git a/inputfiles/addedTypes.json b/inputfiles/addedTypes.json old mode 100644 new mode 100755 index 48de9a027..39a87defc --- a/inputfiles/addedTypes.json +++ b/inputfiles/addedTypes.json @@ -230,5 +230,20 @@ "interface": "Document", "name": "currentScript", "type": "HTMLScriptElement" - } + }, + { + "kind": "interface", + "name": "HTMLTemplateElement", + "flavor": "Web", + "extends": "HTMLElement", + "constructorSignatures": [ + "new(): HTMLTemplateElement" + ], + "properties": [ + { + "name": "content", + "type": "DocumentFragment" + } + ] + } ] diff --git a/inputfiles/browser.webidl.xml b/inputfiles/browser.webidl.xml old mode 100644 new mode 100755 diff --git a/inputfiles/comments.json b/inputfiles/comments.json old mode 100644 new mode 100755 diff --git a/inputfiles/jsTemplate.js b/inputfiles/jsTemplate.js old mode 100644 new mode 100755 diff --git a/inputfiles/jsTemplate_worker.js b/inputfiles/jsTemplate_worker.js old mode 100644 new mode 100755 diff --git a/inputfiles/overridingTypes.json b/inputfiles/overridingTypes.json old mode 100644 new mode 100755 diff --git a/inputfiles/removedTypes.json b/inputfiles/removedTypes.json old mode 100644 new mode 100755 diff --git a/inputfiles/sample.json b/inputfiles/sample.json old mode 100644 new mode 100755 index 1286731c8..ed0e2ef43 --- a/inputfiles/sample.json +++ b/inputfiles/sample.json @@ -53,6 +53,9 @@ { "kind": "interface", "name": "BlobPropertyBag", + "constructorSignatures": [ + "new(): NodeList" + ], "properties": [ { "name": "type?", diff --git a/inputfiles/webworkers.specidl.xml b/inputfiles/webworkers.specidl.xml old mode 100644 new mode 100755 diff --git a/paket.dependencies b/paket.dependencies old mode 100644 new mode 100755 diff --git a/paket.lock b/paket.lock old mode 100644 new mode 100755 diff --git a/sample.xml b/sample.xml old mode 100644 new mode 100755