Skip to content

Commit de6d17a

Browse files
authored
Merge pull request #9 from mapswipe/feat/completeness-project-specifics
feat: add overlay layer information for completeness
2 parents af06a9c + 7376389 commit de6d17a

File tree

12 files changed

+1114
-280
lines changed

12 files changed

+1114
-280
lines changed
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
FbAnnouncement:
2+
model: alias
3+
# path: v2/announcement
4+
docs: Represents app announcements for the contributors.
5+
type:
6+
type: object
7+
fields:
8+
url:
9+
type: string
10+
text:
11+
type: string

functions/definition/models.yaml

Lines changed: 108 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,21 @@
22

33
# ENUM
44

5+
FbEnumOverlayTileServerType:
6+
model: alias
7+
type:
8+
type: enum
9+
members:
10+
- label: 'RASTER'
11+
value: 'raster'
12+
- label: 'VECTOR'
13+
value: 'vector'
14+
515
FbEnumValidateInputType:
616
model: alias
717
type:
818
type: enum
919
members:
10-
# FIXME: Add other types here
1120
- label: 'AOI_FILE'
1221
value: 'aoi_file'
1322
- label: 'LINK'
@@ -46,6 +55,21 @@ FbEnumRasterTileServerName:
4655
- label: ESRI_BETA
4756
value: esriBeta
4857

58+
FbEnumVectorTileServerName:
59+
model: alias
60+
docs: Represents supported vector tile server
61+
type:
62+
type: enum
63+
members:
64+
- label: CUSTOM
65+
value: custom
66+
- label: OPEN_STREET_MAP
67+
value: openStreetMap
68+
- label: OPEN_FREE_MAP
69+
value: openFreeMap
70+
- label: VERSATILES
71+
value: versatiles
72+
4973
FbEnumProjectStatus:
5074
model: alias
5175
docs: Represents project status
@@ -81,49 +105,6 @@ FbEnumProjectType:
81105
- label: 'COMPLETENESS'
82106
value: 4
83107

84-
# ANNOUNCEMENT
85-
86-
FbAnnouncement:
87-
model: document
88-
path: v2/announcement
89-
type:
90-
type: object
91-
fields:
92-
url:
93-
type: string
94-
text:
95-
type: string
96-
97-
# ORGANISATION
98-
99-
FbOrganisation:
100-
model: document
101-
path: organisations/{organisation_id}
102-
type:
103-
type: object
104-
fields:
105-
name:
106-
type: string
107-
description:
108-
type: string
109-
# NOTE: We can remove this
110-
nameKey:
111-
type: string
112-
113-
# TEAM
114-
115-
FbTeam:
116-
model: document
117-
path: teams/{teamId}
118-
docs: Represents a team
119-
type:
120-
type: object
121-
fields:
122-
teamName:
123-
type: string
124-
teamToken:
125-
type: timestamp
126-
127108
# PROJECT
128109

129110
FbBaseObjCustomSubOption:
@@ -166,7 +147,6 @@ FbObjRasterTileServer:
166147
type:
167148
type: object
168149
fields:
169-
# NOTE: @deprecated
170150
apiKey:
171151
optional: true
172152
type: string
@@ -181,6 +161,78 @@ FbObjRasterTileServer:
181161
url:
182162
type: string
183163

164+
FbObjVectorTileServer:
165+
model: alias
166+
docs: Represents a vector tile server configuration
167+
type:
168+
type: object
169+
fields:
170+
credits:
171+
type: string
172+
name:
173+
type: FbEnumVectorTileServerName
174+
url:
175+
type: string
176+
minZoom:
177+
type: int
178+
maxZoom:
179+
type: int
180+
181+
FbObjRasterTileServerOverlay:
182+
model: alias
183+
docs: Represents an overlay layer for raster layer
184+
type:
185+
type: object
186+
fields:
187+
tileServer:
188+
type: FbObjRasterTileServer
189+
opacity:
190+
type: double
191+
192+
FbObjVectorTileServerOverlay:
193+
model: alias
194+
docs: Represents an overlay layer for vector layer
195+
type:
196+
type: object
197+
fields:
198+
tileServer:
199+
type: FbObjVectorTileServer
200+
fillColor:
201+
type: string
202+
fillOpacity:
203+
type: double
204+
lineColor:
205+
type: string
206+
lineOpacity:
207+
type: double
208+
lineWidth:
209+
type: double
210+
lineDasharray:
211+
type:
212+
type: list
213+
elementType: int
214+
circleColor:
215+
type: string
216+
circleOpacity:
217+
type: double
218+
circleRadius:
219+
type: double
220+
221+
FbObjUnifiedOverlayTileServer:
222+
model: alias
223+
docs: Represents an overlay layer
224+
type:
225+
type: object
226+
fields:
227+
type:
228+
type: FbEnumOverlayTileServerType
229+
raster:
230+
optional: true
231+
type: FbObjRasterTileServerOverlay
232+
vector:
233+
optional: true
234+
type: FbObjVectorTileServerOverlay
235+
184236
FbProjectReadonlyType:
185237
model: alias
186238
docs: Represents project fields that cannot be updated from backend
@@ -288,7 +340,6 @@ FbProjectCompareCreateOnlyInput:
288340
tileServerB:
289341
type: FbObjRasterTileServer
290342

