Skip to content

Fix event types of XMLHttpRequest #8691

Closed

Description

https://xhr.spec.whatwg.org/#events
https://github.com/Microsoft/TSJS-lib-generator/pull/110/files

  interface XMLHttpRequest extends EventTarget, XMLHttpRequestEventTarget {
      msCaching: string;
 -    onreadystatechange: (ev: ProgressEvent) => any;
 +    onreadystatechange: (ev: Event) => any;
      readonly readyState: number;
      readonly response: any;
      readonly responseText: string;
      readonly LOADING: number;
      readonly OPENED: number;
      readonly UNSENT: number;
 -    addEventListener(type: "abort", listener: (ev: Event) => any, useCapture?: boolean): void;
 -    addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;
 -    addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;
 -    addEventListener(type: "loadend", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
 -    addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;
 +    addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;
 +    addEventListener(type: "loadstart", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
      addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
 -    addEventListener(type: "readystatechange", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
 +    addEventListener(type: "abort", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
 +    addEventListener(type: "error", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
 +    addEventListener(type: "load", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
      addEventListener(type: "timeout", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
 +    addEventListener(type: "loadend", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
      addEventListener(type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean): void;
  }

  interface XMLHttpRequestEventTarget {
 -    onabort: (ev: Event) => any;
 -    onerror: (ev: Event) => any;
 -    onload: (ev: Event) => any;
 +    onabort: (ev: ProgressEvent) => any;
 +    onerror: (ev: ProgressEvent) => any;
 +    onload: (ev: ProgressEvent) => any;
      onloadend: (ev: ProgressEvent) => any;
 -    onloadstart: (ev: Event) => any;
 +    onloadstart: (ev: ProgressEvent) => any;
      onprogress: (ev: ProgressEvent) => any;
      ontimeout: (ev: ProgressEvent) => any;
 -    addEventListener(type: "abort", listener: (ev: Event) => any, useCapture?: boolean): void;
 -    addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;
 -    addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;
 -    addEventListener(type: "loadend", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
 -    addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;
 +    addEventListener(type: "loadstart", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
      addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
 +    addEventListener(type: "abort", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
 +    addEventListener(type: "error", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
 +    addEventListener(type: "load", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
      addEventListener(type: "timeout", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
 +    addEventListener(type: "loadend", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
      addEventListener(type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean): void;
  }

Activity

  1. added this to the milestone on Jun 7, 2016
  2. FranklinWhale commented on Jan 6, 2017

    @FranklinWhale

    This issue seems to have been fixed by microsoft/TypeScript-DOM-lib-generator#144

  3. modified the milestones: TypeScript 2.1.4, on Jan 9, 2017
  4. locked and limited conversation to collaborators on Jun 19, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugA bug in TypeScriptDomain: lib.d.tsThe issue relates to the different libraries shipped with TypeScriptFixedA PR has been merged for this issueHelp WantedYou can do this

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions