Skip to content

Commit fe60e6c

Browse files
authored
Merge pull request #23 from mapswipe/feature/user-group
UserGroup: Add create, update input type and readonly type.
2 parents 85ccf99 + 724b0b2 commit fe60e6c

File tree

3 files changed

+63
-7
lines changed

3 files changed

+63
-7
lines changed

functions/definition/userGroup.yaml

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,19 @@
11
# yaml-language-server: $schema=https://raw.githubusercontent.com/toggle-corp/typesync/refs/tags/v1.0.0/schema.local.json
22

3-
FbUserGroup:
3+
FbUserGroupReadOnlyType:
4+
model: alias
5+
# path: userGroups/{userGroupId}
6+
docs: Represents a usergroup
7+
type:
8+
type: object
9+
fields:
10+
users:
11+
optional: true
12+
type:
13+
type: map
14+
valueType: unknown
15+
16+
FbUserGroupCreateOnlyInput:
417
model: alias
518
# path: userGroups/{userGroupId}
619
docs: Represents a usergroup
@@ -11,17 +24,21 @@ FbUserGroup:
1124
type: int
1225
createdBy:
1326
type: string
27+
28+
FbUserGroupUpdateInput:
29+
model: alias
30+
# path: userGroups/{userGroupId}
31+
docs: Represents a usergroup
32+
type:
33+
type: object
34+
fields:
1435
description:
1536
type: string
1637
name:
1738
type: string
1839
nameKey:
1940
type: string
2041
deprecated: true
21-
users:
22-
type:
23-
type: map
24-
valueType: unknown
2542

2643
FbUserGroupObsolete:
2744
model: alias

functions/generated/pyfirebase/pyfirebase_mapswipe/extended_models.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,3 +37,14 @@ class Config: # type: ignore[reportIncompatibleVariableOverride]
3737
use_enum_values = False
3838
frozen = True
3939
extra = "forbid"
40+
41+
42+
class FbUserGroup(
43+
models.FbUserGroupCreateOnlyInput,
44+
models.FbUserGroupUpdateInput,
45+
models.FbUserGroupReadOnlyType,
46+
):
47+
class Config: # type: ignore[reportIncompatibleVariableOverride]
48+
use_enum_values = False
49+
frozen = True
50+
extra = "forbid"

functions/generated/pyfirebase/pyfirebase_mapswipe/models.py

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1029,15 +1029,43 @@ def __setattr__(self, name: str, value: typing.Any) -> None:
10291029
super().__setattr__(name, value)
10301030

10311031

1032-
class FbUserGroup(TypesyncModel):
1032+
class FbUserGroupReadOnlyType(TypesyncModel):
1033+
"""Represents a usergroup"""
1034+
1035+
users: dict[str, typing.Any] | TypesyncUndefined | None = UNDEFINED
1036+
1037+
class Config:
1038+
use_enum_values = False
1039+
extra = "forbid"
1040+
1041+
@typing.override
1042+
def __setattr__(self, name: str, value: typing.Any) -> None:
1043+
if name == "users" and value is None:
1044+
raise ValueError("'users' field cannot be set to None")
1045+
super().__setattr__(name, value)
1046+
1047+
1048+
class FbUserGroupCreateOnlyInput(TypesyncModel):
10331049
"""Represents a usergroup"""
10341050

10351051
createdAt: int
10361052
createdBy: str
1053+
1054+
class Config:
1055+
use_enum_values = False
1056+
extra = "forbid"
1057+
1058+
@typing.override
1059+
def __setattr__(self, name: str, value: typing.Any) -> None:
1060+
super().__setattr__(name, value)
1061+
1062+
1063+
class FbUserGroupUpdateInput(TypesyncModel):
1064+
"""Represents a usergroup"""
1065+
10371066
description: str
10381067
name: str
10391068
nameKey: typing.Annotated[str, pydantic.Field(deprecated=True)]
1040-
users: dict[str, typing.Any]
10411069

10421070
class Config:
10431071
use_enum_values = False

0 commit comments

Comments
 (0)