* fix: Logic error in toast fix: Remove useless component * fix: Logout not clearing all stores * Add icons to notification settings * Add eslint rule to enforce spaced comment * Add eslint rule for arrow-body-style * Add eslint rule to enforce self-closing components * Add menu to api key settings Fix: Deleting webhook subscription does not remove from UI Split webhook subscriptions into active and inactive Styling updates
19 lines
526 B
TypeScript
19 lines
526 B
TypeScript
const fields = new Map();
|
|
|
|
export const getFieldsForModel = (target: any) =>
|
|
fields.get(target.constructor.name);
|
|
|
|
/**
|
|
* A decorator that records this key as a serializable field on the model.
|
|
* Properties decorated with @Field will be included in API requests by default.
|
|
*
|
|
* @param target
|
|
* @param propertyKey
|
|
*/
|
|
const Field = <T>(target: any, propertyKey: keyof T) => {
|
|
const className = target.constructor.name;
|
|
fields.set(className, [...(fields.get(className) || []), propertyKey]);
|
|
};
|
|
|
|
export default Field;
|