@scalekit-sdk/node 1.0.7 → 1.0.9

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 (38) hide show
  1. package/.nvmrc +1 -0
  2. package/README.md +15 -10
  3. package/buf.gen.yaml +2 -1
  4. package/lib/core.js +1 -1
  5. package/lib/directory.d.ts +78 -0
  6. package/lib/directory.js +126 -0
  7. package/lib/directory.js.map +1 -0
  8. package/lib/organization.d.ts +5 -10
  9. package/lib/organization.js +13 -20
  10. package/lib/organization.js.map +1 -1
  11. package/lib/pkg/grpc/scalekit/v1/directories/directories_connect.d.ts +118 -0
  12. package/lib/pkg/grpc/scalekit/v1/directories/directories_connect.js +126 -0
  13. package/lib/pkg/grpc/scalekit/v1/directories/directories_connect.js.map +1 -0
  14. package/lib/pkg/grpc/scalekit/v1/directories/directories_pb.d.ts +960 -0
  15. package/lib/pkg/grpc/scalekit/v1/directories/directories_pb.js +1429 -0
  16. package/lib/pkg/grpc/scalekit/v1/directories/directories_pb.js.map +1 -0
  17. package/lib/pkg/grpc/scalekit/v1/organizations/organizations_connect.d.ts +10 -1
  18. package/lib/pkg/grpc/scalekit/v1/organizations/organizations_connect.js +9 -0
  19. package/lib/pkg/grpc/scalekit/v1/organizations/organizations_connect.js.map +1 -1
  20. package/lib/pkg/grpc/scalekit/v1/organizations/organizations_pb.d.ts +81 -0
  21. package/lib/pkg/grpc/scalekit/v1/organizations/organizations_pb.js +113 -1
  22. package/lib/pkg/grpc/scalekit/v1/organizations/organizations_pb.js.map +1 -1
  23. package/lib/scalekit.d.ts +27 -1
  24. package/lib/scalekit.js +67 -1
  25. package/lib/scalekit.js.map +1 -1
  26. package/lib/types/organization.d.ts +7 -0
  27. package/lib/types/organization.js +3 -0
  28. package/lib/types/organization.js.map +1 -0
  29. package/package.json +4 -1
  30. package/src/core.ts +1 -1
  31. package/src/directory.ts +173 -0
  32. package/src/organization.ts +17 -26
  33. package/src/pkg/grpc/scalekit/v1/directories/directories_connect.ts +125 -0
  34. package/src/pkg/grpc/scalekit/v1/directories/directories_pb.ts +1838 -0
  35. package/src/pkg/grpc/scalekit/v1/organizations/organizations_connect.ts +10 -1
  36. package/src/pkg/grpc/scalekit/v1/organizations/organizations_pb.ts +155 -0
  37. package/src/scalekit.ts +78 -3
  38. package/src/types/organization.ts +8 -0
package/.nvmrc ADDED
@@ -0,0 +1 @@
1
+ 16.0.0
package/README.md CHANGED
@@ -8,6 +8,7 @@
8
8
  </p>
9
9
 
10
10
  # Official Node.js SDK
11
+
11
12
  <a href="https://scalekit.com" target="_blank" rel="noopener noreferrer">Scalekit</a> is an Enterprise Authentication Platform purpose built for B2B applications. This Node.js SDK helps implement Enterprise Capabilities like Single Sign-on via SAML or OIDC in your Node.js applications within a few hours.
12
13
 
13
14
  <div>
@@ -18,11 +19,15 @@
18
19
  ## Pre-requisites
19
20
 
