Skip to content

Commit

Permalink
docs(core): update comments for on, once, addEventListener and remove…
Browse files Browse the repository at this point in the history
…EventListener (#10545)
  • Loading branch information
shirakaba committed May 23, 2024
1 parent 9be392f commit 9e472d7
Show file tree
Hide file tree
Showing 16 changed files with 176 additions and 98 deletions.
16 changes: 10 additions & 6 deletions packages/core/data/observable-array/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -424,12 +424,16 @@ export class ObservableArray<T> extends Observable {

export interface ObservableArray<T> {
/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
*/
on(eventNames: string, callback: (data: EventData) => void, thisArg?: any): void;
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
on(eventName: string, callback: (data: EventData) => void, thisArg?: any): void;

on(event: 'change', callback: (args: ChangedData<T>) => void, thisArg?: any): void;
}
33 changes: 24 additions & 9 deletions packages/core/data/observable/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -150,27 +150,42 @@ export class Observable {
}

/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventName Name of the event to attach to.
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
public on(eventName: string, callback: (data: EventData) => void, thisArg?: any): void {
this.addEventListener(eventName, callback, thisArg);
}

/**
* Adds one-time listener function for the event named `event`.
* @param eventName Name of the event to attach to.
* @param callback A function to be called when the specified event is raised.
* @param thisArg An optional parameter which when set will be used as "this" in callback method call.
* Adds a listener for the specified event name, which, once fired, will
* remove itself.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
public once(eventName: string, callback: (data: EventData) => void, thisArg?: any): void {
this.addEventListener(eventName, callback, thisArg, true);
}

/**
* Shortcut alias to the removeEventListener method.
* Removes the listener(s) for the specified event name.
*
* @param eventName The name of the event.
* @param callback An optional specific event listener to remove (if omitted,
* all event listeners by this name will be removed).
* @param thisArg An optional parameter which, when set, will be used to
* refine search of the correct event listener to be removed.
*/
public off(eventName: string, callback?: (data: EventData) => void, thisArg?: any): void {
this.removeEventListener(eventName, callback, thisArg);
Expand Down
14 changes: 9 additions & 5 deletions packages/core/data/virtual-array/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -183,12 +183,16 @@ export class VirtualArray<T> extends Observable {
}
export interface VirtualArray<T> {
/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
on(eventNames: string, callback: (data: EventData) => void, thisArg?: any): void;
on(eventName: string, callback: (data: EventData) => void, thisArg?: any): void;
/**
* Raised when still not loaded items are requested.
*/
Expand Down
16 changes: 10 additions & 6 deletions packages/core/ui/action-bar/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -129,12 +129,16 @@ export class ActionItem extends ViewBase {
actionBar: ActionBar;

/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
*/
on(eventNames: string, callback: (data: EventData) => void): void;
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
on(eventName: string, callback: (data: EventData) => void): void;

/**
* Raised when a tap event occurs.
Expand Down
14 changes: 9 additions & 5 deletions packages/core/ui/button/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,16 @@ export class Button extends TextBase {
textWrap: boolean;

/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
on(eventNames: string, callback: (data: EventData) => void, thisArg?: any): void;
on(eventName: string, callback: (data: EventData) => void, thisArg?: any): void;

/**
* Raised when a tap event occurs.
Expand Down
29 changes: 18 additions & 11 deletions packages/core/ui/core/view/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -590,20 +590,27 @@ export abstract class View extends ViewCommon {
public getGestureObservers(type: GestureTypes): Array<GesturesObserver> | undefined;

/**
* Removes listener(s) for the specified event name.
* @param eventNames Comma delimited names of the events or gesture types the specified listener is associated with.
* @param callback An optional parameter pointing to a specific listener. If not defined, all listeners for the event names will be removed.
* @param thisArg An optional parameter which when set will be used to refine search of the correct callback which will be removed as event listener.
* Removes the listener(s) for the specified event name.
*
* @param eventName The name of the event.
* @param callback An optional specific event listener to remove (if omitted,
* all event listeners by this name will be removed).
* @param thisArg An optional parameter which, when set, will be used to
* refine search of the correct event listener to be removed.
*/
off(eventNames: string, callback?: (args: EventData) => void, thisArg?: any);
off(eventName: string, callback?: (args: EventData) => void, thisArg?: any);

/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change") or you can use gesture types.
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
*/
on(eventNames: string, callback: (args: EventData) => void, thisArg?: any);
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
on(eventName: string, callback: (args: EventData) => void, thisArg?: any);

/**
* Raised when a loaded event occurs.
Expand Down
16 changes: 10 additions & 6 deletions packages/core/ui/frame/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -225,12 +225,16 @@ export class Frame extends FrameBase {
//@endprivate

/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
*/
on(eventNames: string, callback: (args: EventData) => void, thisArg?: any): void;
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
on(eventName: string, callback: (args: EventData) => void, thisArg?: any): void;

/**
* Raised when navigation to the page has started.
Expand Down
16 changes: 10 additions & 6 deletions packages/core/ui/image-cache/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -80,12 +80,16 @@ export class Cache extends Observable {
clear(): void;

/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
*/
on(eventNames: string, callback: (args: EventData) => void, thisArg?: any): void;
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
on(eventName: string, callback: (args: EventData) => void, thisArg?: any): void;

/**
* Raised when the image has been downloaded.
Expand Down
16 changes: 10 additions & 6 deletions packages/core/ui/list-view/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -103,12 +103,16 @@ export class ListView extends View {
isItemAtIndexVisible(index: number): boolean;

/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
*/
on(eventNames: string, callback: (data: EventData) => void, thisArg?: any): void;
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
on(eventName: string, callback: (data: EventData) => void, thisArg?: any): void;

/**
* Raised when a View for the data at the specified index should be created.
Expand Down
16 changes: 10 additions & 6 deletions packages/core/ui/page/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -111,12 +111,16 @@ export declare class Page extends PageBase {
public accessibilityAnnouncePageEnabled: boolean;

/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
*/
public on(eventNames: string, callback: (data: EventData) => void, thisArg?: any): void;
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
public on(eventName: string, callback: (data: EventData) => void, thisArg?: any): void;

/**
* Raised when navigation to the page has started.
Expand Down
14 changes: 9 additions & 5 deletions packages/core/ui/placeholder/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,16 @@ export class Placeholder extends View {
public static creatingViewEvent: string;

/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
on(eventNames: string, callback: (args: EventData) => void, thisArg?: any): void;
on(eventName: string, callback: (args: EventData) => void, thisArg?: any): void;

/**
* Raised when a creatingView event occurs.
Expand Down
14 changes: 9 additions & 5 deletions packages/core/ui/scroll-view/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -62,12 +62,16 @@ export class ScrollView extends ContentView {
orientation: CoreTypes.OrientationType;

/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
on(eventNames: string, callback: (data: EventData) => void, thisArg?: any): void;
on(eventName: string, callback: (data: EventData) => void, thisArg?: any): void;

/**
* Raised when a scroll event occurs.
Expand Down
14 changes: 9 additions & 5 deletions packages/core/ui/search-bar/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -48,12 +48,16 @@ export class SearchBar extends View {
textFieldHintColor: Color;

/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
on(eventNames: string, callback: (data: EventData) => void, thisArg?: any): void;
on(eventName: string, callback: (data: EventData) => void, thisArg?: any): void;

/**
* Raised when a search bar search is submitted.
Expand Down
14 changes: 9 additions & 5 deletions packages/core/ui/segmented-bar/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -60,12 +60,16 @@ export class SegmentedBar extends View implements AddChildFromBuilder, AddArrayF
public static selectedIndexChangedEvent: string;

/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
on(eventNames: string, callback: (data: EventData) => void, thisArg?: any): void;
on(eventName: string, callback: (data: EventData) => void, thisArg?: any): void;

/**
* Raised when the selected index changes.
Expand Down
16 changes: 10 additions & 6 deletions packages/core/ui/tab-view/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -145,12 +145,16 @@ export class TabView extends View {
public static selectedIndexChangedEvent: string;

/**
* A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
* @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
* @param callback - Callback function which will be executed when event is raised.
* @param thisArg - An optional parameter which will be used as `this` context for callback execution.
*/
on(eventNames: string, callback: (data: EventData) => void, thisArg?: any): void;
* Adds a listener for the specified event name.
*
* @param eventName The name of the event.
* @param callback The event listener to add. Will be called when an event of
* the given name is raised.
* @param thisArg An optional parameter which, when set, will be bound as the
* `this` context when the callback is called. Falsy values will be not be
* bound.
*/
on(eventName: string, callback: (data: EventData) => void, thisArg?: any): void;

/**
* Raised when the selected index changes.
Expand Down
Loading

0 comments on commit 9e472d7

Please sign in to comment.