Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions src/batch-client/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,11 @@ import {
getProfileImageUrl,
normalizeMimeParts
} from '../utils/normalize-mime-parts';
import { createContactBody, normalizeOtherAttr } from '../utils/normalize-otherAttribute-contact';
import {
createContactBody,
createModifyContactBody,
normalizeOtherAttr
} from '../utils/normalize-otherAttribute-contact';
import { USER_FOLDER_IDS } from './constants';
import {
ActionOptions,
Expand Down Expand Up @@ -1602,7 +1606,7 @@ export class ZimbraBatchClient {
public modifyContact = (data: ModifyContactInput) =>
this.jsonRequest({
name: 'ModifyContact',
body: createContactBody(data, this.localStoreClient !== undefined),
body: createModifyContactBody(data, this.localStoreClient !== undefined),
singleRequest: true
}).then(res => normalize(Contact)(normalizeOtherAttr(res.cn)[0]));

Expand Down
183 changes: 78 additions & 105 deletions src/schema/generated-schema-types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -904,159 +904,132 @@ export type Contact = {
tags?: Maybe<Scalars['String']['output']>;
};

export type ContactAttributeChange = {
key: Scalars['String']['input'];
value?: InputMaybe<Scalars['String']['input']>;
};

export type ContactAttributes = {
__typename?: 'ContactAttributes';
anniversary?: Maybe<Scalars['String']['output']>;
assistantPhone?: Maybe<Scalars['String']['output']>;
birthday?: Maybe<Scalars['String']['output']>;
callbackPhone?: Maybe<Scalars['String']['output']>;
carPhone?: Maybe<Scalars['String']['output']>;
anniversary?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
assistantPhone?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
birthday?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
callbackPhone?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
carPhone?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
company?: Maybe<Scalars['String']['output']>;
companyPhone?: Maybe<Scalars['String']['output']>;
companyPhone2?: Maybe<Scalars['String']['output']>;
companyPhone?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
department?: Maybe<Scalars['String']['output']>;
email?: Maybe<Scalars['String']['output']>;
email2?: Maybe<Scalars['String']['output']>;
email?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
fileAs?: Maybe<Scalars['String']['output']>;
firstName?: Maybe<Scalars['String']['output']>;
fullName?: Maybe<Scalars['String']['output']>;
homeCity?: Maybe<Scalars['String']['output']>;
homeCountry?: Maybe<Scalars['String']['output']>;
homeEmail?: Maybe<Scalars['String']['output']>;
homeEmail2?: Maybe<Scalars['String']['output']>;
homeFax?: Maybe<Scalars['String']['output']>;
homeFax2?: Maybe<Scalars['String']['output']>;
homePhone?: Maybe<Scalars['String']['output']>;
homePhone2?: Maybe<Scalars['String']['output']>;
homePostalCode?: Maybe<Scalars['String']['output']>;
homeState?: Maybe<Scalars['String']['output']>;
homeStreet?: Maybe<Scalars['String']['output']>;
homeURL?: Maybe<Scalars['String']['output']>;
imAddress?: Maybe<Scalars['String']['output']>;
imAddress1?: Maybe<Scalars['String']['output']>;
imAddress2?: Maybe<Scalars['String']['output']>;
imAddress3?: Maybe<Scalars['String']['output']>;
imAddress4?: Maybe<Scalars['String']['output']>;
imAddress5?: Maybe<Scalars['String']['output']>;
homeCity?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
homeCountry?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
homeEmail?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
homeFax?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
homePhone?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
homePostalCode?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
homeState?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
homeStreet?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
homeURL?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
imAddress?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
image?: Maybe<ContactImage>;
jobTitle?: Maybe<Scalars['String']['output']>;
lastName?: Maybe<Scalars['String']['output']>;
maidenName?: Maybe<Scalars['String']['output']>;
middleName?: Maybe<Scalars['String']['output']>;
mobilePhone?: Maybe<Scalars['String']['output']>;
mobilePhone2?: Maybe<Scalars['String']['output']>;
mobilePhone?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
namePrefix?: Maybe<Scalars['String']['output']>;
nameSuffix?: Maybe<Scalars['String']['output']>;
nickname?: Maybe<Scalars['String']['output']>;
notes?: Maybe<Scalars['String']['output']>;
other?: Maybe<Array<Maybe<OtherContactAttribute>>>;
otherCity?: Maybe<Scalars['String']['output']>;
otherCountry?: Maybe<Scalars['String']['output']>;
otherFax?: Maybe<Scalars['String']['output']>;
otherPhone?: Maybe<Scalars['String']['output']>;
otherPhone2?: Maybe<Scalars['String']['output']>;
otherPostalCode?: Maybe<Scalars['String']['output']>;
otherState?: Maybe<Scalars['String']['output']>;
otherStreet?: Maybe<Scalars['String']['output']>;
otherURL?: Maybe<Scalars['String']['output']>;
pager?: Maybe<Scalars['String']['output']>;
pager2?: Maybe<Scalars['String']['output']>;
otherCity?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
otherCountry?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
otherFax?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
otherPhone?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
otherPostalCode?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
otherState?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
otherStreet?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
otherURL?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
pager?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
phoneticCompany?: Maybe<Scalars['String']['output']>;
phoneticFirstName?: Maybe<Scalars['String']['output']>;
phoneticLastName?: Maybe<Scalars['String']['output']>;
thumbnailPhoto?: Maybe<Scalars['String']['output']>;
type?: Maybe<Scalars['String']['output']>;
userCertificate?: Maybe<Scalars['String']['output']>;
website?: Maybe<Scalars['String']['output']>;
workCity?: Maybe<Scalars['String']['output']>;
workCountry?: Maybe<Scalars['String']['output']>;
workEmail?: Maybe<Scalars['String']['output']>;
workEmail2?: Maybe<Scalars['String']['output']>;
workFax?: Maybe<Scalars['String']['output']>;
workFax2?: Maybe<Scalars['String']['output']>;
workPhone?: Maybe<Scalars['String']['output']>;
workPhone2?: Maybe<Scalars['String']['output']>;
workPostalCode?: Maybe<Scalars['String']['output']>;
workState?: Maybe<Scalars['String']['output']>;
workStreet?: Maybe<Scalars['String']['output']>;
workURL?: Maybe<Scalars['String']['output']>;
workCity?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
workCountry?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
workEmail?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
workFax?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
workPhone?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
workPostalCode?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
workState?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
workStreet?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
workURL?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
zimbraCalResType?: Maybe<Scalars['String']['output']>;
};

export type ContactAttrsInput = {
anniversary?: InputMaybe<Scalars['String']['input']>;
assistantPhone?: InputMaybe<Scalars['String']['input']>;
birthday?: InputMaybe<Scalars['String']['input']>;
callbackPhone?: InputMaybe<Scalars['String']['input']>;
carPhone?: InputMaybe<Scalars['String']['input']>;
anniversary?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
assistantPhone?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
birthday?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
callbackPhone?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
carPhone?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
company?: InputMaybe<Scalars['String']['input']>;
companyPhone?: InputMaybe<Scalars['String']['input']>;
companyPhone2?: InputMaybe<Scalars['String']['input']>;
companyPhone?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
department?: InputMaybe<Scalars['String']['input']>;
email?: InputMaybe<Scalars['String']['input']>;
email2?: InputMaybe<Scalars['String']['input']>;
email?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
fileAs?: InputMaybe<Scalars['String']['input']>;
firstName?: InputMaybe<Scalars['String']['input']>;
fullName?: InputMaybe<Scalars['String']['input']>;
homeCity?: InputMaybe<Scalars['String']['input']>;
homeCountry?: InputMaybe<Scalars['String']['input']>;
homeEmail?: InputMaybe<Scalars['String']['input']>;
homeEmail2?: InputMaybe<Scalars['String']['input']>;
homeFax?: InputMaybe<Scalars['String']['input']>;
homeFax2?: InputMaybe<Scalars['String']['input']>;
homePhone?: InputMaybe<Scalars['String']['input']>;
homePhone2?: InputMaybe<Scalars['String']['input']>;
homePostalCode?: InputMaybe<Scalars['String']['input']>;
homeState?: InputMaybe<Scalars['String']['input']>;
homeStreet?: InputMaybe<Scalars['String']['input']>;
homeURL?: InputMaybe<Scalars['String']['input']>;
imAddress?: InputMaybe<Scalars['String']['input']>;
imAddress1?: InputMaybe<Scalars['String']['input']>;
imAddress2?: InputMaybe<Scalars['String']['input']>;
imAddress3?: InputMaybe<Scalars['String']['input']>;
imAddress4?: InputMaybe<Scalars['String']['input']>;
imAddress5?: InputMaybe<Scalars['String']['input']>;
homeCity?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
homeCountry?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
homeEmail?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
homeFax?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
homePhone?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
homePostalCode?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
homeState?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
homeStreet?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
homeURL?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
imAddress?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
image?: InputMaybe<Scalars['String']['input']>;
jobTitle?: InputMaybe<Scalars['String']['input']>;
lastName?: InputMaybe<Scalars['String']['input']>;
maidenName?: InputMaybe<Scalars['String']['input']>;
middleName?: InputMaybe<Scalars['String']['input']>;
mobilePhone?: InputMaybe<Scalars['String']['input']>;
mobilePhone2?: InputMaybe<Scalars['String']['input']>;
mobilePhone?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
namePrefix?: InputMaybe<Scalars['String']['input']>;
nameSuffix?: InputMaybe<Scalars['String']['input']>;
nickname?: InputMaybe<Scalars['String']['input']>;
notes?: InputMaybe<Scalars['String']['input']>;
other?: InputMaybe<Array<InputMaybe<OtherContactAttributeInput>>>;
otherCity?: InputMaybe<Scalars['String']['input']>;
otherCountry?: InputMaybe<Scalars['String']['input']>;
otherFax?: InputMaybe<Scalars['String']['input']>;
otherPhone?: InputMaybe<Scalars['String']['input']>;
otherPhone2?: InputMaybe<Scalars['String']['input']>;
otherPostalCode?: InputMaybe<Scalars['String']['input']>;
otherState?: InputMaybe<Scalars['String']['input']>;
otherStreet?: InputMaybe<Scalars['String']['input']>;
otherURL?: InputMaybe<Scalars['String']['input']>;
pager?: InputMaybe<Scalars['String']['input']>;
pager2?: InputMaybe<Scalars['String']['input']>;
otherCity?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
otherCountry?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
otherFax?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
otherPhone?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
otherPostalCode?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
otherState?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
otherStreet?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
otherURL?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
pager?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
phoneticCompany?: InputMaybe<Scalars['String']['input']>;
phoneticFirstName?: InputMaybe<Scalars['String']['input']>;
phoneticLastName?: InputMaybe<Scalars['String']['input']>;
type?: InputMaybe<Scalars['String']['input']>;
userCertificate?: InputMaybe<Scalars['String']['input']>;
website?: InputMaybe<Scalars['String']['input']>;
workCity?: InputMaybe<Scalars['String']['input']>;
workCountry?: InputMaybe<Scalars['String']['input']>;
workEmail?: InputMaybe<Scalars['String']['input']>;
workEmail2?: InputMaybe<Scalars['String']['input']>;
workFax?: InputMaybe<Scalars['String']['input']>;
workFax2?: InputMaybe<Scalars['String']['input']>;
workPhone?: InputMaybe<Scalars['String']['input']>;
workPhone2?: InputMaybe<Scalars['String']['input']>;
workPostalCode?: InputMaybe<Scalars['String']['input']>;
workState?: InputMaybe<Scalars['String']['input']>;
workStreet?: InputMaybe<Scalars['String']['input']>;
workURL?: InputMaybe<Scalars['String']['input']>;
workCity?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
workCountry?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
workEmail?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
workFax?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
workPhone?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
workPostalCode?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
workState?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
workStreet?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
workURL?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
};

export type ContactFrequencyData = {
Expand Down Expand Up @@ -2607,7 +2580,7 @@ export type ModifyAppointmentResponse = {
};

export type ModifyContactInput = {
attributes: ContactAttrsInput;
changes: Array<InputMaybe<ContactAttributeChange>>;
folderId?: InputMaybe<Scalars['ID']['input']>;
id: Scalars['ID']['input'];
memberOps?: InputMaybe<Array<InputMaybe<ContactListOps>>>;
Expand Down
Loading