20
21
  1. [Sign up](https://scalekit.com) for a Scalekit account.
21
- 2. Get your ```env_url```, ```client_id``` and ```client_secret``` from the Scalekit dashboard.
22
+ 2. Get your `env_url`, `client_id` and `client_secret` from the Scalekit dashboard.
23
+
24
+ <div style="border: 1px solid #ccc; padding: 10px; border-radius: 5px; background-color: #f9f9f9;">
25
+ <strong>Note:</strong> Our NodeJS SDK currently supports NodeJS versions >=18 as it is the min LTS version that is maintained by the NodeJS ecosystem.
26
+ </div>
22
27
 
23
28
  ## Installation
24
29
 
25
- Install Scalekit SDK using your preferred package manager.
30
+ Install Scalekit SDK using your preferred package manager.
26
31
 
27
32
  ```sh
28
33
  npm install @scalekit-sdk/node
@@ -74,7 +79,7 @@ const redirectUri = `${process.env.HOST}/auth/callback`;
74
79
  // Get the authorization URL and redirect the user to the IdP login page
75
80
  app.get("/auth/login", (req, res) => {
76
81
  const authUrl = scalekitClient.getAuthorizationUrl(
77
- redirectUri,
82
+ redirectUri,
78
83
  {
79
84
  state: "state",
80
85
  connectionId: "connection_id",
@@ -84,7 +89,7 @@ app.get("/auth/login", (req, res) => {
84
89
  res.redirect(authUrl);
85
90
  });
86
91
 
87
- // Handle the callback from Scalekit
92
+ // Handle the callback from Scalekit
88
93
  app.get("/auth/callback", async (req, res) => {
89
94
  const { code, error, error_description, idp_initiated_login } = req.query;
90
95
  // Handle error
@@ -94,11 +99,11 @@ app.get("/auth/callback", async (req, res) => {
94
99
  // Handle IdP initiated login
95
100
  if (idp_initiated_login) {
96
101
  // Get the claims from the IdP initiated login
97
- const {
98
- connection_id,
99
- organization_id,
100
- login_hint,
101
- relay_state
102
+ const {
103
+ connection_id,
104
+ organization_id,
105
+ login_hint,
106
+ relay_state
102
107
  } = await scalekitClient.getIdpInitiatedLoginClaims(idp_initiated_login as string);
103
108
  // Get the authorization URL and redirect the user to the IdP login page
104
109
  const url = scalekitClient.getAuthorizationUrl(
@@ -123,7 +128,7 @@ app.listen(3000, () => {
123
128
  });
124
129
  ```
125
130
 
126
- ## Example Apps
131
+ ## Example Apps
127
132
 
128
133
  Fully functional sample applications written using some popular web application frameworks and Scalekit SDK. Feel free to clone the repo and run them locally.
129
134
 
package/buf.gen.yaml CHANGED
@@ -11,4 +11,5 @@ types:
11
11
  - scalekit.v1.errdetails
12
12
  - scalekit.v1.connections
13
13
  - scalekit.v1.domains
14
- - scalekit.v1.organizations
14
+ - scalekit.v1.organizations
15
+ - scalekit.v1.directories
package/lib/core.js CHANGED
@@ -57,7 +57,7 @@ class CoreClient {
57
57
  this.clientSecret = clientSecret;
58
58
  this.keys = [];
59
59
  this.accessToken = null;
60
- this.sdkVersion = `Scalekit-Node/1.0.7`;
60
+ this.sdkVersion = `Scalekit-Node/1.0.9`;
61
61
  this.apiVersion = "20240430";
62
62
  this.userAgent = `${this.sdkVersion} Node/${process.version} (${process.platform}; ${os_1.default.arch()})`;
63
63
  this.axios = axios_1.default.create({ baseURL: envUrl });
@@ -0,0 +1,78 @@
1
+ import GrpcConnect from './connect';
2
+ import CoreClient from './core';
3
+ import { GetDirectoryResponse, Directory, ListDirectoriesResponse, ListDirectoryGroupsResponse, ListDirectoryUsersResponse, ToggleDirectoryResponse } from './pkg/grpc/scalekit/v1/directories/directories_pb';
4
+ export default class DirectoryClient {
5
+ private readonly grpcConncet;
6
+ private readonly coreClient;
7
+ private client;
8
+ constructor(grpcConncet: GrpcConnect, coreClient: CoreClient);
9
+ /**
10
+ * List directories for an organization
11
+ * @param {string} organizationId The organization id
12
+ * @returns {Promise<ListDirectoriesResponse>} Returns the list of directories
13
+ */
14
+ listDirectories(organizationId: string): Promise<ListDirectoriesResponse>;
15
+ /**
16
+ * Get a directory for an organization
17
+ * @param {string} organizationId The organization id
18
+ * @param {string} directoryId The directory id
19
+ * @returns {Promise<GetDirectoryResponse>} Returns the directory
20
+ */
21
+ getDirectory(organizationId: string, directoryId: string): Promise<GetDirectoryResponse>;
22
+ /**
23
+ * Get a directory for an organization
24
+ * @param {string} organizationId The organization id
25
+ * @returns {Promise<Directory>} Returns the directory
26
+ */
27
+ getPrimaryDirectoryByOrganizationId(organizationId: string): Promise<Directory>;
28
+ /**
29
+ * List users in a directory for an organization
30
+ * @param {string} organizationId The organization id
31
+ * @param {string} directoryId The directory id
32
+ * @param {object} options The options to list directory users
33
+ * @param {number} options.pageSize The page size
34
+ * @param {string} options.pageToken The page token
35
+ * @param {boolean} options.includeDetail Include detail
36
+ * @param {string} options.directoryGroupId The directory group id
37
+ * @param {string} options.updatedAfter The updated after
38
+ * @returns {Promise<ListDirectoryUsersResponse>} Returns the list of directory users
39
+ */
40
+ listDirectoryUsers(organizationId: string, directoryId: string, options?: {
41
+ pageSize?: number;
42
+ pageToken?: string;
43
+ includeDetail?: boolean;
44
+ directoryGroupId?: string;
45
+ updatedAfter?: string;
46
+ }): Promise<ListDirectoryUsersResponse>;
47
+ /**
48
+ * List groups in a directory for an organization
49
+ * @param {string} organizationId The organization id
50
+ * @param {string} directoryId The directory id
51
+ * @param {object} options The options to list directory groups
52
+ * @param {number} options.pageSize The page size
53
+ * @param {string} options.pageToken The page token
54
+ * @param {boolean} options.includeDetail Include detail
55
+ * @param {string} options.updatedAfter The updated after
56
+ * @returns {Promise<ListDirectoryGroupsResponse>} Returns the list of directory groups
57
+ */
58
+ listDirectoryGroups(organizationId: string, directoryId: string, options?: {
59
+ pageSize?: number;
60
+ pageToken?: string;
61
+ includeDetail?: boolean;
62
+ updatedAfter?: string;
63
+ }): Promise<ListDirectoryGroupsResponse>;
64
+ /**
65
+ * Enable a directory for an organization
66
+ * @param {string} organizationId The organization id
67
+ * @param {string} directoryId The directory id
68
+ * @returns {Promise<ToggleDirectoryResponse>} Returns the directory enable response
69
+ */
70
+ enableDirectory(organizationId: string, directoryId: string): Promise<ToggleDirectoryResponse>;
71
+ /**
72
+ * Disable a directory for an organization
73
+ * @param {string} organizationId The organization id
74
+ * @param {string} directoryId The directory id
75
+ * @returns {Promise<ToggleDirectoryResponse>} Returns the directory disable response
76
+ */
77
+ disableDirectory(organizationId: string, directoryId: string): Promise<ToggleDirectoryResponse>;
78
+ }
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const protobuf_1 = require("@bufbuild/protobuf");
13
+ const directories_connect_1 = require("./pkg/grpc/scalekit/v1/directories/directories_connect");
14
+ class DirectoryClient {
15
+ constructor(grpcConncet, coreClient) {
16
+ this.grpcConncet = grpcConncet;
17
+ this.coreClient = coreClient;
18
+ this.client = this.grpcConncet.createClient(directories_connect_1.DirectoryService);
19
+ }
20
+ /**
21
+ * List directories for an organization
22
+ * @param {string} organizationId The organization id
23
+ * @returns {Promise<ListDirectoriesResponse>} Returns the list of directories
24
+ */
25
+ listDirectories(organizationId) {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ return this.coreClient.connectExec(this.client.listDirectories, { organizationId });
28
+ });
29
+ }
30
+ /**
31
+ * Get a directory for an organization
32
+ * @param {string} organizationId The organization id
33
+ * @param {string} directoryId The directory id
34
+ * @returns {Promise<GetDirectoryResponse>} Returns the directory
35
+ */
36
+ getDirectory(organizationId, directoryId) {
37
+ return __awaiter(this, void 0, void 0, function* () {
38
+ return this.coreClient.connectExec(this.client.getDirectory, { organizationId, id: directoryId });
39
+ });
40
+ }
41
+ /**
42
+ * Get a directory for an organization
43
+ * @param {string} organizationId The organization id
44
+ * @returns {Promise<Directory>} Returns the directory
45
+ */
46
+ getPrimaryDirectoryByOrganizationId(organizationId) {
47
+ return __awaiter(this, void 0, void 0, function* () {
48
+ const directories = yield this.listDirectories(organizationId);
49
+ if (!directories || directories.directories.length === 0) {
50
+ return Promise.reject('directory does not exist for organization');
51
+ }
52
+ return directories.directories[0];
53
+ });
54
+ }
55
+ /**
56
+ * List users in a directory for an organization
57
+ * @param {string} organizationId The organization id
58
+ * @param {string} directoryId The directory id
59
+ * @param {object} options The options to list directory users
60
+ * @param {number} options.pageSize The page size
61
+ * @param {string} options.pageToken The page token
62
+ * @param {boolean} options.includeDetail Include detail
63
+ * @param {string} options.directoryGroupId The directory group id
64
+ * @param {string} options.updatedAfter The updated after
65
+ * @returns {Promise<ListDirectoryUsersResponse>} Returns the list of directory users
66
+ */
67
+ listDirectoryUsers(organizationId, directoryId, options) {
68
+ return __awaiter(this, void 0, void 0, function* () {
69
+ let requestOptions = {};
70
+ if (options) {
71
+ requestOptions = Object.assign(Object.assign({}, options), (options.updatedAfter && {
72
+ updatedAfter: protobuf_1.Timestamp.fromDate(new Date(options.updatedAfter))
73
+ }));
74
+ }
75
+ return this.coreClient.connectExec(this.client.listDirectoryUsers, Object.assign({ organizationId,
76
+ directoryId }, requestOptions));
77
+ });
78
+ }
79
+ /**
80
+ * List groups in a directory for an organization
81
+ * @param {string} organizationId The organization id
82
+ * @param {string} directoryId The directory id
83
+ * @param {object} options The options to list directory groups
84
+ * @param {number} options.pageSize The page size
85
+ * @param {string} options.pageToken The page token
86
+ * @param {boolean} options.includeDetail Include detail
87
+ * @param {string} options.updatedAfter The updated after
88
+ * @returns {Promise<ListDirectoryGroupsResponse>} Returns the list of directory groups
89
+ */
90
+ listDirectoryGroups(organizationId, directoryId, options) {
91
+ return __awaiter(this, void 0, void 0, function* () {
92
+ let requestOptions = {};
93
+ if (options) {
94
+ requestOptions = Object.assign(Object.assign({}, options), (options.updatedAfter && {
95
+ updatedAfter: protobuf_1.Timestamp.fromDate(new Date(options.updatedAfter))
96
+ }));
97
+ }
98
+ return this.coreClient.connectExec(this.client.listDirectoryGroups, Object.assign({ organizationId,
99
+ directoryId }, requestOptions));
100
+ });
101
+ }
102
+ /**
103
+ * Enable a directory for an organization
104
+ * @param {string} organizationId The organization id
105
+ * @param {string} directoryId The directory id
106
+ * @returns {Promise<ToggleDirectoryResponse>} Returns the directory enable response
107
+ */
108
+ enableDirectory(organizationId, directoryId) {
109
+ return __awaiter(this, void 0, void 0, function* () {
110
+ return this.coreClient.connectExec(this.client.enableDirectory, { organizationId, id: directoryId });
111
+ });
112
+ }
113
+ /**
114
+ * Disable a directory for an organization
115
+ * @param {string} organizationId The organization id
116
+ * @param {string} directoryId The directory id
117
+ * @returns {Promise<ToggleDirectoryResponse>} Returns the directory disable response
118
+ */
119
+ disableDirectory(organizationId, directoryId) {
120
+ return __awaiter(this, void 0, void 0, function* () {
121
+ return this.coreClient.connectExec(this.client.disableDirectory, { organizationId, id: directoryId });
122
+ });
123
+ }
124
+ }
125
+ exports.default = DirectoryClient;
126
+ //# sourceMappingURL=directory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directory.js","sourceRoot":"","sources":["../src/directory.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { Empty, PartialMessage } from '@bufbuild/protobuf';
2
2
  import GrpcConnect from './connect';
