This is an automated email from the ASF dual-hosted git repository. ocket8888 pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/trafficcontrol-trafficops-types.git
commit b8bb80992a5d66d2292346d82612af9f5b5572ae Author: ocket8888 <[email protected]> AuthorDate: Fri Jul 15 13:29:46 2022 -0600 Add generic request/response user types --- package-lock.json | 2 +- package.json | 2 +- src/user.ts | 12 +++++++++--- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index f6ff5da..ccbdbe8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "trafficops-types", - "version": "3.1.0-beta-14", + "version": "3.1.0-beta-15", "lockfileVersion": 2, "requires": true, "packages": { diff --git a/package.json b/package.json index 53ece5a..7da2f08 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "trafficops-types", - "version": "3.1.0-beta-14", + "version": "3.1.0-beta-15", "description": "A library for dealing with Apache Traffic Control objects", "main": "dist/index.js", "scripts": { diff --git a/src/user.ts b/src/user.ts index 9a9fbbe..b69acc8 100644 --- a/src/user.ts +++ b/src/user.ts @@ -80,8 +80,11 @@ interface PutRequestNotChangingPasswordUser { */ export type PutRequestUser = PostRequestUser | PutRequestNotChangingPasswordUser; +/** Generically represents a user in the context of a request. */ +export type RequestUser = PutRequestUser | PostRequestUser; + /** Groups the fields common to responses from /users in all contexts. */ -interface ResponseUser { +interface ResponseUserBase { addressLine1: string | null; addressLine2: string | null; city: string | null; @@ -121,7 +124,7 @@ interface ResponseUser { } /** Represents a response from /users to a PUT or POST request. */ -export interface PutOrPostResponseUser extends ResponseUser { +export interface PutOrPostResponseUser extends ResponseUserBase { /** * This appears only in response to POST requests, or to PUT requests where * the user's password was changed. @@ -132,12 +135,15 @@ export interface PutOrPostResponseUser extends ResponseUser { } /** Represents a response from /users to a GET request. */ -export interface GetResponseUser extends ResponseUser { +export interface GetResponseUser extends ResponseUserBase { confirmLocalPasswd?: never; rolename: string; roleName?: never; } +/** Generically represents a user in the context of a response. */ +export type ResponseUser = GetResponseUser | PutOrPostResponseUser; + /** * User generically represents a user in the context of a PUT, POST, or GET * request or response to/from /users.
