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.

Reply via email to