Skip to content

Commit a8a5296

Browse files
authored
Limited Workspace (#438)
1 parent 4f82c0f commit a8a5296

File tree

3 files changed

+11
-20
lines changed

3 files changed

+11
-20
lines changed

src/specklepy/api/resources/current/active_user_resource.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
User,
1313
)
1414
from specklepy.core.api.models.current import (
15+
LimitedWorkspace,
1516
PermissionCheckResult,
1617
ProjectWithPermissions,
1718
Workspace,
@@ -94,7 +95,7 @@ def get_workspaces(
9495
metrics.track(metrics.SDK, self.account, {"name": "Active User Get Workspaces"})
9596
return super().get_workspaces(limit, cursor, filter)
9697

97-
def get_active_workspace(self) -> Optional[Workspace]:
98+
def get_active_workspace(self) -> Optional[LimitedWorkspace]:
9899
metrics.track(
99100
metrics.SDK, self.account, {"name": "Active User Get Active Workspace"}
100101
)

src/specklepy/core/api/models/current.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -213,15 +213,18 @@ class WorkspaceCreationState(GraphQLBaseModel):
213213
completed: bool
214214

215215

216-
class Workspace(GraphQLBaseModel):
216+
class LimitedWorkspace(GraphQLBaseModel):
217217
id: str
218218
name: str
219219
role: Optional[str]
220220
slug: str
221221
logo: Optional[str]
222+
description: Optional[str]
223+
224+
225+
class Workspace(LimitedWorkspace):
222226
created_at: datetime
223227
updated_at: datetime
224228
read_only: bool
225-
description: Optional[str]
226229
creation_state: Optional[WorkspaceCreationState]
227230
permissions: WorkspacePermissionChecks

src/specklepy/core/api/resources/current/active_user_resource.py

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
User,
1515
)
1616
from specklepy.core.api.models.current import (
17+
LimitedWorkspace,
1718
PermissionCheckResult,
1819
ProjectWithPermissions,
1920
Workspace,
@@ -295,7 +296,7 @@ def get_workspaces(
295296

296297
return response.data.data
297298

298-
def get_active_workspace(self) -> Optional[Workspace]:
299+
def get_active_workspace(self) -> Optional[LimitedWorkspace]:
299300
"""
300301
This feature is only available on Workspace enabled servers (server versions
301302
>=2.23.17) e.g. app.speckle.systems
@@ -310,29 +311,15 @@ def get_active_workspace(self) -> Optional[Workspace]:
310311
role
311312
slug
312313
logo
313-
createdAt
314-
updatedAt
315-
readOnly
316314
description
317-
creationState
318-
{
319-
completed
320-
}
321-
permissions {
322-
canCreateProject {
323-
authorized
324-
code
325-
message
326-
}
327-
}
328315
}
329316
}
330317
}
331-
""" # noqa: E501
318+
"""
332319
)
333320

334321
response = self.make_request_and_parse_response(
335-
DataResponse[Optional[DataResponse[Optional[Workspace]]]],
322+
DataResponse[Optional[DataResponse[Optional[LimitedWorkspace]]]],
336323
QUERY,
337324
)
338325

0 commit comments

Comments
 (0)