-
Notifications
You must be signed in to change notification settings - Fork 13.2k
Closed
Labels
Design NotesNotes from our design meetingsNotes from our design meetings
Description
__extends and static methods / accessors
-
Previously reported issues:
-
the
forloop is there to support browsers pre__proto__, e.g. IE8, IE9, and IE10- if we remove it IE10 and below will be broken
-
Condition it:
- seems like a good solution
- proposal:
var __extendStatics = (this && this.__extendStatics) ||
Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
var __extends = (this && this.__extends) || function (d, b) {
__extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};- What about the other side of the issue, emitting methods and accessors as
enumrable: false?- we have to do it for
--target ES5and not--target ES3 - if we do this we break the static inheritance for IE10,
- concolusion:
- wait on more feedback for this
- we have to do it for
Promise in lib.d.ts
-
Issues:
-
DOM keeps moving forward, but the lib.d.ts does not
-
Resolution:
- split the DOM into multiple definitions as well, and have the parts depend on what version they need of the library
- this is a large effort, not clear when or how it can be done
- No conclusion here, leave it open
Extensibility (@RyanCavanaugh)
- PR: Language service proxy
- Follow up with the experement and see what APIs are needed to be exposed
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Design NotesNotes from our design meetingsNotes from our design meetings