3
3
  import CoreClient from './core';
4
4
  import { CreateOrganizationResponse, GetOrganizationResponse, Link, ListOrganizationsResponse, UpdateOrganization, UpdateOrganizationResponse } from './pkg/grpc/scalekit/v1/organizations/organizations_pb';
5
+ import { OrganizationSettings } from './types/organization';
5
6
  export default class OrganizationClient {
6
7
  private readonly grpcConncet;
7
8
  private readonly coreClient;
@@ -67,16 +68,10 @@ export default class OrganizationClient {
67
68
  */
68
69
  generatePortalLink(organizationId: string): Promise<Link>;
69
70
  /**
70
- * Get admin portal links for an organization
71
+ * Update organization settings for an organization
71
72
  * @param organizationId The organization id
72
- * @returns {Promise<Link[]>} The admin portal link object with expiration time and location
73
+ * @param settings The organization settings
74
+ * @returns {Promise<GetOrganizationResponse>} The updated organization
73
75
  */
74
- getPortalLinks(organizationId: string): Promise<Link[]>;
75
- /**
76
- * Delete admin portal link for an organization
77
- * @param organizationId The organization id
78
- * @param linkId The link id
79
- * @returns {Promise<Empty>} Returns nothing
80
- */
81
- deletePortalLink(organizationId: string, linkId: string): Promise<Empty>;
76
+ updateOrganizationSettings(organizationId: string, settings: OrganizationSettings): Promise<GetOrganizationResponse>;
82
77
  }
@@ -121,30 +121,23 @@ class OrganizationClient {
121
121
  });
