@vizzly/api-client 0.0.43 → 0.0.45

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/README.md CHANGED
@@ -1 +1,25 @@
1
1
  # Vizzly API client
2
+
3
+ ## Create a parent dashboard
4
+
5
+ ```ts
6
+ import { VizzlyApi, Authentication } from '@vizzly/api-client';
7
+
8
+ export const createParentDashboard = async () => {
9
+ const auth = new Authentication({projectApiKey: process.env['VIZZLY_PROJECT_API_KEY']});
10
+ const vizzlyApi = new VizzlyApi(auth);
11
+
12
+ const response = await vizzlyApi.createParentDashboard({
13
+ name: 'My new parent dashboard'
14
+ });
15
+
16
+ if(response.status === 200) {
17
+ const { dashboard } = response.body;
18
+ // dashboard.id
19
+ // dashboard.name
20
+ } else {
21
+ throw "Failed to create a parent dashboard.";
22
+ }
23
+ };
24
+
25
+ ```
@@ -4,6 +4,12 @@ export declare class DashboardRepository {
4
4
  private vizzly;
5
5
  private repo;
6
6
  constructor(vizzly: Vizzly);
7
+ static EmptyDashboardDefinition(): {
8
+ componentLibrary: never[];
9
+ customFields: {};
10
+ display: never[];
11
+ globalFilters: never[];
12
+ };
7
13
  createDashboard(createParams: CreateDashboardParams): Promise<{
8
14
  dashboard: Dashboard;
9
15
  permissions: DashboardPermission[];
@@ -23,6 +23,14 @@ class DashboardRepository {
23
23
  this.vizzly = vizzly;
24
24
  this.repo = new Repository_1.Repository('id');
25
25
  }
26
+ static EmptyDashboardDefinition() {
27
+ return {
28
+ componentLibrary: [],
29
+ customFields: {},
30
+ display: [],
31
+ globalFilters: [],
32
+ };
33
+ }
26
34
  createDashboard(createParams) {
27
35
  return __awaiter(this, void 0, void 0, function* () {
28
36
  let builtDashboard;
@@ -1,6 +1,6 @@
1
1
  import { Api } from './Api';
2
2
  import { Authentication } from './Authentication';
3
- import { CreateDashboardParams, CreateGlobalLibraryParams, GlobalLibrary, GlobalLibraryPermissionFromAPI, PersistedReport, QueryEngineUserFromAPI, Request, RequestParams, TeamMemberFromAPI, UpdateDashboardParams, UpdateDashboardResponseBody, UpdateGlobalLibraryParams } from '../types';
3
+ import { CreateDashboardParams, CreateGlobalLibraryParams, GlobalLibrary, GlobalLibraryPermissionFromAPI, PersistedReport, QueryEngineUserFromAPI, Request, RequestParams, Response, TeamMemberFromAPI, UpdateDashboardParams, UpdateDashboardResponseBody, UpdateGlobalLibraryParams } from '../types';
4
4
  import { nVizzlyApi } from '../types';
5
5
  import { ProjectFromAPI } from '../types/project';
6
6
  export declare class VizzlyApi extends Api {
@@ -11,7 +11,7 @@ export declare class VizzlyApi extends Api {
11
11
  }>;
12
12
  fetchGlobalLibraries(params: RequestParams<{
13
13
  globalLibraryAccessTokens: string[];
14
- }>): Promise<import("../types").Response<{
14
+ }>): Promise<Response<{
15
15
  found: GlobalLibrary[];
16
16
  not_found: string[];
17
17
  }>>;
@@ -20,7 +20,7 @@ export declare class VizzlyApi extends Api {
20
20
  }>): Request<{
21
21
  globalLibraryAccessTokens: string[];
22
22
  }>;
23
- fetchGlobalLibraryAccessTokens(params?: RequestParams): Promise<import("../types").Response<{
23
+ fetchGlobalLibraryAccessTokens(params?: RequestParams): Promise<Response<{
24
24
  global_libraries: GlobalLibrary[];
25
25
  permissions: Array<GlobalLibraryPermissionFromAPI>;
26
26
  }>>;
@@ -34,9 +34,14 @@ export declare class VizzlyApi extends Api {
34
34
  buildFetchDashboardsRequest(params: RequestParams<{
35
35
  dashboardSessionAccessTokens: string[];
36
36
  }>): Request<{}>;
37
- createParentDashboard(params: RequestParams<nVizzlyApi.CreateParentDashboardParams>): Promise<import("../types").Response<unknown>>;
37
+ createParentDashboard(params: RequestParams<nVizzlyApi.CreateParentDashboardParams>): Promise<Response<{
38
+ dashboard: {
39
+ id: string;
40
+ name: string | null;
41
+ };
42
+ }>>;
38
43
  buildCreateParentDashboardRequest(params: RequestParams<nVizzlyApi.CreateParentDashboardParams>): Request<{}>;
39
- createParentGlobalLibrary(params: RequestParams<nVizzlyApi.CreateParentGlobalLibraryParams>): Promise<import("../types").Response<unknown>>;
44
+ createParentGlobalLibrary(params: RequestParams<nVizzlyApi.CreateParentGlobalLibraryParams>): Promise<Response<unknown>>;
40
45
  buildCreateParentGlobalLibraryRequest(params: RequestParams<nVizzlyApi.CreateParentGlobalLibraryParams>): Request<{}>;
41
46
  createGlobalLibrary(params: RequestParams<CreateGlobalLibraryParams>): Promise<{
42
47
  global_library: GlobalLibrary;
@@ -47,7 +52,7 @@ export declare class VizzlyApi extends Api {
47
52
  projects: Array<ProjectFromAPI>;
48
53
  }>;
49
54
  buildGetProjectsRequest(params?: RequestParams): Request<{}>;
50
- createProjectApiKey(params: RequestParams<nVizzlyApi.CreateProjectApiKeyParams>): Promise<import("../types").Response<{
55
+ createProjectApiKey(params: RequestParams<nVizzlyApi.CreateProjectApiKeyParams>): Promise<Response<{
51
56
  api_key: string;
52
57
  }>>;
53
58
  buildCreateProjectApiKeyRequest(params: RequestParams<nVizzlyApi.CreateProjectApiKeyParams>): Request<{}>;
@@ -56,23 +61,23 @@ export declare class VizzlyApi extends Api {
56
61
  buildCreateSelfHostedDynamicQueryEngineProjectRequest(params?: RequestParams): Request<{}>;
57
62
  buildCreateSelfHostedInBrowserProjectRequest(params?: RequestParams): Request<{}>;
58
63
  buildCreateSelfHostedProjectRequest(params?: RequestParams): Request<{}>;
59
- createManagedQueryEngineProject(params?: RequestParams): Promise<import("../types").Response<unknown>>;
64
+ createManagedQueryEngineProject(params?: RequestParams): Promise<Response<unknown>>;
60
65
  buildCreateManagedQueryEngineProjectRequest(params?: RequestParams): Request<{}>;
61
- createVizzlyConfigVersion(params: RequestParams<nVizzlyApi.CreateVizzlyConfigVersionParams>): Promise<import("../types").Response<unknown>>;
66
+ createVizzlyConfigVersion(params: RequestParams<nVizzlyApi.CreateVizzlyConfigVersionParams>): Promise<Response<unknown>>;
62
67
  buildCreateVizzlyConfigVersionRequest(params: RequestParams<nVizzlyApi.CreateVizzlyConfigVersionParams>): Request<{}>;
63
- duplicateParentDashboard(params: RequestParams<nVizzlyApi.DuplicateParentDashboardParams>): Promise<import("../types").Response<unknown>>;
68
+ duplicateParentDashboard(params: RequestParams<nVizzlyApi.DuplicateParentDashboardParams>): Promise<Response<unknown>>;
64
69
  buildDuplicateParentDashboardRequest(params: RequestParams<nVizzlyApi.DuplicateParentDashboardParams>): Request<{}>;
65
70
  getConnection(params: RequestParams<nVizzlyApi.GetConnectionParams>): Promise<{
66
71
  encryptedCredentials: string | null;
67
72
  }>;
68
73
  buildGetConnectionRequest(params: RequestParams<nVizzlyApi.GetConnectionParams>): Request<{}>;
69
- getManagedQueryEngineKeyPair(params: RequestParams<nVizzlyApi.GetManagedQueryEngineKeyPairParams>): Promise<import("../types").Response<unknown>>;
74
+ getManagedQueryEngineKeyPair(params: RequestParams<nVizzlyApi.GetManagedQueryEngineKeyPairParams>): Promise<Response<unknown>>;
70
75
  buildGetManagedQueryEngineKeyPairRequest(params: RequestParams<nVizzlyApi.GetManagedQueryEngineKeyPairParams>): Request<{}>;
71
76
  getProject(params: RequestParams<nVizzlyApi.GetProjectParams>): Promise<{
72
77
  project: ProjectFromAPI;
73
78
  }>;
74
79
  buildGetProjectRequest(params: RequestParams<nVizzlyApi.GetProjectParams>): Request<{}>;
75
- getProjectAccessToken(params: RequestParams<nVizzlyApi.GetProjectAccessTokenParams>): Promise<import("../types").Response<{
80
+ getProjectAccessToken(params: RequestParams<nVizzlyApi.GetProjectAccessTokenParams>): Promise<Response<{
76
81
  token: {
77
82
  max_age: number;
78
83
  token: string;
@@ -89,27 +94,27 @@ export declare class VizzlyApi extends Api {
89
94
  encryptedConfig: string | null;
90
95
  }>;
91
96
  buildGetVizzlyConfigRequest(params: RequestParams<nVizzlyApi.GetVizzlyConfigParams>): Request<{}>;
92
- saveConnection(params: RequestParams<nVizzlyApi.SaveConnectionParams>): Promise<import("../types").Response<unknown>>;
97
+ saveConnection(params: RequestParams<nVizzlyApi.SaveConnectionParams>): Promise<Response<unknown>>;
93
98
  buildSaveConnectionRequest(params: RequestParams<nVizzlyApi.SaveConnectionParams>): Request<{}>;
94
99
  saveEncryptedProjectEncryptionSecret(params: RequestParams<nVizzlyApi.SaveEncryptedProjectEncryptionSecretParams>): Promise<boolean>;
95
100
  buildSaveEncryptedProjectEncryptionSecretRequest(params: RequestParams<nVizzlyApi.SaveEncryptedProjectEncryptionSecretParams>): Request<{}>;
96
- getScheduledReports(params: RequestParams<nVizzlyApi.GetScheduledReportParams>): Promise<import("../types").Response<{
101
+ getScheduledReports(params: RequestParams<nVizzlyApi.GetScheduledReportParams>): Promise<Response<{
97
102
  reports: Array<PersistedReport>;
98
103
  }>>;
99
104
  buildGetScheduledReports(params: RequestParams<nVizzlyApi.GetScheduledReportParams>): Request<{}>;
100
- saveScheduledReport(params: RequestParams<nVizzlyApi.SaveScheduledReportParams>): Promise<import("../types").Response<{
105
+ saveScheduledReport(params: RequestParams<nVizzlyApi.SaveScheduledReportParams>): Promise<Response<{
101
106
  report: PersistedReport;
102
107
  }>>;
103
108
  buildSaveScheduledReportRequest(params: RequestParams<nVizzlyApi.SaveScheduledReportParams>): Request<{}>;
104
- updateDashboard(params: RequestParams<UpdateDashboardParams>): Promise<import("../types").Response<UpdateDashboardResponseBody>>;
109
+ updateDashboard(params: RequestParams<UpdateDashboardParams>): Promise<Response<UpdateDashboardResponseBody>>;
105
110
  buildUpdateDashboardRequest(params: RequestParams<UpdateDashboardParams>): Request<{}>;
106
- updateParentGlobalLibrary(params: RequestParams<nVizzlyApi.UpdateParentGlobalLibraryParams>): Promise<import("../types").Response<unknown>>;
111
+ updateParentGlobalLibrary(params: RequestParams<nVizzlyApi.UpdateParentGlobalLibraryParams>): Promise<Response<unknown>>;
107
112
  buildUpdateParentGlobalLibraryRequest(params: RequestParams<nVizzlyApi.UpdateParentGlobalLibraryParams>): Request<{}>;
108
- updateGlobalLibrary(params: UpdateGlobalLibraryParams): Promise<import("../types").Response<{
113
+ updateGlobalLibrary(params: UpdateGlobalLibraryParams): Promise<Response<{
109
114
  global_library: GlobalLibrary;
110
115
  }>>;
111
116
  buildUpdateGlobalLibraryRequest(params: RequestParams<UpdateGlobalLibraryParams>): Request<{}>;
112
- updateProjectApiKey(params: RequestParams<nVizzlyApi.UpdateProjectApiKeyParams>): Promise<import("../types").Response<unknown>>;
117
+ updateProjectApiKey(params: RequestParams<nVizzlyApi.UpdateProjectApiKeyParams>): Promise<Response<unknown>>;
113
118
  buildUpdateProjectApiKeyRequest(params: RequestParams<nVizzlyApi.UpdateProjectApiKeyParams>): Request<{}>;
114
119
  updateQueryEngineUser(params: RequestParams<nVizzlyApi.UpdateQueryEngineUserParams>): Promise<boolean>;
115
120
  buildUpdateQueryEngineUserRequest(params: RequestParams<nVizzlyApi.UpdateQueryEngineUserParams>): Request<{}>;
@@ -19,6 +19,7 @@ const FailedToFetchProject_1 = require("../errors/FailedToFetchProject");
19
19
  const FailedToUpdateQueryEngineUser_1 = require("../errors/FailedToUpdateQueryEngineUser");
20
20
  const FailedToSaveProjectEncryptedEncryptionSecret_1 = require("../errors/FailedToSaveProjectEncryptedEncryptionSecret");
21
21
  const ProjectEncryptedSecretAlreadySaved_1 = require("../errors/ProjectEncryptedSecretAlreadySaved");
22
+ const DashboardRepository_1 = require("./DashboardRepository");
22
23
  class VizzlyApi extends Api_1.Api {
23
24
  constructor(auth, host = 'https://api.vizzly.co') {
24
25
  super(auth, host);
@@ -71,7 +72,7 @@ class VizzlyApi extends Api_1.Api {
71
72
  method: 'post',
72
73
  body: {
73
74
  dashboardAccessToken: this.auth.getDashboardAccessToken(),
74
- definition: params.definition,
75
+ definition: params.definition || DashboardRepository_1.DashboardRepository.EmptyDashboardDefinition(),
75
76
  meta: params.metadata || params.meta || {},
76
77
  parentDashboardId: params.parentDashboardId,
77
78
  permissions: params.permissions,
@@ -100,7 +101,8 @@ class VizzlyApi extends Api_1.Api {
100
101
  method: 'post',
101
102
  body: {
102
103
  projectId: params.projectId,
103
- definition: params.definition,
104
+ definition: params.definition || DashboardRepository_1.DashboardRepository.EmptyDashboardDefinition(),
105
+ name: params.name,
104
106
  },
105
107
  abortSignal: params.abortSignal,
106
108
  };
@@ -468,6 +470,7 @@ class VizzlyApi extends Api_1.Api {
468
470
  definition: params.definition,
469
471
  meta: params.metadata || params.meta || {},
470
472
  deleted: params.deleted,
473
+ name: params.name,
471
474
  },
472
475
  abortSignal: params.abortSignal,
473
476
  };
@@ -15,6 +15,7 @@ const SQLPreviewError_1 = require("../errors/SQLPreviewError");
15
15
  const FailedToResolveDataSets_1 = require("../errors/FailedToResolveDataSets");
16
16
  const FailedToSetupProject_1 = require("../errors/FailedToSetupProject");
17
17
  const errors_1 = require("../errors");
18
+ const DashboardRepository_1 = require("./DashboardRepository");
18
19
  class VizzlyQueryEngineApi extends Api_1.Api {
19
20
  constructor(auth, host, extraHeaders) {
20
21
  super(auth, host, extraHeaders);
@@ -26,7 +27,7 @@ class VizzlyQueryEngineApi extends Api_1.Api {
26
27
  abortSignal: params.abortSignal,
27
28
  body: {
28
29
  dashboardAccessToken: this.auth.getDashboardAccessToken(),
29
- definition: params.definition,
30
+ definition: params.definition || DashboardRepository_1.DashboardRepository.EmptyDashboardDefinition(),
30
31
  meta: params.metadata || params.meta || {},
31
32
  parentDashboardId: params.parentDashboardId,
32
33
  permissions: params.permissions,
@@ -375,6 +376,7 @@ class VizzlyQueryEngineApi extends Api_1.Api {
375
376
  definition: params.definition,
376
377
  meta: params.metadata || params.meta || {},
377
378
  deleted: params.deleted,
379
+ name: params.name,
378
380
  },
379
381
  };
380
382
  }
package/dist/types.d.ts CHANGED
@@ -48,7 +48,7 @@ export type CreateGlobalLibraryParams = {
48
48
  }>;
49
49
  };
50
50
  export type CreateDashboardParams = {
51
- definition: DashboardDefinition | string;
51
+ definition?: DashboardDefinition | string;
52
52
  /** @deprecated - use `metadata` instead */
53
53
  meta?: any;
54
54
  metadata?: any;
@@ -65,6 +65,7 @@ export type UpdateDashboardParams = {
65
65
  meta?: any;
66
66
  metadata?: any;
67
67
  deleted?: boolean;
68
+ name?: string;
68
69
  };
69
70
  export type APIs = {
70
71
  vizzlyApi: VizzlyApi;
@@ -138,8 +139,10 @@ export declare namespace nVizzlyApi {
138
139
  dashboardAccessToken: string;
139
140
  };
140
141
  type CreateParentDashboardParams = {
141
- definition: any;
142
- projectId: string;
142
+ definition?: any;
143
+ name?: string;
144
+ /** Optional, only when using project API key for auth. */
145
+ projectId?: string;
143
146
  };
144
147
  type CreateParentGlobalLibraryParams = {
145
148
  library: any;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vizzly/api-client",
3
- "version": "0.0.43",
3
+ "version": "0.0.45",
4
4
  "private": false,
5
5
  "license": "NONE",
6
6
  "source": "src/index.ts",