291-
292343
FbProjectCompletenessCreateOnlyInput:
293344
model: alias
294345
docs: Represents COMPLETNESS project fields that are valid while creating a project
@@ -301,7 +352,8 @@ FbProjectCompletenessCreateOnlyInput:
301352
type: FbObjRasterTileServer
302353
tileServerB:
303354
type: FbObjRasterTileServer
304-
355+
overlayTileServer:
356+
type: FbObjUnifiedOverlayTileServer
305357

306358
FbProjectValidateCreateOnlyInput:
307359
model: alias
@@ -310,7 +362,7 @@ FbProjectValidateCreateOnlyInput:
310362
type: object
311363
fields:
312364
customOptions:
313-
optional: true
365+
# optional: true
314366
type:
315367
type: list
316368
elementType: FbObjCustomOption
@@ -404,7 +456,6 @@ FbMappingGroupValidateImageCreateOnlyInput:
404456

405457
FbMappingTaskCreateOnlyInput:
406458
model: alias
407-
# model: document
408459
# path: tasks/{projectId}/{groupId}/{index}
409460
docs: Represents mapping task fields that are valid while creating a task
410461
type:
@@ -463,7 +514,6 @@ FbMappingTaskCompareCreateOnlyInput:
463514

464515
FbMappingResult:
465516
model: alias
466-
# model: document
467517
# path: results/{projectId}/{groupId}/{userId}
468518
docs: Represents a mapswipe project
469519
type:
@@ -494,8 +544,8 @@ FbMappingResult:
494544
# USER AND USER GROUP
495545

496546
FbUserGroup:
497-
model: document
498-
path: userGroups/{userGroupId}
547+
model: alias
548+
# path: userGroups/{userGroupId}
499549
docs: Represents a usergroup
500550
type:
501551
type: object
@@ -518,8 +568,8 @@ FbUserGroup:
518568
valueType: unknown
519569

520570
FbUserGroupObsolete:
521-
model: document
522-
path: user_groups/{userGroupId}
571+
model: alias
572+
# path: user_groups/{userGroupId}
523573
docs: Represents a usergroup
524574
type:
525575
type: object
@@ -530,8 +580,8 @@ FbUserGroupObsolete:
530580
type: string
531581

532582
FbUserGroupMembership:
533-
model: document
534-
path: userGroupMembershipLogs/{userGroupId}
583+
model: alias
584+
# path: userGroupMembershipLogs/{userGroupId}
535585
docs: Represents a user contribution
536586
type:
537587
type: object
@@ -546,8 +596,8 @@ FbUserGroupMembership:
546596
type: string
547597

548598
FbUser:
549-
model: document
550-
path: users/{userId}
599+
model: alias
600+
# path: users/{userId}
551601
docs: Represents a user
552602
type:
553603
type: object
@@ -575,7 +625,6 @@ FbUser:
575625

576626
FbUserContribution:
577627
model: alias
578-
# model: document
579628
# path: userContributions/{userId}/{projectId}/{groupId}
580629
docs: Represents a user contribution
581630
type:
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
FbOrganisation:
2+
model: alias
3+
# path: organisations/{organisation_id}
4+
docs: Represents the requesting organisation.
5+
type:
6+
type: object
7+
fields:
8+
name:
9+
type: string
10+
description:
11+
type: string
12+
nameKey: # NOTE: this is deprecated
13+
type: string

functions/definition/team.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
FbTeam:
2+
model: alias
3+
# path: teams/{teamId}
4+
docs: Represents a team to limit project visibility.
5+
type:
6+
type: object
7+
fields:
8+
teamName:
9+
type: string
10+
teamToken:
11+
type: timestamp
12+

0 commit comments

Comments
 (0)