@zimbra/api-client 78.0.0-beta → 78.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package-lock.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zimbra/api-client",
3
- "version": "78.0.0-beta",
3
+ "version": "78.0.0",
4
4
  "lockfileVersion": 1,
5
5
  "requires": true,
6
6
  "dependencies": {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@zimbra/api-client",
3
3
  "amdName": "zmApiJsClient",
4
- "version": "78.0.0-beta",
4
+ "version": "78.0.0",
5
5
  "description": "Zimbra JS API Client and GraphQL client for making requests against the Zimbra SOAP API.",
6
6
  "main": "dist/zm-api-js-client.js",
7
7
  "source": "index.ts",
@@ -541,7 +541,7 @@ export class ZimbraBatchClient {
541
541
  },
542
542
  singleRequest: true,
543
543
  namespace: Namespace.Account
544
- }).then(res => normalize(ClientInfoResponse)(res));
544
+ }).then(res => normalize(ClientInfoResponse)(mapValuesDeep(res, coerceStringToBoolean)));
545
545
 
546
546
  public contactAction = (options: ActionOptions) => this.action(ActionType.contact, options);
547
547
 
@@ -850,6 +850,41 @@ export class ZimbraBatchClient {
850
850
  singleRequest: true
851
851
  });
852
852
 
853
+ public endSessionBeaconRequest = (options: JsonRequestOptions) => {
854
+ const body = {
855
+ Body: {
856
+ EndSessionRequest: {
857
+ _jsns: Namespace.Account
858
+ }
859
+ },
860
+ Header: {
861
+ context: {
862
+ _jsns: Namespace.All,
863
+ csrfToken: this.csrfToken,
864
+ account: {
865
+ by: 'name',
866
+ _content: options.accountName
867
+ },
868
+ session: {
869
+ id: this.sessionId,
870
+ _content: this.sessionId
871
+ },
872
+ userAgent: this.userAgent
873
+ }
874
+ }
875
+ };
876
+
877
+ try {
878
+ const blob = new Blob([JSON.stringify(body)]);
879
+ if (navigator) {
880
+ // In zimbra desktop client navigator is null
881
+ navigator.sendBeacon(`${this.origin}/service/soap`, blob);
882
+ }
883
+ } catch (e) {
884
+ throw new Error('Error on endSessionBeaconRequest request' + e);
885
+ }
886
+ };
887
+
853
888
  public folderAction = (options: ActionOptions) => this.action(ActionType.folder, options);
854
889
 
855
890
  public forwardAppointment = (body: ForwardAppointmentInput) =>
@@ -793,6 +793,7 @@ export type ClientInfoAttributes = {
793
793
  zimbraFeatureResetPasswordStatus?: Maybe<ResetPasswordStatus>;
794
794
  zimbraWebClientLoginURL?: Maybe<Scalars['String']>;
795
795
  zimbraWebClientLogoutURL?: Maybe<Scalars['String']>;
796
+ zimbraWebClientSkipLogoff?: Maybe<Scalars['Boolean']>;
796
797
  };
797
798
 
798
799
  export type ClientInfoType = {
@@ -485,6 +485,7 @@ interface MailItem {
485
485
  type ClientInfoAttributes {
486
486
  zimbraWebClientLoginURL: String
487
487
  zimbraWebClientLogoutURL: String
488
+ zimbraWebClientSkipLogoff: Boolean
488
489
  zimbraFeatureResetPasswordStatus: ResetPasswordStatus
489
490
  }
490
491