@ngxs-labs/entity-state
Version:
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.0.5.
50 lines • 5.03 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { generateActionObject } from '../internal';
import { EntityActionType } from './type-alias';
export class SetActive {
/**
* Generates an action that sets an ID that identifies the active entity
* @param {?} target The targeted state class
* @param {?} id The ID that identifies the active entity
*/
constructor(target, id) {
return generateActionObject(EntityActionType.SetActive, target, id);
}
}
export class ClearActive {
/**
* Generates an action that clears the active entity in the given state
* @param {?} target The targeted state class
*/
constructor(target) {
return generateActionObject(EntityActionType.ClearActive, target);
}
}
export class RemoveActive {
/**
* Generates an action that removes the active entity from the state and clears the active ID.
* @param {?} target The targeted state class
*/
constructor(target) {
return generateActionObject(EntityActionType.RemoveActive, target);
}
}
/**
* @template T
*/
export class UpdateActive {
/**
* Generates an action that will update the current active entity.
* If no entity is active a runtime error will be thrown.
* @see Updater
* @param {?} target The targeted state class
* @param {?} payload An Updater payload
*/
constructor(target, payload) {
return generateActionObject(EntityActionType.UpdateActive, target, payload);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMtbGFicy9lbnRpdHktc3RhdGUvIiwic291cmNlcyI6WyJsaWIvYWN0aW9ucy9hY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQW9CLE1BQU0sY0FBYyxDQUFDO0FBT2xFLE1BQU0sT0FBTyxTQUFTOzs7Ozs7SUFNcEIsWUFBWSxNQUE4QixFQUFFLEVBQVU7UUFDcEQsT0FBTyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxXQUFXOzs7OztJQUt0QixZQUFZLE1BQThCO1FBQ3hDLE9BQU8sb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3BFLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxZQUFZOzs7OztJQUt2QixZQUFZLE1BQThCO1FBQ3hDLE9BQU8sb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3JFLENBQUM7Q0FDRjs7OztBQUVELE1BQU0sT0FBTyxZQUFZOzs7Ozs7OztJQVF2QixZQUFZLE1BQTRCLEVBQUUsT0FBbUI7UUFDM0QsT0FBTyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzlFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdlbmVyYXRlQWN0aW9uT2JqZWN0IH0gZnJvbSAnLi4vaW50ZXJuYWwnO1xuaW1wb3J0IHsgRW50aXR5QWN0aW9uVHlwZSwgUGF5bG9hZCwgVXBkYXRlciB9IGZyb20gJy4vdHlwZS1hbGlhcyc7XG5pbXBvcnQgeyBFbnRpdHlTdGF0ZSB9IGZyb20gJy4uL2VudGl0eS1zdGF0ZSc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCB0eXBlIEVudGl0eVNldEFjdGl2ZUFjdGlvbiA9IFBheWxvYWQ8c3RyaW5nPjtcbmV4cG9ydCB0eXBlIEVudGl0eVVwZGF0ZUFjdGl2ZUFjdGlvbjxUPiA9IFBheWxvYWQ8VXBkYXRlcjxUPj47XG5cbmV4cG9ydCBjbGFzcyBTZXRBY3RpdmUge1xuICAvKipcbiAgICogR2VuZXJhdGVzIGFuIGFjdGlvbiB0aGF0IHNldHMgYW4gSUQgdGhhdCBpZGVudGlmaWVzIHRoZSBhY3RpdmUgZW50aXR5XG4gICAqIEBwYXJhbSB0YXJnZXQgVGhlIHRhcmdldGVkIHN0YXRlIGNsYXNzXG4gICAqIEBwYXJhbSBpZCBUaGUgSUQgdGhhdCBpZGVudGlmaWVzIHRoZSBhY3RpdmUgZW50aXR5XG4gICAqL1xuICBjb25zdHJ1Y3Rvcih0YXJnZXQ6IFR5cGU8RW50aXR5U3RhdGU8YW55Pj4sIGlkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gZ2VuZXJhdGVBY3Rpb25PYmplY3QoRW50aXR5QWN0aW9uVHlwZS5TZXRBY3RpdmUsIHRhcmdldCwgaWQpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDbGVhckFjdGl2ZSB7XG4gIC8qKlxuICAgKiBHZW5lcmF0ZXMgYW4gYWN0aW9uIHRoYXQgY2xlYXJzIHRoZSBhY3RpdmUgZW50aXR5IGluIHRoZSBnaXZlbiBzdGF0ZVxuICAgKiBAcGFyYW0gdGFyZ2V0IFRoZSB0YXJnZXRlZCBzdGF0ZSBjbGFzc1xuICAgKi9cbiAgY29uc3RydWN0b3IodGFyZ2V0OiBUeXBlPEVudGl0eVN0YXRlPGFueT4+KSB7XG4gICAgcmV0dXJuIGdlbmVyYXRlQWN0aW9uT2JqZWN0KEVudGl0eUFjdGlvblR5cGUuQ2xlYXJBY3RpdmUsIHRhcmdldCk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFJlbW92ZUFjdGl2ZSB7XG4gIC8qKlxuICAgKiBHZW5lcmF0ZXMgYW4gYWN0aW9uIHRoYXQgcmVtb3ZlcyB0aGUgYWN0aXZlIGVudGl0eSBmcm9tIHRoZSBzdGF0ZSBhbmQgY2xlYXJzIHRoZSBhY3RpdmUgSUQuXG4gICAqIEBwYXJhbSB0YXJnZXQgVGhlIHRhcmdldGVkIHN0YXRlIGNsYXNzXG4gICAqL1xuICBjb25zdHJ1Y3Rvcih0YXJnZXQ6IFR5cGU8RW50aXR5U3RhdGU8YW55Pj4pIHtcbiAgICByZXR1cm4gZ2VuZXJhdGVBY3Rpb25PYmplY3QoRW50aXR5QWN0aW9uVHlwZS5SZW1vdmVBY3RpdmUsIHRhcmdldCk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFVwZGF0ZUFjdGl2ZTxUPiB7XG4gIC8qKlxuICAgKiBHZW5lcmF0ZXMgYW4gYWN0aW9uIHRoYXQgd2lsbCB1cGRhdGUgdGhlIGN1cnJlbnQgYWN0aXZlIGVudGl0eS5cbiAgICogSWYgbm8gZW50aXR5IGlzIGFjdGl2ZSBhIHJ1bnRpbWUgZXJyb3Igd2lsbCBiZSB0aHJvd24uXG4gICAqIEBwYXJhbSB0YXJnZXQgVGhlIHRhcmdldGVkIHN0YXRlIGNsYXNzXG4gICAqIEBwYXJhbSBwYXlsb2FkIEFuIFVwZGF0ZXIgcGF5bG9hZFxuICAgKiBAc2VlIFVwZGF0ZXJcbiAgICovXG4gIGNvbnN0cnVjdG9yKHRhcmdldDogVHlwZTxFbnRpdHlTdGF0ZTxUPj4sIHBheWxvYWQ6IFVwZGF0ZXI8VD4pIHtcbiAgICByZXR1cm4gZ2VuZXJhdGVBY3Rpb25PYmplY3QoRW50aXR5QWN0aW9uVHlwZS5VcGRhdGVBY3RpdmUsIHRhcmdldCwgcGF5bG9hZCk7XG4gIH1cbn1cbiJdfQ==