122
122
  }
123
123
  /**
124
- * Get admin portal links for an organization
124
+ * Update organization settings for an organization
125
125
  * @param organizationId The organization id
126
- * @returns {Promise<Link[]>} The admin portal link object with expiration time and location
126
+ * @param settings The organization settings
127
+ * @returns {Promise<GetOrganizationResponse>} The updated organization
127
128
  */
128
- getPortalLinks(organizationId) {
129
+ updateOrganizationSettings(organizationId, settings) {
129
130
  return __awaiter(this, void 0, void 0, function* () {
130
- const response = yield this.coreClient.connectExec(this.client.getPortalLinks, {
131
- id: organizationId
132
- });
133
- return response.links;
134
- });
135
- }
136
- /**
137
- * Delete admin portal link for an organization
138
- * @param organizationId The organization id
139
- * @param linkId The link id
140
- * @returns {Promise<Empty>} Returns nothing
141
- */
142
- deletePortalLink(organizationId, linkId) {
143
- return __awaiter(this, void 0, void 0, function* () {
144
- return this.coreClient.connectExec(this.client.deletePortalLink, {
131
+ const request = {
145
132
  id: organizationId,
146
- linkId
147
- });
133
+ settings: {
134
+ features: settings.features.map(feature => ({
135
+ name: feature.name,
136
+ enabled: feature.enabled
137
+ }))
138
+ }
139
+ };
140
+ return this.coreClient.connectExec(this.client.updateOrganizationSettings, request);
148
141
  });
149
142
  }
150
143
  }
