* [jquery] Match parameter names to documentation more closely.
* [jquery] Add documentation to parameters.
* [jquery] Fix `TContext` declaration on wrong value's type.
Declaring `this` as `TContext` on the input function ensures that it can handle having its context changed to `TContext`. Declaring `this` on the output function is not important because the function will be already defined. It can also get in the way when passing a callback to a function whose callback parameter has `this` declared.
* [jquery] Drop constraint from `TContext`.
It's not really necessary and it is possible to pass primitives as the context.
* [jquery] Split `JQueryStatic` into its own file.
* [jquery] Split `JQuery` into its own file.
* [jquery] Split `JQuery` namespace into its own file.
* [jquery] Split legacy types into their own file.
* [jquery] Remove hard line breaks from documentation descriptions.
WebStorm treats line breaks in descriptions as line breaks when rendering descriptions in tooltips. This causes unintentional early wrapping of text.
* [jquery] Remove extra line after descriptions.
* [jquery] Audit lint rules.
* [jquery] Improve documentation for API methods which have had their signatures unified.
* [jquery] Add `preDispatch` and `postDispatch` methods.
See https://github.com/jquery/api.jquery.com/issues/752.
* [jquery] Fix weak type issue for `SpecialEventHook`.
* [jquery] Fix weak type issue for `FixHook`.
* [jquery] Add interface for `jQuery.valHooks`.
* [jquery] Fix weak type issue for `ValHook`.
* [jquery] Add interface for `jQuery.cssHooks`.
* [jquery] Properties on `CSSHook` are optional.
* [jquery] Use polymorphic `this` for `settings` parameter.
* [jquery] Wrap `StatusCodeCallbacks` in a region.
* [jquery] Split `@since` tag for consistency.
* [jquery] Add Animation API.
See https://blog.jquery.com/2012/08/09/jquery-1-8-released/.
* [jquery] Organize Effects section.
* [jquery] Fix weak type issue for `jQuery.speed`.
* [jquery] Fix minor documentation issues.
* [jquery] `stop` and `timer` don't need to be properties.
* [jquery] Fix code for example not rendering in VS Code autocomplete.
VS Code does not render the code block of the last example in the autocomplete tooltip (but does in the hover tooltip). This is fixed by adding an additional line terminated by a zero-width space. There doesn't appear to be an obvious pattern to what causes this and there may be other incidences of this bug in the declarations.
* [jquery] Improve formatting of documentation for unified signatures in tooltips.
Documentation for unified signatures is also unified. This means that documentation for a parameter will contain documentation from all the parameters that it's composed of. VS Code and WebStorm render this as one continuous line. This makes it confusing as it's not obvious which parts of documentation apply to a parameter.
To remedy this, parameters are formatted as a bulletted list. `<br>` tags are necessary to force line breaks in WebStorm. The list also cannot start on the first line. To force the first line break, the `<br>` tag is used for WebStorm. For VS Code, a non-empty body must follow the parameter name on its line. A Braille Pattern Blank could be used here but to provide a more intuitive and consistent experience, VS Code's format for rendering parameter info is mimicked instead. The `@` symbol must be encoded to prevent `@param` from being parsed as a JSDoc tag.
Note: VS Code renders the `<br>` tags literally and there does not appear to be a way to hide them.
* [jquery] Introduce interface for `jQuery.fx`.
* [jquery] Attach `jQuery.Deferred` documentation to correct symbol.
* [jquery] Convert `jQuery.Callbacks` to an interface.
This change is purely for consistency with similar properties (e.g. `jQuery.Deferred`, `jQuery.Event`).
* [jquery] For `JQuery`, reduce examples to only those relevant to the overload and use shorter template for code-only examples.
* [jquery] For `JQueryStatic`, reduce examples to only those relevant to the overload and use shorter template for code-only examples.
* [jquery] For `JQuery.Event`, reduce examples to only those relevant to the overload and use shorter template for code-only examples.
* [jquery] For `JQuery.Callbacks`, reduce examples to only those relevant to the overload and use shorter template for code-only examples.
* [jquery] For `JQuery.PromiseBase`/`JQuery.Deferred`, reduce examples to only those relevant to the overload and use shorter template for code-only examples.
* [jquery] Consistent ordering.
* [jquery] Add `jQuery.getScript(options)`.
See https://github.com/jquery/api.jquery.com/issues/1052.
* [jquery] Fix documentation for this one overload of `jQuery.proxy`.
* [jquery] Accept `Document`, `Window`, and `JQuery.PlainObject` for the `element` parameter of Data APIs.
See 354f6036f2/test/unit/data.js (L142-L164) and https://github.com/jquery/api.jquery.com/issues/1035.
* [jquery] Add `jQuery.cleanData`.
See https://github.com/jquery/api.jquery.com/issues/996.
* [jquery] Add detailed deprecation notices.
* [jquery] Add `jQuery.nodeName()`.
* [sizzle] Add named interfaces for `Selectors` properties.
* [jquery] Add `jQuery.expr`.
* [jquery] Add `jQuery.easing`.
* [jquery] Improve formatting of `@deprecated` tags.
WebStorm will not add padding between the description and deprecated text. To improve readability, a zero-width space and space is added to deprecated text to force padding.
VS Code will collapse white space causing detailed deprecation notices to start adjacent to the `@deprecated` tag if there is no header. A minimal header is added where necessary.
WebStorm renders line breaks in JSDoc. This may cause unintentional wrapping of text for `@deprecated` tags. To avoid this, line breaks are not used in deprecated text unless it's intended to render a line break there.
This also fixes broken non-http `@link` tags and ensures that they render consistently.
* [jquery] `isNumeric` can not be a user defined type guard.
`isNumeric` can return true for strings in addition to numbers, but only for a subset of either. It'll return false for NaN (which TypeScript treats as a number) and for strings which cannot be parsed as a number.
* [jquery] `isPlainObject` can not be a user defined type guard.
Due to the imprecise way with how `PlainObject` is declared, `isPlainObject` can not be a user defined type guard.
* [jquery] Use https for links.
* [jquery] Fix link for `JQuery.jquery`.
* [jquery] Remove empty line before `@deprecated`.
For consistent formatting since examples were added.
* [jquery] Document additional `extend` parameters.
* [jquery] Improve declarations of `data()` to catch unintentionally passing `undefined` as a value.
This handles the more likely case of users passing a value that is possibly undefined.
* [jquery] Improve declaration of `css()`.
* [jquery] Minor improves to `proxy()` documentation.
* [jquery] Fix region folding for WebStorm.
WebStorm uses `// #region` to designate a region start while VS Code uses `// region`. They can both (must, in this case) be terminated using `// #endregion`. Using both `// #endregion` and `// endregion` results in odd behavior in both editors.
`Mouse` and `Key` were provided for convenience. Their presence is problematic though as they're not actually part of the jQuery API, cause the `JQuery` namespace to become a value, and doesn't work with the `isolatedModules` option.
* Change to work better with arrays and HTMLSelectElement
See pull request description
* document.body and document.documentElement are possibly null in TypeScript@next
* Select2 fix test
* Change according to review comments
* Fix JQuery<any> in TS 2.3
* CI failed, force to run again
* document.body is not null anymore
* Rename params
* Add a comment above the `tslint:disable`s
* Wrong line :/
I went too fast
* fix: let jQuery's insertAfter / insertBefore accept JQuery<HTMLElement> as well as HTMLElement
* jquery now requires typescript 2.4
* fix jQuery dts to compile on TypeScript 2.3
* Resolve bluebird(Array) method
* upgrade typescript version from bluebird-global
* move testfile
Reason: There are too many type definition files
depending on jquery and it can not be managed.
* upgrade typescript version from bluebird require packages
* fix lint error: use-default-type-parameter
* [jquery] Fix return type of `JQuery.map`.
The type parameter of the JQuery object returned from `JQuery.map` depends on the return values of the callback. Previously, the type parameter was based on the object it was called on.
This fix requires dropping constraints on `JQuery`, `JQueryStatic`, `EventHandler`, and `EventHandlerBase` as `JQuery.map` may return `JQuery` objects that contain non-`Node` values.
* [jquery] Fix return type of `JQueryStatic.map`.
* [jquery] Declare type for `this` in callback for `JQueryStatic.map`.
* [jquery] Fix return type for `JQueryStatic()`.
* [bootstrap] Match change to `JQuery` interface.
* [flight] Fix test failure due to change in `@types/jquery`.
* [materialize-css] Fix test failure due to change in `@types/jquery`.
* [select2] Match changes to `@types/jquery` interfaces.
* [jquery] Fix error due to breaking change in TypeScript lib declarations.
(cherry picked from commit 2506245)