@mediaviz/sdk 0.1.0 → 1.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.
Files changed (56) hide show
  1. package/LICENSE +21 -0
  2. package/dist/sdk.cjs +99 -226
  3. package/dist/sdk.d.cts +503 -0
  4. package/dist/sdk.d.ts +503 -0
  5. package/dist/sdk.esm.d.ts +503 -0
  6. package/dist/sdk.esm.js +100 -226
  7. package/dist/sdk.umd.js +99 -226
  8. package/package.json +23 -10
  9. package/MediaViz.js +0 -126
  10. package/_oauth.js +0 -3
  11. package/admin.js +0 -93
  12. package/ai_model_credits.js +0 -22
  13. package/company.js +0 -54
  14. package/curated_albums.js +0 -85
  15. package/custom_albums.js +0 -78
  16. package/email_tokens.js +0 -64
  17. package/errors.js +0 -81
  18. package/health.js +0 -20
  19. package/index.js +0 -21
  20. package/keywords.js +0 -123
  21. package/oauth/.prettierrc +0 -6
  22. package/oauth/README.md +0 -76
  23. package/oauth/browser-smoke-test.html +0 -45
  24. package/oauth/implementation_plan.json +0 -106
  25. package/oauth/package-lock.json +0 -5236
  26. package/oauth/package.json +0 -28
  27. package/oauth/rollup.config.js +0 -21
  28. package/oauth/smoke-test.js +0 -27
  29. package/oauth/spec.md +0 -187
  30. package/oauth/src/__tests__/browser-smoke-test.test.js +0 -38
  31. package/oauth/src/__tests__/client.test.js +0 -556
  32. package/oauth/src/__tests__/errors.test.js +0 -73
  33. package/oauth/src/__tests__/http.test.js +0 -102
  34. package/oauth/src/__tests__/index.test.js +0 -53
  35. package/oauth/src/__tests__/package-fields.test.js +0 -29
  36. package/oauth/src/__tests__/pkce.test.js +0 -55
  37. package/oauth/src/__tests__/rollup-build.test.js +0 -58
  38. package/oauth/src/__tests__/smoke-test.test.js +0 -26
  39. package/oauth/src/__tests__/types.test.js +0 -29
  40. package/oauth/src/client.js +0 -180
  41. package/oauth/src/errors.js +0 -32
  42. package/oauth/src/http.js +0 -52
  43. package/oauth/src/index.js +0 -7
  44. package/oauth/src/pkce.js +0 -50
  45. package/oauth/src/types.js +0 -67
  46. package/oauth_authorization.js +0 -53
  47. package/oauth_clients.js +0 -18
  48. package/oauth_login.js +0 -24
  49. package/oauth_token.js +0 -30
  50. package/person.js +0 -54
  51. package/photos.js +0 -106
  52. package/photoupload.js +0 -55
  53. package/projects.js +0 -191
  54. package/rollup.config.js +0 -12
  55. package/search.js +0 -99
  56. package/users.js +0 -137