@@ -1 +1 @@
1
- {"version":3,"file":"organization.js","sourceRoot":"","sources":["../src/organization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"organization.js","sourceRoot":"","sources":["../src/organization.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,118 @@
1
+ import { AssignRolesRequest, AssignRolesResponse, CreateDirectoryRequest, CreateDirectoryResponse, CreateDirectorySecretRequest, CreateDirectorySecretResponse, GetDirectoryRequest, GetDirectoryResponse, ListDirectoriesRequest, ListDirectoriesResponse, ListDirectoryGroupsRequest, ListDirectoryGroupsResponse, ListDirectoryUsersRequest, ListDirectoryUsersResponse, RegenerateDirectorySecretRequest, RegenerateDirectorySecretResponse, ToggleDirectoryRequest, ToggleDirectoryResponse, UpdateAttributesRequest, UpdateAttributesResponse, UpdateDirectoryRequest, UpdateDirectoryResponse } from "./directories_pb.js";
2
+ import { MethodKind } from "@bufbuild/protobuf";
3
+ /**
4
+ * @generated from service scalekit.v1.directories.DirectoryService
5
+ */
6
+ export declare const DirectoryService: {
7
+ readonly typeName: "scalekit.v1.directories.DirectoryService";
8
+ readonly methods: {
9
+ /**
10
+ * @generated from rpc scalekit.v1.directories.DirectoryService.CreateDirectory
11
+ */
12
+ readonly createDirectory: {
13
+ readonly name: "CreateDirectory";
14
+ readonly I: typeof CreateDirectoryRequest;
15
+ readonly O: typeof CreateDirectoryResponse;
16
+ readonly kind: MethodKind.Unary;
17
+ };
18
+ /**
19
+ * @generated from rpc scalekit.v1.directories.DirectoryService.UpdateDirectory
20
+ */
21
+ readonly updateDirectory: {
22
+ readonly name: "UpdateDirectory";
23
+ readonly I: typeof UpdateDirectoryRequest;
24
+ readonly O: typeof UpdateDirectoryResponse;
25
+ readonly kind: MethodKind.Unary;
26
+ };
27
+ /**
28
+ * @generated from rpc scalekit.v1.directories.DirectoryService.AssignRoles
29
+ */
30
+ readonly assignRoles: {
31
+ readonly name: "AssignRoles";
32
+ readonly I: typeof AssignRolesRequest;
33
+ readonly O: typeof AssignRolesResponse;
34
+ readonly kind: MethodKind.Unary;
35
+ };
36
+ /**
37
+ * @generated from rpc scalekit.v1.directories.DirectoryService.UpdateAttributes
38
+ */
39
+ readonly updateAttributes: {
40
+ readonly name: "UpdateAttributes";
41
+ readonly I: typeof UpdateAttributesRequest;
42
+ readonly O: typeof UpdateAttributesResponse;
43
+ readonly kind: MethodKind.Unary;
44
+ };
45
+ /**
46
+ * @generated from rpc scalekit.v1.directories.DirectoryService.GetDirectory
47
+ */
48
+ readonly getDirectory: {
49
+ readonly name: "GetDirectory";
50
+ readonly I: typeof GetDirectoryRequest;
51
+ readonly O: typeof GetDirectoryResponse;
52
+ readonly kind: MethodKind.Unary;
53
+ };
54
+ /**
55
+ * @generated from rpc scalekit.v1.directories.DirectoryService.ListDirectories
56
+ */
57
+ readonly listDirectories: {
58
+ readonly name: "ListDirectories";
59
+ readonly I: typeof ListDirectoriesRequest;
60
+ readonly O: typeof ListDirectoriesResponse;
61
+ readonly kind: MethodKind.Unary;
62
+ };
63
+ /**
64
+ * @generated from rpc scalekit.v1.directories.DirectoryService.EnableDirectory
65
+ */
66
+ readonly enableDirectory: {
67
+ readonly name: "EnableDirectory";
68
+ readonly I: typeof ToggleDirectoryRequest;
69
+ readonly O: typeof ToggleDirectoryResponse;
70
+ readonly kind: MethodKind.Unary;
71
+ };
72
+ /**
73
+ * @generated from rpc scalekit.v1.directories.DirectoryService.DisableDirectory
74
+ */
75
+ readonly disableDirectory: {
76
+ readonly name: "DisableDirectory";
77
+ readonly I: typeof ToggleDirectoryRequest;
78
+ readonly O: typeof ToggleDirectoryResponse;
79
+ readonly kind: MethodKind.Unary;
80
+ };
81
+ /**
82
+ * @generated from rpc scalekit.v1.directories.DirectoryService.ListDirectoryUsers
83
+ */
84
+ readonly listDirectoryUsers: {
85
+ readonly name: "ListDirectoryUsers";
86
+ readonly I: typeof ListDirectoryUsersRequest;
87
+ readonly O: typeof ListDirectoryUsersResponse;
88
+ readonly kind: MethodKind.Unary;
89
+ };
90
+ /**
91
+ * @generated from rpc scalekit.v1.directories.DirectoryService.ListDirectoryGroups
92
+ */
93
+ readonly listDirectoryGroups: {
94
+ readonly name: "ListDirectoryGroups";
95
+ readonly I: typeof ListDirectoryGroupsRequest;
96
+ readonly O: typeof ListDirectoryGroupsResponse;
97
+ readonly kind: MethodKind.Unary;
98
+ };
99
+ /**
100
+ * @generated from rpc scalekit.v1.directories.DirectoryService.CreateDirectorySecret
101
+ */
102
+ readonly createDirectorySecret: {
103
+ readonly name: "CreateDirectorySecret";
104
+ readonly I: typeof CreateDirectorySecretRequest;
105
+ readonly O: typeof CreateDirectorySecretResponse;
106
+ readonly kind: MethodKind.Unary;
107
+ };
108
+ /**
109
+ * @generated from rpc scalekit.v1.directories.DirectoryService.RegenerateDirectorySecret
110
+ */
111
+ readonly regenerateDirectorySecret: {
112
+ readonly name: "RegenerateDirectorySecret";
113
+ readonly I: typeof RegenerateDirectorySecretRequest;
114
+ readonly O: typeof RegenerateDirectorySecretResponse;
115
+ readonly kind: MethodKind.Unary;
116
+ };
117
+ };
118
+ };
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ // @generated by protoc-gen-connect-es v1.4.0 with parameter "target=ts"
3
+ // @generated from file scalekit/v1/directories/directories.proto (package scalekit.v1.directories, syntax proto3)
4
+ /* eslint-disable */
5
+ // @ts-nocheck
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.DirectoryService = void 0;
8
+ const directories_pb_js_1 = require("./directories_pb.js");
9
+ const protobuf_1 = require("@bufbuild/protobuf");
10
+ /**
11
+ * @generated from service scalekit.v1.directories.DirectoryService
12
+ */
13
+ exports.DirectoryService = {
14
+ typeName: "scalekit.v1.directories.DirectoryService",
15
+ methods: {
16
+ /**
17
+ * @generated from rpc scalekit.v1.directories.DirectoryService.CreateDirectory
18
+ */
19
+ createDirectory: {
20
+ name: "CreateDirectory",
21
+ I: directories_pb_js_1.CreateDirectoryRequest,
22
+ O: directories_pb_js_1.CreateDirectoryResponse,
23
+ kind: protobuf_1.MethodKind.Unary,
24
+ },
25
+ /**
26
+ * @generated from rpc scalekit.v1.directories.DirectoryService.UpdateDirectory
27
+ */
28
+ updateDirectory: {
29
+ name: "UpdateDirectory",
30
+ I: directories_pb_js_1.UpdateDirectoryRequest,
31
+ O: directories_pb_js_1.UpdateDirectoryResponse,
32
+ kind: protobuf_1.MethodKind.Unary,
33
+ },
34
+ /**
35
+ * @generated from rpc scalekit.v1.directories.DirectoryService.AssignRoles
36
+ */
37
+ assignRoles: {
38
+ name: "AssignRoles",
39
+ I: directories_pb_js_1.AssignRolesRequest,
40
+ O: directories_pb_js_1.AssignRolesResponse,
41
+ kind: protobuf_1.MethodKind.Unary,
42
+ },
43
+ /**
44
+ * @generated from rpc scalekit.v1.directories.DirectoryService.UpdateAttributes
45
+ */
46
+ updateAttributes: {
47
+ name: "UpdateAttributes",
48
+ I: directories_pb_js_1.UpdateAttributesRequest,
49
+ O: directories_pb_js_1.UpdateAttributesResponse,
50
+ kind: protobuf_1.MethodKind.Unary,
51
+ },
52
+ /**
53
+ * @generated from rpc scalekit.v1.directories.DirectoryService.GetDirectory
54
+ */
55
+ getDirectory: {
56
+ name: "GetDirectory",
57
+ I: directories_pb_js_1.GetDirectoryRequest,
58
+ O: directories_pb_js_1.GetDirectoryResponse,
59
+ kind: protobuf_1.MethodKind.Unary,
60
+ },
61
+ /**
62
+ * @generated from rpc scalekit.v1.directories.DirectoryService.ListDirectories
63
+ */
64
+ listDirectories: {
65
+ name: "ListDirectories",
66
+ I: directories_pb_js_1.ListDirectoriesRequest,
67
+ O: directories_pb_js_1.ListDirectoriesResponse,
68
+ kind: protobuf_1.MethodKind.Unary,
69
+ },
70
+ /**
71
+ * @generated from rpc scalekit.v1.directories.DirectoryService.EnableDirectory
72
+ */
73
+ enableDirectory: {
74
+ name: "EnableDirectory",
75
+ I: directories_pb_js_1.ToggleDirectoryRequest,
76
+ O: directories_pb_js_1.ToggleDirectoryResponse,
77
+ kind: protobuf_1.MethodKind.Unary,
78
+ },
79
+ /**
80
+ * @generated from rpc scalekit.v1.directories.DirectoryService.DisableDirectory
81
+ */
82
+ disableDirectory: {
83
+ name: "DisableDirectory",
84
+ I: directories_pb_js_1.ToggleDirectoryRequest,
85
+ O: directories_pb_js_1.ToggleDirectoryResponse,
86
+ kind: protobuf_1.MethodKind.Unary,
87
+ },
88
+ /**
89
+ * @generated from rpc scalekit.v1.directories.DirectoryService.ListDirectoryUsers
90
+ */
91
+ listDirectoryUsers: {
92
+ name: "ListDirectoryUsers",
93
+ I: directories_pb_js_1.ListDirectoryUsersRequest,
94
+ O: directories_pb_js_1.ListDirectoryUsersResponse,
95
+ kind: protobuf_1.MethodKind.Unary,
96
+ },
97
+ /**
98
+ * @generated from rpc scalekit.v1.directories.DirectoryService.ListDirectoryGroups
99
+ */
100
+ listDirectoryGroups: {
101
+ name: "ListDirectoryGroups",
102
+ I: directories_pb_js_1.ListDirectoryGroupsRequest,
103
+ O: directories_pb_js_1.ListDirectoryGroupsResponse,
104
+ kind: protobuf_1.MethodKind.Unary,
105
+ },
106
+ /**
107
+ * @generated from rpc scalekit.v1.directories.DirectoryService.CreateDirectorySecret
108
+ */
109
+ createDirectorySecret: {
110
+ name: "CreateDirectorySecret",
111
+ I: directories_pb_js_1.CreateDirectorySecretRequest,
112
+ O: directories_pb_js_1.CreateDirectorySecretResponse,
113
+ kind: protobuf_1.MethodKind.Unary,
114
+ },
115
+ /**
116
+ * @generated from rpc scalekit.v1.directories.DirectoryService.RegenerateDirectorySecret
117
+ */
118
+ regenerateDirectorySecret: {
119
+ name: "RegenerateDirectorySecret",
120
+ I: directories_pb_js_1.RegenerateDirectorySecretRequest,
121
+ O: directories_pb_js_1.RegenerateDirectorySecretResponse,
122
+ kind: protobuf_1.MethodKind.Unary,
123
+ },
124
+ }
125
+ };
126
+ //# sourceMappingURL=directories_connect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directories_connect.js","sourceRoot":"","sources":["../../../../../../src/pkg/grpc/scalekit/v1/directories/directories_connect.ts"],"names":[],"mappings":";AAAA,wEAAwE;AACxE,kHAAkH;AAClH,oBAAoB;AACpB,cAAc;;;AAEd,2DAAkmB;AAClmB,iDAAgD;AAEhD;;GAEG;AACU,QAAA,gBAAgB,GAAG;IAC9B,QAAQ,EAAE,0CAA0C;IACpD,OAAO,EAAE;QACP;;WAEG;QACH,eAAe,EAAE;YACf,IAAI,EAAE,iBAAiB;YACvB,CAAC,EAAE,0CAAsB;YACzB,CAAC,EAAE,2CAAuB;YAC1B,IAAI,EAAE,qBAAU,CAAC,KAAK;SACvB;QACD;;WAEG;QACH,eAAe,EAAE;YACf,IAAI,EAAE,iBAAiB;YACvB,CAAC,EAAE,0CAAsB;YACzB,CAAC,EAAE,2CAAuB;YAC1B,IAAI,EAAE,qBAAU,CAAC,KAAK;SACvB;QACD;;WAEG;QACH,WAAW,EAAE;YACX,IAAI,EAAE,aAAa;YACnB,CAAC,EAAE,sCAAkB;YACrB,CAAC,EAAE,uCAAmB;YACtB,IAAI,EAAE,qBAAU,CAAC,KAAK;SACvB;QACD;;WAEG;QACH,gBAAgB,EAAE;YAChB,IAAI,EAAE,kBAAkB;YACxB,CAAC,EAAE,2CAAuB;YAC1B,CAAC,EAAE,4CAAwB;YAC3B,IAAI,EAAE,qBAAU,CAAC,KAAK;SACvB;QACD;;WAEG;QACH,YAAY,EAAE;YACZ,IAAI,EAAE,cAAc;YACpB,CAAC,EAAE,uCAAmB;YACtB,CAAC,EAAE,wCAAoB;YACvB,IAAI,EAAE,qBAAU,CAAC,KAAK;SACvB;QACD;;WAEG;QACH,eAAe,EAAE;YACf,IAAI,EAAE,iBAAiB;YACvB,CAAC,EAAE,0CAAsB;YACzB,CAAC,EAAE,2CAAuB;YAC1B,IAAI,EAAE,qBAAU,CAAC,KAAK;SACvB;QACD;;WAEG;QACH,eAAe,EAAE;YACf,IAAI,EAAE,iBAAiB;YACvB,CAAC,EAAE,0CAAsB;YACzB,CAAC,EAAE,2CAAuB;YAC1B,IAAI,EAAE,qBAAU,CAAC,KAAK;SACvB;QACD;;WAEG;QACH,gBAAgB,EAAE;YAChB,IAAI,EAAE,kBAAkB;YACxB,CAAC,EAAE,0CAAsB;YACzB,CAAC,EAAE,2CAAuB;YAC1B,IAAI,EAAE,qBAAU,CAAC,KAAK;SACvB;QACD;;WAEG;QACH,kBAAkB,EAAE;YAClB,IAAI,EAAE,oBAAoB;YAC1B,CAAC,EAAE,6CAAyB;YAC5B,CAAC,EAAE,8CAA0B;YAC7B,IAAI,EAAE,qBAAU,CAAC,KAAK;SACvB;QACD;;WAEG;QACH,mBAAmB,EAAE;YACnB,IAAI,EAAE,qBAAqB;YAC3B,CAAC,EAAE,8CAA0B;YAC7B,CAAC,EAAE,+CAA2B;YAC9B,IAAI,EAAE,qBAAU,CAAC,KAAK;SACvB;QACD;;WAEG;QACH,qBAAqB,EAAE;YACrB,IAAI,EAAE,uBAAuB;YAC7B,CAAC,EAAE,gDAA4B;YAC/B,CAAC,EAAE,iDAA6B;YAChC,IAAI,EAAE,qBAAU,CAAC,KAAK;SACvB;QACD;;WAEG;QACH,yBAAyB,EAAE;YACzB,IAAI,EAAE,2BAA2B;YACjC,CAAC,EAAE,oDAAgC;YACnC,CAAC,EAAE,qDAAiC;YACpC,IAAI,EAAE,qBAAU,CAAC,KAAK;SACvB;KACF;CACO,CAAC"}