package/search.js DELETED
@@ -1,99 +0,0 @@
1
- export class Search {
2
- constructor(ctx) { this._ctx = ctx; }
3
-
4
- async searchProjectPhotos(projectTableName, { andParams, andStringParams, orParams, orStringParams, notParams, notStringParams, dateMin, dateMax, dateNullAnd, dateNullOr, dateOrder, customAlbumId, bestOfSimilarSetsOnly, curatedAlbumId, splitByTier } = {}) {
5
- this._ctx.requireTokens();
6
- let path = `/api/v1/search/${encodeURIComponent(projectTableName)}/`;
7
- const query = new URLSearchParams();
8
- if (andParams !== undefined) (Array.isArray(andParams) ? andParams : [andParams]).forEach(v => query.append('and_params', v));
9
- if (andStringParams !== undefined) (Array.isArray(andStringParams) ? andStringParams : [andStringParams]).forEach(v => query.append('and_string_params', v));
10
- if (orParams !== undefined) (Array.isArray(orParams) ? orParams : [orParams]).forEach(v => query.append('or_params', v));
11
- if (orStringParams !== undefined) (Array.isArray(orStringParams) ? orStringParams : [orStringParams]).forEach(v => query.append('or_string_params', v));
12
- if (notParams !== undefined) (Array.isArray(notParams) ? notParams : [notParams]).forEach(v => query.append('not_params', v));
13
- if (notStringParams !== undefined) (Array.isArray(notStringParams) ? notStringParams : [notStringParams]).forEach(v => query.append('not_string_params', v));
14
- if (dateMin !== undefined) (Array.isArray(dateMin) ? dateMin : [dateMin]).forEach(v => query.append('date_min', v));
15
- if (dateMax !== undefined) (Array.isArray(dateMax) ? dateMax : [dateMax]).forEach(v => query.append('date_max', v));
16
- if (dateNullAnd !== undefined) (Array.isArray(dateNullAnd) ? dateNullAnd : [dateNullAnd]).forEach(v => query.append('date_null_and', v));
17
- if (dateNullOr !== undefined) (Array.isArray(dateNullOr) ? dateNullOr : [dateNullOr]).forEach(v => query.append('date_null_or', v));
18
- if (dateOrder !== undefined) (Array.isArray(dateOrder) ? dateOrder : [dateOrder]).forEach(v => query.append('date_order', v));
19
- if (customAlbumId !== undefined) (Array.isArray(customAlbumId) ? customAlbumId : [customAlbumId]).forEach(v => query.append('custom_album_id', v));
20
- if (bestOfSimilarSetsOnly !== undefined) (Array.isArray(bestOfSimilarSetsOnly) ? bestOfSimilarSetsOnly : [bestOfSimilarSetsOnly]).forEach(v => query.append('best_of_similar_sets_only', v));
21
- if (curatedAlbumId !== undefined) (Array.isArray(curatedAlbumId) ? curatedAlbumId : [curatedAlbumId]).forEach(v => query.append('curated_album_id', v));
22
- if (splitByTier !== undefined) (Array.isArray(splitByTier) ? splitByTier : [splitByTier]).forEach(v => query.append('split_by_tier', v));
23
- const qs = query.toString();
24
- if (qs) path += '?' + qs;
25
- const { data } = await this._ctx.client.request(path, 'GET', this._ctx.accessToken, this._ctx.refreshToken);
26
- return data;
27
- }
28
-
29
- async searchProjectPhotosText(projectTableName, { q, size } = {}) {
30
- this._ctx.requireTokens();
31
- let path = `/api/v1/search/text/${encodeURIComponent(projectTableName)}/`;
32
- const query = new URLSearchParams();
33
- if (q !== undefined) (Array.isArray(q) ? q : [q]).forEach(v => query.append('q', v));
34
- if (size !== undefined) (Array.isArray(size) ? size : [size]).forEach(v => query.append('size', v));
35
- const qs = query.toString();
36
- if (qs) path += '?' + qs;
37
- const { data } = await this._ctx.client.request(path, 'GET', this._ctx.accessToken, this._ctx.refreshToken);
38
- return data;
39
- }
40
-
41
- async searchProjectPhotosNaturalLanguage(projectTableName, { searchText, size } = {}) {
42
- this._ctx.requireTokens();
43
- let path = `/api/v1/search/nl/${encodeURIComponent(projectTableName)}/`;
44
- const query = new URLSearchParams();
45
- if (searchText !== undefined) (Array.isArray(searchText) ? searchText : [searchText]).forEach(v => query.append('search_text', v));
46
- if (size !== undefined) (Array.isArray(size) ? size : [size]).forEach(v => query.append('size', v));
47
- const qs = query.toString();
48
- if (qs) path += '?' + qs;
49
- const { data } = await this._ctx.client.request(path, 'GET', this._ctx.accessToken, this._ctx.refreshToken);
50
- return data;
51
- }
52
-
53
- async getProjectSavedSearches(projectTableName) {
54
- this._ctx.requireTokens();
55
- const path = `/api/v1/search/saved/${encodeURIComponent(projectTableName)}/`;
56
- const { data } = await this._ctx.client.request(path, 'GET', this._ctx.accessToken, this._ctx.refreshToken);
57
- return data;
58
- }
59
-
60
- async getSavedSearchById(searchId) {
61
- this._ctx.requireTokens();
62
- const path = `/api/v1/search/${encodeURIComponent(searchId)}`;
63
- const { data } = await this._ctx.client.request(path, 'GET', this._ctx.accessToken, this._ctx.refreshToken);
64
- return data;
65
- }
66
-
67
- async saveProjectPhotosSearch(projectTableName, { searchName, andParams, andStringParams, orParams, orStringParams, notParams, notStringParams, dateMin, dateMax, dateNullAnd, dateNullOr, dateOrder, customAlbumId, bestOfSimilarSetsOnly, curatedAlbumId, splitByTier } = {}) {
68
- this._ctx.requireTokens();
69
- let path = `/api/v1/search/${encodeURIComponent(projectTableName)}/`;
70
- const query = new URLSearchParams();
71
- if (searchName !== undefined) (Array.isArray(searchName) ? searchName : [searchName]).forEach(v => query.append('search_name', v));
72
- if (andParams !== undefined) (Array.isArray(andParams) ? andParams : [andParams]).forEach(v => query.append('and_params', v));
73
- if (andStringParams !== undefined) (Array.isArray(andStringParams) ? andStringParams : [andStringParams]).forEach(v => query.append('and_string_params', v));
74
- if (orParams !== undefined) (Array.isArray(orParams) ? orParams : [orParams]).forEach(v => query.append('or_params', v));
75
- if (orStringParams !== undefined) (Array.isArray(orStringParams) ? orStringParams : [orStringParams]).forEach(v => query.append('or_string_params', v));
76
- if (notParams !== undefined) (Array.isArray(notParams) ? notParams : [notParams]).forEach(v => query.append('not_params', v));
77
- if (notStringParams !== undefined) (Array.isArray(notStringParams) ? notStringParams : [notStringParams]).forEach(v => query.append('not_string_params', v));
78
- if (dateMin !== undefined) (Array.isArray(dateMin) ? dateMin : [dateMin]).forEach(v => query.append('date_min', v));
79
- if (dateMax !== undefined) (Array.isArray(dateMax) ? dateMax : [dateMax]).forEach(v => query.append('date_max', v));
80
- if (dateNullAnd !== undefined) (Array.isArray(dateNullAnd) ? dateNullAnd : [dateNullAnd]).forEach(v => query.append('date_null_and', v));
81
- if (dateNullOr !== undefined) (Array.isArray(dateNullOr) ? dateNullOr : [dateNullOr]).forEach(v => query.append('date_null_or', v));
82
- if (dateOrder !== undefined) (Array.isArray(dateOrder) ? dateOrder : [dateOrder]).forEach(v => query.append('date_order', v));
83
- if (customAlbumId !== undefined) (Array.isArray(customAlbumId) ? customAlbumId : [customAlbumId]).forEach(v => query.append('custom_album_id', v));
84
- if (bestOfSimilarSetsOnly !== undefined) (Array.isArray(bestOfSimilarSetsOnly) ? bestOfSimilarSetsOnly : [bestOfSimilarSetsOnly]).forEach(v => query.append('best_of_similar_sets_only', v));
85
- if (curatedAlbumId !== undefined) (Array.isArray(curatedAlbumId) ? curatedAlbumId : [curatedAlbumId]).forEach(v => query.append('curated_album_id', v));
86
- if (splitByTier !== undefined) (Array.isArray(splitByTier) ? splitByTier : [splitByTier]).forEach(v => query.append('split_by_tier', v));
87
- const qs = query.toString();
88
- if (qs) path += '?' + qs;
89
- const { data } = await this._ctx.client.request(path, 'POST', this._ctx.accessToken, this._ctx.refreshToken);
90
- return data;
91
- }
92
-
93
- async deleteSavedSearchById(searchId) {
94
- this._ctx.requireTokens();
95
- const path = `/api/v1/search/${encodeURIComponent(searchId)}`;
96
- const { data } = await this._ctx.client.request(path, 'DELETE', this._ctx.accessToken, this._ctx.refreshToken);
97
- return data;
98
- }
99
- }
package/users.js DELETED
@@ -1,137 +0,0 @@
1
- import { handleResponse } from './errors.js';
2
-
3
- function stripUndef(o) { const r = {}; for (const k in o) if (o[k] !== undefined) r[k] = o[k]; return r; }
4
-
5
- export class Users {
6
- constructor(ctx) { this._ctx = ctx; }
7
-
8
- async createUser(name, email, accountType, companyId = undefined, profilePicture = undefined, paymentPlanType = undefined) {
9
- this._ctx.requireTokens();
10
- const path = `/api/v1/users/`;
11
- const body = stripUndef({
12
- name: name,
13
- email: email,
14
- company_id: companyId,
15
- profile_picture: profilePicture,
16
- payment_plan_type: paymentPlanType,
17
- account_type: accountType,
18
- });
19
- const { data } = await this._ctx.client.request(path, 'POST', this._ctx.accessToken, this._ctx.refreshToken, body);
20
- return data;
21
- }
22
-
23
- async createUserAndCompany(name, email, password, companyId = undefined, profilePicture = undefined, paymentPlanType = undefined, companyName = undefined, credits = undefined, { inviteToken } = {}) {
24
- let path = `/api/v1/users/new_company/`;
25
- const query = new URLSearchParams();
26
- if (inviteToken !== undefined) (Array.isArray(inviteToken) ? inviteToken : [inviteToken]).forEach(v => query.append('invite_token', v));
27
- const qs = query.toString();
28
- if (qs) path += '?' + qs;
29
- const body = stripUndef({
30
- name: name,
31
- email: email,
32
- company_id: companyId,
33
- profile_picture: profilePicture,
34
- payment_plan_type: paymentPlanType,
35
- password: password,
36
- company_name: companyName,
37
- credits: credits,
38
- });
39
- const resp = await fetch(this._ctx.baseUrl + path, {
40
- method: 'POST',
41
- headers: { 'Content-Type': 'application/json' },
42
- body: JSON.stringify(body),
43
- });
44
- return handleResponse(resp);
45
- }
46
-
47
- async changePassword(oldPassword, newPassword) {
48
- this._ctx.requireTokens();
49
- const path = `/api/v1/user/change_password`;
50
- const body = stripUndef({
51
- old_password: oldPassword,
52
- new_password: newPassword,
53
- });
54
- const { data } = await this._ctx.client.request(path, 'POST', this._ctx.accessToken, this._ctx.refreshToken, body);
55
- return data;
56
- }
57
-
58
- async getUserId() {
59
- this._ctx.requireTokens();
60
- const path = `/api/v1/users`;
61
- const { data } = await this._ctx.client.request(path, 'GET', this._ctx.accessToken, this._ctx.refreshToken);
62
- return data;
63
- }
64
-
65
- async getUser(userId) {
66
- this._ctx.requireTokens();
67
- const path = `/api/v1/users/${encodeURIComponent(userId)}`;
68
- const { data } = await this._ctx.client.request(path, 'GET', this._ctx.accessToken, this._ctx.refreshToken);
69
- return data;
70
- }
71
-
72
- async getAllUsersByCompany(companyId) {
73
- this._ctx.requireTokens();
74
- const path = `/api/v1/users/company/${encodeURIComponent(companyId)}`;
75
- const { data } = await this._ctx.client.request(path, 'GET', this._ctx.accessToken, this._ctx.refreshToken);
76
- return data;
77
- }
78
-
79
- async getAllUsers(ascOrDesc, { lastId, limit } = {}) {
80
- this._ctx.requireTokens();
81
- let path = `/api/v1/users/admin/sort/${encodeURIComponent(ascOrDesc)}/`;
82
- const query = new URLSearchParams();
83
- if (lastId !== undefined) (Array.isArray(lastId) ? lastId : [lastId]).forEach(v => query.append('last_id', v));
84
- if (limit !== undefined) (Array.isArray(limit) ? limit : [limit]).forEach(v => query.append('limit', v));
85
- const qs = query.toString();
86
- if (qs) path += '?' + qs;
87
- const { data } = await this._ctx.client.request(path, 'GET', this._ctx.accessToken, this._ctx.refreshToken);
88
- return data;
89
- }
90
-
91
- async updateUser(userId, { name, email, password, companyId, accountType, profilePicture, location, phoneNumber, birthday } = {}) {
92
- this._ctx.requireTokens();
93
- const path = `/api/v1/users/${encodeURIComponent(userId)}`;
94
- const body = stripUndef({
95
- name: name,
96
- email: email,
97
- password: password,
98
- company_id: companyId,
99
- account_type: accountType,
100
- profile_picture: profilePicture,
101
- location: location,
102
- phone_number: phoneNumber,
103
- birthday: birthday,
104
- });
105
- const { data } = await this._ctx.client.request(path, 'PUT', this._ctx.accessToken, this._ctx.refreshToken, body);
106
- return data;
107
- }
108
-
109
- async updateUserByAdmin(userId, { name, email, password, companyId, accountType, profilePicture, location, phoneNumber, birthday } = {}) {
110
- this._ctx.requireTokens();
111
- const path = `/api/v1/users/admin/${encodeURIComponent(userId)}`;
112
- const body = stripUndef({
113
- name: name,
114
- email: email,
115
- password: password,
116
- company_id: companyId,
117
- account_type: accountType,
118
- profile_picture: profilePicture,
119
- location: location,
120
- phone_number: phoneNumber,
121
- birthday: birthday,
122
- });
123
- const { data } = await this._ctx.client.request(path, 'PUT', this._ctx.accessToken, this._ctx.refreshToken, body);
124
- return data;
125
- }
126
-
127
- async deleteUser(userId, { newCompanyOwnerId } = {}) {
128
- this._ctx.requireTokens();
129
- let path = `/api/v1/users/delete/${encodeURIComponent(userId)}`;
130
- const query = new URLSearchParams();
131
- if (newCompanyOwnerId !== undefined) (Array.isArray(newCompanyOwnerId) ? newCompanyOwnerId : [newCompanyOwnerId]).forEach(v => query.append('new_company_owner_id', v));
132
- const qs = query.toString();
133
- if (qs) path += '?' + qs;
134
- const { data } = await this._ctx.client.request(path, 'DELETE', this._ctx.accessToken, this._ctx.refreshToken);
135
- return data;
136
- }
137
- }