From be7ad91cffca0eb43427cdb08dd4286fdcae5afa Mon Sep 17 00:00:00 2001 From: Chad Burt Date: Fri, 2 Feb 2024 12:12:28 -0800 Subject: [PATCH] Baby steps towards data download function --- packages/api/generated-schema-clean.gql | 7548 +++++------------ packages/api/generated-schema.gql | 32 +- packages/api/migrations/committed/000291.sql | 50 + packages/api/schema.sql | 346 +- packages/api/src/spatialUploads/index.ts | 6 +- .../data/LayerTableOfContentsItemEditor.tsx | 94 +- packages/client/src/generated/graphql.ts | 34 +- packages/client/src/generated/queries.ts | 34 +- .../src/queries/DraftTableOfContents.graphql | 1 + packages/uploads-server/.gitignore | 2 + packages/uploads-server/package-lock.json | 1769 ++-- packages/uploads-server/package.json | 4 +- packages/uploads-server/src/worker.ts | 39 +- packages/uploads-server/wrangler.toml | 1 + 14 files changed, 2743 insertions(+), 7217 deletions(-) create mode 100644 packages/api/migrations/committed/000291.sql create mode 100644 packages/uploads-server/.gitignore diff --git a/packages/api/generated-schema-clean.gql b/packages/api/generated-schema-clean.gql index 19d5e3bb1..f6c8fdeef 100644 --- a/packages/api/generated-schema-clean.gql +++ b/packages/api/generated-schema-clean.gql @@ -5,7 +5,7 @@ enum AccessControlListType { } """ -Access Control Lists can be associated with SketchClasses, Forums, and +Access Control Lists can be associated with SketchClasses, Forums, and potentially other application resources to allow admins to control access based on admin privileges or group membership. The behavior of the system is primarily driven by the `type` and `groups` settings. @@ -13,28 +13,21 @@ driven by the `type` and `groups` settings. The [AUTHORIZATION.md file](https://github.com/seasketch/next/blob/master/packages/db/AUTHORIZATION.md#content-managed-by-an-access-control-list) details how ACL functionality was added to the Forums type, and can be used as a template to add ACL features to new types if needed. + """ type Acl implements Node { - """ - Reads a single `Basemap` that is related to this `Acl`. - """ + """Reads a single `Basemap` that is related to this `Acl`.""" basemap: Basemap basemapId: Int forumIdRead: Int forumIdWrite: Int - """ - Reads and enables pagination through a set of `Group`. - """ + """Reads and enables pagination through a set of `Group`.""" groups( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [Group!] id: Int! @@ -44,37 +37,25 @@ type Acl implements Node { """ nodeId: ID! - """ - Reads a single `SketchClass` that is related to this `Acl`. - """ + """Reads a single `SketchClass` that is related to this `Acl`.""" sketchClass: SketchClass sketchClassId: Int - """ - Reads a single `TableOfContentsItem` that is related to this `Acl`. - """ + """Reads a single `TableOfContentsItem` that is related to this `Acl`.""" tableOfContentsItem: TableOfContentsItem tableOfContentsItemId: Int - """ - Control whether access control is PUBLIC, ADMINS_ONLY, or GROUP - """ + """Control whether access control is PUBLIC, ADMINS_ONLY, or GROUP""" type: AccessControlListType! } -""" -Represents an update to a `Acl`. Fields that are set will be updated. -""" +"""Represents an update to a `Acl`. Fields that are set will be updated.""" input AclPatch { - """ - Control whether access control is PUBLIC, ADMINS_ONLY, or GROUP - """ + """Control whether access control is PUBLIC, ADMINS_ONLY, or GROUP""" type: AccessControlListType } -""" -All input for the `addGroupToAcl` mutation. -""" +"""All input for the `addGroupToAcl` mutation.""" input AddGroupToAclInput { aclId: Int @@ -86,15 +67,11 @@ input AddGroupToAclInput { groupId: Int } -""" -The output of our `addGroupToAcl` mutation. -""" +"""The output of our `addGroupToAcl` mutation.""" type AddGroupToAclPayload { acl: Acl - """ - Reads a single `Basemap` that is related to this `Acl`. - """ + """Reads a single `Basemap` that is related to this `Acl`.""" basemap: Basemap """ @@ -108,20 +85,14 @@ type AddGroupToAclPayload { """ query: Query - """ - Reads a single `SketchClass` that is related to this `Acl`. - """ + """Reads a single `SketchClass` that is related to this `Acl`.""" sketchClass: SketchClass - """ - Reads a single `TableOfContentsItem` that is related to this `Acl`. - """ + """Reads a single `TableOfContentsItem` that is related to this `Acl`.""" tableOfContentsItem: TableOfContentsItem } -""" -All input for the `addUserToGroup` mutation. -""" +"""All input for the `addUserToGroup` mutation.""" input AddUserToGroupInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -132,9 +103,7 @@ input AddUserToGroupInput { userId: Int } -""" -The output of our `addUserToGroup` mutation. -""" +"""The output of our `addUserToGroup` mutation.""" type AddUserToGroupPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -148,9 +117,7 @@ type AddUserToGroupPayload { query: Query } -""" -All input for the `addValidChildSketchClass` mutation. -""" +"""All input for the `addValidChildSketchClass` mutation.""" input AddValidChildSketchClassInput { child: Int @@ -162,9 +129,7 @@ input AddValidChildSketchClassInput { parent: Int } -""" -The output of our `addValidChildSketchClass` mutation. -""" +"""The output of our `addValidChildSketchClass` mutation.""" type AddValidChildSketchClassPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -178,9 +143,7 @@ type AddValidChildSketchClassPayload { query: Query } -""" -All input for the `alternateLanguageLabelsForFormElement` mutation. -""" +"""All input for the `alternateLanguageLabelsForFormElement` mutation.""" input AlternateLanguageLabelsForFormElementInput { alternateLanguageSettings: JSON attrId: Int @@ -193,9 +156,7 @@ input AlternateLanguageLabelsForFormElementInput { clientMutationId: String } -""" -The output of our `alternateLanguageLabelsForFormElement` mutation. -""" +"""The output of our `alternateLanguageLabelsForFormElement` mutation.""" type AlternateLanguageLabelsForFormElementPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -210,9 +171,7 @@ type AlternateLanguageLabelsForFormElementPayload { query: Query } -""" -All input for the `approveParticipant` mutation. -""" +"""All input for the `approveParticipant` mutation.""" input ApproveParticipantInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -223,9 +182,7 @@ input ApproveParticipantInput { userId: Int } -""" -The output of our `approveParticipant` mutation. -""" +"""The output of our `approveParticipant` mutation.""" type ApproveParticipantPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -239,13 +196,9 @@ type ApproveParticipantPayload { query: Query user: User - """ - An edge for our `User`. May be used by Relay 1. - """ + """An edge for our `User`. May be used by Relay 1.""" userEdge( - """ - The method to use when ordering `User`. - """ + """The method to use when ordering `User`.""" orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] ): UsersEdge } @@ -256,9 +209,7 @@ enum ArcgisFeatureLayerFetchStrategy { TILED } -""" -An input for mutations affecting `ArcgisImportItem` -""" +"""An input for mutations affecting `ArcgisImportItem`""" input ArcgisImportItemInput { id: Int isFolder: Boolean @@ -269,9 +220,7 @@ input ArcgisImportItemInput { title: String } -""" -An input for mutations affecting `ArcgisImportSource` -""" +"""An input for mutations affecting `ArcgisImportSource`""" input ArcgisImportSourceInput { fetchStrategy: ArcgisFeatureLayerFetchStrategy id: Int @@ -285,9 +234,7 @@ enum ArcgisSourceType { ARCGIS_VECTOR } -""" -All input for the `archiveResponses` mutation. -""" +"""All input for the `archiveResponses` mutation.""" input ArchiveResponsesInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -298,9 +245,7 @@ input ArchiveResponsesInput { makeArchived: Boolean } -""" -The output of our `archiveResponses` mutation. -""" +"""The output of our `archiveResponses` mutation.""" type ArchiveResponsesPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -316,9 +261,7 @@ type ArchiveResponsesPayload { } type Basemap implements Node { - """ - Reads a single `Acl` that is related to this `Basemap`. - """ + """Reads a single `Acl` that is related to this `Basemap`.""" acl: Acl """ @@ -340,6 +283,7 @@ type Basemap implements Node { Used to indicate whether the basemap is included in the public basemap listing. Useful for hiding an option temporarily, or adding a basemap to the project which will only be used in surveys. + """ isDisabled: Boolean! @@ -348,18 +292,12 @@ type Basemap implements Node { """ labelsLayerId: String - """ - Reads and enables pagination through a set of `MapBookmark`. - """ + """Reads and enables pagination through a set of `MapBookmark`.""" mapBookmarksBySelectedBasemapConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -367,14 +305,10 @@ type Basemap implements Node { """ condition: MapBookmarkCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -383,16 +317,12 @@ type Basemap implements Node { """ offset: Int - """ - The method to use when ordering `MapBookmark`. - """ + """The method to use when ordering `MapBookmark`.""" orderBy: [MapBookmarksOrderBy!] = [NATURAL] ): MapBookmarksConnection! maxzoom: Int - """ - Label shown in the basemap picker interface - """ + """Label shown in the basemap picker interface""" name: String! """ @@ -400,64 +330,44 @@ type Basemap implements Node { """ nodeId: ID! - """ - Only available on supported projects by authorized users - """ + """Only available on supported projects by authorized users""" offlineSupportInformation: OfflineSupportInformation - """ - Reads and enables pagination through a set of `OfflineTileSetting`. - """ + """Reads and enables pagination through a set of `OfflineTileSetting`.""" offlineTileSettings( """ A condition to be used in determining which values should be returned by the collection. """ condition: OfflineTileSettingCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `OfflineTileSetting`. - """ + """The method to use when ordering `OfflineTileSetting`.""" orderBy: [OfflineTileSettingsOrderBy!] ): [OfflineTileSetting!]! - """ - Reads and enables pagination through a set of `OptionalBasemapLayer`. - """ + """Reads and enables pagination through a set of `OptionalBasemapLayer`.""" optionalBasemapLayers( """ A condition to be used in determining which values should be returned by the collection. """ condition: OptionalBasemapLayerCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `OptionalBasemapLayer`. - """ + """The method to use when ordering `OptionalBasemapLayer`.""" orderBy: [OptionalBasemapLayersOrderBy!] ): [OptionalBasemapLayer!]! - """ - Reads a single `Project` that is related to this `Basemap`. - """ + """Reads a single `Project` that is related to this `Basemap`.""" project: Project """ @@ -467,18 +377,12 @@ type Basemap implements Node { """ projectId: Int - """ - Reads and enables pagination through a set of `ProjectsSharedBasemap`. - """ + """Reads and enables pagination through a set of `ProjectsSharedBasemap`.""" projectsSharedBasemapsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -486,14 +390,10 @@ type Basemap implements Node { """ condition: ProjectsSharedBasemapCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -502,24 +402,16 @@ type Basemap implements Node { """ offset: Int - """ - The method to use when ordering `ProjectsSharedBasemap`. - """ + """The method to use when ordering `ProjectsSharedBasemap`.""" orderBy: [ProjectsSharedBasemapsOrderBy!] = [NATURAL] ): ProjectsSharedBasemapsConnection! - """ - Reads and enables pagination through a set of `FormElement`. - """ + """Reads and enables pagination through a set of `FormElement`.""" relatedFormElements( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [FormElement!] surveysOnly: Boolean! @@ -539,9 +431,7 @@ type Basemap implements Node { terrainUrl: String terrainVisibilityDefault: Boolean! - """ - Square thumbnail will be used to identify the basemap - """ + """Square thumbnail will be used to identify the basemap""" thumbnail: String! """ @@ -564,25 +454,17 @@ type Basemap implements Node { A condition to be used against `Basemap` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input BasemapCondition { - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `interactivitySettingsId` field. - """ + """Checks for equality with the object’s `interactivitySettingsId` field.""" interactivitySettingsId: Int - """ - Checks for equality with the object’s `projectId` field. - """ + """Checks for equality with the object’s `projectId` field.""" projectId: Int } -""" -An input for mutations affecting `Basemap` -""" +"""An input for mutations affecting `Basemap`""" input BasemapInput { """ Optional attribution to show at the bottom of the map. Will be overriden by @@ -597,6 +479,7 @@ input BasemapInput { Used to indicate whether the basemap is included in the public basemap listing. Useful for hiding an option temporarily, or adding a basemap to the project which will only be used in surveys. + """ isDisabled: Boolean @@ -606,9 +489,7 @@ input BasemapInput { labelsLayerId: String maxzoom: Int - """ - Label shown in the basemap picker interface - """ + """Label shown in the basemap picker interface""" name: String! """ @@ -634,9 +515,7 @@ input BasemapInput { terrainUrl: String terrainVisibilityDefault: Boolean - """ - Square thumbnail will be used to identify the basemap - """ + """Square thumbnail will be used to identify the basemap""" thumbnail: Upload """ @@ -673,6 +552,7 @@ input BasemapPatch { Used to indicate whether the basemap is included in the public basemap listing. Useful for hiding an option temporarily, or adding a basemap to the project which will only be used in surveys. + """ isDisabled: Boolean @@ -682,9 +562,7 @@ input BasemapPatch { labelsLayerId: String maxzoom: Int - """ - Label shown in the basemap picker interface - """ + """Label shown in the basemap picker interface""" name: String """ @@ -710,9 +588,7 @@ input BasemapPatch { terrainUrl: String terrainVisibilityDefault: Boolean - """ - Square thumbnail will be used to identify the basemap - """ + """Square thumbnail will be used to identify the basemap""" thumbnail: Upload """ @@ -731,49 +607,33 @@ input BasemapPatch { useDefaultOfflineTileSettings: Boolean } -""" -A connection to a list of `Basemap` values. -""" +"""A connection to a list of `Basemap` values.""" type BasemapsConnection { """ A list of edges which contains the `Basemap` and cursor to aid in pagination. """ edges: [BasemapsEdge!]! - """ - A list of `Basemap` objects. - """ + """A list of `Basemap` objects.""" nodes: [Basemap!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `Basemap` you could get from the connection. - """ + """The count of *all* `Basemap` you could get from the connection.""" totalCount: Int! } -""" -A `Basemap` edge in the connection. -""" +"""A `Basemap` edge in the connection.""" type BasemapsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `Basemap` at the end of the edge. - """ + """The `Basemap` at the end of the edge.""" node: Basemap! } -""" -Methods to use when ordering `Basemap`. -""" +"""Methods to use when ordering `Basemap`.""" enum BasemapsOrderBy { ID_ASC ID_DESC @@ -829,9 +689,7 @@ enum CacheableOfflineAssetType { SPRITE } -""" -All input for the `cancelDataUpload` mutation. -""" +"""All input for the `cancelDataUpload` mutation.""" input CancelDataUploadInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -842,9 +700,7 @@ input CancelDataUploadInput { uploadId: UUID } -""" -The output of our `cancelDataUpload` mutation. -""" +"""The output of our `cancelDataUpload` mutation.""" type CancelDataUploadPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -858,9 +714,7 @@ type CancelDataUploadPayload { query: Query } -""" -All input for the `clearFormElementStyle` mutation. -""" +"""All input for the `clearFormElementStyle` mutation.""" input ClearFormElementStyleInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -870,9 +724,7 @@ input ClearFormElementStyleInput { formElementId: Int } -""" -The output of our `clearFormElementStyle` mutation. -""" +"""The output of our `clearFormElementStyle` mutation.""" type ClearFormElementStylePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -881,13 +733,9 @@ type ClearFormElementStylePayload { clientMutationId: String formElement: FormElement - """ - An edge for our `FormElement`. May be used by Relay 1. - """ + """An edge for our `FormElement`. May be used by Relay 1.""" formElementEdge( - """ - The method to use when ordering `FormElement`. - """ + """The method to use when ordering `FormElement`.""" orderBy: [FormElementsOrderBy!] = [PRIMARY_KEY_ASC] ): FormElementsEdge @@ -898,14 +746,16 @@ type ClearFormElementStylePayload { } """ -Community guidelines can be set by project admins with standards for using the +Community guidelines can be set by project admins with standards for using the discussion forums. Users will be shown this content before making their first post, and they will be shown when posts are hidden by moderators for violating community standards. + """ type CommunityGuideline implements Node { """ JSON contents are expected to be used with a system like DraftJS on the client. + """ content: JSON! @@ -914,19 +764,16 @@ type CommunityGuideline implements Node { """ nodeId: ID! - """ - Reads a single `Project` that is related to this `CommunityGuideline`. - """ + """Reads a single `Project` that is related to this `CommunityGuideline`.""" project: Project projectId: Int! } -""" -An input for mutations affecting `CommunityGuideline` -""" +"""An input for mutations affecting `CommunityGuideline`""" input CommunityGuidelineInput { """ JSON contents are expected to be used with a system like DraftJS on the client. + """ content: JSON projectId: Int! @@ -938,13 +785,12 @@ Represents an update to a `CommunityGuideline`. Fields that are set will be upda input CommunityGuidelinePatch { """ JSON contents are expected to be used with a system like DraftJS on the client. + """ content: JSON } -""" -All input for the `confirmOnboarded` mutation. -""" +"""All input for the `confirmOnboarded` mutation.""" input ConfirmOnboardedInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -953,9 +799,7 @@ input ConfirmOnboardedInput { clientMutationId: String } -""" -The output of our `confirmOnboarded` mutation. -""" +"""The output of our `confirmOnboarded` mutation.""" type ConfirmOnboardedPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -969,20 +813,14 @@ type ConfirmOnboardedPayload { query: Query user: User - """ - An edge for our `User`. May be used by Relay 1. - """ + """An edge for our `User`. May be used by Relay 1.""" userEdge( - """ - The method to use when ordering `User`. - """ + """The method to use when ordering `User`.""" orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] ): UsersEdge } -""" -All input for the `confirmProjectInviteWithSurveyToken` mutation. -""" +"""All input for the `confirmProjectInviteWithSurveyToken` mutation.""" input ConfirmProjectInviteWithSurveyTokenInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -992,9 +830,7 @@ input ConfirmProjectInviteWithSurveyTokenInput { projectId: Int } -""" -The output of our `confirmProjectInviteWithSurveyToken` mutation. -""" +"""The output of our `confirmProjectInviteWithSurveyToken` mutation.""" type ConfirmProjectInviteWithSurveyTokenPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1009,9 +845,7 @@ type ConfirmProjectInviteWithSurveyTokenPayload { query: Query } -""" -All input for the `confirmProjectInviteWithVerifiedEmail` mutation. -""" +"""All input for the `confirmProjectInviteWithVerifiedEmail` mutation.""" input ConfirmProjectInviteWithVerifiedEmailInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1021,9 +855,7 @@ input ConfirmProjectInviteWithVerifiedEmailInput { projectId: Int } -""" -The output of our `confirmProjectInviteWithVerifiedEmail` mutation. -""" +"""The output of our `confirmProjectInviteWithVerifiedEmail` mutation.""" type ConfirmProjectInviteWithVerifiedEmailPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1038,9 +870,7 @@ type ConfirmProjectInviteWithVerifiedEmailPayload { query: Query } -""" -All input for the `copyAppearance` mutation. -""" +"""All input for the `copyAppearance` mutation.""" input CopyAppearanceInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1051,9 +881,7 @@ input CopyAppearanceInput { formElementId: Int } -""" -The output of our `copyAppearance` mutation. -""" +"""The output of our `copyAppearance` mutation.""" type CopyAppearancePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1062,13 +890,9 @@ type CopyAppearancePayload { clientMutationId: String formElement: FormElement - """ - An edge for our `FormElement`. May be used by Relay 1. - """ + """An edge for our `FormElement`. May be used by Relay 1.""" formElementEdge( - """ - The method to use when ordering `FormElement`. - """ + """The method to use when ordering `FormElement`.""" orderBy: [FormElementsOrderBy!] = [PRIMARY_KEY_ASC] ): FormElementsEdge @@ -1078,9 +902,7 @@ type CopyAppearancePayload { query: Query } -""" -All input for the `copySketchFolder` mutation. -""" +"""All input for the `copySketchFolder` mutation.""" input CopySketchFolderInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1090,9 +912,7 @@ input CopySketchFolderInput { folderId: Int } -""" -The output of our `copySketchFolder` mutation. -""" +"""The output of our `copySketchFolder` mutation.""" type CopySketchFolderPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1106,20 +926,14 @@ type CopySketchFolderPayload { query: Query sketchFolder: SketchFolder - """ - An edge for our `SketchFolder`. May be used by Relay 1. - """ + """An edge for our `SketchFolder`. May be used by Relay 1.""" sketchFolderEdge( - """ - The method to use when ordering `SketchFolder`. - """ + """The method to use when ordering `SketchFolder`.""" orderBy: [SketchFoldersOrderBy!] = [PRIMARY_KEY_ASC] ): SketchFoldersEdge } -""" -All input for the `copySketch` mutation. -""" +"""All input for the `copySketch` mutation.""" input CopySketchInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1129,9 +943,7 @@ input CopySketchInput { sketchId: Int } -""" -The output of our `copySketch` mutation. -""" +"""The output of our `copySketch` mutation.""" type CopySketchPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1139,19 +951,13 @@ type CopySketchPayload { """ clientMutationId: String - """ - Reads a single `Sketch` that is related to this `Sketch`. - """ + """Reads a single `Sketch` that is related to this `Sketch`.""" collection: Sketch - """ - Reads a single `Sketch` that is related to this `Sketch`. - """ + """Reads a single `Sketch` that is related to this `Sketch`.""" copiedFrom: Sketch - """ - Reads a single `FormElement` that is related to this `Sketch`. - """ + """Reads a single `FormElement` that is related to this `Sketch`.""" formElement: FormElement """ @@ -1160,14 +966,10 @@ type CopySketchPayload { query: Query sketch: Sketch - """ - Reads a single `SketchClass` that is related to this `Sketch`. - """ + """Reads a single `SketchClass` that is related to this `Sketch`.""" sketchClass: SketchClass - """ - Reads a single `User` that is related to this `Sketch`. - """ + """Reads a single `User` that is related to this `Sketch`.""" user: User } @@ -1182,13 +984,9 @@ type CopySketchTocItemResults { updatedCollection: Sketch } -""" -All input for the create `Basemap` mutation. -""" +"""All input for the create `Basemap` mutation.""" input CreateBasemapInput { - """ - The `Basemap` to be created by this mutation. - """ + """The `Basemap` to be created by this mutation.""" basemap: BasemapInput! """ @@ -1198,22 +996,14 @@ input CreateBasemapInput { clientMutationId: String } -""" -The output of our create `Basemap` mutation. -""" +"""The output of our create `Basemap` mutation.""" type CreateBasemapPayload { - """ - The `Basemap` that was created by this mutation. - """ + """The `Basemap` that was created by this mutation.""" basemap: Basemap - """ - An edge for our `Basemap`. May be used by Relay 1. - """ + """An edge for our `Basemap`. May be used by Relay 1.""" basemapEdge( - """ - The method to use when ordering `Basemap`. - """ + """The method to use when ordering `Basemap`.""" orderBy: [BasemapsOrderBy!] = [PRIMARY_KEY_ASC] ): BasemapsEdge @@ -1228,9 +1018,7 @@ type CreateBasemapPayload { """ interactivitySettings: InteractivitySetting - """ - Reads a single `Project` that is related to this `Basemap`. - """ + """Reads a single `Project` that is related to this `Basemap`.""" project: Project """ @@ -1239,9 +1027,7 @@ type CreateBasemapPayload { query: Query } -""" -All input for the create `CommunityGuideline` mutation. -""" +"""All input for the create `CommunityGuideline` mutation.""" input CreateCommunityGuidelineInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1249,15 +1035,11 @@ input CreateCommunityGuidelineInput { """ clientMutationId: String - """ - The `CommunityGuideline` to be created by this mutation. - """ + """The `CommunityGuideline` to be created by this mutation.""" communityGuideline: CommunityGuidelineInput! } -""" -The output of our create `CommunityGuideline` mutation. -""" +"""The output of our create `CommunityGuideline` mutation.""" type CreateCommunityGuidelinePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1265,14 +1047,10 @@ type CreateCommunityGuidelinePayload { """ clientMutationId: String - """ - The `CommunityGuideline` that was created by this mutation. - """ + """The `CommunityGuideline` that was created by this mutation.""" communityGuideline: CommunityGuideline - """ - Reads a single `Project` that is related to this `CommunityGuideline`. - """ + """Reads a single `Project` that is related to this `CommunityGuideline`.""" project: Project """ @@ -1281,9 +1059,7 @@ type CreateCommunityGuidelinePayload { query: Query } -""" -All input for the create `DataLayer` mutation. -""" +"""All input for the create `DataLayer` mutation.""" input CreateDataLayerInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1291,15 +1067,11 @@ input CreateDataLayerInput { """ clientMutationId: String - """ - The `DataLayer` to be created by this mutation. - """ + """The `DataLayer` to be created by this mutation.""" dataLayer: DataLayerInput! } -""" -The output of our create `DataLayer` mutation. -""" +"""The output of our create `DataLayer` mutation.""" type CreateDataLayerPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1307,24 +1079,16 @@ type CreateDataLayerPayload { """ clientMutationId: String - """ - The `DataLayer` that was created by this mutation. - """ + """The `DataLayer` that was created by this mutation.""" dataLayer: DataLayer - """ - An edge for our `DataLayer`. May be used by Relay 1. - """ + """An edge for our `DataLayer`. May be used by Relay 1.""" dataLayerEdge( - """ - The method to use when ordering `DataLayer`. - """ + """The method to use when ordering `DataLayer`.""" orderBy: [DataLayersOrderBy!] = [PRIMARY_KEY_ASC] ): DataLayersEdge - """ - Reads a single `DataSource` that is related to this `DataLayer`. - """ + """Reads a single `DataSource` that is related to this `DataLayer`.""" dataSource: DataSource """ @@ -1338,9 +1102,7 @@ type CreateDataLayerPayload { query: Query } -""" -All input for the create `DataSource` mutation. -""" +"""All input for the create `DataSource` mutation.""" input CreateDataSourceInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1348,15 +1110,11 @@ input CreateDataSourceInput { """ clientMutationId: String - """ - The `DataSource` to be created by this mutation. - """ + """The `DataSource` to be created by this mutation.""" dataSource: DataSourceInput! } -""" -The output of our create `DataSource` mutation. -""" +"""The output of our create `DataSource` mutation.""" type CreateDataSourcePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1364,18 +1122,12 @@ type CreateDataSourcePayload { """ clientMutationId: String - """ - The `DataSource` that was created by this mutation. - """ + """The `DataSource` that was created by this mutation.""" dataSource: DataSource - """ - An edge for our `DataSource`. May be used by Relay 1. - """ + """An edge for our `DataSource`. May be used by Relay 1.""" dataSourceEdge( - """ - The method to use when ordering `DataSource`. - """ + """The method to use when ordering `DataSource`.""" orderBy: [DataSourcesOrderBy!] = [PRIMARY_KEY_ASC] ): DataSourcesEdge @@ -1385,9 +1137,7 @@ type CreateDataSourcePayload { query: Query } -""" -All input for the `createDataUpload` mutation. -""" +"""All input for the `createDataUpload` mutation.""" input CreateDataUploadInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1399,9 +1149,7 @@ input CreateDataUploadInput { projectId: Int } -""" -The output of our `createDataUpload` mutation. -""" +"""The output of our `createDataUpload` mutation.""" type CreateDataUploadPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1410,19 +1158,13 @@ type CreateDataUploadPayload { clientMutationId: String dataUploadTask: DataUploadTask - """ - An edge for our `DataUploadTask`. May be used by Relay 1. - """ + """An edge for our `DataUploadTask`. May be used by Relay 1.""" dataUploadTaskEdge( - """ - The method to use when ordering `DataUploadTask`. - """ + """The method to use when ordering `DataUploadTask`.""" orderBy: [DataUploadTasksOrderBy!] = [PRIMARY_KEY_ASC] ): DataUploadTasksEdge - """ - Reads a single `Project` that is related to this `DataUploadTask`. - """ + """Reads a single `Project` that is related to this `DataUploadTask`.""" project: Project """ @@ -1431,9 +1173,7 @@ type CreateDataUploadPayload { query: Query } -""" -All input for the create `FormElement` mutation. -""" +"""All input for the create `FormElement` mutation.""" input CreateFormElementInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1441,15 +1181,11 @@ input CreateFormElementInput { """ clientMutationId: String - """ - The `FormElement` to be created by this mutation. - """ + """The `FormElement` to be created by this mutation.""" formElement: FormElementInput! } -""" -The output of our create `FormElement` mutation. -""" +"""The output of our create `FormElement` mutation.""" type CreateFormElementPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1457,18 +1193,12 @@ type CreateFormElementPayload { """ clientMutationId: String - """ - The `FormElement` that was created by this mutation. - """ + """The `FormElement` that was created by this mutation.""" formElement: FormElement - """ - An edge for our `FormElement`. May be used by Relay 1. - """ + """An edge for our `FormElement`. May be used by Relay 1.""" formElementEdge( - """ - The method to use when ordering `FormElement`. - """ + """The method to use when ordering `FormElement`.""" orderBy: [FormElementsOrderBy!] = [PRIMARY_KEY_ASC] ): FormElementsEdge @@ -1478,9 +1208,7 @@ type CreateFormElementPayload { query: Query } -""" -All input for the create `FormLogicCondition` mutation. -""" +"""All input for the create `FormLogicCondition` mutation.""" input CreateFormLogicConditionInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1488,15 +1216,11 @@ input CreateFormLogicConditionInput { """ clientMutationId: String - """ - The `FormLogicCondition` to be created by this mutation. - """ + """The `FormLogicCondition` to be created by this mutation.""" formLogicCondition: FormLogicConditionInput! } -""" -The output of our create `FormLogicCondition` mutation. -""" +"""The output of our create `FormLogicCondition` mutation.""" type CreateFormLogicConditionPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1504,18 +1228,12 @@ type CreateFormLogicConditionPayload { """ clientMutationId: String - """ - The `FormLogicCondition` that was created by this mutation. - """ + """The `FormLogicCondition` that was created by this mutation.""" formLogicCondition: FormLogicCondition - """ - An edge for our `FormLogicCondition`. May be used by Relay 1. - """ + """An edge for our `FormLogicCondition`. May be used by Relay 1.""" formLogicConditionEdge( - """ - The method to use when ordering `FormLogicCondition`. - """ + """The method to use when ordering `FormLogicCondition`.""" orderBy: [FormLogicConditionsOrderBy!] = [PRIMARY_KEY_ASC] ): FormLogicConditionsEdge @@ -1525,9 +1243,7 @@ type CreateFormLogicConditionPayload { query: Query } -""" -All input for the create `FormLogicRule` mutation. -""" +"""All input for the create `FormLogicRule` mutation.""" input CreateFormLogicRuleInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1535,15 +1251,11 @@ input CreateFormLogicRuleInput { """ clientMutationId: String - """ - The `FormLogicRule` to be created by this mutation. - """ + """The `FormLogicRule` to be created by this mutation.""" formLogicRule: FormLogicRuleInput! } -""" -The output of our create `FormLogicRule` mutation. -""" +"""The output of our create `FormLogicRule` mutation.""" type CreateFormLogicRulePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1551,18 +1263,12 @@ type CreateFormLogicRulePayload { """ clientMutationId: String - """ - The `FormLogicRule` that was created by this mutation. - """ + """The `FormLogicRule` that was created by this mutation.""" formLogicRule: FormLogicRule - """ - An edge for our `FormLogicRule`. May be used by Relay 1. - """ + """An edge for our `FormLogicRule`. May be used by Relay 1.""" formLogicRuleEdge( - """ - The method to use when ordering `FormLogicRule`. - """ + """The method to use when ordering `FormLogicRule`.""" orderBy: [FormLogicRulesOrderBy!] = [PRIMARY_KEY_ASC] ): FormLogicRulesEdge @@ -1572,9 +1278,7 @@ type CreateFormLogicRulePayload { query: Query } -""" -All input for the `createFormTemplateFromSketchClass` mutation. -""" +"""All input for the `createFormTemplateFromSketchClass` mutation.""" input CreateFormTemplateFromSketchClassInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1586,9 +1290,7 @@ input CreateFormTemplateFromSketchClassInput { templateType: FormTemplateType } -""" -The output of our `createFormTemplateFromSketchClass` mutation. -""" +"""The output of our `createFormTemplateFromSketchClass` mutation.""" type CreateFormTemplateFromSketchClassPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1597,13 +1299,9 @@ type CreateFormTemplateFromSketchClassPayload { clientMutationId: String form: Form - """ - An edge for our `Form`. May be used by Relay 1. - """ + """An edge for our `Form`. May be used by Relay 1.""" formEdge( - """ - The method to use when ordering `Form`. - """ + """The method to use when ordering `Form`.""" orderBy: [FormsOrderBy!] = [PRIMARY_KEY_ASC] ): FormsEdge @@ -1612,20 +1310,14 @@ type CreateFormTemplateFromSketchClassPayload { """ query: Query - """ - Reads a single `SketchClass` that is related to this `Form`. - """ + """Reads a single `SketchClass` that is related to this `Form`.""" sketchClass: SketchClass - """ - Reads a single `Survey` that is related to this `Form`. - """ + """Reads a single `Survey` that is related to this `Form`.""" survey: Survey } -""" -All input for the `createFormTemplateFromSurvey` mutation. -""" +"""All input for the `createFormTemplateFromSurvey` mutation.""" input CreateFormTemplateFromSurveyInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1637,9 +1329,7 @@ input CreateFormTemplateFromSurveyInput { templateType: FormTemplateType } -""" -The output of our `createFormTemplateFromSurvey` mutation. -""" +"""The output of our `createFormTemplateFromSurvey` mutation.""" type CreateFormTemplateFromSurveyPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1648,13 +1338,9 @@ type CreateFormTemplateFromSurveyPayload { clientMutationId: String form: Form - """ - An edge for our `Form`. May be used by Relay 1. - """ + """An edge for our `Form`. May be used by Relay 1.""" formEdge( - """ - The method to use when ordering `Form`. - """ + """The method to use when ordering `Form`.""" orderBy: [FormsOrderBy!] = [PRIMARY_KEY_ASC] ): FormsEdge @@ -1663,20 +1349,14 @@ type CreateFormTemplateFromSurveyPayload { """ query: Query - """ - Reads a single `SketchClass` that is related to this `Form`. - """ + """Reads a single `SketchClass` that is related to this `Form`.""" sketchClass: SketchClass - """ - Reads a single `Survey` that is related to this `Form`. - """ + """Reads a single `Survey` that is related to this `Form`.""" survey: Survey } -""" -All input for the create `Forum` mutation. -""" +"""All input for the create `Forum` mutation.""" input CreateForumInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1684,15 +1364,11 @@ input CreateForumInput { """ clientMutationId: String - """ - The `Forum` to be created by this mutation. - """ + """The `Forum` to be created by this mutation.""" forum: ForumInput! } -""" -The output of our create `Forum` mutation. -""" +"""The output of our create `Forum` mutation.""" type CreateForumPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1700,24 +1376,16 @@ type CreateForumPayload { """ clientMutationId: String - """ - The `Forum` that was created by this mutation. - """ + """The `Forum` that was created by this mutation.""" forum: Forum - """ - An edge for our `Forum`. May be used by Relay 1. - """ + """An edge for our `Forum`. May be used by Relay 1.""" forumEdge( - """ - The method to use when ordering `Forum`. - """ + """The method to use when ordering `Forum`.""" orderBy: [ForumsOrderBy!] = [PRIMARY_KEY_ASC] ): ForumsEdge - """ - Reads a single `Project` that is related to this `Forum`. - """ + """Reads a single `Project` that is related to this `Forum`.""" project: Project """ @@ -1726,9 +1394,7 @@ type CreateForumPayload { query: Query } -""" -All input for the create `Group` mutation. -""" +"""All input for the create `Group` mutation.""" input CreateGroupInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1736,15 +1402,11 @@ input CreateGroupInput { """ clientMutationId: String - """ - The `Group` to be created by this mutation. - """ + """The `Group` to be created by this mutation.""" group: GroupInput! } -""" -The output of our create `Group` mutation. -""" +"""The output of our create `Group` mutation.""" type CreateGroupPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1752,14 +1414,10 @@ type CreateGroupPayload { """ clientMutationId: String - """ - The `Group` that was created by this mutation. - """ + """The `Group` that was created by this mutation.""" group: Group - """ - Reads a single `Project` that is related to this `Group`. - """ + """Reads a single `Project` that is related to this `Group`.""" project: Project """ @@ -1768,9 +1426,7 @@ type CreateGroupPayload { query: Query } -""" -All input for the create `InteractivitySetting` mutation. -""" +"""All input for the create `InteractivitySetting` mutation.""" input CreateInteractivitySettingInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1778,15 +1434,11 @@ input CreateInteractivitySettingInput { """ clientMutationId: String - """ - The `InteractivitySetting` to be created by this mutation. - """ + """The `InteractivitySetting` to be created by this mutation.""" interactivitySetting: InteractivitySettingInput! } -""" -The output of our create `InteractivitySetting` mutation. -""" +"""The output of our create `InteractivitySetting` mutation.""" type CreateInteractivitySettingPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1794,9 +1446,7 @@ type CreateInteractivitySettingPayload { """ clientMutationId: String - """ - The `InteractivitySetting` that was created by this mutation. - """ + """The `InteractivitySetting` that was created by this mutation.""" interactivitySetting: InteractivitySetting """ @@ -1805,9 +1455,7 @@ type CreateInteractivitySettingPayload { query: Query } -""" -All input for the `createMapBookmark` mutation. -""" +"""All input for the `createMapBookmark` mutation.""" input CreateMapBookmarkInput { basemapName: String basemapOptionalLayerStates: JSON @@ -1831,13 +1479,9 @@ input CreateMapBookmarkInput { visibleSketches: [Int] } -""" -The output of our `createMapBookmark` mutation. -""" +"""The output of our `createMapBookmark` mutation.""" type CreateMapBookmarkPayload { - """ - Reads a single `Basemap` that is related to this `MapBookmark`. - """ + """Reads a single `Basemap` that is related to this `MapBookmark`.""" basemapBySelectedBasemap: Basemap """ @@ -1847,13 +1491,9 @@ type CreateMapBookmarkPayload { clientMutationId: String mapBookmark: MapBookmark - """ - An edge for our `MapBookmark`. May be used by Relay 1. - """ + """An edge for our `MapBookmark`. May be used by Relay 1.""" mapBookmarkEdge( - """ - The method to use when ordering `MapBookmark`. - """ + """The method to use when ordering `MapBookmark`.""" orderBy: [MapBookmarksOrderBy!] = [NATURAL] ): MapBookmarksEdge @@ -1863,9 +1503,7 @@ type CreateMapBookmarkPayload { query: Query } -""" -All input for the create `OfflineTileSetting` mutation. -""" +"""All input for the create `OfflineTileSetting` mutation.""" input CreateOfflineTileSettingInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1873,19 +1511,13 @@ input CreateOfflineTileSettingInput { """ clientMutationId: String - """ - The `OfflineTileSetting` to be created by this mutation. - """ + """The `OfflineTileSetting` to be created by this mutation.""" offlineTileSetting: OfflineTileSettingInput! } -""" -The output of our create `OfflineTileSetting` mutation. -""" +"""The output of our create `OfflineTileSetting` mutation.""" type CreateOfflineTileSettingPayload { - """ - Reads a single `Basemap` that is related to this `OfflineTileSetting`. - """ + """Reads a single `Basemap` that is related to this `OfflineTileSetting`.""" basemap: Basemap """ @@ -1894,14 +1526,10 @@ type CreateOfflineTileSettingPayload { """ clientMutationId: String - """ - The `OfflineTileSetting` that was created by this mutation. - """ + """The `OfflineTileSetting` that was created by this mutation.""" offlineTileSetting: OfflineTileSetting - """ - Reads a single `Project` that is related to this `OfflineTileSetting`. - """ + """Reads a single `Project` that is related to this `OfflineTileSetting`.""" project: Project """ @@ -1910,9 +1538,7 @@ type CreateOfflineTileSettingPayload { query: Query } -""" -All input for the create `OptionalBasemapLayer` mutation. -""" +"""All input for the create `OptionalBasemapLayer` mutation.""" input CreateOptionalBasemapLayerInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1920,15 +1546,11 @@ input CreateOptionalBasemapLayerInput { """ clientMutationId: String - """ - The `OptionalBasemapLayer` to be created by this mutation. - """ + """The `OptionalBasemapLayer` to be created by this mutation.""" optionalBasemapLayer: OptionalBasemapLayerInput! } -""" -The output of our create `OptionalBasemapLayer` mutation. -""" +"""The output of our create `OptionalBasemapLayer` mutation.""" type CreateOptionalBasemapLayerPayload { """ Reads a single `Basemap` that is related to this `OptionalBasemapLayer`. @@ -1941,9 +1563,7 @@ type CreateOptionalBasemapLayerPayload { """ clientMutationId: String - """ - The `OptionalBasemapLayer` that was created by this mutation. - """ + """The `OptionalBasemapLayer` that was created by this mutation.""" optionalBasemapLayer: OptionalBasemapLayer """ @@ -1952,9 +1572,7 @@ type CreateOptionalBasemapLayerPayload { query: Query } -""" -All input for the `createProject` mutation. -""" +"""All input for the `createProject` mutation.""" input CreateProjectInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1965,9 +1583,7 @@ input CreateProjectInput { slug: String! } -""" -All input for the create `ProjectInviteGroup` mutation. -""" +"""All input for the create `ProjectInviteGroup` mutation.""" input CreateProjectInviteGroupInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -1975,15 +1591,11 @@ input CreateProjectInviteGroupInput { """ clientMutationId: String - """ - The `ProjectInviteGroup` to be created by this mutation. - """ + """The `ProjectInviteGroup` to be created by this mutation.""" projectInviteGroup: ProjectInviteGroupInput! } -""" -The output of our create `ProjectInviteGroup` mutation. -""" +"""The output of our create `ProjectInviteGroup` mutation.""" type CreateProjectInviteGroupPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -1991,9 +1603,7 @@ type CreateProjectInviteGroupPayload { """ clientMutationId: String - """ - Reads a single `Group` that is related to this `ProjectInviteGroup`. - """ + """Reads a single `Group` that is related to this `ProjectInviteGroup`.""" group: Group """ @@ -2001,18 +1611,12 @@ type CreateProjectInviteGroupPayload { """ invite: ProjectInvite - """ - The `ProjectInviteGroup` that was created by this mutation. - """ + """The `ProjectInviteGroup` that was created by this mutation.""" projectInviteGroup: ProjectInviteGroup - """ - An edge for our `ProjectInviteGroup`. May be used by Relay 1. - """ + """An edge for our `ProjectInviteGroup`. May be used by Relay 1.""" projectInviteGroupEdge( - """ - The method to use when ordering `ProjectInviteGroup`. - """ + """The method to use when ordering `ProjectInviteGroup`.""" orderBy: [ProjectInviteGroupsOrderBy!] = [NATURAL] ): ProjectInviteGroupsEdge @@ -2022,9 +1626,7 @@ type CreateProjectInviteGroupPayload { query: Query } -""" -All input for the `createProjectInvites` mutation. -""" +"""All input for the `createProjectInvites` mutation.""" input CreateProjectInvitesInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -2038,9 +1640,7 @@ input CreateProjectInvitesInput { sendEmailNow: Boolean } -""" -The output of our `createProjectInvites` mutation. -""" +"""The output of our `createProjectInvites` mutation.""" type CreateProjectInvitesPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -2055,9 +1655,7 @@ type CreateProjectInvitesPayload { query: Query } -""" -The output of our `createProject` mutation. -""" +"""The output of our `createProject` mutation.""" type CreateProjectPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -2065,19 +1663,13 @@ type CreateProjectPayload { """ clientMutationId: String - """ - Reads a single `DataSourcesBucket` that is related to this `Project`. - """ + """Reads a single `DataSourcesBucket` that is related to this `Project`.""" dataSourcesBucket: DataSourcesBucket project: Project - """ - An edge for our `Project`. May be used by Relay 1. - """ + """An edge for our `Project`. May be used by Relay 1.""" projectEdge( - """ - The method to use when ordering `Project`. - """ + """The method to use when ordering `Project`.""" orderBy: [ProjectsOrderBy!] = [PRIMARY_KEY_ASC] ): ProjectsEdge @@ -2087,9 +1679,7 @@ type CreateProjectPayload { query: Query } -""" -All input for the create `ProjectsSharedBasemap` mutation. -""" +"""All input for the create `ProjectsSharedBasemap` mutation.""" input CreateProjectsSharedBasemapInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -2097,15 +1687,11 @@ input CreateProjectsSharedBasemapInput { """ clientMutationId: String - """ - The `ProjectsSharedBasemap` to be created by this mutation. - """ + """The `ProjectsSharedBasemap` to be created by this mutation.""" projectsSharedBasemap: ProjectsSharedBasemapInput! } -""" -The output of our create `ProjectsSharedBasemap` mutation. -""" +"""The output of our create `ProjectsSharedBasemap` mutation.""" type CreateProjectsSharedBasemapPayload { """ Reads a single `Basemap` that is related to this `ProjectsSharedBasemap`. @@ -2118,18 +1704,12 @@ type CreateProjectsSharedBasemapPayload { """ clientMutationId: String - """ - The `ProjectsSharedBasemap` that was created by this mutation. - """ + """The `ProjectsSharedBasemap` that was created by this mutation.""" projectsSharedBasemap: ProjectsSharedBasemap - """ - An edge for our `ProjectsSharedBasemap`. May be used by Relay 1. - """ + """An edge for our `ProjectsSharedBasemap`. May be used by Relay 1.""" projectsSharedBasemapEdge( - """ - The method to use when ordering `ProjectsSharedBasemap`. - """ + """The method to use when ordering `ProjectsSharedBasemap`.""" orderBy: [ProjectsSharedBasemapsOrderBy!] = [NATURAL] ): ProjectsSharedBasemapsEdge @@ -2139,9 +1719,7 @@ type CreateProjectsSharedBasemapPayload { query: Query } -""" -All input for the `createSketchClassFromTemplate` mutation. -""" +"""All input for the `createSketchClassFromTemplate` mutation.""" input CreateSketchClassFromTemplateInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -2152,9 +1730,7 @@ input CreateSketchClassFromTemplateInput { templateSketchClassId: Int } -""" -The output of our `createSketchClassFromTemplate` mutation. -""" +"""The output of our `createSketchClassFromTemplate` mutation.""" type CreateSketchClassFromTemplatePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -2162,14 +1738,10 @@ type CreateSketchClassFromTemplatePayload { """ clientMutationId: String - """ - Reads a single `FormElement` that is related to this `SketchClass`. - """ + """Reads a single `FormElement` that is related to this `SketchClass`.""" formElement: FormElement - """ - Reads a single `Project` that is related to this `SketchClass`. - """ + """Reads a single `Project` that is related to this `SketchClass`.""" project: Project """ @@ -2178,20 +1750,14 @@ type CreateSketchClassFromTemplatePayload { query: Query sketchClass: SketchClass - """ - An edge for our `SketchClass`. May be used by Relay 1. - """ + """An edge for our `SketchClass`. May be used by Relay 1.""" sketchClassEdge( - """ - The method to use when ordering `SketchClass`. - """ + """The method to use when ordering `SketchClass`.""" orderBy: [SketchClassesOrderBy!] = [PRIMARY_KEY_ASC] ): SketchClassesEdge } -""" -All input for the `createSketchFolder` mutation. -""" +"""All input for the `createSketchFolder` mutation.""" input CreateSketchFolderInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -2204,9 +1770,7 @@ input CreateSketchFolderInput { slug: String } -""" -The output of our `createSketchFolder` mutation. -""" +"""The output of our `createSketchFolder` mutation.""" type CreateSketchFolderPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -2220,20 +1784,14 @@ type CreateSketchFolderPayload { query: Query sketchFolder: SketchFolder - """ - An edge for our `SketchFolder`. May be used by Relay 1. - """ + """An edge for our `SketchFolder`. May be used by Relay 1.""" sketchFolderEdge( - """ - The method to use when ordering `SketchFolder`. - """ + """The method to use when ordering `SketchFolder`.""" orderBy: [SketchFoldersOrderBy!] = [PRIMARY_KEY_ASC] ): SketchFoldersEdge } -""" -All input for the create `SurveyInvitedGroup` mutation. -""" +"""All input for the create `SurveyInvitedGroup` mutation.""" input CreateSurveyInvitedGroupInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -2241,15 +1799,11 @@ input CreateSurveyInvitedGroupInput { """ clientMutationId: String - """ - The `SurveyInvitedGroup` to be created by this mutation. - """ + """The `SurveyInvitedGroup` to be created by this mutation.""" surveyInvitedGroup: SurveyInvitedGroupInput! } -""" -The output of our create `SurveyInvitedGroup` mutation. -""" +"""The output of our create `SurveyInvitedGroup` mutation.""" type CreateSurveyInvitedGroupPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -2262,20 +1816,14 @@ type CreateSurveyInvitedGroupPayload { """ query: Query - """ - Reads a single `Survey` that is related to this `SurveyInvitedGroup`. - """ + """Reads a single `Survey` that is related to this `SurveyInvitedGroup`.""" survey: Survey - """ - The `SurveyInvitedGroup` that was created by this mutation. - """ + """The `SurveyInvitedGroup` that was created by this mutation.""" surveyInvitedGroup: SurveyInvitedGroup } -""" -All input for the `createSurveyInvites` mutation. -""" +"""All input for the `createSurveyInvites` mutation.""" input CreateSurveyInvitesInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -2289,9 +1837,7 @@ input CreateSurveyInvitesInput { surveyInviteOptions: [SurveyInviteOptionsInput] } -""" -The output of our `createSurveyInvites` mutation. -""" +"""The output of our `createSurveyInvites` mutation.""" type CreateSurveyInvitesPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -2306,9 +1852,7 @@ type CreateSurveyInvitesPayload { surveyInvites: [SurveyInvite!] } -""" -All input for the `createSurveyJumpRule` mutation. -""" +"""All input for the `createSurveyJumpRule` mutation.""" input CreateSurveyJumpRuleInput { booleanOperator: FormLogicOperator @@ -2322,9 +1866,7 @@ input CreateSurveyJumpRuleInput { operator: FieldRuleOperator } -""" -The output of our `createSurveyJumpRule` mutation. -""" +"""The output of our `createSurveyJumpRule` mutation.""" type CreateSurveyJumpRulePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -2333,13 +1875,9 @@ type CreateSurveyJumpRulePayload { clientMutationId: String formLogicRule: FormLogicRule - """ - An edge for our `FormLogicRule`. May be used by Relay 1. - """ + """An edge for our `FormLogicRule`. May be used by Relay 1.""" formLogicRuleEdge( - """ - The method to use when ordering `FormLogicRule`. - """ + """The method to use when ordering `FormLogicRule`.""" orderBy: [FormLogicRulesOrderBy!] = [PRIMARY_KEY_ASC] ): FormLogicRulesEdge @@ -2349,9 +1887,7 @@ type CreateSurveyJumpRulePayload { query: Query } -""" -All input for the `createSurveyResponse` mutation. -""" +"""All input for the `createSurveyResponse` mutation.""" input CreateSurveyResponseInput { bypassedSubmissionControl: Boolean @@ -2368,9 +1904,7 @@ input CreateSurveyResponseInput { surveyId: Int } -""" -The output of our `createSurveyResponse` mutation. -""" +"""The output of our `createSurveyResponse` mutation.""" type CreateSurveyResponsePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -2383,26 +1917,18 @@ type CreateSurveyResponsePayload { """ query: Query - """ - Reads a single `Survey` that is related to this `SurveyResponse`. - """ + """Reads a single `Survey` that is related to this `SurveyResponse`.""" survey: Survey surveyResponse: SurveyResponse - """ - An edge for our `SurveyResponse`. May be used by Relay 1. - """ + """An edge for our `SurveyResponse`. May be used by Relay 1.""" surveyResponseEdge( - """ - The method to use when ordering `SurveyResponse`. - """ + """The method to use when ordering `SurveyResponse`.""" orderBy: [SurveyResponsesOrderBy!] = [PRIMARY_KEY_ASC] ): SurveyResponsesEdge } -""" -All input for the `createSurveyResponseV2` mutation. -""" +"""All input for the `createSurveyResponseV2` mutation.""" input CreateSurveyResponseV2Input { bypassedSubmissionControl: Boolean @@ -2419,9 +1945,7 @@ input CreateSurveyResponseV2Input { surveyId: Int } -""" -The output of our `createSurveyResponseV2` mutation. -""" +"""The output of our `createSurveyResponseV2` mutation.""" type CreateSurveyResponseV2Payload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -2436,9 +1960,7 @@ type CreateSurveyResponseV2Payload { query: Query } -""" -All input for the create `TableOfContentsItem` mutation. -""" +"""All input for the create `TableOfContentsItem` mutation.""" input CreateTableOfContentsItemInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -2446,15 +1968,11 @@ input CreateTableOfContentsItemInput { """ clientMutationId: String - """ - The `TableOfContentsItem` to be created by this mutation. - """ + """The `TableOfContentsItem` to be created by this mutation.""" tableOfContentsItem: TableOfContentsItemInput! } -""" -The output of our create `TableOfContentsItem` mutation. -""" +"""The output of our create `TableOfContentsItem` mutation.""" type CreateTableOfContentsItemPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -2472,25 +1990,17 @@ type CreateTableOfContentsItemPayload { """ query: Query - """ - The `TableOfContentsItem` that was created by this mutation. - """ + """The `TableOfContentsItem` that was created by this mutation.""" tableOfContentsItem: TableOfContentsItem - """ - An edge for our `TableOfContentsItem`. May be used by Relay 1. - """ + """An edge for our `TableOfContentsItem`. May be used by Relay 1.""" tableOfContentsItemEdge( - """ - The method to use when ordering `TableOfContentsItem`. - """ + """The method to use when ordering `TableOfContentsItem`.""" orderBy: [TableOfContentsItemsOrderBy!] = [PRIMARY_KEY_ASC] ): TableOfContentsItemsEdge } -""" -All input for the `createVisibilityLogicRule` mutation. -""" +"""All input for the `createVisibilityLogicRule` mutation.""" input CreateVisibilityLogicRuleInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -2500,9 +2010,7 @@ input CreateVisibilityLogicRuleInput { formElementId: Int } -""" -The output of our `createVisibilityLogicRule` mutation. -""" +"""The output of our `createVisibilityLogicRule` mutation.""" type CreateVisibilityLogicRulePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -2511,13 +2019,9 @@ type CreateVisibilityLogicRulePayload { clientMutationId: String formLogicRule: FormLogicRule - """ - An edge for our `FormLogicRule`. May be used by Relay 1. - """ + """An edge for our `FormLogicRule`. May be used by Relay 1.""" formLogicRuleEdge( - """ - The method to use when ordering `FormLogicRule`. - """ + """The method to use when ordering `FormLogicRule`.""" orderBy: [FormLogicRulesOrderBy!] = [PRIMARY_KEY_ASC] ): FormLogicRulesEdge @@ -2527,9 +2031,7 @@ type CreateVisibilityLogicRulePayload { query: Query } -""" -A location in a connection that can be used for resuming pagination. -""" +"""A location in a connection that can be used for resuming pagination.""" scalar Cursor enum CursorType { @@ -2540,17 +2042,16 @@ enum CursorType { } """ -Data layers represent multiple MapBox GL Style layers tied to a single source. +Data layers represent multiple MapBox GL Style layers tied to a single source. These layers could also be called "operational layers" in that they are meant to be overlaid on a basemap. -The layers can appear tied to a TableOfContentsItem or be part of rich features +The layers can appear tied to a TableOfContentsItem or be part of rich features associated with a basemap. + """ type DataLayer implements Node { - """ - Reads a single `DataSource` that is related to this `DataLayer`. - """ + """Reads a single `DataSource` that is related to this `DataLayer`.""" dataSource: DataSource dataSourceId: Int! id: Int! @@ -2564,6 +2065,7 @@ type DataLayer implements Node { """ JSON array of MapBox GL Style layers. Layers should not specify an id or sourceId. These will be automatically generated at runtime. + """ mapboxGlStyles: JSON @@ -2585,24 +2087,15 @@ type DataLayer implements Node { sourceLayer: String spriteIds: [Int] - """ - Reads and enables pagination through a set of `Sprite`. - """ + """Reads and enables pagination through a set of `Sprite`.""" sprites( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [Sprite!] - staticId: String - @deprecated( - reason: "Use TableOfContentsItem.geoprocessingReferenceId instead" - ) + staticId: String @deprecated(reason: "Use TableOfContentsItem.geoprocessingReferenceId instead") """ For ARCGIS_MAPSERVER and eventually WMS sources. In this case mapbox_gl_styles @@ -2616,18 +2109,12 @@ type DataLayer implements Node { """ tableOfContentsItem: TableOfContentsItem - """ - Reads and enables pagination through a set of `TableOfContentsItem`. - """ + """Reads and enables pagination through a set of `TableOfContentsItem`.""" tableOfContentsItemsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -2635,14 +2122,10 @@ type DataLayer implements Node { """ condition: TableOfContentsItemCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -2651,12 +2134,9 @@ type DataLayer implements Node { """ offset: Int - """ - The method to use when ordering `TableOfContentsItem`. - """ + """The method to use when ordering `TableOfContentsItem`.""" orderBy: [TableOfContentsItemsOrderBy!] = [PRIMARY_KEY_ASC] - ): TableOfContentsItemsConnection! - @deprecated(reason: "Please use tableOfContentsItem instead") + ): TableOfContentsItemsConnection! @deprecated(reason: "Please use tableOfContentsItem instead") zIndex: Int! } @@ -2665,30 +2145,20 @@ A condition to be used against `DataLayer` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input DataLayerCondition { - """ - Checks for equality with the object’s `dataSourceId` field. - """ + """Checks for equality with the object’s `dataSourceId` field.""" dataSourceId: Int - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `interactivitySettingsId` field. - """ + """Checks for equality with the object’s `interactivitySettingsId` field.""" interactivitySettingsId: Int - """ - Checks for equality with the object’s `projectId` field. - """ + """Checks for equality with the object’s `projectId` field.""" projectId: Int } -""" -An input for mutations affecting `DataLayer` -""" +"""An input for mutations affecting `DataLayer`""" input DataLayerInput { dataSourceId: Int! id: Int @@ -2696,6 +2166,7 @@ input DataLayerInput { """ JSON array of MapBox GL Style layers. Layers should not specify an id or sourceId. These will be automatically generated at runtime. + """ mapboxGlStyles: JSON projectId: Int! @@ -2733,6 +2204,7 @@ input DataLayerPatch { """ JSON array of MapBox GL Style layers. Layers should not specify an id or sourceId. These will be automatically generated at runtime. + """ mapboxGlStyles: JSON projectId: Int @@ -2759,49 +2231,33 @@ input DataLayerPatch { zIndex: Int } -""" -A connection to a list of `DataLayer` values. -""" +"""A connection to a list of `DataLayer` values.""" type DataLayersConnection { """ A list of edges which contains the `DataLayer` and cursor to aid in pagination. """ edges: [DataLayersEdge!]! - """ - A list of `DataLayer` objects. - """ + """A list of `DataLayer` objects.""" nodes: [DataLayer!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `DataLayer` you could get from the connection. - """ + """The count of *all* `DataLayer` you could get from the connection.""" totalCount: Int! } -""" -A `DataLayer` edge in the connection. -""" +"""A `DataLayer` edge in the connection.""" type DataLayersEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `DataLayer` at the end of the edge. - """ + """The `DataLayer` at the end of the edge.""" node: DataLayer! } -""" -Methods to use when ordering `DataLayer`. -""" +"""Methods to use when ordering `DataLayer`.""" enum DataLayersOrderBy { DATA_SOURCE_ID_ASC DATA_SOURCE_ID_DESC @@ -2822,6 +2278,7 @@ to include new types to support services such as ArcGIS MapServers and content hosted on the SeaSketch CDN. When documentation is lacking for any of these properties, consult the [MapBox GL Style docs](https://docs.mapbox.com/mapbox-gl-js/style-spec/sources/#geojson-promoteId) + """ type DataSource implements Node { arcgisFetchStrategy: ArcgisFeatureLayerFetchStrategy! @@ -2852,23 +2309,22 @@ type DataSource implements Node { """ buffer: Int - """ - SEASKETCH_VECTOR sources only. Approximate size of the geojson source - """ + """SEASKETCH_VECTOR sources only. Approximate size of the geojson source""" byteLength: Int """ GeoJSON only. - + If the data is a collection of point features, setting this to true clusters the points by radius into groups. Cluster groups become new Point features in the source with additional properties: - + * cluster Is true if the point is a cluster * cluster_id A unqiue id for the cluster to be used in conjunction with the [cluster inspection methods](https://docs.mapbox.com/mapbox-gl-js/api/#geojsonsource#getclusterexpansionzoom) * point_count Number of original points grouped into this cluster * point_count_abbreviated An abbreviated point count + """ cluster: Boolean @@ -2895,18 +2351,12 @@ type DataSource implements Node { coordinates: [BigFloat] createdAt: Datetime! - """ - Reads and enables pagination through a set of `DataLayer`. - """ + """Reads and enables pagination through a set of `DataLayer`.""" dataLayersConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -2914,14 +2364,10 @@ type DataSource implements Node { """ condition: DataLayerCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -2930,9 +2376,7 @@ type DataSource implements Node { """ offset: Int - """ - The method to use when ordering `DataLayer`. - """ + """The method to use when ordering `DataLayer`.""" orderBy: [DataLayersOrderBy!] = [PRIMARY_KEY_ASC] ): DataLayersConnection! @@ -2961,9 +2405,7 @@ type DataSource implements Node { """ geostats: JSON - """ - Should be used as sourceId in stylesheets. - """ + """Should be used as sourceId in stylesheets.""" id: Int! """ @@ -2995,9 +2437,7 @@ type DataSource implements Node { """ nodeId: ID! - """ - Size of the normalized file. SEASKETCH_VECTOR sources only. - """ + """Size of the normalized file. SEASKETCH_VECTOR sources only.""" normalizedSourceBytes: Int """ @@ -3007,9 +2447,7 @@ type DataSource implements Node { """ normalizedSourceObjectKey: String - """ - SEASKETCH_VECTOR sources only. S3 object key where data are stored - """ + """SEASKETCH_VECTOR sources only. S3 object key where data are stored""" objectKey: UUID """ @@ -3019,9 +2457,7 @@ type DataSource implements Node { """ originalSourceUrl: String - """ - Use to upload source data to s3. Must be an admin. - """ + """Use to upload source data to s3. Must be an admin.""" presignedUploadUrl: String projectId: Int! @@ -3064,9 +2500,7 @@ type DataSource implements Node { tolerance: BigFloat translatedProps: JSON! - """ - MapBox GL source type or custom seasketch type. - """ + """MapBox GL source type or custom seasketch type.""" type: DataSourceTypes! uploadedBy: String uploadedSourceFilename: String @@ -3105,15 +2539,11 @@ enum DataSourceImportTypes { """ ARCGIS - """ - Uploaded directly to SeaSketch using GeoJSON or shapefile - """ + """Uploaded directly to SeaSketch using GeoJSON or shapefile""" UPLOAD } -""" -An input for mutations affecting `DataSource` -""" +"""An input for mutations affecting `DataSource`""" input DataSourceInput { arcgisFetchStrategy: ArcgisFeatureLayerFetchStrategy @@ -3143,23 +2573,22 @@ input DataSourceInput { """ buffer: Int - """ - SEASKETCH_VECTOR sources only. Approximate size of the geojson source - """ + """SEASKETCH_VECTOR sources only. Approximate size of the geojson source""" byteLength: Int """ GeoJSON only. - + If the data is a collection of point features, setting this to true clusters the points by radius into groups. Cluster groups become new Point features in the source with additional properties: - + * cluster Is true if the point is a cluster * cluster_id A unqiue id for the cluster to be used in conjunction with the [cluster inspection methods](https://docs.mapbox.com/mapbox-gl-js/api/#geojsonsource#getclusterexpansionzoom) * point_count Number of original points grouped into this cluster * point_count_abbreviated An abbreviated point count + """ cluster: Boolean @@ -3211,9 +2640,7 @@ input DataSourceInput { """ geostats: JSON - """ - Should be used as sourceId in stylesheets. - """ + """Should be used as sourceId in stylesheets.""" id: Int """ @@ -3240,9 +2667,7 @@ input DataSourceInput { """ minzoom: Int - """ - Size of the normalized file. SEASKETCH_VECTOR sources only. - """ + """Size of the normalized file. SEASKETCH_VECTOR sources only.""" normalizedSourceBytes: Int """ @@ -3252,9 +2677,7 @@ input DataSourceInput { """ normalizedSourceObjectKey: String - """ - SEASKETCH_VECTOR sources only. S3 object key where data are stored - """ + """SEASKETCH_VECTOR sources only. S3 object key where data are stored""" objectKey: UUID """ @@ -3304,9 +2727,7 @@ input DataSourceInput { tolerance: BigFloat translatedProps: JSON - """ - MapBox GL source type or custom seasketch type. - """ + """MapBox GL source type or custom seasketch type.""" type: DataSourceTypes! uploadedSourceFilename: String @@ -3358,16 +2779,17 @@ input DataSourcePatch { """ GeoJSON only. - + If the data is a collection of point features, setting this to true clusters the points by radius into groups. Cluster groups become new Point features in the source with additional properties: - + * cluster Is true if the point is a cluster * cluster_id A unqiue id for the cluster to be used in conjunction with the [cluster inspection methods](https://docs.mapbox.com/mapbox-gl-js/api/#geojsonsource#getclusterexpansionzoom) * point_count Number of original points grouped into this cluster * point_count_abbreviated An abbreviated point count + """ cluster: Boolean @@ -3490,23 +2912,15 @@ type DataSourcesBucket implements Node { """ nodeId: ID! - """ - Indicates the DataHostingStack for this region has been deleted - """ + """Indicates the DataHostingStack for this region has been deleted""" offline: Boolean! - """ - Reads and enables pagination through a set of `Project`. - """ + """Reads and enables pagination through a set of `Project`.""" projectsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -3514,14 +2928,10 @@ type DataSourcesBucket implements Node { """ condition: ProjectCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -3530,16 +2940,12 @@ type DataSourcesBucket implements Node { """ offset: Int - """ - The method to use when ordering `Project`. - """ + """The method to use when ordering `Project`.""" orderBy: [ProjectsOrderBy!] = [PRIMARY_KEY_ASC] ): ProjectsConnection! region: String! - """ - Base url for this point-of-presence. - """ + """Base url for this point-of-presence.""" url: String! } @@ -3548,29 +2954,21 @@ A condition to be used against `DataSourcesBucket` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input DataSourcesBucketCondition { - """ - Checks for equality with the object’s `url` field. - """ + """Checks for equality with the object’s `url` field.""" url: String } -""" -A connection to a list of `DataSourcesBucket` values. -""" +"""A connection to a list of `DataSourcesBucket` values.""" type DataSourcesBucketsConnection { """ A list of edges which contains the `DataSourcesBucket` and cursor to aid in pagination. """ edges: [DataSourcesBucketsEdge!]! - """ - A list of `DataSourcesBucket` objects. - """ + """A list of `DataSourcesBucket` objects.""" nodes: [DataSourcesBucket!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! """ @@ -3579,24 +2977,16 @@ type DataSourcesBucketsConnection { totalCount: Int! } -""" -A `DataSourcesBucket` edge in the connection. -""" +"""A `DataSourcesBucket` edge in the connection.""" type DataSourcesBucketsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `DataSourcesBucket` at the end of the edge. - """ + """The `DataSourcesBucket` at the end of the edge.""" node: DataSourcesBucket! } -""" -Methods to use when ordering `DataSourcesBucket`. -""" +"""Methods to use when ordering `DataSourcesBucket`.""" enum DataSourcesBucketsOrderBy { NATURAL PRIMARY_KEY_ASC @@ -3605,24 +2995,16 @@ enum DataSourcesBucketsOrderBy { URL_DESC } -""" -A `DataSource` edge in the connection. -""" +"""A `DataSource` edge in the connection.""" type DataSourcesEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `DataSource` at the end of the edge. - """ + """The `DataSource` at the end of the edge.""" node: DataSource! } -""" -Methods to use when ordering `DataSource`. -""" +"""Methods to use when ordering `DataSource`.""" enum DataSourcesOrderBy { ID_ASC ID_DESC @@ -3634,64 +3016,40 @@ enum DataSourcesOrderBy { } enum DataSourceTypes { - """ - Loads dynamic images for the entire viewport from arcgis server - """ + """Loads dynamic images for the entire viewport from arcgis server""" ARCGIS_DYNAMIC_MAPSERVER - """ - Tiled ArcGIS Map Service - """ + """Tiled ArcGIS Map Service""" ARCGIS_RASTER_TILES - """ - Loads vector data from arcgis server for rendering as a geojson source - """ + """Loads vector data from arcgis server for rendering as a geojson source""" ARCGIS_VECTOR - """ - MapBox GL Style "geojson" source - """ + """MapBox GL Style "geojson" source""" GEOJSON - """ - MapBox GL Style "image" source - """ + """MapBox GL Style "image" source""" IMAGE - """ - MapBox GL Style "raster" source - """ + """MapBox GL Style "raster" source""" RASTER - """ - MapBox GL Style "raster" source - """ + """MapBox GL Style "raster" source""" RASTER_DEM - """ - SeaSketch-hosted vector tiles - """ + """SeaSketch-hosted vector tiles""" SEASKETCH_MVT - """ - Raster data hosting on SeaSketch CDN - """ + """Raster data hosting on SeaSketch CDN""" SEASKETCH_RASTER - """ - GeoJSON hosted on SeaSketch CDN - """ + """GeoJSON hosted on SeaSketch CDN""" SEASKETCH_VECTOR - """ - MapBox GL Style "vector" source - """ + """MapBox GL Style "vector" source""" VECTOR - """ - MapBox GL Style "video" source - """ + """MapBox GL Style "video" source""" VIDEO } @@ -3713,31 +3071,21 @@ enum DataUploadState { } type DataUploadTask implements Node { - """ - Content-Type of the original upload. - """ + """Content-Type of the original upload.""" contentType: String! createdAt: Datetime! errorMessage: String - """ - Original name of file as uploaded by the user. - """ + """Original name of file as uploaded by the user.""" filename: String! id: UUID! - """ - Reads and enables pagination through a set of `DataLayer`. - """ + """Reads and enables pagination through a set of `DataLayer`.""" layers( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [DataLayer!] @@ -3747,19 +3095,13 @@ type DataUploadTask implements Node { nodeId: ID! outputs: JSON - """ - Use to upload source data to s3. Must be an admin. - """ + """Use to upload source data to s3. Must be an admin.""" presignedUploadUrl: String - """ - 0.0 to 1.0 scale, applies to tiling process. - """ + """0.0 to 1.0 scale, applies to tiling process.""" progress: BigFloat - """ - Reads a single `Project` that is related to this `DataUploadTask`. - """ + """Reads a single `Project` that is related to this `DataUploadTask`.""" project: Project projectId: Int! startedAt: Datetime @@ -3773,65 +3115,43 @@ A condition to be used against `DataUploadTask` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input DataUploadTaskCondition { - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: UUID - """ - Checks for equality with the object’s `projectId` field. - """ + """Checks for equality with the object’s `projectId` field.""" projectId: Int - """ - Checks for equality with the object’s `state` field. - """ + """Checks for equality with the object’s `state` field.""" state: DataUploadState } -""" -A connection to a list of `DataUploadTask` values. -""" +"""A connection to a list of `DataUploadTask` values.""" type DataUploadTasksConnection { """ A list of edges which contains the `DataUploadTask` and cursor to aid in pagination. """ edges: [DataUploadTasksEdge!]! - """ - A list of `DataUploadTask` objects. - """ + """A list of `DataUploadTask` objects.""" nodes: [DataUploadTask!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `DataUploadTask` you could get from the connection. - """ + """The count of *all* `DataUploadTask` you could get from the connection.""" totalCount: Int! } -""" -A `DataUploadTask` edge in the connection. -""" +"""A `DataUploadTask` edge in the connection.""" type DataUploadTasksEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `DataUploadTask` at the end of the edge. - """ + """The `DataUploadTask` at the end of the edge.""" node: DataUploadTask! } -""" -Methods to use when ordering `DataUploadTask`. -""" +"""Methods to use when ordering `DataUploadTask`.""" enum DataUploadTasksOrderBy { ID_ASC ID_DESC @@ -3852,9 +3172,7 @@ type DataUploadTaskSubscriptionPayload { projectId: Int! } -""" -The day, does not include a time. -""" +"""The day, does not include a time.""" scalar Date """ @@ -3863,9 +3181,7 @@ A point in time as described by the [ISO """ scalar Datetime -""" -All input for the `deleteBasemapByNodeId` mutation. -""" +"""All input for the `deleteBasemapByNodeId` mutation.""" input DeleteBasemapByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -3879,9 +3195,7 @@ input DeleteBasemapByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteBasemap` mutation. -""" +"""All input for the `deleteBasemap` mutation.""" input DeleteBasemapInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -3891,22 +3205,14 @@ input DeleteBasemapInput { id: Int! } -""" -The output of our delete `Basemap` mutation. -""" +"""The output of our delete `Basemap` mutation.""" type DeleteBasemapPayload { - """ - The `Basemap` that was deleted by this mutation. - """ + """The `Basemap` that was deleted by this mutation.""" basemap: Basemap - """ - An edge for our `Basemap`. May be used by Relay 1. - """ + """An edge for our `Basemap`. May be used by Relay 1.""" basemapEdge( - """ - The method to use when ordering `Basemap`. - """ + """The method to use when ordering `Basemap`.""" orderBy: [BasemapsOrderBy!] = [PRIMARY_KEY_ASC] ): BasemapsEdge @@ -3922,9 +3228,7 @@ type DeleteBasemapPayload { """ interactivitySettings: InteractivitySetting - """ - Reads a single `Project` that is related to this `Basemap`. - """ + """Reads a single `Project` that is related to this `Basemap`.""" project: Project """ @@ -3933,9 +3237,7 @@ type DeleteBasemapPayload { query: Query } -""" -All input for the `deleteCommunityGuidelineByNodeId` mutation. -""" +"""All input for the `deleteCommunityGuidelineByNodeId` mutation.""" input DeleteCommunityGuidelineByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -3949,9 +3251,7 @@ input DeleteCommunityGuidelineByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteCommunityGuideline` mutation. -""" +"""All input for the `deleteCommunityGuideline` mutation.""" input DeleteCommunityGuidelineInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -3961,9 +3261,7 @@ input DeleteCommunityGuidelineInput { projectId: Int! } -""" -The output of our delete `CommunityGuideline` mutation. -""" +"""The output of our delete `CommunityGuideline` mutation.""" type DeleteCommunityGuidelinePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -3971,15 +3269,11 @@ type DeleteCommunityGuidelinePayload { """ clientMutationId: String - """ - The `CommunityGuideline` that was deleted by this mutation. - """ + """The `CommunityGuideline` that was deleted by this mutation.""" communityGuideline: CommunityGuideline deletedCommunityGuidelineNodeId: ID - """ - Reads a single `Project` that is related to this `CommunityGuideline`. - """ + """Reads a single `Project` that is related to this `CommunityGuideline`.""" project: Project """ @@ -3988,9 +3282,7 @@ type DeleteCommunityGuidelinePayload { query: Query } -""" -All input for the `deleteDataLayerByInteractivitySettingsId` mutation. -""" +"""All input for the `deleteDataLayerByInteractivitySettingsId` mutation.""" input DeleteDataLayerByInteractivitySettingsIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4000,9 +3292,7 @@ input DeleteDataLayerByInteractivitySettingsIdInput { interactivitySettingsId: Int! } -""" -All input for the `deleteDataLayerByNodeId` mutation. -""" +"""All input for the `deleteDataLayerByNodeId` mutation.""" input DeleteDataLayerByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4016,9 +3306,7 @@ input DeleteDataLayerByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteDataLayer` mutation. -""" +"""All input for the `deleteDataLayer` mutation.""" input DeleteDataLayerInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4028,9 +3316,7 @@ input DeleteDataLayerInput { id: Int! } -""" -The output of our delete `DataLayer` mutation. -""" +"""The output of our delete `DataLayer` mutation.""" type DeleteDataLayerPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -4038,24 +3324,16 @@ type DeleteDataLayerPayload { """ clientMutationId: String - """ - The `DataLayer` that was deleted by this mutation. - """ + """The `DataLayer` that was deleted by this mutation.""" dataLayer: DataLayer - """ - An edge for our `DataLayer`. May be used by Relay 1. - """ + """An edge for our `DataLayer`. May be used by Relay 1.""" dataLayerEdge( - """ - The method to use when ordering `DataLayer`. - """ + """The method to use when ordering `DataLayer`.""" orderBy: [DataLayersOrderBy!] = [PRIMARY_KEY_ASC] ): DataLayersEdge - """ - Reads a single `DataSource` that is related to this `DataLayer`. - """ + """Reads a single `DataSource` that is related to this `DataLayer`.""" dataSource: DataSource deletedDataLayerNodeId: ID @@ -4070,9 +3348,7 @@ type DeleteDataLayerPayload { query: Query } -""" -All input for the `deleteDataSourceByNodeId` mutation. -""" +"""All input for the `deleteDataSourceByNodeId` mutation.""" input DeleteDataSourceByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4086,9 +3362,7 @@ input DeleteDataSourceByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteDataSource` mutation. -""" +"""All input for the `deleteDataSource` mutation.""" input DeleteDataSourceInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4096,15 +3370,11 @@ input DeleteDataSourceInput { """ clientMutationId: String - """ - Should be used as sourceId in stylesheets. - """ + """Should be used as sourceId in stylesheets.""" id: Int! } -""" -The output of our delete `DataSource` mutation. -""" +"""The output of our delete `DataSource` mutation.""" type DeleteDataSourcePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -4112,18 +3382,12 @@ type DeleteDataSourcePayload { """ clientMutationId: String - """ - The `DataSource` that was deleted by this mutation. - """ + """The `DataSource` that was deleted by this mutation.""" dataSource: DataSource - """ - An edge for our `DataSource`. May be used by Relay 1. - """ + """An edge for our `DataSource`. May be used by Relay 1.""" dataSourceEdge( - """ - The method to use when ordering `DataSource`. - """ + """The method to use when ordering `DataSource`.""" orderBy: [DataSourcesOrderBy!] = [PRIMARY_KEY_ASC] ): DataSourcesEdge deletedDataSourceNodeId: ID @@ -4134,9 +3398,7 @@ type DeleteDataSourcePayload { query: Query } -""" -All input for the `deleteFormByNodeId` mutation. -""" +"""All input for the `deleteFormByNodeId` mutation.""" input DeleteFormByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4150,9 +3412,7 @@ input DeleteFormByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteFormBySketchClassId` mutation. -""" +"""All input for the `deleteFormBySketchClassId` mutation.""" input DeleteFormBySketchClassIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4160,15 +3420,11 @@ input DeleteFormBySketchClassIdInput { """ clientMutationId: String - """ - Related *SketchClass* - """ + """Related *SketchClass*""" sketchClassId: Int! } -""" -All input for the `deleteFormBySurveyId` mutation. -""" +"""All input for the `deleteFormBySurveyId` mutation.""" input DeleteFormBySurveyIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4176,15 +3432,11 @@ input DeleteFormBySurveyIdInput { """ clientMutationId: String - """ - Related *Survey* - """ + """Related *Survey*""" surveyId: Int! } -""" -All input for the `deleteFormElementByNodeId` mutation. -""" +"""All input for the `deleteFormElementByNodeId` mutation.""" input DeleteFormElementByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4198,9 +3450,7 @@ input DeleteFormElementByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteFormElement` mutation. -""" +"""All input for the `deleteFormElement` mutation.""" input DeleteFormElementInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4210,9 +3460,7 @@ input DeleteFormElementInput { id: Int! } -""" -The output of our delete `FormElement` mutation. -""" +"""The output of our delete `FormElement` mutation.""" type DeleteFormElementPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -4221,18 +3469,12 @@ type DeleteFormElementPayload { clientMutationId: String deletedFormElementNodeId: ID - """ - The `FormElement` that was deleted by this mutation. - """ + """The `FormElement` that was deleted by this mutation.""" formElement: FormElement - """ - An edge for our `FormElement`. May be used by Relay 1. - """ + """An edge for our `FormElement`. May be used by Relay 1.""" formElementEdge( - """ - The method to use when ordering `FormElement`. - """ + """The method to use when ordering `FormElement`.""" orderBy: [FormElementsOrderBy!] = [PRIMARY_KEY_ASC] ): FormElementsEdge @@ -4242,9 +3484,7 @@ type DeleteFormElementPayload { query: Query } -""" -All input for the `deleteForm` mutation. -""" +"""All input for the `deleteForm` mutation.""" input DeleteFormInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4254,9 +3494,7 @@ input DeleteFormInput { id: Int! } -""" -All input for the `deleteFormLogicConditionByNodeId` mutation. -""" +"""All input for the `deleteFormLogicConditionByNodeId` mutation.""" input DeleteFormLogicConditionByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4270,9 +3508,7 @@ input DeleteFormLogicConditionByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteFormLogicCondition` mutation. -""" +"""All input for the `deleteFormLogicCondition` mutation.""" input DeleteFormLogicConditionInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4282,9 +3518,7 @@ input DeleteFormLogicConditionInput { id: Int! } -""" -The output of our delete `FormLogicCondition` mutation. -""" +"""The output of our delete `FormLogicCondition` mutation.""" type DeleteFormLogicConditionPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -4293,18 +3527,12 @@ type DeleteFormLogicConditionPayload { clientMutationId: String deletedFormLogicConditionNodeId: ID - """ - The `FormLogicCondition` that was deleted by this mutation. - """ + """The `FormLogicCondition` that was deleted by this mutation.""" formLogicCondition: FormLogicCondition - """ - An edge for our `FormLogicCondition`. May be used by Relay 1. - """ + """An edge for our `FormLogicCondition`. May be used by Relay 1.""" formLogicConditionEdge( - """ - The method to use when ordering `FormLogicCondition`. - """ + """The method to use when ordering `FormLogicCondition`.""" orderBy: [FormLogicConditionsOrderBy!] = [PRIMARY_KEY_ASC] ): FormLogicConditionsEdge @@ -4314,9 +3542,7 @@ type DeleteFormLogicConditionPayload { query: Query } -""" -All input for the `deleteFormLogicRuleByNodeId` mutation. -""" +"""All input for the `deleteFormLogicRuleByNodeId` mutation.""" input DeleteFormLogicRuleByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4330,9 +3556,7 @@ input DeleteFormLogicRuleByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteFormLogicRule` mutation. -""" +"""All input for the `deleteFormLogicRule` mutation.""" input DeleteFormLogicRuleInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4342,9 +3566,7 @@ input DeleteFormLogicRuleInput { id: Int! } -""" -The output of our delete `FormLogicRule` mutation. -""" +"""The output of our delete `FormLogicRule` mutation.""" type DeleteFormLogicRulePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -4353,18 +3575,12 @@ type DeleteFormLogicRulePayload { clientMutationId: String deletedFormLogicRuleNodeId: ID - """ - The `FormLogicRule` that was deleted by this mutation. - """ + """The `FormLogicRule` that was deleted by this mutation.""" formLogicRule: FormLogicRule - """ - An edge for our `FormLogicRule`. May be used by Relay 1. - """ + """An edge for our `FormLogicRule`. May be used by Relay 1.""" formLogicRuleEdge( - """ - The method to use when ordering `FormLogicRule`. - """ + """The method to use when ordering `FormLogicRule`.""" orderBy: [FormLogicRulesOrderBy!] = [PRIMARY_KEY_ASC] ): FormLogicRulesEdge @@ -4374,9 +3590,7 @@ type DeleteFormLogicRulePayload { query: Query } -""" -The output of our delete `Form` mutation. -""" +"""The output of our delete `Form` mutation.""" type DeleteFormPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -4385,18 +3599,12 @@ type DeleteFormPayload { clientMutationId: String deletedFormNodeId: ID - """ - The `Form` that was deleted by this mutation. - """ + """The `Form` that was deleted by this mutation.""" form: Form - """ - An edge for our `Form`. May be used by Relay 1. - """ + """An edge for our `Form`. May be used by Relay 1.""" formEdge( - """ - The method to use when ordering `Form`. - """ + """The method to use when ordering `Form`.""" orderBy: [FormsOrderBy!] = [PRIMARY_KEY_ASC] ): FormsEdge @@ -4405,20 +3613,14 @@ type DeleteFormPayload { """ query: Query - """ - Reads a single `SketchClass` that is related to this `Form`. - """ + """Reads a single `SketchClass` that is related to this `Form`.""" sketchClass: SketchClass - """ - Reads a single `Survey` that is related to this `Form`. - """ + """Reads a single `Survey` that is related to this `Form`.""" survey: Survey } -""" -All input for the `deleteForumByNodeId` mutation. -""" +"""All input for the `deleteForumByNodeId` mutation.""" input DeleteForumByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4432,9 +3634,7 @@ input DeleteForumByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteForum` mutation. -""" +"""All input for the `deleteForum` mutation.""" input DeleteForumInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4444,9 +3644,7 @@ input DeleteForumInput { id: Int! } -""" -The output of our delete `Forum` mutation. -""" +"""The output of our delete `Forum` mutation.""" type DeleteForumPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -4455,24 +3653,16 @@ type DeleteForumPayload { clientMutationId: String deletedForumNodeId: ID - """ - The `Forum` that was deleted by this mutation. - """ + """The `Forum` that was deleted by this mutation.""" forum: Forum - """ - An edge for our `Forum`. May be used by Relay 1. - """ + """An edge for our `Forum`. May be used by Relay 1.""" forumEdge( - """ - The method to use when ordering `Forum`. - """ + """The method to use when ordering `Forum`.""" orderBy: [ForumsOrderBy!] = [PRIMARY_KEY_ASC] ): ForumsEdge - """ - Reads a single `Project` that is related to this `Forum`. - """ + """Reads a single `Project` that is related to this `Forum`.""" project: Project """ @@ -4481,9 +3671,7 @@ type DeleteForumPayload { query: Query } -""" -All input for the `deleteGroupByNodeId` mutation. -""" +"""All input for the `deleteGroupByNodeId` mutation.""" input DeleteGroupByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4497,9 +3685,7 @@ input DeleteGroupByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteGroupByProjectIdAndName` mutation. -""" +"""All input for the `deleteGroupByProjectIdAndName` mutation.""" input DeleteGroupByProjectIdAndNameInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4507,16 +3693,12 @@ input DeleteGroupByProjectIdAndNameInput { """ clientMutationId: String - """ - Label for the group. - """ + """Label for the group.""" name: String! projectId: Int! } -""" -All input for the `deleteGroup` mutation. -""" +"""All input for the `deleteGroup` mutation.""" input DeleteGroupInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4526,9 +3708,7 @@ input DeleteGroupInput { id: Int! } -""" -The output of our delete `Group` mutation. -""" +"""The output of our delete `Group` mutation.""" type DeleteGroupPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -4537,14 +3717,10 @@ type DeleteGroupPayload { clientMutationId: String deletedProjectGroupNodeId: ID - """ - The `Group` that was deleted by this mutation. - """ + """The `Group` that was deleted by this mutation.""" group: Group - """ - Reads a single `Project` that is related to this `Group`. - """ + """Reads a single `Project` that is related to this `Group`.""" project: Project """ @@ -4553,9 +3729,7 @@ type DeleteGroupPayload { query: Query } -""" -All input for the `deleteOfflineTilePackage` mutation. -""" +"""All input for the `deleteOfflineTilePackage` mutation.""" input DeleteOfflineTilePackageInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4565,9 +3739,7 @@ input DeleteOfflineTilePackageInput { id: UUID } -""" -The output of our `deleteOfflineTilePackage` mutation. -""" +"""The output of our `deleteOfflineTilePackage` mutation.""" type DeleteOfflineTilePackagePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -4576,19 +3748,13 @@ type DeleteOfflineTilePackagePayload { clientMutationId: String offlineTilePackage: OfflineTilePackage - """ - An edge for our `OfflineTilePackage`. May be used by Relay 1. - """ + """An edge for our `OfflineTilePackage`. May be used by Relay 1.""" offlineTilePackageEdge( - """ - The method to use when ordering `OfflineTilePackage`. - """ + """The method to use when ordering `OfflineTilePackage`.""" orderBy: [OfflineTilePackagesOrderBy!] = [PRIMARY_KEY_ASC] ): OfflineTilePackagesEdge - """ - Reads a single `Project` that is related to this `OfflineTilePackage`. - """ + """Reads a single `Project` that is related to this `OfflineTilePackage`.""" project: Project """ @@ -4597,9 +3763,7 @@ type DeleteOfflineTilePackagePayload { query: Query } -""" -All input for the `deleteOfflineTileSettingByNodeId` mutation. -""" +"""All input for the `deleteOfflineTileSettingByNodeId` mutation.""" input DeleteOfflineTileSettingByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4627,9 +3791,7 @@ input DeleteOfflineTileSettingByProjectIdAndBasemapIdInput { projectId: Int! } -""" -All input for the `deleteOfflineTileSetting` mutation. -""" +"""All input for the `deleteOfflineTileSetting` mutation.""" input DeleteOfflineTileSettingInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4639,13 +3801,9 @@ input DeleteOfflineTileSettingInput { id: Int! } -""" -The output of our delete `OfflineTileSetting` mutation. -""" +"""The output of our delete `OfflineTileSetting` mutation.""" type DeleteOfflineTileSettingPayload { - """ - Reads a single `Basemap` that is related to this `OfflineTileSetting`. - """ + """Reads a single `Basemap` that is related to this `OfflineTileSetting`.""" basemap: Basemap """ @@ -4655,14 +3813,10 @@ type DeleteOfflineTileSettingPayload { clientMutationId: String deletedOfflineTileSettingNodeId: ID - """ - The `OfflineTileSetting` that was deleted by this mutation. - """ + """The `OfflineTileSetting` that was deleted by this mutation.""" offlineTileSetting: OfflineTileSetting - """ - Reads a single `Project` that is related to this `OfflineTileSetting`. - """ + """Reads a single `Project` that is related to this `OfflineTileSetting`.""" project: Project """ @@ -4671,9 +3825,7 @@ type DeleteOfflineTileSettingPayload { query: Query } -""" -All input for the `deleteOptionalBasemapLayerByNodeId` mutation. -""" +"""All input for the `deleteOptionalBasemapLayerByNodeId` mutation.""" input DeleteOptionalBasemapLayerByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4687,9 +3839,7 @@ input DeleteOptionalBasemapLayerByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteOptionalBasemapLayer` mutation. -""" +"""All input for the `deleteOptionalBasemapLayer` mutation.""" input DeleteOptionalBasemapLayerInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4699,9 +3849,7 @@ input DeleteOptionalBasemapLayerInput { id: Int! } -""" -The output of our delete `OptionalBasemapLayer` mutation. -""" +"""The output of our delete `OptionalBasemapLayer` mutation.""" type DeleteOptionalBasemapLayerPayload { """ Reads a single `Basemap` that is related to this `OptionalBasemapLayer`. @@ -4715,9 +3863,7 @@ type DeleteOptionalBasemapLayerPayload { clientMutationId: String deletedOptionalBasemapLayerNodeId: ID - """ - The `OptionalBasemapLayer` that was deleted by this mutation. - """ + """The `OptionalBasemapLayer` that was deleted by this mutation.""" optionalBasemapLayer: OptionalBasemapLayer """ @@ -4726,9 +3872,7 @@ type DeleteOptionalBasemapLayerPayload { query: Query } -""" -All input for the `deletePostByNodeId` mutation. -""" +"""All input for the `deletePostByNodeId` mutation.""" input DeletePostByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4742,9 +3886,7 @@ input DeletePostByNodeIdInput { nodeId: ID! } -""" -All input for the `deletePost` mutation. -""" +"""All input for the `deletePost` mutation.""" input DeletePostInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4754,9 +3896,7 @@ input DeletePostInput { id: Int! } -""" -The output of our delete `Post` mutation. -""" +"""The output of our delete `Post` mutation.""" type DeletePostPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -4765,18 +3905,12 @@ type DeletePostPayload { clientMutationId: String deletedPostNodeId: ID - """ - The `Post` that was deleted by this mutation. - """ + """The `Post` that was deleted by this mutation.""" post: Post - """ - An edge for our `Post`. May be used by Relay 1. - """ + """An edge for our `Post`. May be used by Relay 1.""" postEdge( - """ - The method to use when ordering `Post`. - """ + """The method to use when ordering `Post`.""" orderBy: [PostsOrderBy!] = [PRIMARY_KEY_ASC] ): PostsEdge @@ -4785,15 +3919,11 @@ type DeletePostPayload { """ query: Query - """ - Reads a single `Topic` that is related to this `Post`. - """ + """Reads a single `Topic` that is related to this `Post`.""" topic: Topic } -""" -All input for the `deleteProject` mutation. -""" +"""All input for the `deleteProject` mutation.""" input DeleteProjectInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4803,9 +3933,7 @@ input DeleteProjectInput { projectId: Int! } -""" -All input for the `deleteProjectInviteByEmailAndProjectId` mutation. -""" +"""All input for the `deleteProjectInviteByEmailAndProjectId` mutation.""" input DeleteProjectInviteByEmailAndProjectIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4813,16 +3941,12 @@ input DeleteProjectInviteByEmailAndProjectIdInput { """ clientMutationId: String - """ - Specified by admin when invite was created. - """ + """Specified by admin when invite was created.""" email: Email! projectId: Int! } -""" -All input for the `deleteProjectInviteByNodeId` mutation. -""" +"""All input for the `deleteProjectInviteByNodeId` mutation.""" input DeleteProjectInviteByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4849,9 +3973,7 @@ input DeleteProjectInviteGroupByInviteIdAndGroupIdInput { inviteId: Int! } -""" -The output of our delete `ProjectInviteGroup` mutation. -""" +"""The output of our delete `ProjectInviteGroup` mutation.""" type DeleteProjectInviteGroupPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -4860,9 +3982,7 @@ type DeleteProjectInviteGroupPayload { clientMutationId: String deletedProjectInviteGroupNodeId: ID - """ - Reads a single `Group` that is related to this `ProjectInviteGroup`. - """ + """Reads a single `Group` that is related to this `ProjectInviteGroup`.""" group: Group """ @@ -4870,18 +3990,12 @@ type DeleteProjectInviteGroupPayload { """ invite: ProjectInvite - """ - The `ProjectInviteGroup` that was deleted by this mutation. - """ + """The `ProjectInviteGroup` that was deleted by this mutation.""" projectInviteGroup: ProjectInviteGroup - """ - An edge for our `ProjectInviteGroup`. May be used by Relay 1. - """ + """An edge for our `ProjectInviteGroup`. May be used by Relay 1.""" projectInviteGroupEdge( - """ - The method to use when ordering `ProjectInviteGroup`. - """ + """The method to use when ordering `ProjectInviteGroup`.""" orderBy: [ProjectInviteGroupsOrderBy!] = [NATURAL] ): ProjectInviteGroupsEdge @@ -4891,9 +4005,7 @@ type DeleteProjectInviteGroupPayload { query: Query } -""" -All input for the `deleteProjectInvite` mutation. -""" +"""All input for the `deleteProjectInvite` mutation.""" input DeleteProjectInviteInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -4903,9 +4015,7 @@ input DeleteProjectInviteInput { id: Int! } -""" -The output of our delete `ProjectInvite` mutation. -""" +"""The output of our delete `ProjectInvite` mutation.""" type DeleteProjectInvitePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -4914,9 +4024,7 @@ type DeleteProjectInvitePayload { clientMutationId: String deletedProjectInviteNodeId: ID - """ - The `ProjectInvite` that was deleted by this mutation. - """ + """The `ProjectInvite` that was deleted by this mutation.""" projectInvite: ProjectInvite """ @@ -4925,9 +4033,7 @@ type DeleteProjectInvitePayload { query: Query } -""" -The output of our `deleteProject` mutation. -""" +"""The output of our `deleteProject` mutation.""" type DeleteProjectPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -4935,19 +4041,13 @@ type DeleteProjectPayload { """ clientMutationId: String - """ - Reads a single `DataSourcesBucket` that is related to this `Project`. - """ + """Reads a single `DataSourcesBucket` that is related to this `Project`.""" dataSourcesBucket: DataSourcesBucket project: Project - """ - An edge for our `Project`. May be used by Relay 1. - """ + """An edge for our `Project`. May be used by Relay 1.""" projectEdge( - """ - The method to use when ordering `Project`. - """ + """The method to use when ordering `Project`.""" orderBy: [ProjectsOrderBy!] = [PRIMARY_KEY_ASC] ): ProjectsEdge @@ -4971,9 +4071,7 @@ input DeleteProjectsSharedBasemapByBasemapIdAndProjectIdInput { projectId: Int! } -""" -The output of our delete `ProjectsSharedBasemap` mutation. -""" +"""The output of our delete `ProjectsSharedBasemap` mutation.""" type DeleteProjectsSharedBasemapPayload { """ Reads a single `Basemap` that is related to this `ProjectsSharedBasemap`. @@ -4987,18 +4085,12 @@ type DeleteProjectsSharedBasemapPayload { clientMutationId: String deletedProjectsSharedBasemapNodeId: ID - """ - The `ProjectsSharedBasemap` that was deleted by this mutation. - """ + """The `ProjectsSharedBasemap` that was deleted by this mutation.""" projectsSharedBasemap: ProjectsSharedBasemap - """ - An edge for our `ProjectsSharedBasemap`. May be used by Relay 1. - """ + """An edge for our `ProjectsSharedBasemap`. May be used by Relay 1.""" projectsSharedBasemapEdge( - """ - The method to use when ordering `ProjectsSharedBasemap`. - """ + """The method to use when ordering `ProjectsSharedBasemap`.""" orderBy: [ProjectsSharedBasemapsOrderBy!] = [NATURAL] ): ProjectsSharedBasemapsEdge @@ -5008,9 +4100,7 @@ type DeleteProjectsSharedBasemapPayload { query: Query } -""" -All input for the `deleteSketchByNodeId` mutation. -""" +"""All input for the `deleteSketchByNodeId` mutation.""" input DeleteSketchByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5024,9 +4114,7 @@ input DeleteSketchByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteSketchClassByFormElementId` mutation. -""" +"""All input for the `deleteSketchClassByFormElementId` mutation.""" input DeleteSketchClassByFormElementIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5036,13 +4124,12 @@ input DeleteSketchClassByFormElementIdInput { """ If set, this sketch class is only for use in a survey indicated by the form_element. + """ formElementId: Int! } -""" -All input for the `deleteSketchClassByNodeId` mutation. -""" +"""All input for the `deleteSketchClassByNodeId` mutation.""" input DeleteSketchClassByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5056,9 +4143,7 @@ input DeleteSketchClassByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteSketchClass` mutation. -""" +"""All input for the `deleteSketchClass` mutation.""" input DeleteSketchClassInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5068,9 +4153,7 @@ input DeleteSketchClassInput { id: Int! } -""" -The output of our delete `SketchClass` mutation. -""" +"""The output of our delete `SketchClass` mutation.""" type DeleteSketchClassPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5079,14 +4162,10 @@ type DeleteSketchClassPayload { clientMutationId: String deletedSketchClassNodeId: ID - """ - Reads a single `FormElement` that is related to this `SketchClass`. - """ + """Reads a single `FormElement` that is related to this `SketchClass`.""" formElement: FormElement - """ - Reads a single `Project` that is related to this `SketchClass`. - """ + """Reads a single `Project` that is related to this `SketchClass`.""" project: Project """ @@ -5094,25 +4173,17 @@ type DeleteSketchClassPayload { """ query: Query - """ - The `SketchClass` that was deleted by this mutation. - """ + """The `SketchClass` that was deleted by this mutation.""" sketchClass: SketchClass - """ - An edge for our `SketchClass`. May be used by Relay 1. - """ + """An edge for our `SketchClass`. May be used by Relay 1.""" sketchClassEdge( - """ - The method to use when ordering `SketchClass`. - """ + """The method to use when ordering `SketchClass`.""" orderBy: [SketchClassesOrderBy!] = [PRIMARY_KEY_ASC] ): SketchClassesEdge } -""" -All input for the `deleteSketchFolderByNodeId` mutation. -""" +"""All input for the `deleteSketchFolderByNodeId` mutation.""" input DeleteSketchFolderByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5126,9 +4197,7 @@ input DeleteSketchFolderByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteSketchFolder` mutation. -""" +"""All input for the `deleteSketchFolder` mutation.""" input DeleteSketchFolderInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5138,9 +4207,7 @@ input DeleteSketchFolderInput { id: Int! } -""" -The output of our delete `SketchFolder` mutation. -""" +"""The output of our delete `SketchFolder` mutation.""" type DeleteSketchFolderPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5154,25 +4221,17 @@ type DeleteSketchFolderPayload { """ query: Query - """ - The `SketchFolder` that was deleted by this mutation. - """ + """The `SketchFolder` that was deleted by this mutation.""" sketchFolder: SketchFolder - """ - An edge for our `SketchFolder`. May be used by Relay 1. - """ + """An edge for our `SketchFolder`. May be used by Relay 1.""" sketchFolderEdge( - """ - The method to use when ordering `SketchFolder`. - """ + """The method to use when ordering `SketchFolder`.""" orderBy: [SketchFoldersOrderBy!] = [PRIMARY_KEY_ASC] ): SketchFoldersEdge } -""" -All input for the `deleteSketch` mutation. -""" +"""All input for the `deleteSketch` mutation.""" input DeleteSketchInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5182,9 +4241,7 @@ input DeleteSketchInput { id: Int! } -""" -The output of our delete `Sketch` mutation. -""" +"""The output of our delete `Sketch` mutation.""" type DeleteSketchPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5192,20 +4249,14 @@ type DeleteSketchPayload { """ clientMutationId: String - """ - Reads a single `Sketch` that is related to this `Sketch`. - """ + """Reads a single `Sketch` that is related to this `Sketch`.""" collection: Sketch - """ - Reads a single `Sketch` that is related to this `Sketch`. - """ + """Reads a single `Sketch` that is related to this `Sketch`.""" copiedFrom: Sketch deletedSketchNodeId: ID - """ - Reads a single `FormElement` that is related to this `Sketch`. - """ + """Reads a single `FormElement` that is related to this `Sketch`.""" formElement: FormElement """ @@ -5213,19 +4264,13 @@ type DeleteSketchPayload { """ query: Query - """ - The `Sketch` that was deleted by this mutation. - """ + """The `Sketch` that was deleted by this mutation.""" sketch: Sketch - """ - Reads a single `SketchClass` that is related to this `Sketch`. - """ + """Reads a single `SketchClass` that is related to this `Sketch`.""" sketchClass: SketchClass - """ - Reads a single `User` that is related to this `Sketch`. - """ + """Reads a single `User` that is related to this `Sketch`.""" user: User } @@ -5234,9 +4279,7 @@ type DeleteSketchTocItemsResults { updatedCollections: [Sketch]! } -""" -All input for the `deleteSurveyByNodeId` mutation. -""" +"""All input for the `deleteSurveyByNodeId` mutation.""" input DeleteSurveyByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5250,9 +4293,7 @@ input DeleteSurveyByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteSurvey` mutation. -""" +"""All input for the `deleteSurvey` mutation.""" input DeleteSurveyInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5262,9 +4303,7 @@ input DeleteSurveyInput { id: Int! } -""" -All input for the `deleteSurveyInviteByEmailAndSurveyId` mutation. -""" +"""All input for the `deleteSurveyInviteByEmailAndSurveyId` mutation.""" input DeleteSurveyInviteByEmailAndSurveyIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5275,9 +4314,7 @@ input DeleteSurveyInviteByEmailAndSurveyIdInput { surveyId: Int! } -""" -All input for the `deleteSurveyInviteByEmail` mutation. -""" +"""All input for the `deleteSurveyInviteByEmail` mutation.""" input DeleteSurveyInviteByEmailInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5287,9 +4324,7 @@ input DeleteSurveyInviteByEmailInput { email: Email! } -""" -All input for the `deleteSurveyInviteByNodeId` mutation. -""" +"""All input for the `deleteSurveyInviteByNodeId` mutation.""" input DeleteSurveyInviteByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5316,9 +4351,7 @@ input DeleteSurveyInvitedGroupBySurveyIdAndGroupIdInput { surveyId: Int! } -""" -The output of our delete `SurveyInvitedGroup` mutation. -""" +"""The output of our delete `SurveyInvitedGroup` mutation.""" type DeleteSurveyInvitedGroupPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5332,20 +4365,14 @@ type DeleteSurveyInvitedGroupPayload { """ query: Query - """ - Reads a single `Survey` that is related to this `SurveyInvitedGroup`. - """ + """Reads a single `Survey` that is related to this `SurveyInvitedGroup`.""" survey: Survey - """ - The `SurveyInvitedGroup` that was deleted by this mutation. - """ + """The `SurveyInvitedGroup` that was deleted by this mutation.""" surveyInvitedGroup: SurveyInvitedGroup } -""" -All input for the `deleteSurveyInvite` mutation. -""" +"""All input for the `deleteSurveyInvite` mutation.""" input DeleteSurveyInviteInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5355,9 +4382,7 @@ input DeleteSurveyInviteInput { id: Int! } -""" -The output of our delete `SurveyInvite` mutation. -""" +"""The output of our delete `SurveyInvite` mutation.""" type DeleteSurveyInvitePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5371,30 +4396,20 @@ type DeleteSurveyInvitePayload { """ query: Query - """ - Reads a single `Survey` that is related to this `SurveyInvite`. - """ + """Reads a single `Survey` that is related to this `SurveyInvite`.""" survey: Survey - """ - The `SurveyInvite` that was deleted by this mutation. - """ + """The `SurveyInvite` that was deleted by this mutation.""" surveyInvite: SurveyInvite - """ - An edge for our `SurveyInvite`. May be used by Relay 1. - """ + """An edge for our `SurveyInvite`. May be used by Relay 1.""" surveyInviteEdge( - """ - The method to use when ordering `SurveyInvite`. - """ + """The method to use when ordering `SurveyInvite`.""" orderBy: [SurveyInvitesOrderBy!] = [PRIMARY_KEY_ASC] ): SurveyInvitesEdge } -""" -The output of our delete `Survey` mutation. -""" +"""The output of our delete `Survey` mutation.""" type DeleteSurveyPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5403,9 +4418,7 @@ type DeleteSurveyPayload { clientMutationId: String deletedSurveyNodeId: ID - """ - Reads a single `Project` that is related to this `Survey`. - """ + """Reads a single `Project` that is related to this `Survey`.""" project: Project """ @@ -5413,15 +4426,11 @@ type DeleteSurveyPayload { """ query: Query - """ - The `Survey` that was deleted by this mutation. - """ + """The `Survey` that was deleted by this mutation.""" survey: Survey } -""" -All input for the `deleteSurveyResponseByNodeId` mutation. -""" +"""All input for the `deleteSurveyResponseByNodeId` mutation.""" input DeleteSurveyResponseByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5435,9 +4444,7 @@ input DeleteSurveyResponseByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteSurveyResponse` mutation. -""" +"""All input for the `deleteSurveyResponse` mutation.""" input DeleteSurveyResponseInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5447,9 +4454,7 @@ input DeleteSurveyResponseInput { id: Int! } -""" -The output of our delete `SurveyResponse` mutation. -""" +"""The output of our delete `SurveyResponse` mutation.""" type DeleteSurveyResponsePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5463,30 +4468,20 @@ type DeleteSurveyResponsePayload { """ query: Query - """ - Reads a single `Survey` that is related to this `SurveyResponse`. - """ + """Reads a single `Survey` that is related to this `SurveyResponse`.""" survey: Survey - """ - The `SurveyResponse` that was deleted by this mutation. - """ + """The `SurveyResponse` that was deleted by this mutation.""" surveyResponse: SurveyResponse - """ - An edge for our `SurveyResponse`. May be used by Relay 1. - """ + """An edge for our `SurveyResponse`. May be used by Relay 1.""" surveyResponseEdge( - """ - The method to use when ordering `SurveyResponse`. - """ + """The method to use when ordering `SurveyResponse`.""" orderBy: [SurveyResponsesOrderBy!] = [PRIMARY_KEY_ASC] ): SurveyResponsesEdge } -""" -All input for the `deleteTableOfContentsBranch` mutation. -""" +"""All input for the `deleteTableOfContentsBranch` mutation.""" input DeleteTableOfContentsBranchInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5496,9 +4491,7 @@ input DeleteTableOfContentsBranchInput { tableOfContentsItemId: Int } -""" -The output of our `deleteTableOfContentsBranch` mutation. -""" +"""The output of our `deleteTableOfContentsBranch` mutation.""" type DeleteTableOfContentsBranchPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5512,9 +4505,7 @@ type DeleteTableOfContentsBranchPayload { query: Query } -""" -All input for the `deleteTopicByNodeId` mutation. -""" +"""All input for the `deleteTopicByNodeId` mutation.""" input DeleteTopicByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5528,9 +4519,7 @@ input DeleteTopicByNodeIdInput { nodeId: ID! } -""" -All input for the `deleteTopic` mutation. -""" +"""All input for the `deleteTopic` mutation.""" input DeleteTopicInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5540,9 +4529,7 @@ input DeleteTopicInput { id: Int! } -""" -The output of our delete `Topic` mutation. -""" +"""The output of our delete `Topic` mutation.""" type DeleteTopicPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5551,9 +4538,7 @@ type DeleteTopicPayload { clientMutationId: String deletedTopicNodeId: ID - """ - Reads a single `Forum` that is related to this `Topic`. - """ + """Reads a single `Forum` that is related to this `Topic`.""" forum: Forum """ @@ -5561,25 +4546,17 @@ type DeleteTopicPayload { """ query: Query - """ - The `Topic` that was deleted by this mutation. - """ + """The `Topic` that was deleted by this mutation.""" topic: Topic - """ - An edge for our `Topic`. May be used by Relay 1. - """ + """An edge for our `Topic`. May be used by Relay 1.""" topicEdge( - """ - The method to use when ordering `Topic`. - """ + """The method to use when ordering `Topic`.""" orderBy: [TopicsOrderBy!] = [PRIMARY_KEY_ASC] ): TopicsEdge } -""" -All input for the `denyParticipant` mutation. -""" +"""All input for the `denyParticipant` mutation.""" input DenyParticipantInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5590,9 +4567,7 @@ input DenyParticipantInput { userId: Int } -""" -The output of our `denyParticipant` mutation. -""" +"""The output of our `denyParticipant` mutation.""" type DenyParticipantPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5606,20 +4581,14 @@ type DenyParticipantPayload { query: Query user: User - """ - An edge for our `User`. May be used by Relay 1. - """ + """An edge for our `User`. May be used by Relay 1.""" userEdge( - """ - The method to use when ordering `User`. - """ + """The method to use when ordering `User`.""" orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] ): UsersEdge } -""" -All input for the `disableForumPosting` mutation. -""" +"""All input for the `disableForumPosting` mutation.""" input DisableForumPostingInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5630,9 +4599,7 @@ input DisableForumPostingInput { userId: Int } -""" -The output of our `disableForumPosting` mutation. -""" +"""The output of our `disableForumPosting` mutation.""" type DisableForumPostingPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5646,9 +4613,7 @@ type DisableForumPostingPayload { query: Query } -""" -All input for the `dismissFailedUpload` mutation. -""" +"""All input for the `dismissFailedUpload` mutation.""" input DismissFailedUploadInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5658,9 +4623,7 @@ input DismissFailedUploadInput { id: UUID } -""" -The output of our `dismissFailedUpload` mutation. -""" +"""The output of our `dismissFailedUpload` mutation.""" type DismissFailedUploadPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5669,19 +4632,13 @@ type DismissFailedUploadPayload { clientMutationId: String dataUploadTask: DataUploadTask - """ - An edge for our `DataUploadTask`. May be used by Relay 1. - """ + """An edge for our `DataUploadTask`. May be used by Relay 1.""" dataUploadTaskEdge( - """ - The method to use when ordering `DataUploadTask`. - """ + """The method to use when ordering `DataUploadTask`.""" orderBy: [DataUploadTasksOrderBy!] = [PRIMARY_KEY_ASC] ): DataUploadTasksEdge - """ - Reads a single `Project` that is related to this `DataUploadTask`. - """ + """Reads a single `Project` that is related to this `DataUploadTask`.""" project: Project """ @@ -5695,13 +4652,14 @@ scalar Email """ Email notification preferences can be read and set by the current user session. These settings cannot be accessed by other users or SeaSketch project admins. + """ type EmailNotificationPreference { """ Email used when registering the account in Auth0. This email cannot be updated through the API, though it may be possible to do so manually by SeaSketch developers. - + This is the email by which users will recieve transactional emails like project and survey invites, and email notifications. """ @@ -5709,18 +4667,21 @@ type EmailNotificationPreference { """ How often users should be notified of SeaSketch project activity. + """ frequency: EmailSummaryFrequency! """ If set, users should receive realtime notifications of responses to discussion forum threads for which they are a participant. + """ notifyOnReply: Boolean! """ - If selected, users should receive absolutely no email from SeaSketch. Invite + If selected, users should receive absolutely no email from SeaSketch. Invite emails should not be sent and their status should be set to UNSUBSCRIBED. + """ unsubscribeAll: Boolean! @@ -5736,9 +4697,7 @@ A condition to be used against `EmailNotificationPreference` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input EmailNotificationPreferenceCondition { - """ - Checks for equality with the object’s `userId` field. - """ + """Checks for equality with the object’s `userId` field.""" userId: Int } @@ -5748,40 +4707,37 @@ Represents an update to a `EmailNotificationPreference`. Fields that are set wil input EmailNotificationPreferencePatch { """ How often users should be notified of SeaSketch project activity. + """ frequency: EmailSummaryFrequency """ If set, users should receive realtime notifications of responses to discussion forum threads for which they are a participant. + """ notifyOnReply: Boolean """ - If selected, users should receive absolutely no email from SeaSketch. Invite + If selected, users should receive absolutely no email from SeaSketch. Invite emails should not be sent and their status should be set to UNSUBSCRIBED. + """ unsubscribeAll: Boolean userId: Int } -""" -A connection to a list of `EmailNotificationPreference` values. -""" +"""A connection to a list of `EmailNotificationPreference` values.""" type EmailNotificationPreferencesConnection { """ A list of edges which contains the `EmailNotificationPreference` and cursor to aid in pagination. """ edges: [EmailNotificationPreferencesEdge!]! - """ - A list of `EmailNotificationPreference` objects. - """ + """A list of `EmailNotificationPreference` objects.""" nodes: [EmailNotificationPreference!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! """ @@ -5790,24 +4746,16 @@ type EmailNotificationPreferencesConnection { totalCount: Int! } -""" -A `EmailNotificationPreference` edge in the connection. -""" +"""A `EmailNotificationPreference` edge in the connection.""" type EmailNotificationPreferencesEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `EmailNotificationPreference` at the end of the edge. - """ + """The `EmailNotificationPreference` at the end of the edge.""" node: EmailNotificationPreference! } -""" -Methods to use when ordering `EmailNotificationPreference`. -""" +"""Methods to use when ordering `EmailNotificationPreference`.""" enum EmailNotificationPreferencesOrderBy { NATURAL USER_ID_ASC @@ -5831,20 +4779,14 @@ enum EmailSummaryFrequency { } enum EmailVerificationStatus { - """ - An email was sent to the address - """ + """An email was sent to the address""" EMAIL_SENT - """ - The email address is already verified - """ + """The email address is already verified""" VERIFIED } -""" -All input for the `enableForumPosting` mutation. -""" +"""All input for the `enableForumPosting` mutation.""" input EnableForumPostingInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5855,9 +4797,7 @@ input EnableForumPostingInput { userId: Int } -""" -The output of our `enableForumPosting` mutation. -""" +"""The output of our `enableForumPosting` mutation.""" type EnableForumPostingPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5871,9 +4811,7 @@ type EnableForumPostingPayload { query: Query } -""" -All input for the `enableOfflineSupport` mutation. -""" +"""All input for the `enableOfflineSupport` mutation.""" input EnableOfflineSupportInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5884,9 +4822,7 @@ input EnableOfflineSupportInput { projectId: Int } -""" -The output of our `enableOfflineSupport` mutation. -""" +"""The output of our `enableOfflineSupport` mutation.""" type EnableOfflineSupportPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5894,19 +4830,13 @@ type EnableOfflineSupportPayload { """ clientMutationId: String - """ - Reads a single `DataSourcesBucket` that is related to this `Project`. - """ + """Reads a single `DataSourcesBucket` that is related to this `Project`.""" dataSourcesBucket: DataSourcesBucket project: Project - """ - An edge for our `Project`. May be used by Relay 1. - """ + """An edge for our `Project`. May be used by Relay 1.""" projectEdge( - """ - The method to use when ordering `Project`. - """ + """The method to use when ordering `Project`.""" orderBy: [ProjectsOrderBy!] = [PRIMARY_KEY_ASC] ): ProjectsEdge @@ -5926,9 +4856,7 @@ enum ExtendedGeostatsType { STRING } -""" -All input for the `failDataUpload` mutation. -""" +"""All input for the `failDataUpload` mutation.""" input FailDataUploadInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -5939,9 +4867,7 @@ input FailDataUploadInput { msg: String } -""" -The output of our `failDataUpload` mutation. -""" +"""The output of our `failDataUpload` mutation.""" type FailDataUploadPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -5950,19 +4876,13 @@ type FailDataUploadPayload { clientMutationId: String dataUploadTask: DataUploadTask - """ - An edge for our `DataUploadTask`. May be used by Relay 1. - """ + """An edge for our `DataUploadTask`. May be used by Relay 1.""" dataUploadTaskEdge( - """ - The method to use when ordering `DataUploadTask`. - """ + """The method to use when ordering `DataUploadTask`.""" orderBy: [DataUploadTasksOrderBy!] = [PRIMARY_KEY_ASC] ): DataUploadTasksEdge - """ - Reads a single `Project` that is related to this `DataUploadTask`. - """ + """Reads a single `Project` that is related to this `DataUploadTask`.""" project: Project """ @@ -6004,15 +4924,11 @@ type FileUpload implements Node { """ nodeId: ID! - """ - Reads a single `Post` that is related to this `FileUpload`. - """ + """Reads a single `Post` that is related to this `FileUpload`.""" post: Post postId: Int - """ - Use to upload to cloud storage (PUT). - """ + """Use to upload to cloud storage (PUT).""" presignedUploadUrl: String projectId: Int! tilejsonEndpoint: String @@ -6025,60 +4941,40 @@ A condition to be used against `FileUpload` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input FileUploadCondition { - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: UUID - """ - Checks for equality with the object’s `postId` field. - """ + """Checks for equality with the object’s `postId` field.""" postId: Int } -""" -A connection to a list of `FileUpload` values. -""" +"""A connection to a list of `FileUpload` values.""" type FileUploadsConnection { """ A list of edges which contains the `FileUpload` and cursor to aid in pagination. """ edges: [FileUploadsEdge!]! - """ - A list of `FileUpload` objects. - """ + """A list of `FileUpload` objects.""" nodes: [FileUpload!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `FileUpload` you could get from the connection. - """ + """The count of *all* `FileUpload` you could get from the connection.""" totalCount: Int! } -""" -A `FileUpload` edge in the connection. -""" +"""A `FileUpload` edge in the connection.""" type FileUploadsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `FileUpload` at the end of the edge. - """ + """The `FileUpload` at the end of the edge.""" node: FileUpload! } -""" -Methods to use when ordering `FileUpload`. -""" +"""Methods to use when ordering `FileUpload`.""" enum FileUploadsOrderBy { ID_ASC ID_DESC @@ -6104,52 +5000,45 @@ Custom user-input Forms are used in two places in SeaSketch. For SketchClasses, Forms are used to add attributes to spatial features. In Surveys, Forms are used in support of gathering response data. -Forms have any number of *FormElements* ordered by a `position` field, and form +Forms have any number of *FormElements* ordered by a `position` field, and form contents may be hidden depending on the evaluation of *FormConditionalRenderingRules*. Forms typically belong to either a *Survey* or *SketchClass* exclusively. Some -Forms may be designated as a template, in which case they belong to neither. +Forms may be designated as a template, in which case they belong to neither. Only superusers can create form templates, and clients should provide templates as an option when creating new forms. + """ type Form implements Node { """ Lists FormElements in order for rendering + """ formElements( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [FormElement!] id: Int! """ - SeaSetch superusers can create template forms than can be used when creating - SketchClasses or Surveys. These templates can be created using the - `createFormTemplateFromSketchClass` and `createFormTemplateFromSurvey` - mutations. Template forms can be listed with the root-level `templateForms` + SeaSetch superusers can create template forms than can be used when creating + SketchClasses or Surveys. These templates can be created using the + `createFormTemplateFromSketchClass` and `createFormTemplateFromSurvey` + mutations. Template forms can be listed with the root-level `templateForms` query. + """ isTemplate: Boolean! - """ - Reads and enables pagination through a set of `FormLogicRule`. - """ + """Reads and enables pagination through a set of `FormLogicRule`.""" logicRules( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [FormLogicRule!] @@ -6158,34 +5047,22 @@ type Form implements Node { """ nodeId: ID! - """ - Reads a single `SketchClass` that is related to this `Form`. - """ + """Reads a single `SketchClass` that is related to this `Form`.""" sketchClass: SketchClass - """ - Related *SketchClass* - """ + """Related *SketchClass*""" sketchClassId: Int - """ - Reads a single `Survey` that is related to this `Form`. - """ + """Reads a single `Survey` that is related to this `Form`.""" survey: Survey - """ - Related *Survey* - """ + """Related *Survey*""" surveyId: Int - """ - Chosen by superusers upon template creation - """ + """Chosen by superusers upon template creation""" templateName: String - """ - Indicates which features should use this form as a template - """ + """Indicates which features should use this form as a template""" templateType: FormTemplateType } @@ -6193,47 +5070,42 @@ type Form implements Node { A condition to be used against `Form` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input FormCondition { - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `isTemplate` field. - """ + """Checks for equality with the object’s `isTemplate` field.""" isTemplate: Boolean - """ - Checks for equality with the object’s `sketchClassId` field. - """ + """Checks for equality with the object’s `sketchClassId` field.""" sketchClassId: Int - """ - Checks for equality with the object’s `surveyId` field. - """ + """Checks for equality with the object’s `surveyId` field.""" surveyId: Int } """ *FormElements* represent input fields or read-only content in a form. Records contain fields to support -generic functionality like body, position, and isRequired. They +generic functionality like body, position, and isRequired. They also have a JSON `componentSettings` field that can have custom data to support a particular input type, indicated by the `type` field. Project administrators have full control over managing form elements through graphile-generated CRUD mutations. + """ type FormElement implements Node { alternateLanguageSettings: JSON! """ Optional background color to transition the form to when this element is displayed. + """ backgroundColor: String backgroundHeight: Int """ Optional background image to display when this form_element appears. + """ backgroundImage: String backgroundPalette: [String] @@ -6245,6 +5117,7 @@ type FormElement implements Node { question for input-type fields, though formatting is up to the project administrators. Clients should provide a template that encourages this convention when building forms. + """ body: JSON! @@ -6258,32 +5131,31 @@ type FormElement implements Node { Column name used in csv export, property name in reporting tools. Keep stable to avoid breaking reports. If null, this value will be dynamically generated from the first several characters of the text in FormElement.body. + """ exportId: String - """ - Form this field belongs to. - """ + """Form this field belongs to.""" formId: Int! generatedExportId: String! generatedLabel: String! id: Int! isInput: Boolean - """ - Users must provide input for these fields before submission. - """ + """Users must provide input for these fields before submission.""" isRequired: Boolean! """ Used only in surveys. If set, the survey will advance to the page of the specified form element. If null, the survey will simply advance to the next question in the list by `position`. + """ jumpToId: Int """ Layout of image in relation to form_element content. + """ layout: FormElementLayout @@ -6294,7 +5166,7 @@ type FormElement implements Node { """ If using a map-based layout, can be used to set the default starting point of the map - + See https://docs.mapbox.com/mapbox-gl-js/api/properties/#cameraoptions ```json { @@ -6304,6 +5176,7 @@ type FormElement implements Node { "zoom": 10 } ``` + """ mapCameraOptions: JSON @@ -6313,25 +5186,26 @@ type FormElement implements Node { nodeId: ID! """ - Determines order of field display. Clients should display fields in ascending - order. Cannot be changed individually. Use `setFormElementOrder()` mutation to + Determines order of field display. Clients should display fields in ascending + order. Cannot be changed individually. Use `setFormElementOrder()` mutation to update. + """ position: Int! """ Color used to style navigation controls + """ secondaryColor: String """ Sketch Class to be used in conjuction with a form element that supports spatial feature input. + """ sketchClass: SketchClass - """ - Reads a single `SketchClass` that is related to this `FormElement`. - """ + """Reads a single `SketchClass` that is related to this `FormElement`.""" sketchClassFk: SketchClass """ @@ -6339,21 +5213,16 @@ type FormElement implements Node { sub-form that the parent element controls the rendering of. Will not appear in the form unless the client implementation utilizes something like FormElement.shouldDisplaySubordinateElement to control visibility. + """ subordinateTo: Int - """ - Reads and enables pagination through a set of `SurveyConsentDocument`. - """ + """Reads and enables pagination through a set of `SurveyConsentDocument`.""" surveyConsentDocumentsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -6361,14 +5230,10 @@ type FormElement implements Node { """ condition: SurveyConsentDocumentCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -6377,9 +5242,7 @@ type FormElement implements Node { """ offset: Int - """ - The method to use when ordering `SurveyConsentDocument`. - """ + """The method to use when ordering `SurveyConsentDocument`.""" orderBy: [SurveyConsentDocumentsOrderBy!] = [PRIMARY_KEY_ASC] ): SurveyConsentDocumentsConnection! @@ -6387,6 +5250,7 @@ type FormElement implements Node { Indicates whether the form element should be displayed with dark or light text variants to match the background color. Admin interface should automatically set this value based on `background_color`, though admins may wish to manually override. + """ textVariant: FormElementTextVariant! type: FormElementType @@ -6395,14 +5259,13 @@ type FormElement implements Node { unsplashAuthorUrl: String } -""" -An input for mutations affecting `FormElement` -""" +"""An input for mutations affecting `FormElement`""" input FormElementInput { alternateLanguageSettings: JSON """ Optional background color to transition the form to when this element is displayed. + """ backgroundColor: String backgroundHeight: Int @@ -6415,6 +5278,7 @@ input FormElementInput { question for input-type fields, though formatting is up to the project administrators. Clients should provide a template that encourages this convention when building forms. + """ body: JSON! @@ -6428,31 +5292,30 @@ input FormElementInput { Column name used in csv export, property name in reporting tools. Keep stable to avoid breaking reports. If null, this value will be dynamically generated from the first several characters of the text in FormElement.body. + """ exportId: String - """ - Form this field belongs to. - """ + """Form this field belongs to.""" formId: Int! generatedExportId: String generatedLabel: String id: Int - """ - Users must provide input for these fields before submission. - """ + """Users must provide input for these fields before submission.""" isRequired: Boolean """ Used only in surveys. If set, the survey will advance to the page of the specified form element. If null, the survey will simply advance to the next question in the list by `position`. + """ jumpToId: Int """ Layout of image in relation to form_element content. + """ layout: FormElementLayout @@ -6463,7 +5326,7 @@ input FormElementInput { """ If using a map-based layout, can be used to set the default starting point of the map - + See https://docs.mapbox.com/mapbox-gl-js/api/properties/#cameraoptions ```json { @@ -6473,18 +5336,21 @@ input FormElementInput { "zoom": 10 } ``` + """ mapCameraOptions: JSON """ - Determines order of field display. Clients should display fields in ascending - order. Cannot be changed individually. Use `setFormElementOrder()` mutation to + Determines order of field display. Clients should display fields in ascending + order. Cannot be changed individually. Use `setFormElementOrder()` mutation to update. + """ position: Int """ Color used to style navigation controls + """ secondaryColor: String @@ -6493,6 +5359,7 @@ input FormElementInput { sub-form that the parent element controls the rendering of. Will not appear in the form unless the client implementation utilizes something like FormElement.shouldDisplaySubordinateElement to control visibility. + """ subordinateTo: Int @@ -6500,6 +5367,7 @@ input FormElementInput { Indicates whether the form element should be displayed with dark or light text variants to match the background color. Admin interface should automatically set this value based on `background_color`, though admins may wish to manually override. + """ textVariant: FormElementTextVariant typeId: String! @@ -6525,6 +5393,7 @@ input FormElementPatch { """ Optional background color to transition the form to when this element is displayed. + """ backgroundColor: String backgroundHeight: Int @@ -6537,6 +5406,7 @@ input FormElementPatch { question for input-type fields, though formatting is up to the project administrators. Clients should provide a template that encourages this convention when building forms. + """ body: JSON @@ -6550,31 +5420,30 @@ input FormElementPatch { Column name used in csv export, property name in reporting tools. Keep stable to avoid breaking reports. If null, this value will be dynamically generated from the first several characters of the text in FormElement.body. + """ exportId: String - """ - Form this field belongs to. - """ + """Form this field belongs to.""" formId: Int generatedExportId: String generatedLabel: String id: Int - """ - Users must provide input for these fields before submission. - """ + """Users must provide input for these fields before submission.""" isRequired: Boolean """ Used only in surveys. If set, the survey will advance to the page of the specified form element. If null, the survey will simply advance to the next question in the list by `position`. + """ jumpToId: Int """ Layout of image in relation to form_element content. + """ layout: FormElementLayout @@ -6585,7 +5454,7 @@ input FormElementPatch { """ If using a map-based layout, can be used to set the default starting point of the map - + See https://docs.mapbox.com/mapbox-gl-js/api/properties/#cameraoptions ```json { @@ -6595,18 +5464,21 @@ input FormElementPatch { "zoom": 10 } ``` + """ mapCameraOptions: JSON """ - Determines order of field display. Clients should display fields in ascending - order. Cannot be changed individually. Use `setFormElementOrder()` mutation to + Determines order of field display. Clients should display fields in ascending + order. Cannot be changed individually. Use `setFormElementOrder()` mutation to update. + """ position: Int """ Color used to style navigation controls + """ secondaryColor: String @@ -6615,6 +5487,7 @@ input FormElementPatch { sub-form that the parent element controls the rendering of. Will not appear in the form unless the client implementation utilizes something like FormElement.shouldDisplaySubordinateElement to control visibility. + """ subordinateTo: Int @@ -6622,29 +5495,22 @@ input FormElementPatch { Indicates whether the form element should be displayed with dark or light text variants to match the background color. Admin interface should automatically set this value based on `background_color`, though admins may wish to manually override. + """ textVariant: FormElementTextVariant typeId: String } -""" -A `FormElement` edge in the connection. -""" +"""A `FormElement` edge in the connection.""" type FormElementsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `FormElement` at the end of the edge. - """ + """The `FormElement` at the end of the edge.""" node: FormElement! } -""" -Methods to use when ordering `FormElement`. -""" +"""Methods to use when ordering `FormElement`.""" enum FormElementsOrderBy { FORM_ID_ASC FORM_ID_DESC @@ -6665,6 +5531,7 @@ enum FormElementTextVariant { """ Identifies the type of element in a form, including metadata about that element type. + """ type FormElementType implements Node { allowAdminUpdates: Boolean! @@ -6682,9 +5549,7 @@ type FormElementType implements Node { isRequiredForSketchClasses: Boolean! isRequiredForSurveys: Boolean! - """ - These elements can only be added to a form once. - """ + """These elements can only be added to a form once.""" isSingleUseOnly: Boolean! """ @@ -6721,20 +5586,14 @@ A condition to be used against `FormElementType` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input FormElementTypeCondition { - """ - Checks for equality with the object’s `componentName` field. - """ + """Checks for equality with the object’s `componentName` field.""" componentName: String - """ - Checks for equality with the object’s `label` field. - """ + """Checks for equality with the object’s `label` field.""" label: String } -""" -Methods to use when ordering `FormElementType`. -""" +"""Methods to use when ordering `FormElementType`.""" enum FormElementTypesOrderBy { COMPONENT_NAME_ASC COMPONENT_NAME_DESC @@ -6755,6 +5614,7 @@ enum FormLogicCommand { Conditions are nested within FormLogicRules. In many cases there may be only a single condition, but in others the FormLogicRule.booleanOperator property defines how they are applied. + """ type FormLogicCondition implements Node { id: Int! @@ -6769,9 +5629,7 @@ type FormLogicCondition implements Node { value: JSON } -""" -An input for mutations affecting `FormLogicCondition` -""" +"""An input for mutations affecting `FormLogicCondition`""" input FormLogicConditionInput { id: Int operator: FieldRuleOperator @@ -6791,24 +5649,16 @@ input FormLogicConditionPatch { value: JSON } -""" -A `FormLogicCondition` edge in the connection. -""" +"""A `FormLogicCondition` edge in the connection.""" type FormLogicConditionsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `FormLogicCondition` at the end of the edge. - """ + """The `FormLogicCondition` at the end of the edge.""" node: FormLogicCondition! } -""" -Methods to use when ordering `FormLogicCondition`. -""" +"""Methods to use when ordering `FormLogicCondition`.""" enum FormLogicConditionsOrderBy { ID_ASC ID_DESC @@ -6823,25 +5673,20 @@ enum FormLogicOperator { } """ -Form logic rules can be used to hide or show FormElements based on the values of +Form logic rules can be used to hide or show FormElements based on the values of preceeding fields in a SketchClass. They can also define page jump logic within a Survey. + """ type FormLogicRule implements Node { booleanOperator: FormLogicOperator! command: FormLogicCommand! - """ - Reads and enables pagination through a set of `FormLogicCondition`. - """ + """Reads and enables pagination through a set of `FormLogicCondition`.""" conditions( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [FormLogicCondition!] formElementId: Int! @@ -6855,9 +5700,7 @@ type FormLogicRule implements Node { position: Int! } -""" -An input for mutations affecting `FormLogicRule` -""" +"""An input for mutations affecting `FormLogicRule`""" input FormLogicRuleInput { booleanOperator: FormLogicOperator command: FormLogicCommand! @@ -6879,24 +5722,16 @@ input FormLogicRulePatch { position: Int } -""" -A `FormLogicRule` edge in the connection. -""" +"""A `FormLogicRule` edge in the connection.""" type FormLogicRulesEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `FormLogicRule` at the end of the edge. - """ + """The `FormLogicRule` at the end of the edge.""" node: FormLogicRule! } -""" -Methods to use when ordering `FormLogicRule`. -""" +"""Methods to use when ordering `FormLogicRule`.""" enum FormLogicRulesOrderBy { ID_ASC ID_DESC @@ -6905,85 +5740,60 @@ enum FormLogicRulesOrderBy { PRIMARY_KEY_DESC } -""" -Represents an update to a `Form`. Fields that are set will be updated. -""" +"""Represents an update to a `Form`. Fields that are set will be updated.""" input FormPatch { id: Int """ - SeaSetch superusers can create template forms than can be used when creating - SketchClasses or Surveys. These templates can be created using the - `createFormTemplateFromSketchClass` and `createFormTemplateFromSurvey` - mutations. Template forms can be listed with the root-level `templateForms` + SeaSetch superusers can create template forms than can be used when creating + SketchClasses or Surveys. These templates can be created using the + `createFormTemplateFromSketchClass` and `createFormTemplateFromSurvey` + mutations. Template forms can be listed with the root-level `templateForms` query. + """ isTemplate: Boolean - """ - Related *SketchClass* - """ + """Related *SketchClass*""" sketchClassId: Int - """ - Related *Survey* - """ + """Related *Survey*""" surveyId: Int - """ - Chosen by superusers upon template creation - """ + """Chosen by superusers upon template creation""" templateName: String - """ - Indicates which features should use this form as a template - """ + """Indicates which features should use this form as a template""" templateType: FormTemplateType } -""" -A connection to a list of `Form` values. -""" +"""A connection to a list of `Form` values.""" type FormsConnection { """ A list of edges which contains the `Form` and cursor to aid in pagination. """ edges: [FormsEdge!]! - """ - A list of `Form` objects. - """ + """A list of `Form` objects.""" nodes: [Form!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `Form` you could get from the connection. - """ + """The count of *all* `Form` you could get from the connection.""" totalCount: Int! } -""" -A `Form` edge in the connection. -""" +"""A `Form` edge in the connection.""" type FormsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `Form` at the end of the edge. - """ + """The `Form` at the end of the edge.""" node: Form! } -""" -Methods to use when ordering `Form`. -""" +"""Methods to use when ordering `Form`.""" enum FormsOrderBy { ID_ASC ID_DESC @@ -6998,9 +5808,7 @@ enum FormsOrderBy { SURVEY_ID_DESC } -""" -Indicates which features should use the form as a template -""" +"""Indicates which features should use the form as a template""" enum FormTemplateType { SKETCHES SURVEYS @@ -7011,6 +5819,7 @@ enum FormTemplateType { Discussion forums are the highest level organizing unit of the discussion forums for a project. Each forum can have many topics (threads), which then contain posts. Only project administrators can create and configure forums. + """ type Forum implements Node { """ @@ -7020,16 +5829,12 @@ type Forum implements Node { archived: Boolean canPost: Boolean - """ - Optional description of the forum to be displayed to project users. - """ + """Optional description of the forum to be displayed to project users.""" description: String id: Int! lastPostDate: Datetime - """ - Title displayed for the forum. - """ + """Title displayed for the forum.""" name: String! """ @@ -7044,26 +5849,18 @@ type Forum implements Node { position: Int postCount: Int - """ - Reads a single `Project` that is related to this `Forum`. - """ + """Reads a single `Project` that is related to this `Forum`.""" project: Project projectId: Int! readAcl: Acl topicCount: Int - """ - Reads and enables pagination through a set of `Topic`. - """ + """Reads and enables pagination through a set of `Topic`.""" topicsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -7071,14 +5868,10 @@ type Forum implements Node { """ condition: TopicCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -7087,9 +5880,7 @@ type Forum implements Node { """ offset: Int - """ - The method to use when ordering `Topic`. - """ + """The method to use when ordering `Topic`.""" orderBy: [TopicsOrderBy!] = [PRIMARY_KEY_ASC] ): TopicsConnection! translatedProps: JSON! @@ -7111,20 +5902,14 @@ type ForumActivityPayload { A condition to be used against `Forum` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input ForumCondition { - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `projectId` field. - """ + """Checks for equality with the object’s `projectId` field.""" projectId: Int } -""" -An input for mutations affecting `Forum` -""" +"""An input for mutations affecting `Forum`""" input ForumInput { """ Archived forums will only be accessible by project administrators from the @@ -7132,15 +5917,11 @@ input ForumInput { """ archived: Boolean - """ - Optional description of the forum to be displayed to project users. - """ + """Optional description of the forum to be displayed to project users.""" description: String id: Int - """ - Title displayed for the forum. - """ + """Title displayed for the forum.""" name: String! """ @@ -7162,14 +5943,10 @@ input ForumPatch { """ archived: Boolean - """ - Optional description of the forum to be displayed to project users. - """ + """Optional description of the forum to be displayed to project users.""" description: String - """ - Title displayed for the forum. - """ + """Title displayed for the forum.""" name: String """ @@ -7180,24 +5957,16 @@ input ForumPatch { translatedProps: JSON } -""" -A `Forum` edge in the connection. -""" +"""A `Forum` edge in the connection.""" type ForumsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `Forum` at the end of the edge. - """ + """The `Forum` at the end of the edge.""" node: Forum! } -""" -Methods to use when ordering `Forum`. -""" +"""Methods to use when ordering `Forum`.""" enum ForumsOrderBy { ID_ASC ID_DESC @@ -7208,9 +5977,7 @@ enum ForumsOrderBy { PROJECT_ID_DESC } -""" -All input for the `generateOfflineTilePackage` mutation. -""" +"""All input for the `generateOfflineTilePackage` mutation.""" input GenerateOfflineTilePackageInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -7225,9 +5992,7 @@ input GenerateOfflineTilePackageInput { sourceType: OfflineTilePackageSourceType } -""" -The output of our `generateOfflineTilePackage` mutation. -""" +"""The output of our `generateOfflineTilePackage` mutation.""" type GenerateOfflineTilePackagePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -7236,19 +6001,13 @@ type GenerateOfflineTilePackagePayload { clientMutationId: String offlineTilePackage: OfflineTilePackage - """ - An edge for our `OfflineTilePackage`. May be used by Relay 1. - """ + """An edge for our `OfflineTilePackage`. May be used by Relay 1.""" offlineTilePackageEdge( - """ - The method to use when ordering `OfflineTilePackage`. - """ + """The method to use when ordering `OfflineTilePackage`.""" orderBy: [OfflineTilePackagesOrderBy!] = [PRIMARY_KEY_ASC] ): OfflineTilePackagesEdge - """ - Reads a single `Project` that is related to this `OfflineTilePackage`. - """ + """Reads a single `Project` that is related to this `OfflineTilePackage`.""" project: Project """ @@ -7257,33 +6016,21 @@ type GenerateOfflineTilePackagePayload { query: Query } -""" -All geography XY types implement this interface -""" +"""All geography XY types implement this interface""" interface GeographyGeometry { - """ - Converts the object to GeoJSON - """ + """Converts the object to GeoJSON""" geojson: GeoJSON - """ - Spatial reference identifier (SRID) - """ + """Spatial reference identifier (SRID)""" srid: Int! } -""" -All geography types implement this interface -""" +"""All geography types implement this interface""" interface GeographyInterface { - """ - Converts the object to GeoJSON - """ + """Converts the object to GeoJSON""" geojson: GeoJSON - """ - Spatial reference identifier (SRID) - """ + """Spatial reference identifier (SRID)""" srid: Int! } @@ -7312,18 +6059,12 @@ The `GeoJSON` scalar type represents GeoJSON values as specified by[RFC 7946](ht """ scalar GeoJSON -""" -All geometry XY types implement this interface -""" +"""All geometry XY types implement this interface""" interface GeometryGeometry { - """ - Converts the object to GeoJSON - """ + """Converts the object to GeoJSON""" geojson: GeoJSON - """ - Spatial reference identifier (SRID) - """ + """Spatial reference identifier (SRID)""" srid: Int! } @@ -7351,63 +6092,39 @@ type GeometryGeometryCollectionZM implements GeometryGeometryZM & GeometryInterf srid: Int! } -""" -All geometry XYM types implement this interface -""" +"""All geometry XYM types implement this interface""" interface GeometryGeometryM { - """ - Converts the object to GeoJSON - """ + """Converts the object to GeoJSON""" geojson: GeoJSON - """ - Spatial reference identifier (SRID) - """ + """Spatial reference identifier (SRID)""" srid: Int! } -""" -All geometry XYZ types implement this interface -""" +"""All geometry XYZ types implement this interface""" interface GeometryGeometryZ { - """ - Converts the object to GeoJSON - """ + """Converts the object to GeoJSON""" geojson: GeoJSON - """ - Spatial reference identifier (SRID) - """ + """Spatial reference identifier (SRID)""" srid: Int! } -""" -All geometry XYZM types implement this interface -""" +"""All geometry XYZM types implement this interface""" interface GeometryGeometryZM { - """ - Converts the object to GeoJSON - """ + """Converts the object to GeoJSON""" geojson: GeoJSON - """ - Spatial reference identifier (SRID) - """ + """Spatial reference identifier (SRID)""" srid: Int! } -""" -All geometry types implement this interface -""" +"""All geometry types implement this interface""" interface GeometryInterface { - """ - Converts the object to GeoJSON - """ + """Converts the object to GeoJSON""" geojson: GeoJSON - """ - Spatial reference identifier (SRID) - """ + """Spatial reference identifier (SRID)""" srid: Int! } @@ -7563,9 +6280,7 @@ type GeometryPolygonZM implements GeometryGeometryZM & GeometryInterface { srid: Int! } -""" -All input for the `getChildFoldersRecursive` mutation. -""" +"""All input for the `getChildFoldersRecursive` mutation.""" input GetChildFoldersRecursiveInput { childType: SketchChildType @@ -7577,9 +6292,7 @@ input GetChildFoldersRecursiveInput { parentId: Int } -""" -The output of our `getChildFoldersRecursive` mutation. -""" +"""The output of our `getChildFoldersRecursive` mutation.""" type GetChildFoldersRecursivePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -7594,9 +6307,7 @@ type GetChildFoldersRecursivePayload { query: Query } -""" -All input for the `grantAdminAccess` mutation. -""" +"""All input for the `grantAdminAccess` mutation.""" input GrantAdminAccessInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -7607,9 +6318,7 @@ input GrantAdminAccessInput { userId: Int } -""" -The output of our `grantAdminAccess` mutation. -""" +"""The output of our `grantAdminAccess` mutation.""" type GrantAdminAccessPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -7625,37 +6334,30 @@ type GrantAdminAccessPayload { """ User groups designated by the project administrators. User groups can be used to -assign access control privileges to users. +assign access control privileges to users. Note that only admins have access to groups, or direct knowlege of what groups a -user belongs to. If an admin wanted to create an *Assholes* group they are +user belongs to. If an admin wanted to create an *Assholes* group they are free to do so. + """ type Group implements Node { id: Int! memberCount: Int - """ - Reads and enables pagination through a set of `User`. - """ + """Reads and enables pagination through a set of `User`.""" members( direction: SortByDirection - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int orderBy: ParticipantSortBy ): [User!] - """ - Label for the group. - """ + """Label for the group.""" name: String! """ @@ -7663,24 +6365,16 @@ type Group implements Node { """ nodeId: ID! - """ - Reads a single `Project` that is related to this `Group`. - """ + """Reads a single `Project` that is related to this `Group`.""" project: Project projectId: Int! - """ - Reads and enables pagination through a set of `ProjectInviteGroup`. - """ + """Reads and enables pagination through a set of `ProjectInviteGroup`.""" projectInviteGroupsByGroupIdConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -7688,14 +6382,10 @@ type Group implements Node { """ condition: ProjectInviteGroupCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -7704,22 +6394,16 @@ type Group implements Node { """ offset: Int - """ - The method to use when ordering `ProjectInviteGroup`. - """ + """The method to use when ordering `ProjectInviteGroup`.""" orderBy: [ProjectInviteGroupsOrderBy!] = [NATURAL] ): ProjectInviteGroupsConnection! } -""" -An input for mutations affecting `Group` -""" +"""An input for mutations affecting `Group`""" input GroupInput { id: Int - """ - Label for the group. - """ + """Label for the group.""" name: String! projectId: Int! } @@ -7730,16 +6414,12 @@ Represents an update to a `Group`. Fields that are set will be updated. input GroupPatch { id: Int - """ - Label for the group. - """ + """Label for the group.""" name: String projectId: Int } -""" -Methods to use when ordering `Group`. -""" +"""Methods to use when ordering `Group`.""" enum GroupsOrderBy { ID_ASC ID_DESC @@ -7750,9 +6430,7 @@ enum GroupsOrderBy { PROJECT_ID_DESC } -""" -All input for the `importArcgisServices` mutation. -""" +"""All input for the `importArcgisServices` mutation.""" input ImportArcgisServicesInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -7764,9 +6442,7 @@ input ImportArcgisServicesInput { sources: [ArcgisImportSourceInput] } -""" -The output of our `importArcgisServices` mutation. -""" +"""The output of our `importArcgisServices` mutation.""" type ImportArcgisServicesPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -7782,18 +6458,12 @@ type ImportArcgisServicesPayload { } type InteractivitySetting implements Node { - """ - Reads and enables pagination through a set of `Basemap`. - """ + """Reads and enables pagination through a set of `Basemap`.""" basemapsByInteractivitySettingsIdConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -7801,14 +6471,10 @@ type InteractivitySetting implements Node { """ condition: BasemapCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -7817,9 +6483,7 @@ type InteractivitySetting implements Node { """ offset: Int - """ - The method to use when ordering `Basemap`. - """ + """The method to use when ordering `Basemap`.""" orderBy: [BasemapsOrderBy!] = [PRIMARY_KEY_ASC] ): BasemapsConnection! cursor: CursorType! @@ -7829,18 +6493,12 @@ type InteractivitySetting implements Node { """ dataLayerByInteractivitySettingsId: DataLayer - """ - Reads and enables pagination through a set of `DataLayer`. - """ + """Reads and enables pagination through a set of `DataLayer`.""" dataLayersByInteractivitySettingsIdConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -7848,14 +6506,10 @@ type InteractivitySetting implements Node { """ condition: DataLayerCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -7864,16 +6518,14 @@ type InteractivitySetting implements Node { """ offset: Int - """ - The method to use when ordering `DataLayer`. - """ + """The method to use when ordering `DataLayer`.""" orderBy: [DataLayersOrderBy!] = [PRIMARY_KEY_ASC] - ): DataLayersConnection! - @deprecated(reason: "Please use dataLayerByInteractivitySettingsId instead") + ): DataLayersConnection! @deprecated(reason: "Please use dataLayerByInteractivitySettingsId instead") id: Int! """ Used only for basemap interactivity settings. Optional list of layer ids that this setting applies to. + """ layers: [String] longTemplate: String @@ -7887,15 +6539,14 @@ type InteractivitySetting implements Node { type: InteractivityType! } -""" -An input for mutations affecting `InteractivitySetting` -""" +"""An input for mutations affecting `InteractivitySetting`""" input InteractivitySettingInput { cursor: CursorType id: Int """ Used only for basemap interactivity settings. Optional list of layer ids that this setting applies to. + """ layers: [String] longTemplate: String @@ -7913,6 +6564,7 @@ input InteractivitySettingPatch { """ Used only for basemap interactivity settings. Optional list of layer ids that this setting applies to. + """ layers: [String] longTemplate: String @@ -7932,13 +6584,14 @@ enum InteractivityType { } """ -Invite emails can be associated with either a project or survey invitation. +Invite emails can be associated with either a project or survey invitation. Project invite emails are sent by direct admin action, going into a QUEUED state -and eventually sent out by a backend emailing process. Survey invites are +and eventually sent out by a backend emailing process. Survey invites are automatically created whenever a survey is published. [More details on the mailing process can be found on the wiki](https://github.com/seasketch/next/wiki/User-and-Survey-Invite-Management). + """ type InviteEmail implements Node { createdAt: Datetime! @@ -7950,28 +6603,26 @@ type InviteEmail implements Node { """ nodeId: ID! - """ - Reads a single `ProjectInvite` that is related to this `InviteEmail`. - """ + """Reads a single `ProjectInvite` that is related to this `InviteEmail`.""" projectInvite: ProjectInvite projectInviteId: Int """ Updated by the mailer processes and SES notifications. + """ status: EmailStatus! - """ - Reads a single `SurveyInvite` that is related to this `InviteEmail`. - """ + """Reads a single `SurveyInvite` that is related to this `InviteEmail`.""" surveyInvite: SurveyInvite surveyInviteId: Int toAddress: Email! """ - Emails contain a link with an embedded JSON Web Token that is used to authorize - access. These tokens have an expiration that is both embedded in the token and + Emails contain a link with an embedded JSON Web Token that is used to authorize + access. These tokens have an expiration that is both embedded in the token and tracked in the database. Each email has its own token and expiration. + """ tokenExpiresAt: Datetime updatedAt: Datetime @@ -7982,30 +6633,20 @@ A condition to be used against `InviteEmail` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input InviteEmailCondition { - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `projectInviteId` field. - """ + """Checks for equality with the object’s `projectInviteId` field.""" projectInviteId: Int - """ - Checks for equality with the object’s `status` field. - """ + """Checks for equality with the object’s `status` field.""" status: EmailStatus - """ - Checks for equality with the object’s `surveyInviteId` field. - """ + """Checks for equality with the object’s `surveyInviteId` field.""" surveyInviteId: Int } -""" -Methods to use when ordering `InviteEmail`. -""" +"""Methods to use when ordering `InviteEmail`.""" enum InviteEmailsOrderBy { ID_ASC ID_DESC @@ -8050,9 +6691,7 @@ enum InviteStatus { UNSUBSCRIBED } -""" -All input for the `joinProject` mutation. -""" +"""All input for the `joinProject` mutation.""" input JoinProjectInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -8062,9 +6701,7 @@ input JoinProjectInput { projectId: Int } -""" -The output of our `joinProject` mutation. -""" +"""The output of our `joinProject` mutation.""" type JoinProjectPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -8083,9 +6720,7 @@ The `JSON` scalar type represents JSON values as specified by [ECMA-404](http:// """ scalar JSON -""" -All input for the `labelForFormElementValue` mutation. -""" +"""All input for the `labelForFormElementValue` mutation.""" input LabelForFormElementValueInput { attrValue: JSON @@ -8097,9 +6732,7 @@ input LabelForFormElementValueInput { componentSettings: JSON } -""" -The output of our `labelForFormElementValue` mutation. -""" +"""The output of our `labelForFormElementValue` mutation.""" type LabelForFormElementValuePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -8114,9 +6747,7 @@ type LabelForFormElementValuePayload { query: Query } -""" -All input for the `leaveProject` mutation. -""" +"""All input for the `leaveProject` mutation.""" input LeaveProjectInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -8126,9 +6757,7 @@ input LeaveProjectInput { projectId: Int } -""" -The output of our `leaveProject` mutation. -""" +"""The output of our `leaveProject` mutation.""" type LeaveProjectPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -8142,9 +6771,7 @@ type LeaveProjectPayload { query: Query } -""" -All input for the `makeResponseDraft` mutation. -""" +"""All input for the `makeResponseDraft` mutation.""" input MakeResponseDraftInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -8154,9 +6781,7 @@ input MakeResponseDraftInput { responseId: Int } -""" -The output of our `makeResponseDraft` mutation. -""" +"""The output of our `makeResponseDraft` mutation.""" type MakeResponseDraftPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -8169,26 +6794,18 @@ type MakeResponseDraftPayload { """ query: Query - """ - Reads a single `Survey` that is related to this `SurveyResponse`. - """ + """Reads a single `Survey` that is related to this `SurveyResponse`.""" survey: Survey surveyResponse: SurveyResponse - """ - An edge for our `SurveyResponse`. May be used by Relay 1. - """ + """An edge for our `SurveyResponse`. May be used by Relay 1.""" surveyResponseEdge( - """ - The method to use when ordering `SurveyResponse`. - """ + """The method to use when ordering `SurveyResponse`.""" orderBy: [SurveyResponsesOrderBy!] = [PRIMARY_KEY_ASC] ): SurveyResponsesEdge } -""" -All input for the `makeResponsesNotPractice` mutation. -""" +"""All input for the `makeResponsesNotPractice` mutation.""" input MakeResponsesNotPracticeInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -8198,9 +6815,7 @@ input MakeResponsesNotPracticeInput { ids: [Int] } -""" -The output of our `makeResponsesNotPractice` mutation. -""" +"""The output of our `makeResponsesNotPractice` mutation.""" type MakeResponsesNotPracticePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -8215,9 +6830,7 @@ type MakeResponsesNotPracticePayload { surveyResponses: [SurveyResponse!] } -""" -All input for the `makeResponsesPractice` mutation. -""" +"""All input for the `makeResponsesPractice` mutation.""" input MakeResponsesPracticeInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -8227,9 +6840,7 @@ input MakeResponsesPracticeInput { ids: [Int] } -""" -The output of our `makeResponsesPractice` mutation. -""" +"""The output of our `makeResponsesPractice` mutation.""" type MakeResponsesPracticePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -8242,26 +6853,18 @@ type MakeResponsesPracticePayload { """ query: Query - """ - Reads a single `Survey` that is related to this `SurveyResponse`. - """ + """Reads a single `Survey` that is related to this `SurveyResponse`.""" survey: Survey surveyResponse: SurveyResponse - """ - An edge for our `SurveyResponse`. May be used by Relay 1. - """ + """An edge for our `SurveyResponse`. May be used by Relay 1.""" surveyResponseEdge( - """ - The method to use when ordering `SurveyResponse`. - """ + """The method to use when ordering `SurveyResponse`.""" orderBy: [SurveyResponsesOrderBy!] = [PRIMARY_KEY_ASC] ): SurveyResponsesEdge } -""" -All input for the `makeSketchClass` mutation. -""" +"""All input for the `makeSketchClass` mutation.""" input MakeSketchClassInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -8273,9 +6876,7 @@ input MakeSketchClassInput { templateId: Int } -""" -The output of our `makeSketchClass` mutation. -""" +"""The output of our `makeSketchClass` mutation.""" type MakeSketchClassPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -8283,14 +6884,10 @@ type MakeSketchClassPayload { """ clientMutationId: String - """ - Reads a single `FormElement` that is related to this `SketchClass`. - """ + """Reads a single `FormElement` that is related to this `SketchClass`.""" formElement: FormElement - """ - Reads a single `Project` that is related to this `SketchClass`. - """ + """Reads a single `Project` that is related to this `SketchClass`.""" project: Project """ @@ -8299,20 +6896,14 @@ type MakeSketchClassPayload { query: Query sketchClass: SketchClass - """ - An edge for our `SketchClass`. May be used by Relay 1. - """ + """An edge for our `SketchClass`. May be used by Relay 1.""" sketchClassEdge( - """ - The method to use when ordering `SketchClass`. - """ + """The method to use when ordering `SketchClass`.""" orderBy: [SketchClassesOrderBy!] = [PRIMARY_KEY_ASC] ): SketchClassesEdge } -""" -All input for the `makeSurvey` mutation. -""" +"""All input for the `makeSurvey` mutation.""" input MakeSurveyInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -8324,9 +6915,7 @@ input MakeSurveyInput { templateId: Int } -""" -The output of our `makeSurvey` mutation. -""" +"""The output of our `makeSurvey` mutation.""" type MakeSurveyPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -8334,9 +6923,7 @@ type MakeSurveyPayload { """ clientMutationId: String - """ - Reads a single `Project` that is related to this `Survey`. - """ + """Reads a single `Project` that is related to this `Survey`.""" project: Project """ @@ -8347,9 +6934,7 @@ type MakeSurveyPayload { } type MapBookmark { - """ - Reads a single `Basemap` that is related to this `MapBookmark`. - """ + """Reads a single `Basemap` that is related to this `MapBookmark`.""" basemapBySelectedBasemap: Basemap basemapName: String basemapOptionalLayerStates: JSON @@ -8384,65 +6969,43 @@ A condition to be used against `MapBookmark` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input MapBookmarkCondition { - """ - Checks for equality with the object’s `postId` field. - """ + """Checks for equality with the object’s `postId` field.""" postId: Int - """ - Checks for equality with the object’s `selectedBasemap` field. - """ + """Checks for equality with the object’s `selectedBasemap` field.""" selectedBasemap: Int - """ - Checks for equality with the object’s `visibleDataLayers` field. - """ + """Checks for equality with the object’s `visibleDataLayers` field.""" visibleDataLayers: [String] } -""" -A connection to a list of `MapBookmark` values. -""" +"""A connection to a list of `MapBookmark` values.""" type MapBookmarksConnection { """ A list of edges which contains the `MapBookmark` and cursor to aid in pagination. """ edges: [MapBookmarksEdge!]! - """ - A list of `MapBookmark` objects. - """ + """A list of `MapBookmark` objects.""" nodes: [MapBookmark!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `MapBookmark` you could get from the connection. - """ + """The count of *all* `MapBookmark` you could get from the connection.""" totalCount: Int! } -""" -A `MapBookmark` edge in the connection. -""" +"""A `MapBookmark` edge in the connection.""" type MapBookmarksEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `MapBookmark` at the end of the edge. - """ + """The `MapBookmark` at the end of the edge.""" node: MapBookmark! } -""" -Methods to use when ordering `MapBookmark`. -""" +"""Methods to use when ordering `MapBookmark`.""" enum MapBookmarksOrderBy { NATURAL POST_ID_ASC @@ -8453,9 +7016,7 @@ enum MapBookmarksOrderBy { VISIBLE_DATA_LAYERS_DESC } -""" -All input for the `markTopicAsRead` mutation. -""" +"""All input for the `markTopicAsRead` mutation.""" input MarkTopicAsReadInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -8465,9 +7026,7 @@ input MarkTopicAsReadInput { topicId: Int } -""" -The output of our `markTopicAsRead` mutation. -""" +"""The output of our `markTopicAsRead` mutation.""" type MarkTopicAsReadPayload { boolean: Boolean @@ -8483,9 +7042,7 @@ type MarkTopicAsReadPayload { query: Query } -""" -All input for the `mergeTranslatedProps` mutation. -""" +"""All input for the `mergeTranslatedProps` mutation.""" input MergeTranslatedPropsInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -8497,9 +7054,7 @@ input MergeTranslatedPropsInput { propTranslations: JSON } -""" -The output of our `mergeTranslatedProps` mutation. -""" +"""The output of our `mergeTranslatedProps` mutation.""" type MergeTranslatedPropsPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -8514,9 +7069,7 @@ type MergeTranslatedPropsPayload { query: Query } -""" -All input for the `modifySurveyAnswers` mutation. -""" +"""All input for the `modifySurveyAnswers` mutation.""" input ModifySurveyAnswersInput { answers: JSON @@ -8528,9 +7081,7 @@ input ModifySurveyAnswersInput { responseIds: [Int] } -""" -The output of our `modifySurveyAnswers` mutation. -""" +"""The output of our `modifySurveyAnswers` mutation.""" type ModifySurveyAnswersPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -8549,22 +7100,14 @@ type ModifySurveyAnswersPayload { The root mutation type which contains root level fields which mutate data. """ type Mutation { - """ - Add a group to a given access control list. Must be an administrator. - """ + """Add a group to a given access control list. Must be an administrator.""" addGroupToAcl( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. """ input: AddGroupToAclInput! ): AddGroupToAclPayload - addImageToSprite( - height: Int! - image: Upload! - pixelRatio: Int! - spriteId: Int! - width: Int! - ): Sprite + addImageToSprite(height: Int!, image: Upload!, pixelRatio: Int!, spriteId: Int!, width: Int!): Sprite """ Add the given user to a group. Must be an administrator of the project. @@ -8578,6 +7121,7 @@ type Mutation { """ Add a SketchClass to the list of valid children for a Collection-type SketchClass. + """ addValidChildSketchClass( """ @@ -8618,6 +7162,7 @@ type Mutation { """ Confirm that a new user has seen any onboarding materials. Updates User.onboarded date. + """ confirmOnboarded( """ @@ -8632,23 +7177,22 @@ type Mutation { membership or admin privileges assigned to the invite. The act of accepting a token that was sent via email will also verify the user's email if it wasn't already. - + More details on how to handle invites can be found [on the wiki](https://github.com/seasketch/next/wiki/User-Ingress#project-invites) """ confirmProjectInvite( - """ - JWT string - """ + """JWT string""" token: String! ): ProjectInviteTokenClaims """ Project invites can be paired with survey invites so that users can be sent an - email inviting them to a survey, then use that survey invite to confirm a + email inviting them to a survey, then use that survey invite to confirm a project invitation. This way there are no duplicative emails sent. - + Clients must set x-ss-survey-invite-token header before calling this mutation. + """ confirmProjectInviteWithSurveyToken( """ @@ -8658,13 +7202,14 @@ type Mutation { ): ConfirmProjectInviteWithSurveyTokenPayload """ - Users can confirm project invites without clicking thru an email if they are - registered for SeaSketch and their verified email matches that of a project - invite. Outstanding (or confirmed) invites can be accessed via the + Users can confirm project invites without clicking thru an email if they are + registered for SeaSketch and their verified email matches that of a project + invite. Outstanding (or confirmed) invites can be accessed via the `currentProject.invite` query. - + More details on how to handle invites can be found [on the wiki](https://github.com/seasketch/next/wiki/User-Ingress#project-invites). + """ confirmProjectInviteWithVerifiedEmail( """ @@ -8696,15 +7241,9 @@ type Mutation { """ input: CopySketchFolderInput! ): CopySketchFolderPayload - copySketchTocItem( - forForum: Boolean - id: Int! - type: SketchChildType! - ): CopySketchTocItemResults + copySketchTocItem(forForum: Boolean, id: Int!, type: SketchChildType!): CopySketchTocItemResults - """ - Creates a single `Basemap`. - """ + """Creates a single `Basemap`.""" createBasemap( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8712,9 +7251,7 @@ type Mutation { input: CreateBasemapInput! ): CreateBasemapPayload - """ - Creates a single `CommunityGuideline`. - """ + """Creates a single `CommunityGuideline`.""" createCommunityGuideline( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8722,9 +7259,7 @@ type Mutation { input: CreateCommunityGuidelineInput! ): CreateCommunityGuidelinePayload - """ - Creates a single `DataLayer`. - """ + """Creates a single `DataLayer`.""" createDataLayer( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8732,9 +7267,7 @@ type Mutation { input: CreateDataLayerInput! ): CreateDataLayerPayload - """ - Creates a single `DataSource`. - """ + """Creates a single `DataSource`.""" createDataSource( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8747,17 +7280,9 @@ type Mutation { """ input: CreateDataUploadInput! ): CreateDataUploadPayload - createFileUpload( - contentType: String! - filename: String! - fileSizeBytes: Int! - projectId: Int! - usage: FileUploadUsageInput! - ): UploaderResponse! + createFileUpload(contentType: String!, filename: String!, fileSizeBytes: Int!, projectId: Int!, usage: FileUploadUsageInput!): UploaderResponse! - """ - Creates a single `FormElement`. - """ + """Creates a single `FormElement`.""" createFormElement( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8765,9 +7290,7 @@ type Mutation { input: CreateFormElementInput! ): CreateFormElementPayload - """ - Creates a single `FormLogicCondition`. - """ + """Creates a single `FormLogicCondition`.""" createFormLogicCondition( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8775,9 +7298,7 @@ type Mutation { input: CreateFormLogicConditionInput! ): CreateFormLogicConditionPayload - """ - Creates a single `FormLogicRule`. - """ + """Creates a single `FormLogicRule`.""" createFormLogicRule( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8797,9 +7318,7 @@ type Mutation { input: CreateFormTemplateFromSurveyInput! ): CreateFormTemplateFromSurveyPayload - """ - Creates a single `Forum`. - """ + """Creates a single `Forum`.""" createForum( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8807,9 +7326,7 @@ type Mutation { input: CreateForumInput! ): CreateForumPayload - """ - Creates a single `Group`. - """ + """Creates a single `Group`.""" createGroup( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8817,9 +7334,7 @@ type Mutation { input: CreateGroupInput! ): CreateGroupPayload - """ - Creates a single `InteractivitySetting`. - """ + """Creates a single `InteractivitySetting`.""" createInteractivitySetting( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8833,9 +7348,7 @@ type Mutation { input: CreateMapBookmarkInput! ): CreateMapBookmarkPayload - """ - Creates a single `OfflineTileSetting`. - """ + """Creates a single `OfflineTileSetting`.""" createOfflineTileSetting( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8843,9 +7356,7 @@ type Mutation { input: CreateOfflineTileSettingInput! ): CreateOfflineTileSettingPayload - """ - Creates a single `OptionalBasemapLayer`. - """ + """Creates a single `OptionalBasemapLayer`.""" createOptionalBasemapLayer( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8866,9 +7377,7 @@ type Mutation { input: CreateProjectInput! ): CreateProjectPayload - """ - Creates a single `ProjectInviteGroup`. - """ + """Creates a single `ProjectInviteGroup`.""" createProjectInviteGroup( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8878,14 +7387,15 @@ type Mutation { """ Create a set of project invites from a set of emails and optional names. Clients - should implement this feature as a simple textarea where admins can copy and + should implement this feature as a simple textarea where admins can copy and paste a set of names and emails from a spreadsheet.# - + Invites can be assigned to a list of groups and optional admin permission. The function can either send these invite emails immediately or they can be manually sent later. - + More details on project invite management [can be found in the wiki](https://github.com/seasketch/next/wiki/User-and-Survey-Invite-Management). + """ createProjectInvites( """ @@ -8894,9 +7404,7 @@ type Mutation { input: CreateProjectInvitesInput! ): CreateProjectInvitesPayload - """ - Creates a single `ProjectsSharedBasemap`. - """ + """Creates a single `ProjectsSharedBasemap`.""" createProjectsSharedBasemap( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8910,34 +7418,24 @@ type Mutation { function again on userGeom. This ensures the value conforms to the project's rules, and also benefits the user in that they need not submit a huge geometry to the server. - + In the case of collections, the userGeom can be omitted. """ createSketch( - """ - Sketches can be assigned directly to a collection on creation. - """ + """Sketches can be assigned directly to a collection on creation.""" collectionId: Int - """ - Sketches can be assigned directly to a folder on creation. - """ + """Sketches can be assigned directly to a folder on creation.""" folderId: Int - """ - Name for the sketch. Required. - """ + """Name for the sketch. Required.""" name: String! - """ - Form element data - """ + """Form element data""" properties: JSON! sketchClassId: Int! - """ - Sketch as drawn by the user. - """ + """Sketch as drawn by the user.""" userGeom: GeoJSON ): Sketch createSketchClassFromTemplate( @@ -8953,9 +7451,7 @@ type Mutation { input: CreateSketchFolderInput! ): CreateSketchFolderPayload - """ - Creates a single `SurveyInvitedGroup`. - """ + """Creates a single `SurveyInvitedGroup`.""" createSurveyInvitedGroup( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -8971,6 +7467,7 @@ type Mutation { """ Initializes a new FormLogicRule with a single condition and command=JUMP. + """ createSurveyJumpRule( """ @@ -8991,9 +7488,7 @@ type Mutation { input: CreateSurveyResponseV2Input! ): CreateSurveyResponseV2Payload - """ - Creates a single `TableOfContentsItem`. - """ + """Creates a single `TableOfContentsItem`.""" createTableOfContentsItem( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9008,9 +7503,7 @@ type Mutation { input: CreateVisibilityLogicRuleInput! ): CreateVisibilityLogicRulePayload - """ - Deletes a single `Basemap` using a unique key. - """ + """Deletes a single `Basemap` using a unique key.""" deleteBasemap( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9018,9 +7511,7 @@ type Mutation { input: DeleteBasemapInput! ): DeleteBasemapPayload - """ - Deletes a single `Basemap` using its globally unique id. - """ + """Deletes a single `Basemap` using its globally unique id.""" deleteBasemapByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9028,9 +7519,7 @@ type Mutation { input: DeleteBasemapByNodeIdInput! ): DeleteBasemapPayload - """ - Deletes a single `CommunityGuideline` using a unique key. - """ + """Deletes a single `CommunityGuideline` using a unique key.""" deleteCommunityGuideline( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9038,9 +7527,7 @@ type Mutation { input: DeleteCommunityGuidelineInput! ): DeleteCommunityGuidelinePayload - """ - Deletes a single `CommunityGuideline` using its globally unique id. - """ + """Deletes a single `CommunityGuideline` using its globally unique id.""" deleteCommunityGuidelineByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9048,9 +7535,7 @@ type Mutation { input: DeleteCommunityGuidelineByNodeIdInput! ): DeleteCommunityGuidelinePayload - """ - Deletes a single `DataLayer` using a unique key. - """ + """Deletes a single `DataLayer` using a unique key.""" deleteDataLayer( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9058,9 +7543,7 @@ type Mutation { input: DeleteDataLayerInput! ): DeleteDataLayerPayload - """ - Deletes a single `DataLayer` using a unique key. - """ + """Deletes a single `DataLayer` using a unique key.""" deleteDataLayerByInteractivitySettingsId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9068,9 +7551,7 @@ type Mutation { input: DeleteDataLayerByInteractivitySettingsIdInput! ): DeleteDataLayerPayload - """ - Deletes a single `DataLayer` using its globally unique id. - """ + """Deletes a single `DataLayer` using its globally unique id.""" deleteDataLayerByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9078,9 +7559,7 @@ type Mutation { input: DeleteDataLayerByNodeIdInput! ): DeleteDataLayerPayload - """ - Deletes a single `DataSource` using a unique key. - """ + """Deletes a single `DataSource` using a unique key.""" deleteDataSource( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9088,9 +7567,7 @@ type Mutation { input: DeleteDataSourceInput! ): DeleteDataSourcePayload - """ - Deletes a single `DataSource` using its globally unique id. - """ + """Deletes a single `DataSource` using its globally unique id.""" deleteDataSourceByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9098,9 +7575,7 @@ type Mutation { input: DeleteDataSourceByNodeIdInput! ): DeleteDataSourcePayload - """ - Deletes a single `Form` using a unique key. - """ + """Deletes a single `Form` using a unique key.""" deleteForm( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9108,9 +7583,7 @@ type Mutation { input: DeleteFormInput! ): DeleteFormPayload - """ - Deletes a single `Form` using its globally unique id. - """ + """Deletes a single `Form` using its globally unique id.""" deleteFormByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9118,9 +7591,7 @@ type Mutation { input: DeleteFormByNodeIdInput! ): DeleteFormPayload - """ - Deletes a single `Form` using a unique key. - """ + """Deletes a single `Form` using a unique key.""" deleteFormBySketchClassId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9128,9 +7599,7 @@ type Mutation { input: DeleteFormBySketchClassIdInput! ): DeleteFormPayload - """ - Deletes a single `Form` using a unique key. - """ + """Deletes a single `Form` using a unique key.""" deleteFormBySurveyId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9138,9 +7607,7 @@ type Mutation { input: DeleteFormBySurveyIdInput! ): DeleteFormPayload - """ - Deletes a single `FormElement` using a unique key. - """ + """Deletes a single `FormElement` using a unique key.""" deleteFormElement( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9148,9 +7615,7 @@ type Mutation { input: DeleteFormElementInput! ): DeleteFormElementPayload - """ - Deletes a single `FormElement` using its globally unique id. - """ + """Deletes a single `FormElement` using its globally unique id.""" deleteFormElementByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9158,9 +7623,7 @@ type Mutation { input: DeleteFormElementByNodeIdInput! ): DeleteFormElementPayload - """ - Deletes a single `FormLogicCondition` using a unique key. - """ + """Deletes a single `FormLogicCondition` using a unique key.""" deleteFormLogicCondition( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9168,9 +7631,7 @@ type Mutation { input: DeleteFormLogicConditionInput! ): DeleteFormLogicConditionPayload - """ - Deletes a single `FormLogicCondition` using its globally unique id. - """ + """Deletes a single `FormLogicCondition` using its globally unique id.""" deleteFormLogicConditionByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9178,9 +7639,7 @@ type Mutation { input: DeleteFormLogicConditionByNodeIdInput! ): DeleteFormLogicConditionPayload - """ - Deletes a single `FormLogicRule` using a unique key. - """ + """Deletes a single `FormLogicRule` using a unique key.""" deleteFormLogicRule( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9188,9 +7647,7 @@ type Mutation { input: DeleteFormLogicRuleInput! ): DeleteFormLogicRulePayload - """ - Deletes a single `FormLogicRule` using its globally unique id. - """ + """Deletes a single `FormLogicRule` using its globally unique id.""" deleteFormLogicRuleByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9198,9 +7655,7 @@ type Mutation { input: DeleteFormLogicRuleByNodeIdInput! ): DeleteFormLogicRulePayload - """ - Deletes a single `Forum` using a unique key. - """ + """Deletes a single `Forum` using a unique key.""" deleteForum( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9208,9 +7663,7 @@ type Mutation { input: DeleteForumInput! ): DeleteForumPayload - """ - Deletes a single `Forum` using its globally unique id. - """ + """Deletes a single `Forum` using its globally unique id.""" deleteForumByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9218,9 +7671,7 @@ type Mutation { input: DeleteForumByNodeIdInput! ): DeleteForumPayload - """ - Deletes a single `Group` using a unique key. - """ + """Deletes a single `Group` using a unique key.""" deleteGroup( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9228,9 +7679,7 @@ type Mutation { input: DeleteGroupInput! ): DeleteGroupPayload - """ - Deletes a single `Group` using its globally unique id. - """ + """Deletes a single `Group` using its globally unique id.""" deleteGroupByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9238,9 +7687,7 @@ type Mutation { input: DeleteGroupByNodeIdInput! ): DeleteGroupPayload - """ - Deletes a single `Group` using a unique key. - """ + """Deletes a single `Group` using a unique key.""" deleteGroupByProjectIdAndName( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9254,9 +7701,7 @@ type Mutation { input: DeleteOfflineTilePackageInput! ): DeleteOfflineTilePackagePayload - """ - Deletes a single `OfflineTileSetting` using a unique key. - """ + """Deletes a single `OfflineTileSetting` using a unique key.""" deleteOfflineTileSetting( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9264,9 +7709,7 @@ type Mutation { input: DeleteOfflineTileSettingInput! ): DeleteOfflineTileSettingPayload - """ - Deletes a single `OfflineTileSetting` using its globally unique id. - """ + """Deletes a single `OfflineTileSetting` using its globally unique id.""" deleteOfflineTileSettingByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9274,9 +7717,7 @@ type Mutation { input: DeleteOfflineTileSettingByNodeIdInput! ): DeleteOfflineTileSettingPayload - """ - Deletes a single `OfflineTileSetting` using a unique key. - """ + """Deletes a single `OfflineTileSetting` using a unique key.""" deleteOfflineTileSettingByProjectIdAndBasemapId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9284,9 +7725,7 @@ type Mutation { input: DeleteOfflineTileSettingByProjectIdAndBasemapIdInput! ): DeleteOfflineTileSettingPayload - """ - Deletes a single `OptionalBasemapLayer` using a unique key. - """ + """Deletes a single `OptionalBasemapLayer` using a unique key.""" deleteOptionalBasemapLayer( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9294,9 +7733,7 @@ type Mutation { input: DeleteOptionalBasemapLayerInput! ): DeleteOptionalBasemapLayerPayload - """ - Deletes a single `OptionalBasemapLayer` using its globally unique id. - """ + """Deletes a single `OptionalBasemapLayer` using its globally unique id.""" deleteOptionalBasemapLayerByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9304,9 +7741,7 @@ type Mutation { input: DeleteOptionalBasemapLayerByNodeIdInput! ): DeleteOptionalBasemapLayerPayload - """ - Deletes a single `Post` using a unique key. - """ + """Deletes a single `Post` using a unique key.""" deletePost( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9314,9 +7749,7 @@ type Mutation { input: DeletePostInput! ): DeletePostPayload - """ - Deletes a single `Post` using its globally unique id. - """ + """Deletes a single `Post` using its globally unique id.""" deletePostByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9335,9 +7768,7 @@ type Mutation { input: DeleteProjectInput! ): DeleteProjectPayload - """ - Deletes a single `ProjectInvite` using a unique key. - """ + """Deletes a single `ProjectInvite` using a unique key.""" deleteProjectInvite( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9345,9 +7776,7 @@ type Mutation { input: DeleteProjectInviteInput! ): DeleteProjectInvitePayload - """ - Deletes a single `ProjectInvite` using a unique key. - """ + """Deletes a single `ProjectInvite` using a unique key.""" deleteProjectInviteByEmailAndProjectId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9355,9 +7784,7 @@ type Mutation { input: DeleteProjectInviteByEmailAndProjectIdInput! ): DeleteProjectInvitePayload - """ - Deletes a single `ProjectInvite` using its globally unique id. - """ + """Deletes a single `ProjectInvite` using its globally unique id.""" deleteProjectInviteByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9365,9 +7792,7 @@ type Mutation { input: DeleteProjectInviteByNodeIdInput! ): DeleteProjectInvitePayload - """ - Deletes a single `ProjectInviteGroup` using a unique key. - """ + """Deletes a single `ProjectInviteGroup` using a unique key.""" deleteProjectInviteGroupByInviteIdAndGroupId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9375,9 +7800,7 @@ type Mutation { input: DeleteProjectInviteGroupByInviteIdAndGroupIdInput! ): DeleteProjectInviteGroupPayload - """ - Deletes a single `ProjectsSharedBasemap` using a unique key. - """ + """Deletes a single `ProjectsSharedBasemap` using a unique key.""" deleteProjectsSharedBasemapByBasemapIdAndProjectId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9385,9 +7808,7 @@ type Mutation { input: DeleteProjectsSharedBasemapByBasemapIdAndProjectIdInput! ): DeleteProjectsSharedBasemapPayload - """ - Deletes a single `Sketch` using a unique key. - """ + """Deletes a single `Sketch` using a unique key.""" deleteSketch( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9395,9 +7816,7 @@ type Mutation { input: DeleteSketchInput! ): DeleteSketchPayload - """ - Deletes a single `Sketch` using its globally unique id. - """ + """Deletes a single `Sketch` using its globally unique id.""" deleteSketchByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9405,9 +7824,7 @@ type Mutation { input: DeleteSketchByNodeIdInput! ): DeleteSketchPayload - """ - Deletes a single `SketchClass` using a unique key. - """ + """Deletes a single `SketchClass` using a unique key.""" deleteSketchClass( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9415,9 +7832,7 @@ type Mutation { input: DeleteSketchClassInput! ): DeleteSketchClassPayload - """ - Deletes a single `SketchClass` using a unique key. - """ + """Deletes a single `SketchClass` using a unique key.""" deleteSketchClassByFormElementId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9425,9 +7840,7 @@ type Mutation { input: DeleteSketchClassByFormElementIdInput! ): DeleteSketchClassPayload - """ - Deletes a single `SketchClass` using its globally unique id. - """ + """Deletes a single `SketchClass` using its globally unique id.""" deleteSketchClassByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9435,9 +7848,7 @@ type Mutation { input: DeleteSketchClassByNodeIdInput! ): DeleteSketchClassPayload - """ - Deletes a single `SketchFolder` using a unique key. - """ + """Deletes a single `SketchFolder` using a unique key.""" deleteSketchFolder( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9445,9 +7856,7 @@ type Mutation { input: DeleteSketchFolderInput! ): DeleteSketchFolderPayload - """ - Deletes a single `SketchFolder` using its globally unique id. - """ + """Deletes a single `SketchFolder` using its globally unique id.""" deleteSketchFolderByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9457,18 +7866,14 @@ type Mutation { """ Deletes one or more Sketch or SketchFolders - + Returns an updatedCollections property which should be used to update the updatedAt property on related collections so that correct cache keys are used when requesting reports. """ - deleteSketchTocItems( - items: [UpdateTocItemParentInput]! - ): DeleteSketchTocItemsResults + deleteSketchTocItems(items: [UpdateTocItemParentInput]!): DeleteSketchTocItemsResults - """ - Deletes a single `Survey` using a unique key. - """ + """Deletes a single `Survey` using a unique key.""" deleteSurvey( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9476,9 +7881,7 @@ type Mutation { input: DeleteSurveyInput! ): DeleteSurveyPayload - """ - Deletes a single `Survey` using its globally unique id. - """ + """Deletes a single `Survey` using its globally unique id.""" deleteSurveyByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9486,9 +7889,7 @@ type Mutation { input: DeleteSurveyByNodeIdInput! ): DeleteSurveyPayload - """ - Deletes a single `SurveyInvite` using a unique key. - """ + """Deletes a single `SurveyInvite` using a unique key.""" deleteSurveyInvite( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9496,9 +7897,7 @@ type Mutation { input: DeleteSurveyInviteInput! ): DeleteSurveyInvitePayload - """ - Deletes a single `SurveyInvite` using a unique key. - """ + """Deletes a single `SurveyInvite` using a unique key.""" deleteSurveyInviteByEmail( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9506,9 +7905,7 @@ type Mutation { input: DeleteSurveyInviteByEmailInput! ): DeleteSurveyInvitePayload - """ - Deletes a single `SurveyInvite` using a unique key. - """ + """Deletes a single `SurveyInvite` using a unique key.""" deleteSurveyInviteByEmailAndSurveyId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9516,9 +7913,7 @@ type Mutation { input: DeleteSurveyInviteByEmailAndSurveyIdInput! ): DeleteSurveyInvitePayload - """ - Deletes a single `SurveyInvite` using its globally unique id. - """ + """Deletes a single `SurveyInvite` using its globally unique id.""" deleteSurveyInviteByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9526,9 +7921,7 @@ type Mutation { input: DeleteSurveyInviteByNodeIdInput! ): DeleteSurveyInvitePayload - """ - Deletes a single `SurveyInvitedGroup` using a unique key. - """ + """Deletes a single `SurveyInvitedGroup` using a unique key.""" deleteSurveyInvitedGroupBySurveyIdAndGroupId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9536,9 +7929,7 @@ type Mutation { input: DeleteSurveyInvitedGroupBySurveyIdAndGroupIdInput! ): DeleteSurveyInvitedGroupPayload - """ - Deletes a single `SurveyResponse` using a unique key. - """ + """Deletes a single `SurveyResponse` using a unique key.""" deleteSurveyResponse( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9546,9 +7937,7 @@ type Mutation { input: DeleteSurveyResponseInput! ): DeleteSurveyResponsePayload - """ - Deletes a single `SurveyResponse` using its globally unique id. - """ + """Deletes a single `SurveyResponse` using its globally unique id.""" deleteSurveyResponseByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9568,9 +7957,7 @@ type Mutation { input: DeleteTableOfContentsBranchInput! ): DeleteTableOfContentsBranchPayload - """ - Deletes a single `Topic` using a unique key. - """ + """Deletes a single `Topic` using a unique key.""" deleteTopic( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9578,9 +7965,7 @@ type Mutation { input: DeleteTopicInput! ): DeleteTopicPayload - """ - Deletes a single `Topic` using its globally unique id. - """ + """Deletes a single `Topic` using its globally unique id.""" deleteTopicByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9594,9 +7979,7 @@ type Mutation { input: DenyParticipantInput! ): DenyParticipantPayload - """ - Ban a user from posting in the discussion forum - """ + """Ban a user from posting in the discussion forum""" disableForumPosting( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9653,9 +8036,7 @@ type Mutation { pixelRatio: Int! projectId: Int! - """ - Provide the lowest-dpi version of the sprite - """ + """Provide the lowest-dpi version of the sprite""" smallestImage: Upload! type: String width: Int! @@ -9678,13 +8059,14 @@ type Mutation { ): ImportArcgisServicesPayload """ - Adds current user to the list of participants for a project, sharing their - profile with administrators in user listings. Their profile will also be shared + Adds current user to the list of participants for a project, sharing their + profile with administrators in user listings. Their profile will also be shared in public or group discussion forum posts. - + Clients will need to determine when/how to show prompts to join a project based on activity that minimizes annoyance when browsing among projects but also makes sure users are visible to admins so that they may gain user group permissions. + """ joinProject( """ @@ -9700,11 +8082,12 @@ type Mutation { ): LabelForFormElementValuePayload """ - Turns off profile sharing in this project. User privacy choices should be + Turns off profile sharing in this project. User privacy choices should be respected, and profile information should disappear from the admin users lists, - forum posts, and any other shared content. In the forum a balance will need to - be made to hide their posts entirely since anonymous content could be malicious, + forum posts, and any other shared content. In the forum a balance will need to + be made to hide their posts entirely since anonymous content could be malicious, and maintain a historical record of discussions. + """ leaveProject( """ @@ -9714,10 +8097,11 @@ type Mutation { ): LeaveProjectPayload """ - Project administrators cannot edit survey responses and survey respondants - cannot edit responses after they have been submitted. Admins can use this - mutation to put a response into draft mode so that they can be updated and + Project administrators cannot edit survey responses and survey respondants + cannot edit responses after they have been submitted. Admins can use this + mutation to put a response into draft mode so that they can be updated and resubmitted by the respondant. + """ makeResponseDraft( """ @@ -9752,8 +8136,9 @@ type Mutation { """ Mark the topic as read by the current session user. Used to avoid sending email - notifications to users who have already read a topic. Call when loading a topic, + notifications to users who have already read a topic. Call when loading a topic, and whenever new posts are shown. + """ markTopicAsRead( """ @@ -9807,6 +8192,7 @@ type Mutation { """ Remove a SketchClass from the list of valid children for a Collection. + """ removeValidChildSketchClass( """ @@ -9823,6 +8209,7 @@ type Mutation { """ Remove participant admin privileges. + """ revokeAdminAccess( """ @@ -9833,6 +8220,7 @@ type Mutation { """ Send all UNSENT invites in the current project. + """ sendAllProjectInvites( """ @@ -9849,6 +8237,7 @@ type Mutation { """ Send a list of project invites identified by their id. + """ sendProjectInvites( """ @@ -9862,29 +8251,17 @@ type Mutation { Returns the same inviteId if successful. """ sendSurveyInviteReminder( - """ - ID of survey invite - """ + """ID of survey invite""" inviteId: Int! ): Int - setFormElementBackground( - backgroundColor: String! - backgroundHeight: Int! - backgroundPalette: [String]! - backgroundUrl: String! - backgroundWidth: Int! - downloadUrl: String! - id: Int! - secondaryColor: String! - unsplashAuthorName: String! - unsplashAuthorUrl: String! - ): FormElement! + setFormElementBackground(backgroundColor: String!, backgroundHeight: Int!, backgroundPalette: [String]!, backgroundUrl: String!, backgroundWidth: Int!, downloadUrl: String!, id: Int!, secondaryColor: String!, unsplashAuthorName: String!, unsplashAuthorUrl: String!): FormElement! """ Sets the positions of all elements in a form at once. Any missing element ids from the input will be positioned at the end of the form. - + Use this instead of trying to manage the position of form elements individually. + """ setFormElementOrder( """ @@ -9902,6 +8279,7 @@ type Mutation { """ Set the order in which discussion forums will be displayed. Provide a list of forum IDs in the correct order. Missing ids will be added to the end of the list. + """ setForumOrder( """ @@ -9915,6 +8293,7 @@ type Mutation { still appear in the client with the missing content, and should link to the Community Guidelines for why the post may have been hidden. If admins want all evidence of the post removed they must delete it. + """ setPostHiddenByModerator( """ @@ -9936,6 +8315,7 @@ type Mutation { """ Admins can use this mutation to place topics at the top of the forum listing. + """ setTopicSticky( """ @@ -9943,16 +8323,12 @@ type Mutation { """ input: SetTopicStickyInput! ): SetTopicStickyPayload - setTranslatedProp( - id: Int! - propName: String! - translations: [TranslatedPropInput!]! - typeName: String! - ): setTranslatedPropResult! + setTranslatedProp(id: Int!, propName: String!, translations: [TranslatedPropInput!]!, typeName: String!): setTranslatedPropResult! """ Sets the list of groups that the given user belongs to. Will clear all other group memberships in the project. Available only to admins. + """ setUserGroups( """ @@ -9961,9 +8337,7 @@ type Mutation { input: SetUserGroupsInput! ): SetUserGroupsPayload - """ - Superusers only. Promote a sprite to be globally available. - """ + """Superusers only. Promote a sprite to be globally available.""" shareSprite( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -9986,12 +8360,6 @@ type Mutation { """ input: SubmitDataUploadInput! ): SubmitDataUploadPayload - tableOfContentsItemsPrimaryDownloadUrl( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: TableOfContentsItemsPrimaryDownloadUrlInput! - ): TableOfContentsItemsPrimaryDownloadUrlPayload """ Toggle admin access for the given project and user. User must have already @@ -10004,9 +8372,7 @@ type Mutation { input: ToggleAdminAccessInput! ): ToggleAdminAccessPayload - """ - Ban a user from posting in the discussion forum - """ + """Ban a user from posting in the discussion forum""" toggleForumPostingBan( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10026,9 +8392,7 @@ type Mutation { input: ToggleResponsesPracticeInput! ): ToggleResponsesPracticePayload - """ - Updates a single `Acl` using a unique key and a patch. - """ + """Updates a single `Acl` using a unique key and a patch.""" updateAcl( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10036,9 +8400,7 @@ type Mutation { input: UpdateAclInput! ): UpdateAclPayload - """ - Updates a single `Acl` using a unique key and a patch. - """ + """Updates a single `Acl` using a unique key and a patch.""" updateAclByBasemapId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10046,9 +8408,7 @@ type Mutation { input: UpdateAclByBasemapIdInput! ): UpdateAclPayload - """ - Updates a single `Acl` using its globally unique id and a patch. - """ + """Updates a single `Acl` using its globally unique id and a patch.""" updateAclByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10056,9 +8416,7 @@ type Mutation { input: UpdateAclByNodeIdInput! ): UpdateAclPayload - """ - Updates a single `Acl` using a unique key and a patch. - """ + """Updates a single `Acl` using a unique key and a patch.""" updateAclBySketchClassId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10066,9 +8424,7 @@ type Mutation { input: UpdateAclBySketchClassIdInput! ): UpdateAclPayload - """ - Updates a single `Acl` using a unique key and a patch. - """ + """Updates a single `Acl` using a unique key and a patch.""" updateAclByTableOfContentsItemId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10076,9 +8432,7 @@ type Mutation { input: UpdateAclByTableOfContentsItemIdInput! ): UpdateAclPayload - """ - Updates a single `Basemap` using a unique key and a patch. - """ + """Updates a single `Basemap` using a unique key and a patch.""" updateBasemap( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10086,9 +8440,7 @@ type Mutation { input: UpdateBasemapInput! ): UpdateBasemapPayload - """ - Updates a single `Basemap` using its globally unique id and a patch. - """ + """Updates a single `Basemap` using its globally unique id and a patch.""" updateBasemapByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10102,9 +8454,7 @@ type Mutation { input: UpdateBasemapOfflineTileSettingsInput! ): UpdateBasemapOfflineTileSettingsPayload - """ - Updates a single `CommunityGuideline` using a unique key and a patch. - """ + """Updates a single `CommunityGuideline` using a unique key and a patch.""" updateCommunityGuideline( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10128,9 +8478,7 @@ type Mutation { input: UpdateDataHostingQuotaInput! ): UpdateDataHostingQuotaPayload - """ - Updates a single `DataLayer` using a unique key and a patch. - """ + """Updates a single `DataLayer` using a unique key and a patch.""" updateDataLayer( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10138,9 +8486,7 @@ type Mutation { input: UpdateDataLayerInput! ): UpdateDataLayerPayload - """ - Updates a single `DataLayer` using a unique key and a patch. - """ + """Updates a single `DataLayer` using a unique key and a patch.""" updateDataLayerByInteractivitySettingsId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10148,9 +8494,7 @@ type Mutation { input: UpdateDataLayerByInteractivitySettingsIdInput! ): UpdateDataLayerPayload - """ - Updates a single `DataLayer` using its globally unique id and a patch. - """ + """Updates a single `DataLayer` using its globally unique id and a patch.""" updateDataLayerByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10158,9 +8502,7 @@ type Mutation { input: UpdateDataLayerByNodeIdInput! ): UpdateDataLayerPayload - """ - Updates a single `DataSource` using a unique key and a patch. - """ + """Updates a single `DataSource` using a unique key and a patch.""" updateDataSource( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10188,9 +8530,7 @@ type Mutation { input: UpdateEmailNotificationPreferenceByUserIdInput! ): UpdateEmailNotificationPreferencePayload - """ - Updates a single `Form` using a unique key and a patch. - """ + """Updates a single `Form` using a unique key and a patch.""" updateForm( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10198,9 +8538,7 @@ type Mutation { input: UpdateFormInput! ): UpdateFormPayload - """ - Updates a single `Form` using its globally unique id and a patch. - """ + """Updates a single `Form` using its globally unique id and a patch.""" updateFormByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10208,9 +8546,7 @@ type Mutation { input: UpdateFormByNodeIdInput! ): UpdateFormPayload - """ - Updates a single `Form` using a unique key and a patch. - """ + """Updates a single `Form` using a unique key and a patch.""" updateFormBySketchClassId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10218,9 +8554,7 @@ type Mutation { input: UpdateFormBySketchClassIdInput! ): UpdateFormPayload - """ - Updates a single `Form` using a unique key and a patch. - """ + """Updates a single `Form` using a unique key and a patch.""" updateFormBySurveyId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10228,9 +8562,7 @@ type Mutation { input: UpdateFormBySurveyIdInput! ): UpdateFormPayload - """ - Updates a single `FormElement` using a unique key and a patch. - """ + """Updates a single `FormElement` using a unique key and a patch.""" updateFormElement( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10248,9 +8580,7 @@ type Mutation { input: UpdateFormElementByNodeIdInput! ): UpdateFormElementPayload - """ - Updates a single `FormLogicCondition` using a unique key and a patch. - """ + """Updates a single `FormLogicCondition` using a unique key and a patch.""" updateFormLogicCondition( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10268,9 +8598,7 @@ type Mutation { input: UpdateFormLogicConditionByNodeIdInput! ): UpdateFormLogicConditionPayload - """ - Updates a single `FormLogicRule` using a unique key and a patch. - """ + """Updates a single `FormLogicRule` using a unique key and a patch.""" updateFormLogicRule( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10288,9 +8616,7 @@ type Mutation { input: UpdateFormLogicRuleByNodeIdInput! ): UpdateFormLogicRulePayload - """ - Updates a single `Forum` using a unique key and a patch. - """ + """Updates a single `Forum` using a unique key and a patch.""" updateForum( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10298,9 +8624,7 @@ type Mutation { input: UpdateForumInput! ): UpdateForumPayload - """ - Updates a single `Forum` using its globally unique id and a patch. - """ + """Updates a single `Forum` using its globally unique id and a patch.""" updateForumByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10308,9 +8632,7 @@ type Mutation { input: UpdateForumByNodeIdInput! ): UpdateForumPayload - """ - Updates a single `Group` using a unique key and a patch. - """ + """Updates a single `Group` using a unique key and a patch.""" updateGroup( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10318,9 +8640,7 @@ type Mutation { input: UpdateGroupInput! ): UpdateGroupPayload - """ - Updates a single `Group` using its globally unique id and a patch. - """ + """Updates a single `Group` using its globally unique id and a patch.""" updateGroupByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10328,9 +8648,7 @@ type Mutation { input: UpdateGroupByNodeIdInput! ): UpdateGroupPayload - """ - Updates a single `Group` using a unique key and a patch. - """ + """Updates a single `Group` using a unique key and a patch.""" updateGroupByProjectIdAndName( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10364,9 +8682,7 @@ type Mutation { input: UpdateMapboxSecretKeyInput! ): UpdateMapboxSecretKeyPayload - """ - Updates a single `OfflineTileSetting` using a unique key and a patch. - """ + """Updates a single `OfflineTileSetting` using a unique key and a patch.""" updateOfflineTileSetting( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10384,9 +8700,7 @@ type Mutation { input: UpdateOfflineTileSettingByNodeIdInput! ): UpdateOfflineTileSettingPayload - """ - Updates a single `OfflineTileSetting` using a unique key and a patch. - """ + """Updates a single `OfflineTileSetting` using a unique key and a patch.""" updateOfflineTileSettingByProjectIdAndBasemapId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10416,6 +8730,7 @@ type Mutation { """ Updates the contents of the post. Can only be used by the author for 5 minutes after posting. + """ updatePost( """ @@ -10424,9 +8739,7 @@ type Mutation { input: UpdatePostInput! ): UpdatePostPayload - """ - Updates a single `Profile` using a unique key and a patch. - """ + """Updates a single `Profile` using a unique key and a patch.""" updateProfileByUserId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10434,9 +8747,7 @@ type Mutation { input: UpdateProfileByUserIdInput! ): UpdateProfilePayload - """ - Updates a single `Project` using a unique key and a patch. - """ + """Updates a single `Project` using a unique key and a patch.""" updateProject( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10444,9 +8755,7 @@ type Mutation { input: UpdateProjectInput! ): UpdateProjectPayload - """ - Updates a single `Project` using its globally unique id and a patch. - """ + """Updates a single `Project` using its globally unique id and a patch.""" updateProjectByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10454,9 +8763,7 @@ type Mutation { input: UpdateProjectByNodeIdInput! ): UpdateProjectPayload - """ - Updates a single `Project` using a unique key and a patch. - """ + """Updates a single `Project` using a unique key and a patch.""" updateProjectBySlug( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10470,9 +8777,7 @@ type Mutation { input: UpdateProjectInviteInput! ): UpdateProjectInvitePayload - """ - Updates a single `ProjectInviteGroup` using a unique key and a patch. - """ + """Updates a single `ProjectInviteGroup` using a unique key and a patch.""" updateProjectInviteGroupByInviteIdAndGroupId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10496,7 +8801,7 @@ type Mutation { function again on userGeom. This ensures the value conforms to the project's rules, and also benefits the user in that they need not submit a huge geometry to the server. - + When updating a sketch, be sure to use the Sketch.parentCollection association to update the client graphql cache with an up to date updatedAt timestamp. This will ensure a correct cache key is used when @@ -10505,25 +8810,17 @@ type Mutation { updateSketch( id: Int! - """ - Name for the sketch. Required. - """ + """Name for the sketch. Required.""" name: String! - """ - Form element data - """ + """Form element data""" properties: JSON! - """ - Sketch as drawn by the user. If unchanged this can be omitted - """ + """Sketch as drawn by the user. If unchanged this can be omitted""" userGeom: GeoJSON ): Sketch - """ - Updates a single `SketchClass` using a unique key and a patch. - """ + """Updates a single `SketchClass` using a unique key and a patch.""" updateSketchClass( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10531,9 +8828,7 @@ type Mutation { input: UpdateSketchClassInput! ): UpdateSketchClassPayload - """ - Updates a single `SketchClass` using a unique key and a patch. - """ + """Updates a single `SketchClass` using a unique key and a patch.""" updateSketchClassByFormElementId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10551,14 +8846,10 @@ type Mutation { input: UpdateSketchClassByNodeIdInput! ): UpdateSketchClassPayload - """ - Admin mutation for updating the mapbox gl style for a sketch class - """ + """Admin mutation for updating the mapbox gl style for a sketch class""" updateSketchClassMapboxGLStyle(sketchClassId: Int!, style: JSON): SketchClass! - """ - Updates a single `SketchFolder` using a unique key and a patch. - """ + """Updates a single `SketchFolder` using a unique key and a patch.""" updateSketchFolder( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10586,20 +8877,14 @@ type Mutation { Create to respond to drag & drop actions in the sketch table of contents. Can assign a folder_id or collection_id to one or multiple Sketches or SketchFolders. - + Returns an updatedCollections property which should be used to update the updatedAt property on related collections so that correct cache keys are used when requesting reports. """ - updateSketchTocItemParent( - collectionId: Int - folderId: Int - tocItems: [UpdateTocItemParentInput]! - ): UpdateSketchTocItemParentResults + updateSketchTocItemParent(collectionId: Int, folderId: Int, tocItems: [UpdateTocItemParentInput]!): UpdateSketchTocItemParentResults - """ - Updates a single `Survey` using a unique key and a patch. - """ + """Updates a single `Survey` using a unique key and a patch.""" updateSurvey( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10607,9 +8892,7 @@ type Mutation { input: UpdateSurveyInput! ): UpdateSurveyPayload - """ - Updates a single `Survey` using its globally unique id and a patch. - """ + """Updates a single `Survey` using its globally unique id and a patch.""" updateSurveyByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10617,9 +8900,7 @@ type Mutation { input: UpdateSurveyByNodeIdInput! ): UpdateSurveyPayload - """ - Updates a single `SurveyInvite` using a unique key and a patch. - """ + """Updates a single `SurveyInvite` using a unique key and a patch.""" updateSurveyInvite( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10627,9 +8908,7 @@ type Mutation { input: UpdateSurveyInviteInput! ): UpdateSurveyInvitePayload - """ - Updates a single `SurveyInvite` using a unique key and a patch. - """ + """Updates a single `SurveyInvite` using a unique key and a patch.""" updateSurveyInviteByEmail( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10637,9 +8916,7 @@ type Mutation { input: UpdateSurveyInviteByEmailInput! ): UpdateSurveyInvitePayload - """ - Updates a single `SurveyInvite` using a unique key and a patch. - """ + """Updates a single `SurveyInvite` using a unique key and a patch.""" updateSurveyInviteByEmailAndSurveyId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10663,8 +8940,9 @@ type Mutation { any users that are added to the group. When removing a group, the system will delete invites for any user that is no longer in an invited group. *Clients should warn admins of this behavior when removing groups for an active survey*. - + The list of invited groups can be accessed via `Survey.invitedGroups`. + """ updateSurveyInvitedGroups( """ @@ -10673,9 +8951,7 @@ type Mutation { input: UpdateSurveyInvitedGroupsInput! ): UpdateSurveyInvitedGroupsPayload - """ - Updates a single `SurveyResponse` using a unique key and a patch. - """ + """Updates a single `SurveyResponse` using a unique key and a patch.""" updateSurveyResponse( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10693,9 +8969,7 @@ type Mutation { input: UpdateSurveyResponseByNodeIdInput! ): UpdateSurveyResponsePayload - """ - Updates a single `TableOfContentsItem` using a unique key and a patch. - """ + """Updates a single `TableOfContentsItem` using a unique key and a patch.""" updateTableOfContentsItem( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10703,9 +8977,7 @@ type Mutation { input: UpdateTableOfContentsItemInput! ): UpdateTableOfContentsItemPayload - """ - Updates a single `TableOfContentsItem` using a unique key and a patch. - """ + """Updates a single `TableOfContentsItem` using a unique key and a patch.""" updateTableOfContentsItemByDataLayerId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10729,9 +9001,7 @@ type Mutation { input: UpdateTableOfContentsItemChildrenInput! ): UpdateTableOfContentsItemChildrenPayload - """ - Updates a single `Topic` using a unique key and a patch. - """ + """Updates a single `Topic` using a unique key and a patch.""" updateTopic( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10739,9 +9009,7 @@ type Mutation { input: UpdateTopicInput! ): UpdateTopicPayload - """ - Updates a single `Topic` using its globally unique id and a patch. - """ + """Updates a single `Topic` using its globally unique id and a patch.""" updateTopicByNodeId( """ The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. @@ -10755,42 +9023,26 @@ type Mutation { input: UpdateZIndexesInput! ): UpdateZIndexesPayload - """ - Use to upload pdf documents for use with the Consent FormElement - """ - uploadConsentDocument( - document: Upload! - formElementId: Int! - version: Int! - ): FormElement! + """Use to upload pdf documents for use with the Consent FormElement""" + uploadConsentDocument(document: Upload!, formElementId: Int!, version: Int!): FormElement! - """ - Upload mapbox-gl-style documents for use as basemaps - """ + """Upload mapbox-gl-style documents for use as basemaps""" uploadStyle( - """ - Existing basemap ID, if updating - """ + """Existing basemap ID, if updating""" id: Int - """ - Name for the basemap - """ + """Name for the basemap""" name: String! projectId: Int! - """ - Style json file - """ + """Style json file""" style: JSON! surveysOnly: Boolean thumb: Upload! ): Basemap! } -""" -An object with a globally unique `ID`. -""" +"""An object with a globally unique `ID`.""" interface Node { """ A globally unique identifier. Can be used in various places throughout the system to identify this single value. @@ -10802,16 +9054,12 @@ type OfflineSourceDetails { dataSourceUrl: String! templateUrl: String! - """ - Whether a tile packages is available for download - """ + """Whether a tile packages is available for download""" tilePackages: [OfflineTilePackage!]! type: OfflineTilePackageSourceType! } -""" -Provides information on resources necessary to use a basemap offline -""" +"""Provides information on resources necessary to use a basemap offline""" type OfflineSupportInformation { hasUncacheableSources: Boolean! id: ID! @@ -10838,14 +9086,10 @@ type OfflineTilePackage implements Node { nodeId: ID! originalUrlTemplate: String! - """ - Can be used to download a tilepackage (if permitted) - """ + """Can be used to download a tilepackage (if permitted)""" presignedUrl: String! - """ - Reads a single `Project` that is related to this `OfflineTilePackage`. - """ + """Reads a single `Project` that is related to this `OfflineTilePackage`.""" project: Project projectId: Int! region: GeometryPolygon! @@ -10860,34 +9104,24 @@ A condition to be used against `OfflineTilePackage` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input OfflineTilePackageCondition { - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: UUID - """ - Checks for equality with the object’s `projectId` field. - """ + """Checks for equality with the object’s `projectId` field.""" projectId: Int } -""" -A connection to a list of `OfflineTilePackage` values. -""" +"""A connection to a list of `OfflineTilePackage` values.""" type OfflineTilePackagesConnection { """ A list of edges which contains the `OfflineTilePackage` and cursor to aid in pagination. """ edges: [OfflineTilePackagesEdge!]! - """ - A list of `OfflineTilePackage` objects. - """ + """A list of `OfflineTilePackage` objects.""" nodes: [OfflineTilePackage!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! """ @@ -10896,24 +9130,16 @@ type OfflineTilePackagesConnection { totalCount: Int! } -""" -A `OfflineTilePackage` edge in the connection. -""" +"""A `OfflineTilePackage` edge in the connection.""" type OfflineTilePackagesEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `OfflineTilePackage` at the end of the edge. - """ + """The `OfflineTilePackage` at the end of the edge.""" node: OfflineTilePackage! } -""" -Methods to use when ordering `OfflineTilePackage`. -""" +"""Methods to use when ordering `OfflineTilePackage`.""" enum OfflineTilePackagesOrderBy { ID_ASC ID_DESC @@ -10939,9 +9165,7 @@ enum OfflineTilePackageStatus { } type OfflineTileSetting implements Node { - """ - Reads a single `Basemap` that is related to this `OfflineTileSetting`. - """ + """Reads a single `Basemap` that is related to this `OfflineTileSetting`.""" basemap: Basemap basemapId: Int id: Int! @@ -10953,9 +9177,7 @@ type OfflineTileSetting implements Node { """ nodeId: ID! - """ - Reads a single `Project` that is related to this `OfflineTileSetting`. - """ + """Reads a single `Project` that is related to this `OfflineTileSetting`.""" project: Project projectId: Int! region: GeometryPolygon! @@ -10966,25 +9188,17 @@ A condition to be used against `OfflineTileSetting` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input OfflineTileSettingCondition { - """ - Checks for equality with the object’s `basemapId` field. - """ + """Checks for equality with the object’s `basemapId` field.""" basemapId: Int - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `projectId` field. - """ + """Checks for equality with the object’s `projectId` field.""" projectId: Int } -""" -An input for mutations affecting `OfflineTileSetting` -""" +"""An input for mutations affecting `OfflineTileSetting`""" input OfflineTileSettingInput { basemapId: Int id: Int @@ -11006,9 +9220,7 @@ input OfflineTileSettingPatch { region: GeoJSON } -""" -Methods to use when ordering `OfflineTileSetting`. -""" +"""Methods to use when ordering `OfflineTileSetting`.""" enum OfflineTileSettingsOrderBy { BASEMAP_ID_ASC BASEMAP_ID_DESC @@ -11023,6 +9235,7 @@ enum OfflineTileSettingsOrderBy { """ Available only for MapBox GL Style-based basemaps. Specifies optional components of the basemap that can be shown or hidden. + """ type OptionalBasemapLayer implements Node { """ @@ -11042,19 +9255,13 @@ type OptionalBasemapLayer implements Node { groupType: OptionalBasemapLayersGroupType! id: Int! - """ - IDs for layers in the gl style that will be toggled by this option. - """ + """IDs for layers in the gl style that will be toggled by this option.""" layers: [String]! - """ - JSON representation of a ProseMirror document with layer metadata. - """ + """JSON representation of a ProseMirror document with layer metadata.""" metadata: JSON - """ - Label that will be given in the UI - """ + """Label that will be given in the UI""" name: String! """ @@ -11069,20 +9276,14 @@ A condition to be used against `OptionalBasemapLayer` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input OptionalBasemapLayerCondition { - """ - Checks for equality with the object’s `basemapId` field. - """ + """Checks for equality with the object’s `basemapId` field.""" basemapId: Int - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int } -""" -An input for mutations affecting `OptionalBasemapLayer` -""" +"""An input for mutations affecting `OptionalBasemapLayer`""" input OptionalBasemapLayerInput { basemapId: Int! defaultVisibility: Boolean @@ -11097,19 +9298,13 @@ input OptionalBasemapLayerInput { groupType: OptionalBasemapLayersGroupType id: Int - """ - IDs for layers in the gl style that will be toggled by this option. - """ + """IDs for layers in the gl style that will be toggled by this option.""" layers: [String] - """ - JSON representation of a ProseMirror document with layer metadata. - """ + """JSON representation of a ProseMirror document with layer metadata.""" metadata: JSON - """ - Label that will be given in the UI - """ + """Label that will be given in the UI""" name: String! options: JSON } @@ -11131,19 +9326,13 @@ input OptionalBasemapLayerPatch { groupType: OptionalBasemapLayersGroupType id: Int - """ - IDs for layers in the gl style that will be toggled by this option. - """ + """IDs for layers in the gl style that will be toggled by this option.""" layers: [String] - """ - JSON representation of a ProseMirror document with layer metadata. - """ + """JSON representation of a ProseMirror document with layer metadata.""" metadata: JSON - """ - Label that will be given in the UI - """ + """Label that will be given in the UI""" name: String options: JSON } @@ -11154,9 +9343,7 @@ enum OptionalBasemapLayersGroupType { SELECT } -""" -Methods to use when ordering `OptionalBasemapLayer`. -""" +"""Methods to use when ordering `OptionalBasemapLayer`.""" enum OptionalBasemapLayersOrderBy { BASEMAP_ID_ASC BASEMAP_ID_DESC @@ -11173,28 +9360,18 @@ type OutstandingSurveyInvites { token: String! } -""" -Information about pagination in a connection. -""" +"""Information about pagination in a connection.""" type PageInfo { - """ - When paginating forwards, the cursor to continue. - """ + """When paginating forwards, the cursor to continue.""" endCursor: Cursor - """ - When paginating forwards, are there more items? - """ + """When paginating forwards, are there more items?""" hasNextPage: Boolean! - """ - When paginating backwards, are there more items? - """ + """When paginating backwards, are there more items?""" hasPreviousPage: Boolean! - """ - When paginating backwards, the cursor to continue. - """ + """When paginating backwards, the cursor to continue.""" startCursor: Cursor } @@ -11215,39 +9392,28 @@ type Post implements Node { """ User Profile of the author. If a user has not shared their profile the post message will be hidden. + """ authorProfile: Profile blurb: String bookmarkAttachmentIds: [UUID]! createdAt: Datetime! - """ - Reads and enables pagination through a set of `FileUpload`. - """ + """Reads and enables pagination through a set of `FileUpload`.""" fileUploads( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [FileUpload!] - """ - Reads and enables pagination through a set of `FileUpload`. - """ + """Reads and enables pagination through a set of `FileUpload`.""" fileUploadsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -11255,14 +9421,10 @@ type Post implements Node { """ condition: FileUploadCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -11271,9 +9433,7 @@ type Post implements Node { """ offset: Int - """ - The method to use when ordering `FileUpload`. - """ + """The method to use when ordering `FileUpload`.""" orderBy: [FileUploadsOrderBy!] = [PRIMARY_KEY_ASC] ): FileUploadsConnection! @@ -11286,29 +9446,24 @@ type Post implements Node { html: String! id: Int! - """ - Reads and enables pagination through a set of `MapBookmark`. - """ + """Reads and enables pagination through a set of `MapBookmark`.""" mapBookmarks( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [MapBookmark!] """ - Message contents of the post as JSON for use with DraftJS. - - Message may be null if user is not currently sharing their profile, in which - case the client should explain such. - - Message could also be null if `hiddenByModerator` is set. In that case the + Message contents of the post as JSON for use with DraftJS. + + Message may be null if user is not currently sharing their profile, in which + case the client should explain such. + + Message could also be null if `hiddenByModerator` is set. In that case the client should explain that the post violated the `CommunityGuidelines`, if set. + """ message: JSON @@ -11319,9 +9474,7 @@ type Post implements Node { orderedAttachmentIds: [String] sketchIds: [Int] - """ - Reads a single `Topic` that is related to this `Post`. - """ + """Reads a single `Topic` that is related to this `Post`.""" topic: Topic topicId: Int! } @@ -11330,60 +9483,40 @@ type Post implements Node { A condition to be used against `Post` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input PostCondition { - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `topicId` field. - """ + """Checks for equality with the object’s `topicId` field.""" topicId: Int } -""" -A connection to a list of `Post` values. -""" +"""A connection to a list of `Post` values.""" type PostsConnection { """ A list of edges which contains the `Post` and cursor to aid in pagination. """ edges: [PostsEdge!]! - """ - A list of `Post` objects. - """ + """A list of `Post` objects.""" nodes: [Post!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `Post` you could get from the connection. - """ + """The count of *all* `Post` you could get from the connection.""" totalCount: Int! } -""" -A `Post` edge in the connection. -""" +"""A `Post` edge in the connection.""" type PostsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `Post` at the end of the edge. - """ + """The `Post` at the end of the edge.""" node: Post! } -""" -Methods to use when ordering `Post`. -""" +"""Methods to use when ordering `Post`.""" enum PostsOrderBy { ID_ASC ID_DESC @@ -11395,13 +9528,14 @@ enum PostsOrderBy { } """ -Personal information that users have contributed. This information is only +Personal information that users have contributed. This information is only accessible directly to admins on projects where the user has chosen to share the information (via the `joinProject()` mutation). Regular SeaSketch users can access user profiles thru accessor fields on shared -content like forum posts if they have been shared, but regular users have no +content like forum posts if they have been shared, but regular users have no means of listing out all profiles in bulk. + """ type Profile { affiliations: String @@ -11410,9 +9544,7 @@ type Profile { nickname: String picture: String - """ - Reads a single `User` that is related to this `Profile`. - """ + """Reads a single `User` that is related to this `Profile`.""" user: User userId: Int! } @@ -11429,49 +9561,33 @@ input ProfilePatch { userId: Int } -""" -A connection to a list of `Profile` values. -""" +"""A connection to a list of `Profile` values.""" type ProfilesConnection { """ A list of edges which contains the `Profile` and cursor to aid in pagination. """ edges: [ProfilesEdge!]! - """ - A list of `Profile` objects. - """ + """A list of `Profile` objects.""" nodes: [Profile!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `Profile` you could get from the connection. - """ + """The count of *all* `Profile` you could get from the connection.""" totalCount: Int! } -""" -A `Profile` edge in the connection. -""" +"""A `Profile` edge in the connection.""" type ProfilesEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `Profile` at the end of the edge. - """ + """The `Profile` at the end of the edge.""" node: Profile! } -""" -Methods to use when ordering `Profile`. -""" +"""Methods to use when ordering `Profile`.""" enum ProfilesOrderBy { NATURAL USER_ID_ASC @@ -11481,6 +9597,7 @@ enum ProfilesOrderBy { """ SeaSketch Project type. This root type contains most of the fields and queries needed to drive the application. + """ type Project implements Node { """ @@ -11488,29 +9605,19 @@ type Project implements Node { """ accessControl: ProjectAccessControlSetting! - """ - Reads and enables pagination through a set of `User`. - """ + """Reads and enables pagination through a set of `User`.""" accessRequestsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor direction: SortByDirection - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -11521,64 +9628,40 @@ type Project implements Node { orderBy: ParticipantSortBy ): UsersConnection! - """ - Reads and enables pagination through a set of `DataUploadTask`. - """ + """Reads and enables pagination through a set of `DataUploadTask`.""" activeDataUploads( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [DataUploadTask!] adminCount: Int - """ - Reads and enables pagination through a set of `User`. - """ + """Reads and enables pagination through a set of `User`.""" admins( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [User!] - """ - Reads and enables pagination through a set of `Basemap`. - """ + """Reads and enables pagination through a set of `Basemap`.""" basemaps( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [Basemap!] - """ - Reads and enables pagination through a set of `Basemap`. - """ + """Reads and enables pagination through a set of `Basemap`.""" basemapsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -11586,14 +9669,10 @@ type Project implements Node { """ condition: BasemapCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -11602,15 +9681,11 @@ type Project implements Node { """ offset: Int - """ - The method to use when ordering `Basemap`. - """ + """The method to use when ordering `Basemap`.""" orderBy: [BasemapsOrderBy!] = [PRIMARY_KEY_ASC] ): BasemapsConnection! - """ - Reads a single `CommunityGuideline` that is related to this `Project`. - """ + """Reads a single `CommunityGuideline` that is related to this `Project`.""" communityGuidelines: CommunityGuideline createdAt: Datetime creatorId: Int! @@ -11621,23 +9696,18 @@ type Project implements Node { Retrieve DataLayers for a given set of TableOfContentsItem IDs. Should be used in conjuction with `dataSourcesForItems` to progressively load layer information when users request layers be displayed on the map. + """ dataLayersForItems( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int tableOfContentsItemIds: [Int] ): [DataLayer!] - """ - Reads a single `DataSourcesBucket` that is related to this `Project`. - """ + """Reads a single `DataSourcesBucket` that is related to this `Project`.""" dataSourcesBucket: DataSourcesBucket dataSourcesBucketId: String @@ -11645,32 +9715,23 @@ type Project implements Node { Retrieve DataSources for a given set of TableOfContentsItem IDs. Should be used in conjuction with `dataLayersForItems` to progressively load layer information when users request layers be displayed on the map. + """ dataSourcesForItems( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int tableOfContentsItemIds: [Int] ): [DataSource!] - """ - Reads and enables pagination through a set of `DataUploadTask`. - """ + """Reads and enables pagination through a set of `DataUploadTask`.""" dataUploadTasksConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -11678,14 +9739,10 @@ type Project implements Node { """ condition: DataUploadTaskCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -11694,76 +9751,53 @@ type Project implements Node { """ offset: Int - """ - The method to use when ordering `DataUploadTask`. - """ + """The method to use when ordering `DataUploadTask`.""" orderBy: [DataUploadTasksOrderBy!] = [PRIMARY_KEY_ASC] ): DataUploadTasksConnection! - """ - Should be a short length in order to fit in the project header. - """ + """Should be a short length in order to fit in the project header.""" description: String draftTableOfContentsHasChanges: Boolean! """ Draft layer lists, accessible only to admins. Make edits to the layer list and then use the `publishTableOfContents` mutation when it is ready for end-users. + """ draftTableOfContentsItems( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [TableOfContentsItem!] - """ - Reads and enables pagination through a set of `Forum`. - """ + """Reads and enables pagination through a set of `Forum`.""" forums( """ A condition to be used in determining which values should be returned by the collection. """ condition: ForumCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `Forum`. - """ + """The method to use when ordering `Forum`.""" orderBy: [ForumsOrderBy!] ): [Forum!]! - """ - Reads and enables pagination through a set of `Group`. - """ + """Reads and enables pagination through a set of `Group`.""" groups( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `Group`. - """ + """The method to use when ordering `Group`.""" orderBy: [GroupsOrderBy!] ): [Group!]! hideForums: Boolean! @@ -11776,54 +9810,42 @@ type Project implements Node { Returns the project invitation for the current user session, if any. Will not appear until the invite has been sent. The system determines the relevant invite using the `canonical_email` claim in the user access token. - + If the invite status is unconfirmed the client should accept it using the `confirmProjectInviteWithVerifiedEmail()` mutation. Details on how to work with user ingress and project invites [can be found on the wiki](https://github.com/seasketch/next/wiki/User-Ingress). + """ invite: ProjectInvite """ Breakdown of number of invites per status. Used to display counts in overview listing of users, groups, and invites in the user administration dashboard. + """ inviteCounts( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [InviteStat!] inviteEmailSubject: String! - """ - List project invites by status - """ + """List project invites by status""" invitesConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor direction: SortByDirection - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -11838,6 +9860,7 @@ type Project implements Node { """ Returns true if the given user is an administrator of the project. Informaiton is only available administrators of the project and will otherwise always return false. + """ isAdmin(userId: Int): Boolean @@ -11853,28 +9876,18 @@ type Project implements Node { isListed: Boolean! isOfflineEnabled: Boolean - """ - Reads and enables pagination through a set of `Post`. - """ + """Reads and enables pagination through a set of `Post`.""" latestPostsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -11899,31 +9912,25 @@ type Project implements Node { """ List of all folders created by this user. + """ myFolders( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [SketchFolder!] """ A list of all sketches for this project and the current user session + """ mySketches( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [Sketch!] name: String! @@ -11933,18 +9940,12 @@ type Project implements Node { """ nodeId: ID! - """ - Reads and enables pagination through a set of `OfflineTilePackage`. - """ + """Reads and enables pagination through a set of `OfflineTilePackage`.""" offlineTilePackagesConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -11952,14 +9953,10 @@ type Project implements Node { """ condition: OfflineTilePackageCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -11968,34 +9965,24 @@ type Project implements Node { """ offset: Int - """ - The method to use when ordering `OfflineTilePackage`. - """ + """The method to use when ordering `OfflineTilePackage`.""" orderBy: [OfflineTilePackagesOrderBy!] = [PRIMARY_KEY_ASC] ): OfflineTilePackagesConnection! - """ - Reads and enables pagination through a set of `OfflineTileSetting`. - """ + """Reads and enables pagination through a set of `OfflineTileSetting`.""" offlineTileSettings( """ A condition to be used in determining which values should be returned by the collection. """ condition: OfflineTileSettingCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `OfflineTileSetting`. - """ + """The method to use when ordering `OfflineTileSetting`.""" orderBy: [OfflineTileSettingsOrderBy!] ): [OfflineTileSetting!]! @@ -12005,23 +9992,20 @@ type Project implements Node { participantCount: Int """ - All users who have opted into participating in the project, sharing + All users who have opted into participating in the project, sharing their profile with project administrators. - + If the project is invite-only, users who have not been approved will not appear in this list. Those users can be accessed via `unapprovedParticipants()` + """ participants( direction: SortByDirection - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int orderBy: ParticipantSortBy ): [User!] @@ -12038,10 +10022,11 @@ type Project implements Node { Indicates whether current session should have special access or group privileges. These grants will not be active if the user does not have a verified email address. - + Clients should check for situations where a user access token has a false `email_verified` cliam paired with privileged access. If that is the case they should prompt users to confirm their email address. + """ sessionHasPrivilegedAccess: Boolean @@ -12055,42 +10040,31 @@ type Project implements Node { Invites (and related tokens) for surveys which this user has not yet responded to. Details on how to handle survey invites [can be found on the wiki](https://github.com/seasketch/next/wiki/User-Ingress#survey-invites). + """ sessionOutstandingSurveyInvites( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [SurveyTokenInfo!] sessionParticipationStatus: ParticipationStatus - """ - Reads and enables pagination through a set of `SketchClass`. - """ + """Reads and enables pagination through a set of `SketchClass`.""" sketchClasses( """ A condition to be used in determining which values should be returned by the collection. """ condition: SketchClassCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `SketchClass`. - """ + """The method to use when ordering `SketchClass`.""" orderBy: [SketchClassesOrderBy!] ): [SketchClass!]! @@ -12107,75 +10081,52 @@ type Project implements Node { """ slug: String! - """ - Reads and enables pagination through a set of `Sprite`. - """ + """Reads and enables pagination through a set of `Sprite`.""" sprites( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [Sprite!] supportedLanguages: [String]! supportEmail: String! - """ - Reads and enables pagination through a set of `Basemap`. - """ + """Reads and enables pagination through a set of `Basemap`.""" surveyBasemaps( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [Basemap!] - """ - Reads and enables pagination through a set of `Survey`. - """ + """Reads and enables pagination through a set of `Survey`.""" surveys( """ A condition to be used in determining which values should be returned by the collection. """ condition: SurveyCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `Survey`. - """ + """The method to use when ordering `Survey`.""" orderBy: [SurveysOrderBy!] ): [Survey!]! """ Public layer list. Cannot be edited directly. + """ tableOfContentsItems( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [TableOfContentsItem!] tableOfContentsLastPublished: Datetime @@ -12183,46 +10134,39 @@ type Project implements Node { """ Number of users who have outstanding access requests. Only relevant for invite-only projects. + """ unapprovedParticipantCount: Int """ For invite-only projects. List all pending participation requests. - + Users can be approved using the `approveParticipant()` mutation. + """ unapprovedParticipants( direction: SortByDirection - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int orderBy: ParticipantSortBy ): [User!] - """ - Project url will resolve to `https://seasketch.org/{slug}/` - """ + """Project url will resolve to `https://seasketch.org/{slug}/`""" url: String """ List of all banned users. Listing only accessible to admins. + """ usersBannedFromForums( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [User!] } @@ -12247,34 +10191,22 @@ enum ProjectAccessStatus { A condition to be used against `Project` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input ProjectCondition { - """ - Checks for equality with the object’s `accessControl` field. - """ + """Checks for equality with the object’s `accessControl` field.""" accessControl: ProjectAccessControlSetting - """ - Checks for equality with the object’s `dataSourcesBucketId` field. - """ + """Checks for equality with the object’s `dataSourcesBucketId` field.""" dataSourcesBucketId: String - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `isFeatured` field. - """ + """Checks for equality with the object’s `isFeatured` field.""" isFeatured: Boolean - """ - Checks for equality with the object’s `name` field. - """ + """Checks for equality with the object’s `name` field.""" name: String - """ - Checks for equality with the object’s `slug` field. - """ + """Checks for equality with the object’s `slug` field.""" slug: String } @@ -12285,69 +10217,52 @@ type ProjectDraftTableOfContentsStatusPayload { } """ -Admins can invite users to their project, adding them to user groups and +Admins can invite users to their project, adding them to user groups and distributing admin privileges as needed. Invitations can be immediately sent via -email or they can be sent out later in batches. +email or they can be sent out later in batches. Use the `createProjectInvites()` -mutation to create one or more invitations and then use graphile generated +mutation to create one or more invitations and then use graphile generated mutations to update and delete them. Details on [handling user ingress with invitation tokens](https://github.com/seasketch/next/wiki/User-Ingress#project-invites) and [the mailer subsystem](https://github.com/seasketch/next/wiki/User-and-Survey-Invite-Management) can be found on the wiki. + """ type ProjectInvite implements Node { createdAt: Datetime! - """ - Specified by admin when invite was created. - """ + """Specified by admin when invite was created.""" email: Email! - """ - Specified by admin when invite was created. - """ + """Specified by admin when invite was created.""" fullname: String - """ - Reads and enables pagination through a set of `Group`. - """ + """Reads and enables pagination through a set of `Group`.""" groups( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [Group!] id: Int! - """ - Reads and enables pagination through a set of `InviteEmail`. - """ + """Reads and enables pagination through a set of `InviteEmail`.""" inviteEmails( """ A condition to be used in determining which values should be returned by the collection. """ condition: InviteEmailCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `InviteEmail`. - """ + """The method to use when ordering `InviteEmail`.""" orderBy: [InviteEmailsOrderBy!] ): [InviteEmail!]! @@ -12363,18 +10278,12 @@ type ProjectInvite implements Node { participationStatus: ParticipationStatus projectId: Int! - """ - Reads and enables pagination through a set of `ProjectInviteGroup`. - """ + """Reads and enables pagination through a set of `ProjectInviteGroup`.""" projectInviteGroupsByInviteIdConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -12382,14 +10291,10 @@ type ProjectInvite implements Node { """ condition: ProjectInviteGroupCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -12398,28 +10303,20 @@ type ProjectInvite implements Node { """ offset: Int - """ - The method to use when ordering `ProjectInviteGroup`. - """ + """The method to use when ordering `ProjectInviteGroup`.""" orderBy: [ProjectInviteGroupsOrderBy!] = [NATURAL] ): ProjectInviteGroupsConnection! status: InviteStatus - """ - Is set upon invite acceptance. - """ + """Is set upon invite acceptance.""" userId: Int - """ - Project invite has already been accepted. - """ + """Project invite has already been accepted.""" wasUsed: Boolean! } type ProjectInviteGroup { - """ - Reads a single `Group` that is related to this `ProjectInviteGroup`. - """ + """Reads a single `Group` that is related to this `ProjectInviteGroup`.""" group: Group groupId: Int! @@ -12435,20 +10332,14 @@ A condition to be used against `ProjectInviteGroup` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input ProjectInviteGroupCondition { - """ - Checks for equality with the object’s `groupId` field. - """ + """Checks for equality with the object’s `groupId` field.""" groupId: Int - """ - Checks for equality with the object’s `inviteId` field. - """ + """Checks for equality with the object’s `inviteId` field.""" inviteId: Int } -""" -An input for mutations affecting `ProjectInviteGroup` -""" +"""An input for mutations affecting `ProjectInviteGroup`""" input ProjectInviteGroupInput { groupId: Int! inviteId: Int! @@ -12462,23 +10353,17 @@ input ProjectInviteGroupPatch { inviteId: Int } -""" -A connection to a list of `ProjectInviteGroup` values. -""" +"""A connection to a list of `ProjectInviteGroup` values.""" type ProjectInviteGroupsConnection { """ A list of edges which contains the `ProjectInviteGroup` and cursor to aid in pagination. """ edges: [ProjectInviteGroupsEdge!]! - """ - A list of `ProjectInviteGroup` objects. - """ + """A list of `ProjectInviteGroup` objects.""" nodes: [ProjectInviteGroup!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! """ @@ -12487,24 +10372,16 @@ type ProjectInviteGroupsConnection { totalCount: Int! } -""" -A `ProjectInviteGroup` edge in the connection. -""" +"""A `ProjectInviteGroup` edge in the connection.""" type ProjectInviteGroupsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `ProjectInviteGroup` at the end of the edge. - """ + """The `ProjectInviteGroup` at the end of the edge.""" node: ProjectInviteGroup! } -""" -Methods to use when ordering `ProjectInviteGroup`. -""" +"""Methods to use when ordering `ProjectInviteGroup`.""" enum ProjectInviteGroupsOrderBy { GROUP_ID_ASC GROUP_ID_DESC @@ -12513,51 +10390,35 @@ enum ProjectInviteGroupsOrderBy { NATURAL } -""" -An input for mutations affecting `ProjectInviteOption` -""" +"""An input for mutations affecting `ProjectInviteOption`""" input ProjectInviteOptionInput { email: Email fullname: String } -""" -A connection to a list of `ProjectInvite` values. -""" +"""A connection to a list of `ProjectInvite` values.""" type ProjectInvitesConnection { """ A list of edges which contains the `ProjectInvite` and cursor to aid in pagination. """ edges: [ProjectInvitesEdge!]! - """ - A list of `ProjectInvite` objects. - """ + """A list of `ProjectInvite` objects.""" nodes: [ProjectInvite!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `ProjectInvite` you could get from the connection. - """ + """The count of *all* `ProjectInvite` you could get from the connection.""" totalCount: Int! } -""" -A `ProjectInvite` edge in the connection. -""" +"""A `ProjectInvite` edge in the connection.""" type ProjectInvitesEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `ProjectInvite` at the end of the edge. - """ + """The `ProjectInvite` at the end of the edge.""" node: ProjectInvite! } @@ -12596,9 +10457,7 @@ input ProjectPatch { accessControl: ProjectAccessControlSetting dataSourcesBucketId: String - """ - Should be a short length in order to fit in the project header. - """ + """Should be a short length in order to fit in the project header.""" description: String hideForums: Boolean hideOverlays: Boolean @@ -12632,49 +10491,33 @@ input ProjectPatch { translatedProps: JSON } -""" -A connection to a list of `Project` values. -""" +"""A connection to a list of `Project` values.""" type ProjectsConnection { """ A list of edges which contains the `Project` and cursor to aid in pagination. """ edges: [ProjectsEdge!]! - """ - A list of `Project` objects. - """ + """A list of `Project` objects.""" nodes: [Project!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `Project` you could get from the connection. - """ + """The count of *all* `Project` you could get from the connection.""" totalCount: Int! } -""" -A `Project` edge in the connection. -""" +"""A `Project` edge in the connection.""" type ProjectsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `Project` at the end of the edge. - """ + """The `Project` at the end of the edge.""" node: Project! } -""" -Methods to use when ordering `Project`. -""" +"""Methods to use when ordering `Project`.""" enum ProjectsOrderBy { ACCESS_CONTROL_ASC ACCESS_CONTROL_DESC @@ -12707,15 +10550,11 @@ A condition to be used against `ProjectsSharedBasemap` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input ProjectsSharedBasemapCondition { - """ - Checks for equality with the object’s `basemapId` field. - """ + """Checks for equality with the object’s `basemapId` field.""" basemapId: Int } -""" -An input for mutations affecting `ProjectsSharedBasemap` -""" +"""An input for mutations affecting `ProjectsSharedBasemap`""" input ProjectsSharedBasemapInput { basemapId: Int! projectId: Int! @@ -12729,23 +10568,17 @@ input ProjectsSharedBasemapPatch { projectId: Int } -""" -A connection to a list of `ProjectsSharedBasemap` values. -""" +"""A connection to a list of `ProjectsSharedBasemap` values.""" type ProjectsSharedBasemapsConnection { """ A list of edges which contains the `ProjectsSharedBasemap` and cursor to aid in pagination. """ edges: [ProjectsSharedBasemapsEdge!]! - """ - A list of `ProjectsSharedBasemap` objects. - """ + """A list of `ProjectsSharedBasemap` objects.""" nodes: [ProjectsSharedBasemap!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! """ @@ -12754,24 +10587,16 @@ type ProjectsSharedBasemapsConnection { totalCount: Int! } -""" -A `ProjectsSharedBasemap` edge in the connection. -""" +"""A `ProjectsSharedBasemap` edge in the connection.""" type ProjectsSharedBasemapsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `ProjectsSharedBasemap` at the end of the edge. - """ + """The `ProjectsSharedBasemap` at the end of the edge.""" node: ProjectsSharedBasemap! } -""" -Methods to use when ordering `ProjectsSharedBasemap`. -""" +"""Methods to use when ordering `ProjectsSharedBasemap`.""" enum ProjectsSharedBasemapsOrderBy { BASEMAP_ID_ASC BASEMAP_ID_DESC @@ -12788,9 +10613,7 @@ type PublicProjectDetail { supportEmail: String } -""" -All input for the `publishTableOfContents` mutation. -""" +"""All input for the `publishTableOfContents` mutation.""" input PublishTableOfContentsInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -12800,9 +10623,7 @@ input PublishTableOfContentsInput { projectId: Int } -""" -The output of our `publishTableOfContents` mutation. -""" +"""The output of our `publishTableOfContents` mutation.""" type PublishTableOfContentsPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -12817,48 +10638,32 @@ type PublishTableOfContentsPayload { tableOfContentsItems: [TableOfContentsItem!] } -""" -The root query type which gives access points into the data universe. -""" +"""The root query type which gives access points into the data universe.""" type Query implements Node { acl(id: Int!): Acl aclByBasemapId(basemapId: Int!): Acl - """ - Reads a single `Acl` using its globally unique `ID`. - """ + """Reads a single `Acl` using its globally unique `ID`.""" aclByNodeId( - """ - The globally unique `ID` to be used in selecting a single `Acl`. - """ + """The globally unique `ID` to be used in selecting a single `Acl`.""" nodeId: ID! ): Acl aclBySketchClassId(sketchClassId: Int!): Acl aclByTableOfContentsItemId(tableOfContentsItemId: Int!): Acl basemap(id: Int!): Basemap - """ - Reads a single `Basemap` using its globally unique `ID`. - """ + """Reads a single `Basemap` using its globally unique `ID`.""" basemapByNodeId( - """ - The globally unique `ID` to be used in selecting a single `Basemap`. - """ + """The globally unique `ID` to be used in selecting a single `Basemap`.""" nodeId: ID! ): Basemap - """ - Reads and enables pagination through a set of `Basemap`. - """ + """Reads and enables pagination through a set of `Basemap`.""" basemapsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -12866,14 +10671,10 @@ type Query implements Node { """ condition: BasemapCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -12882,9 +10683,7 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `Basemap`. - """ + """The method to use when ordering `Basemap`.""" orderBy: [BasemapsOrderBy!] = [PRIMARY_KEY_ASC] ): BasemapsConnection bookmarkById(id: UUID): MapBookmark @@ -12893,7 +10692,7 @@ type Query implements Node { GraphQL server software build identifier. During a deployment, if changes are not detected in software modules some may be skipped. So, client and server version could differ. - + We return "dev" if build cannot be determined from deployment environment. """ build: String! @@ -12902,9 +10701,7 @@ type Query implements Node { collectTextFromProsemirrorBodyForLabel(body: JSON): String communityGuideline(projectId: Int!): CommunityGuideline - """ - Reads a single `CommunityGuideline` using its globally unique `ID`. - """ + """Reads a single `CommunityGuideline` using its globally unique `ID`.""" communityGuidelineByNodeId( """ The globally unique `ID` to be used in selecting a single `CommunityGuideline`. @@ -12912,26 +10709,19 @@ type Query implements Node { nodeId: ID! ): CommunityGuideline currentProject: Project @deprecated(reason: "Use projectBySlug() instead") - currentProjectAccessStatus: ProjectAccessStatus - @deprecated(reason: "Use project_access_status(slug) instead") + currentProjectAccessStatus: ProjectAccessStatus @deprecated(reason: "Use project_access_status(slug) instead") currentUserIsSuperuser: Boolean! dataLayer(id: Int!): DataLayer dataLayerByInteractivitySettingsId(interactivitySettingsId: Int!): DataLayer - """ - Reads a single `DataLayer` using its globally unique `ID`. - """ + """Reads a single `DataLayer` using its globally unique `ID`.""" dataLayerByNodeId( - """ - The globally unique `ID` to be used in selecting a single `DataLayer`. - """ + """The globally unique `ID` to be used in selecting a single `DataLayer`.""" nodeId: ID! ): DataLayer dataSource(id: Int!): DataSource - """ - Reads a single `DataSource` using its globally unique `ID`. - """ + """Reads a single `DataSource` using its globally unique `ID`.""" dataSourceByNodeId( """ The globally unique `ID` to be used in selecting a single `DataSource`. @@ -12940,9 +10730,7 @@ type Query implements Node { ): DataSource dataSourcesBucket(url: String!): DataSourcesBucket - """ - Reads a single `DataSourcesBucket` using its globally unique `ID`. - """ + """Reads a single `DataSourcesBucket` using its globally unique `ID`.""" dataSourcesBucketByNodeId( """ The globally unique `ID` to be used in selecting a single `DataSourcesBucket`. @@ -12950,18 +10738,12 @@ type Query implements Node { nodeId: ID! ): DataSourcesBucket - """ - Reads and enables pagination through a set of `DataSourcesBucket`. - """ + """Reads and enables pagination through a set of `DataSourcesBucket`.""" dataSourcesBucketsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -12969,14 +10751,10 @@ type Query implements Node { """ condition: DataSourcesBucketCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -12985,16 +10763,12 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `DataSourcesBucket`. - """ + """The method to use when ordering `DataSourcesBucket`.""" orderBy: [DataSourcesBucketsOrderBy!] = [PRIMARY_KEY_ASC] ): DataSourcesBucketsConnection dataUploadTask(id: UUID!): DataUploadTask - """ - Reads a single `DataUploadTask` using its globally unique `ID`. - """ + """Reads a single `DataUploadTask` using its globally unique `ID`.""" dataUploadTaskByNodeId( """ The globally unique `ID` to be used in selecting a single `DataUploadTask`. @@ -13002,18 +10776,12 @@ type Query implements Node { nodeId: ID! ): DataUploadTask - """ - Reads and enables pagination through a set of `DataUploadTask`. - """ + """Reads and enables pagination through a set of `DataUploadTask`.""" dataUploadTasksConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -13021,14 +10789,10 @@ type Query implements Node { """ condition: DataUploadTaskCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -13037,9 +10801,7 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `DataUploadTask`. - """ + """The method to use when ordering `DataUploadTask`.""" orderBy: [DataUploadTasksOrderBy!] = [PRIMARY_KEY_ASC] ): DataUploadTasksConnection emailNotificationPreferenceByUserId(userId: Int!): EmailNotificationPreference @@ -13048,14 +10810,10 @@ type Query implements Node { Reads and enables pagination through a set of `EmailNotificationPreference`. """ emailNotificationPreferencesConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -13063,14 +10821,10 @@ type Query implements Node { """ condition: EmailNotificationPreferenceCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -13079,17 +10833,13 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `EmailNotificationPreference`. - """ + """The method to use when ordering `EmailNotificationPreference`.""" orderBy: [EmailNotificationPreferencesOrderBy!] = [NATURAL] ): EmailNotificationPreferencesConnection extractSpriteIds(t: String): [Int] fileUpload(id: UUID!): FileUpload - """ - Reads a single `FileUpload` using its globally unique `ID`. - """ + """Reads a single `FileUpload` using its globally unique `ID`.""" fileUploadByNodeId( """ The globally unique `ID` to be used in selecting a single `FileUpload`. @@ -13097,18 +10847,12 @@ type Query implements Node { nodeId: ID! ): FileUpload - """ - Reads and enables pagination through a set of `FileUpload`. - """ + """Reads and enables pagination through a set of `FileUpload`.""" fileUploadsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -13116,14 +10860,10 @@ type Query implements Node { """ condition: FileUploadCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -13132,29 +10872,21 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `FileUpload`. - """ + """The method to use when ordering `FileUpload`.""" orderBy: [FileUploadsOrderBy!] = [PRIMARY_KEY_ASC] ): FileUploadsConnection form(id: Int!): Form - """ - Reads a single `Form` using its globally unique `ID`. - """ + """Reads a single `Form` using its globally unique `ID`.""" formByNodeId( - """ - The globally unique `ID` to be used in selecting a single `Form`. - """ + """The globally unique `ID` to be used in selecting a single `Form`.""" nodeId: ID! ): Form formBySketchClassId(sketchClassId: Int!): Form formBySurveyId(surveyId: Int!): Form formElement(id: Int!): FormElement - """ - Reads a single `FormElement` using its globally unique `ID`. - """ + """Reads a single `FormElement` using its globally unique `ID`.""" formElementByNodeId( """ The globally unique `ID` to be used in selecting a single `FormElement`. @@ -13164,9 +10896,7 @@ type Query implements Node { formElementType(componentName: String!): FormElementType formElementTypeByLabel(label: String!): FormElementType - """ - Reads a single `FormElementType` using its globally unique `ID`. - """ + """Reads a single `FormElementType` using its globally unique `ID`.""" formElementTypeByNodeId( """ The globally unique `ID` to be used in selecting a single `FormElementType`. @@ -13174,35 +10904,25 @@ type Query implements Node { nodeId: ID! ): FormElementType - """ - Reads a set of `FormElementType`. - """ + """Reads a set of `FormElementType`.""" formElementTypes( """ A condition to be used in determining which values should be returned by the collection. """ condition: FormElementTypeCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `FormElementType`. - """ + """The method to use when ordering `FormElementType`.""" orderBy: [FormElementTypesOrderBy!] ): [FormElementType!] formLogicCondition(id: Int!): FormLogicCondition - """ - Reads a single `FormLogicCondition` using its globally unique `ID`. - """ + """Reads a single `FormLogicCondition` using its globally unique `ID`.""" formLogicConditionByNodeId( """ The globally unique `ID` to be used in selecting a single `FormLogicCondition`. @@ -13211,9 +10931,7 @@ type Query implements Node { ): FormLogicCondition formLogicRule(id: Int!): FormLogicRule - """ - Reads a single `FormLogicRule` using its globally unique `ID`. - """ + """Reads a single `FormLogicRule` using its globally unique `ID`.""" formLogicRuleByNodeId( """ The globally unique `ID` to be used in selecting a single `FormLogicRule`. @@ -13222,52 +10940,36 @@ type Query implements Node { ): FormLogicRule forum(id: Int!): Forum - """ - Reads a single `Forum` using its globally unique `ID`. - """ + """Reads a single `Forum` using its globally unique `ID`.""" forumByNodeId( - """ - The globally unique `ID` to be used in selecting a single `Forum`. - """ + """The globally unique `ID` to be used in selecting a single `Forum`.""" nodeId: ID! ): Forum generateExportId(body: JSON, exportId: String, id: Int): String generateLabel(body: JSON, id: Int): String getDefaultDataSourcesBucket: String - """ - Reads and enables pagination through a set of `Survey`. - """ + """Reads and enables pagination through a set of `Survey`.""" getSurveys( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int ids: [Int] - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [Survey!] getUnsplashPhotos(query: String!): UnsplashSearchResult! group(id: Int!): Group - """ - Reads a single `Group` using its globally unique `ID`. - """ + """Reads a single `Group` using its globally unique `ID`.""" groupByNodeId( - """ - The globally unique `ID` to be used in selecting a single `Group`. - """ + """The globally unique `ID` to be used in selecting a single `Group`.""" nodeId: ID! ): Group groupByProjectIdAndName(name: String!, projectId: Int!): Group interactivitySetting(id: Int!): InteractivitySetting - """ - Reads a single `InteractivitySetting` using its globally unique `ID`. - """ + """Reads a single `InteractivitySetting` using its globally unique `ID`.""" interactivitySettingByNodeId( """ The globally unique `ID` to be used in selecting a single `InteractivitySetting`. @@ -13276,9 +10978,7 @@ type Query implements Node { ): InteractivitySetting inviteEmail(id: Int!): InviteEmail - """ - Reads a single `InviteEmail` using its globally unique `ID`. - """ + """Reads a single `InviteEmail` using its globally unique `ID`.""" inviteEmailByNodeId( """ The globally unique `ID` to be used in selecting a single `InviteEmail`. @@ -13288,18 +10988,12 @@ type Query implements Node { isMyEmailVerified: Boolean! lcfirst(word: String): String - """ - Reads and enables pagination through a set of `MapBookmark`. - """ + """Reads and enables pagination through a set of `MapBookmark`.""" mapBookmarksConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -13307,14 +11001,10 @@ type Query implements Node { """ condition: MapBookmarkCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -13323,9 +11013,7 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `MapBookmark`. - """ + """The method to use when ordering `MapBookmark`.""" orderBy: [MapBookmarksOrderBy!] = [NATURAL] ): MapBookmarksConnection @@ -13334,13 +11022,9 @@ type Query implements Node { """ me: User - """ - Fetches an object given its globally unique `ID`. - """ + """Fetches an object given its globally unique `ID`.""" node( - """ - The globally unique `ID`. - """ + """The globally unique `ID`.""" nodeId: ID! ): Node @@ -13350,9 +11034,7 @@ type Query implements Node { nodeId: ID! offlineTilePackage(id: UUID!): OfflineTilePackage - """ - Reads a single `OfflineTilePackage` using its globally unique `ID`. - """ + """Reads a single `OfflineTilePackage` using its globally unique `ID`.""" offlineTilePackageByNodeId( """ The globally unique `ID` to be used in selecting a single `OfflineTilePackage`. @@ -13360,18 +11042,12 @@ type Query implements Node { nodeId: ID! ): OfflineTilePackage - """ - Reads and enables pagination through a set of `OfflineTilePackage`. - """ + """Reads and enables pagination through a set of `OfflineTilePackage`.""" offlineTilePackagesConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -13379,14 +11055,10 @@ type Query implements Node { """ condition: OfflineTilePackageCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -13395,56 +11067,39 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `OfflineTilePackage`. - """ + """The method to use when ordering `OfflineTilePackage`.""" orderBy: [OfflineTilePackagesOrderBy!] = [PRIMARY_KEY_ASC] ): OfflineTilePackagesConnection offlineTileSetting(id: Int!): OfflineTileSetting - """ - Reads a single `OfflineTileSetting` using its globally unique `ID`. - """ + """Reads a single `OfflineTileSetting` using its globally unique `ID`.""" offlineTileSettingByNodeId( """ The globally unique `ID` to be used in selecting a single `OfflineTileSetting`. """ nodeId: ID! ): OfflineTileSetting - offlineTileSettingByProjectIdAndBasemapId( - basemapId: Int! - projectId: Int! - ): OfflineTileSetting + offlineTileSettingByProjectIdAndBasemapId(basemapId: Int!, projectId: Int!): OfflineTileSetting - """ - Reads a set of `OfflineTileSetting`. - """ + """Reads a set of `OfflineTileSetting`.""" offlineTileSettings( """ A condition to be used in determining which values should be returned by the collection. """ condition: OfflineTileSettingCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `OfflineTileSetting`. - """ + """The method to use when ordering `OfflineTileSetting`.""" orderBy: [OfflineTileSettingsOrderBy!] ): [OfflineTileSetting!] optionalBasemapLayer(id: Int!): OptionalBasemapLayer - """ - Reads a single `OptionalBasemapLayer` using its globally unique `ID`. - """ + """Reads a single `OptionalBasemapLayer` using its globally unique `ID`.""" optionalBasemapLayerByNodeId( """ The globally unique `ID` to be used in selecting a single `OptionalBasemapLayer`. @@ -13453,28 +11108,18 @@ type Query implements Node { ): OptionalBasemapLayer post(id: Int!): Post - """ - Reads a single `Post` using its globally unique `ID`. - """ + """Reads a single `Post` using its globally unique `ID`.""" postByNodeId( - """ - The globally unique `ID` to be used in selecting a single `Post`. - """ + """The globally unique `ID` to be used in selecting a single `Post`.""" nodeId: ID! ): Post - """ - Reads and enables pagination through a set of `Post`. - """ + """Reads and enables pagination through a set of `Post`.""" postsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -13482,14 +11127,10 @@ type Query implements Node { """ condition: PostCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -13498,57 +11139,37 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `Post`. - """ + """The method to use when ordering `Post`.""" orderBy: [PostsOrderBy!] = [PRIMARY_KEY_ASC] ): PostsConnection profileByUserId(userId: Int!): Profile project(id: Int!): Project projectAccessStatus(pid: Int): ProjectAccessStatus - """ - Reads a single `Project` using its globally unique `ID`. - """ + """Reads a single `Project` using its globally unique `ID`.""" projectByNodeId( - """ - The globally unique `ID` to be used in selecting a single `Project`. - """ + """The globally unique `ID` to be used in selecting a single `Project`.""" nodeId: ID! ): Project projectBySlug(slug: String!): Project projectInvite(id: Int!): ProjectInvite - projectInviteByEmailAndProjectId( - email: Email! - projectId: Int! - ): ProjectInvite + projectInviteByEmailAndProjectId(email: Email!, projectId: Int!): ProjectInvite - """ - Reads a single `ProjectInvite` using its globally unique `ID`. - """ + """Reads a single `ProjectInvite` using its globally unique `ID`.""" projectInviteByNodeId( """ The globally unique `ID` to be used in selecting a single `ProjectInvite`. """ nodeId: ID! ): ProjectInvite - projectInviteGroupByInviteIdAndGroupId( - groupId: Int! - inviteId: Int! - ): ProjectInviteGroup + projectInviteGroupByInviteIdAndGroupId(groupId: Int!, inviteId: Int!): ProjectInviteGroup - """ - Reads and enables pagination through a set of `ProjectInviteGroup`. - """ + """Reads and enables pagination through a set of `ProjectInviteGroup`.""" projectInviteGroupsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -13556,14 +11177,10 @@ type Query implements Node { """ condition: ProjectInviteGroupCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -13572,25 +11189,17 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `ProjectInviteGroup`. - """ + """The method to use when ordering `ProjectInviteGroup`.""" orderBy: [ProjectInviteGroupsOrderBy!] = [NATURAL] ): ProjectInviteGroupsConnection projectPublicDetails(slug: String): PublicProjectDetail - """ - Reads and enables pagination through a set of `Project`. - """ + """Reads and enables pagination through a set of `Project`.""" projectsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -13598,14 +11207,10 @@ type Query implements Node { """ condition: ProjectCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -13614,28 +11219,17 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `Project`. - """ + """The method to use when ordering `Project`.""" orderBy: [ProjectsOrderBy!] = [PRIMARY_KEY_ASC] ): ProjectsConnection - projectsSharedBasemapByBasemapIdAndProjectId( - basemapId: Int! - projectId: Int! - ): ProjectsSharedBasemap + projectsSharedBasemapByBasemapIdAndProjectId(basemapId: Int!, projectId: Int!): ProjectsSharedBasemap - """ - Reads and enables pagination through a set of `ProjectsSharedBasemap`. - """ + """Reads and enables pagination through a set of `ProjectsSharedBasemap`.""" projectsSharedBasemapsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -13643,14 +11237,10 @@ type Query implements Node { """ condition: ProjectsSharedBasemapCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -13659,24 +11249,19 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `ProjectsSharedBasemap`. - """ + """The method to use when ordering `ProjectsSharedBasemap`.""" orderBy: [ProjectsSharedBasemapsOrderBy!] = [NATURAL] ): ProjectsSharedBasemapsConnection """ Used by project administrators to access a list of public sprites promoted by the SeaSketch development team. + """ publicSprites( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [Sprite!] @@ -13686,22 +11271,16 @@ type Query implements Node { """ query: Query! - """ - Reads and enables pagination through a set of `SearchResult`. - """ + """Reads and enables pagination through a set of `SearchResult`.""" searchOverlays( draft: Boolean - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int lang: String limit: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int projectId: Int query: String @@ -13710,21 +11289,15 @@ type Query implements Node { sharedBasemaps: Basemap sketch(id: Int!): Sketch - """ - Reads a single `Sketch` using its globally unique `ID`. - """ + """Reads a single `Sketch` using its globally unique `ID`.""" sketchByNodeId( - """ - The globally unique `ID` to be used in selecting a single `Sketch`. - """ + """The globally unique `ID` to be used in selecting a single `Sketch`.""" nodeId: ID! ): Sketch sketchClass(id: Int!): SketchClass sketchClassByFormElementId(formElementId: Int!): SketchClass - """ - Reads a single `SketchClass` using its globally unique `ID`. - """ + """Reads a single `SketchClass` using its globally unique `ID`.""" sketchClassByNodeId( """ The globally unique `ID` to be used in selecting a single `SketchClass`. @@ -13733,9 +11306,7 @@ type Query implements Node { ): SketchClass sketchFolder(id: Int!): SketchFolder - """ - Reads a single `SketchFolder` using its globally unique `ID`. - """ + """Reads a single `SketchFolder` using its globally unique `ID`.""" sketchFolderByNodeId( """ The globally unique `ID` to be used in selecting a single `SketchFolder`. @@ -13743,18 +11314,12 @@ type Query implements Node { nodeId: ID! ): SketchFolder - """ - Reads and enables pagination through a set of `SketchFolder`. - """ + """Reads and enables pagination through a set of `SketchFolder`.""" sketchFoldersConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -13762,14 +11327,10 @@ type Query implements Node { """ condition: SketchFolderCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -13778,65 +11339,41 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `SketchFolder`. - """ + """The method to use when ordering `SketchFolder`.""" orderBy: [SketchFoldersOrderBy!] = [PRIMARY_KEY_ASC] ): SketchFoldersConnection sprite(id: Int!): Sprite - """ - Reads a single `Sprite` using its globally unique `ID`. - """ + """Reads a single `Sprite` using its globally unique `ID`.""" spriteByNodeId( - """ - The globally unique `ID` to be used in selecting a single `Sprite`. - """ + """The globally unique `ID` to be used in selecting a single `Sprite`.""" nodeId: ID! ): Sprite - spriteImageBySpriteIdAndPixelRatio( - pixelRatio: Int! - spriteId: Int! - ): SpriteImage + spriteImageBySpriteIdAndPixelRatio(pixelRatio: Int!, spriteId: Int!): SpriteImage survey(id: Int!): Survey - """ - Reads a single `Survey` using its globally unique `ID`. - """ + """Reads a single `Survey` using its globally unique `ID`.""" surveyByNodeId( - """ - The globally unique `ID` to be used in selecting a single `Survey`. - """ + """The globally unique `ID` to be used in selecting a single `Survey`.""" nodeId: ID! ): Survey surveyConsentDocument(id: Int!): SurveyConsentDocument - surveyConsentDocumentByFormElementIdAndVersion( - formElementId: Int! - version: Int! - ): SurveyConsentDocument + surveyConsentDocumentByFormElementIdAndVersion(formElementId: Int!, version: Int!): SurveyConsentDocument - """ - Reads a single `SurveyConsentDocument` using its globally unique `ID`. - """ + """Reads a single `SurveyConsentDocument` using its globally unique `ID`.""" surveyConsentDocumentByNodeId( """ The globally unique `ID` to be used in selecting a single `SurveyConsentDocument`. """ nodeId: ID! ): SurveyConsentDocument - - """ - Reads and enables pagination through a set of `SurveyConsentDocument`. - """ + + """Reads and enables pagination through a set of `SurveyConsentDocument`.""" surveyConsentDocumentsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -13844,14 +11381,10 @@ type Query implements Node { """ condition: SurveyConsentDocumentCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -13860,33 +11393,24 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `SurveyConsentDocument`. - """ + """The method to use when ordering `SurveyConsentDocument`.""" orderBy: [SurveyConsentDocumentsOrderBy!] = [PRIMARY_KEY_ASC] ): SurveyConsentDocumentsConnection surveyInvite(id: Int!): SurveyInvite surveyInviteByEmail(email: Email!): SurveyInvite surveyInviteByEmailAndSurveyId(email: Email!, surveyId: Int!): SurveyInvite - """ - Reads a single `SurveyInvite` using its globally unique `ID`. - """ + """Reads a single `SurveyInvite` using its globally unique `ID`.""" surveyInviteByNodeId( """ The globally unique `ID` to be used in selecting a single `SurveyInvite`. """ nodeId: ID! ): SurveyInvite - surveyInvitedGroupBySurveyIdAndGroupId( - groupId: Int! - surveyId: Int! - ): SurveyInvitedGroup + surveyInvitedGroupBySurveyIdAndGroupId(groupId: Int!, surveyId: Int!): SurveyInvitedGroup surveyResponse(id: Int!): SurveyResponse - """ - Reads a single `SurveyResponse` using its globally unique `ID`. - """ + """Reads a single `SurveyResponse` using its globally unique `ID`.""" surveyResponseByNodeId( """ The globally unique `ID` to be used in selecting a single `SurveyResponse`. @@ -13894,18 +11418,12 @@ type Query implements Node { nodeId: ID! ): SurveyResponse - """ - Reads and enables pagination through a set of `SurveyResponse`. - """ + """Reads and enables pagination through a set of `SurveyResponse`.""" surveyResponsesConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -13913,14 +11431,10 @@ type Query implements Node { """ condition: SurveyResponseCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -13929,17 +11443,13 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `SurveyResponse`. - """ + """The method to use when ordering `SurveyResponse`.""" orderBy: [SurveyResponsesOrderBy!] = [PRIMARY_KEY_ASC] ): SurveyResponsesConnection tableOfContentsItem(id: Int!): TableOfContentsItem tableOfContentsItemByDataLayerId(dataLayerId: Int!): TableOfContentsItem - """ - Reads a single `TableOfContentsItem` using its globally unique `ID`. - """ + """Reads a single `TableOfContentsItem` using its globally unique `ID`.""" tableOfContentsItemByNodeId( """ The globally unique `ID` to be used in selecting a single `TableOfContentsItem`. @@ -13947,61 +11457,42 @@ type Query implements Node { nodeId: ID! ): TableOfContentsItem - """ - Reads and enables pagination through a set of `Form`. - """ + """Reads and enables pagination through a set of `Form`.""" templateForms( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [Form!] """ List of template sketch classes such as "Marine Protected Area", "MPA Network", etc. + """ templateSketchClasses( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [SketchClass!] tilebbox(srid: Int, x: Int, y: Int, z: Int): GeometryInterface toGraphqlId(id: Int, type: String): String topic(id: Int!): Topic - """ - Reads a single `Topic` using its globally unique `ID`. - """ + """Reads a single `Topic` using its globally unique `ID`.""" topicByNodeId( - """ - The globally unique `ID` to be used in selecting a single `Topic`. - """ + """The globally unique `ID` to be used in selecting a single `Topic`.""" nodeId: ID! ): Topic - """ - Reads and enables pagination through a set of `Topic`. - """ + """Reads and enables pagination through a set of `Topic`.""" topicsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -14009,14 +11500,10 @@ type Query implements Node { """ condition: TopicCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -14025,49 +11512,39 @@ type Query implements Node { """ offset: Int - """ - The method to use when ordering `Topic`. - """ + """The method to use when ordering `Topic`.""" orderBy: [TopicsOrderBy!] = [PRIMARY_KEY_ASC] ): TopicsConnection user(id: Int!): User - """ - Reads a single `User` using its globally unique `ID`. - """ + """Reads a single `User` using its globally unique `ID`.""" userByNodeId( - """ - The globally unique `ID` to be used in selecting a single `User`. - """ + """The globally unique `ID` to be used in selecting a single `User`.""" nodeId: ID! ): User """ Verify whether the an invite token has a valid signature and has not yet expired. - + Use before attempting the confirmProjectInvite() mutation. More details on how to handle invites can be found [on the wiki](https://github.com/seasketch/next/wiki/User-Ingress#project-invites) """ verifyProjectInvite( - """ - JWT string - """ + """JWT string""" token: String! ): ProjectInviteTokenVerificationResults """ Verify whether the an invite token has a valid signature and has not yet expired or been used. - + Use before starting an invite-only survey. For info on invite handling [see the wiki](https://github.com/seasketch/next/wiki/User-Ingress#survey-invites) """ verifySurveyInvite( - """ - JWT string - """ + """JWT string""" token: String! ): SurveyInviteTokenVerificationResults } @@ -14077,9 +11554,7 @@ enum RasterDemEncoding { TERRARIUM } -""" -All input for the `removeGroupFromAcl` mutation. -""" +"""All input for the `removeGroupFromAcl` mutation.""" input RemoveGroupFromAclInput { aclId: Int @@ -14091,15 +11566,11 @@ input RemoveGroupFromAclInput { groupId: Int } -""" -The output of our `removeGroupFromAcl` mutation. -""" +"""The output of our `removeGroupFromAcl` mutation.""" type RemoveGroupFromAclPayload { acl: Acl - """ - Reads a single `Basemap` that is related to this `Acl`. - """ + """Reads a single `Basemap` that is related to this `Acl`.""" basemap: Basemap """ @@ -14113,20 +11584,14 @@ type RemoveGroupFromAclPayload { """ query: Query - """ - Reads a single `SketchClass` that is related to this `Acl`. - """ + """Reads a single `SketchClass` that is related to this `Acl`.""" sketchClass: SketchClass - """ - Reads a single `TableOfContentsItem` that is related to this `Acl`. - """ + """Reads a single `TableOfContentsItem` that is related to this `Acl`.""" tableOfContentsItem: TableOfContentsItem } -""" -All input for the `removeUserFromGroup` mutation. -""" +"""All input for the `removeUserFromGroup` mutation.""" input RemoveUserFromGroupInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -14137,9 +11602,7 @@ input RemoveUserFromGroupInput { userId: Int } -""" -The output of our `removeUserFromGroup` mutation. -""" +"""The output of our `removeUserFromGroup` mutation.""" type RemoveUserFromGroupPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -14153,9 +11616,7 @@ type RemoveUserFromGroupPayload { query: Query } -""" -All input for the `removeValidChildSketchClass` mutation. -""" +"""All input for the `removeValidChildSketchClass` mutation.""" input RemoveValidChildSketchClassInput { child: Int @@ -14167,9 +11628,7 @@ input RemoveValidChildSketchClassInput { parent: Int } -""" -The output of our `removeValidChildSketchClass` mutation. -""" +"""The output of our `removeValidChildSketchClass` mutation.""" type RemoveValidChildSketchClassPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -14189,9 +11648,7 @@ enum RenderUnderType { NONE } -""" -All input for the `revokeAdminAccess` mutation. -""" +"""All input for the `revokeAdminAccess` mutation.""" input RevokeAdminAccessInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -14202,9 +11659,7 @@ input RevokeAdminAccessInput { userId: Int } -""" -The output of our `revokeAdminAccess` mutation. -""" +"""The output of our `revokeAdminAccess` mutation.""" type RevokeAdminAccessPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -14226,9 +11681,7 @@ type SearchResult { titleHeadline: String } -""" -All input for the `sendAllProjectInvites` mutation. -""" +"""All input for the `sendAllProjectInvites` mutation.""" input SendAllProjectInvitesInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -14238,9 +11691,7 @@ input SendAllProjectInvitesInput { projectId: Int } -""" -The output of our `sendAllProjectInvites` mutation. -""" +"""The output of our `sendAllProjectInvites` mutation.""" type SendAllProjectInvitesPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -14255,9 +11706,7 @@ type SendAllProjectInvitesPayload { query: Query } -""" -All input for the `sendProjectInvites` mutation. -""" +"""All input for the `sendProjectInvites` mutation.""" input SendProjectInvitesInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -14267,9 +11716,7 @@ input SendProjectInvitesInput { inviteIds: [Int] } -""" -The output of our `sendProjectInvites` mutation. -""" +"""The output of our `sendProjectInvites` mutation.""" type SendProjectInvitesPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -14289,9 +11736,7 @@ type SendVerificationEmailResults { success: Boolean! } -""" -All input for the `setFormElementOrder` mutation. -""" +"""All input for the `setFormElementOrder` mutation.""" input SetFormElementOrderInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -14301,9 +11746,7 @@ input SetFormElementOrderInput { elementIds: [Int] } -""" -The output of our `setFormElementOrder` mutation. -""" +"""The output of our `setFormElementOrder` mutation.""" type SetFormElementOrderPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -14318,9 +11761,7 @@ type SetFormElementOrderPayload { query: Query } -""" -All input for the `setFormLogicRuleOrder` mutation. -""" +"""All input for the `setFormLogicRuleOrder` mutation.""" input SetFormLogicRuleOrderInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -14330,9 +11771,7 @@ input SetFormLogicRuleOrderInput { ruleIds: [Int] } -""" -The output of our `setFormLogicRuleOrder` mutation. -""" +"""The output of our `setFormLogicRuleOrder` mutation.""" type SetFormLogicRuleOrderPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -14347,9 +11786,7 @@ type SetFormLogicRuleOrderPayload { query: Query } -""" -All input for the `setForumOrder` mutation. -""" +"""All input for the `setForumOrder` mutation.""" input SetForumOrderInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -14359,9 +11796,7 @@ input SetForumOrderInput { forumIds: [Int] } -""" -The output of our `setForumOrder` mutation. -""" +"""The output of our `setForumOrder` mutation.""" type SetForumOrderPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -14376,9 +11811,7 @@ type SetForumOrderPayload { query: Query } -""" -All input for the `setPostHiddenByModerator` mutation. -""" +"""All input for the `setPostHiddenByModerator` mutation.""" input SetPostHiddenByModeratorInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -14389,9 +11822,7 @@ input SetPostHiddenByModeratorInput { value: Boolean } -""" -The output of our `setPostHiddenByModerator` mutation. -""" +"""The output of our `setPostHiddenByModerator` mutation.""" type SetPostHiddenByModeratorPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -14400,13 +11831,9 @@ type SetPostHiddenByModeratorPayload { clientMutationId: String post: Post - """ - An edge for our `Post`. May be used by Relay 1. - """ + """An edge for our `Post`. May be used by Relay 1.""" postEdge( - """ - The method to use when ordering `Post`. - """ + """The method to use when ordering `Post`.""" orderBy: [PostsOrderBy!] = [PRIMARY_KEY_ASC] ): PostsEdge @@ -14415,15 +11842,11 @@ type SetPostHiddenByModeratorPayload { """ query: Query - """ - Reads a single `Topic` that is related to this `Post`. - """ + """Reads a single `Topic` that is related to this `Post`.""" topic: Topic } -""" -All input for the `setTopicLocked` mutation. -""" +"""All input for the `setTopicLocked` mutation.""" input SetTopicLockedInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -14434,9 +11857,7 @@ input SetTopicLockedInput { value: Boolean } -""" -The output of our `setTopicLocked` mutation. -""" +"""The output of our `setTopicLocked` mutation.""" type SetTopicLockedPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -14444,9 +11865,7 @@ type SetTopicLockedPayload { """ clientMutationId: String - """ - Reads a single `Forum` that is related to this `Topic`. - """ + """Reads a single `Forum` that is related to this `Topic`.""" forum: Forum """ @@ -14455,20 +11874,14 @@ type SetTopicLockedPayload { query: Query topic: Topic - """ - An edge for our `Topic`. May be used by Relay 1. - """ + """An edge for our `Topic`. May be used by Relay 1.""" topicEdge( - """ - The method to use when ordering `Topic`. - """ + """The method to use when ordering `Topic`.""" orderBy: [TopicsOrderBy!] = [PRIMARY_KEY_ASC] ): TopicsEdge } -""" -All input for the `setTopicSticky` mutation. -""" +"""All input for the `setTopicSticky` mutation.""" input SetTopicStickyInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -14479,9 +11892,7 @@ input SetTopicStickyInput { value: Boolean } -""" -The output of our `setTopicSticky` mutation. -""" +"""The output of our `setTopicSticky` mutation.""" type SetTopicStickyPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -14489,9 +11900,7 @@ type SetTopicStickyPayload { """ clientMutationId: String - """ - Reads a single `Forum` that is related to this `Topic`. - """ + """Reads a single `Forum` that is related to this `Topic`.""" forum: Forum """ @@ -14500,13 +11909,9 @@ type SetTopicStickyPayload { query: Query topic: Topic - """ - An edge for our `Topic`. May be used by Relay 1. - """ + """An edge for our `Topic`. May be used by Relay 1.""" topicEdge( - """ - The method to use when ordering `Topic`. - """ + """The method to use when ordering `Topic`.""" orderBy: [TopicsOrderBy!] = [PRIMARY_KEY_ASC] ): TopicsEdge } @@ -14517,9 +11922,7 @@ type setTranslatedPropResult { typeName: String! } -""" -All input for the `setUserGroups` mutation. -""" +"""All input for the `setUserGroups` mutation.""" input SetUserGroupsInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -14531,9 +11934,7 @@ input SetUserGroupsInput { userId: Int } -""" -The output of our `setUserGroups` mutation. -""" +"""The output of our `setUserGroups` mutation.""" type SetUserGroupsPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -14548,9 +11949,7 @@ type SetUserGroupsPayload { query: Query } -""" -All input for the `shareSprite` mutation. -""" +"""All input for the `shareSprite` mutation.""" input ShareSpriteInput { category: String @@ -14562,9 +11961,7 @@ input ShareSpriteInput { spriteId: Int } -""" -The output of our `shareSprite` mutation. -""" +"""The output of our `shareSprite` mutation.""" type ShareSpritePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -14580,14 +11977,15 @@ type ShareSpritePayload { } """ -A *Sketch* is a spatial feature that matches the schema defined by the related +A *Sketch* is a spatial feature that matches the schema defined by the related *SketchClass*. User *Sketches* appears in the user's "My Plans" tab and can be shared in the discussion forum. They are also the gateway to analytical reports. -Sketches are completely owned by individual users, so access control rules -ensure that only the owner of a sketch can perform CRUD operations on them. -Admins have no special access. Use the graphile-generated mutations to manage +Sketches are completely owned by individual users, so access control rules +ensure that only the owner of a sketch can perform CRUD operations on them. +Admins have no special access. Use the graphile-generated mutations to manage these records. + """ type Sketch implements Node { bbox: [Float] @@ -14600,9 +11998,7 @@ type Sketch implements Node { """ childProperties: JSON - """ - Reads a single `Sketch` that is related to this `Sketch`. - """ + """Reads a single `Sketch` that is related to this `Sketch`.""" collection: Sketch """ @@ -14610,9 +12006,7 @@ type Sketch implements Node { """ collectionId: Int - """ - Reads a single `Sketch` that is related to this `Sketch`. - """ + """Reads a single `Sketch` that is related to this `Sketch`.""" copiedFrom: Sketch """ @@ -14627,9 +12021,7 @@ type Sketch implements Node { """ folderId: Int - """ - Reads a single `FormElement` that is related to this `Sketch`. - """ + """Reads a single `FormElement` that is related to this `Sketch`.""" formElement: FormElement formElementId: Int @@ -14651,9 +12043,7 @@ type Sketch implements Node { isCollection: Boolean mercatorGeometry: GeometryGeometry - """ - User provided name for the sketch. - """ + """User provided name for the sketch.""" name: String! """ @@ -14667,14 +12057,10 @@ type Sketch implements Node { responseId: Int sharedInForum: Boolean! - """ - Reads a single `SketchClass` that is related to this `Sketch`. - """ + """Reads a single `SketchClass` that is related to this `Sketch`.""" sketchClass: SketchClass - """ - SketchClass that defines the behavior of this type of sketch. - """ + """SketchClass that defines the behavior of this type of sketch.""" sketchClassId: Int! """ @@ -14684,9 +12070,7 @@ type Sketch implements Node { timestamp: String! updatedAt: Datetime! - """ - Reads a single `User` that is related to this `Sketch`. - """ + """Reads a single `User` that is related to this `Sketch`.""" user: User userAttributes: JSON @@ -14696,9 +12080,7 @@ type Sketch implements Node { """ userGeom: GeometryGeometry - """ - Owner of the sketch. - """ + """Owner of the sketch.""" userId: Int } @@ -14709,23 +12091,23 @@ enum SketchChildType { """ Sketch Classes act as a schema for sketches drawn by users. + """ type SketchClass implements Node { - """ - Reads a single `Acl` that is related to this `SketchClass`. - """ + """Reads a single `Acl` that is related to this `SketchClass`.""" acl: Acl """ - If set to true, a geometry_type of POLYGON would allow for both POLYGONs and - MULTIPOLYGONs after preprocessing or on spatial file upload. Users will still - digitize single features. - - Note that this feature should be used seldomly, since for planning purposes it + If set to true, a geometry_type of POLYGON would allow for both POLYGONs and + MULTIPOLYGONs after preprocessing or on spatial file upload. Users will still + digitize single features. + + Note that this feature should be used seldomly, since for planning purposes it is unlikely to have non-contiguous zones. - - For CHOOSE_FEATURE geometry types, this field will enable the selction of + + For CHOOSE_FEATURE geometry types, this field will enable the selction of multiple features. + """ allowMulti: Boolean! @@ -14736,33 +12118,33 @@ type SketchClass implements Node { """ canDigitize: Boolean - """ - Reads a single `Form` that is related to this `SketchClass`. - """ + """Reads a single `Form` that is related to this `SketchClass`.""" form: Form - """ - Reads a single `FormElement` that is related to this `SketchClass`. - """ + """Reads a single `FormElement` that is related to this `SketchClass`.""" formElement: FormElement """ If set, this sketch class is only for use in a survey indicated by the form_element. + """ formElementId: Int """ Geometry type users digitize. COLLECTION types act as a feature collection and have no drawn geometry. + """ geometryType: SketchGeometryType! """ Name of the report to be displayed. + """ geoprocessingClientName: String """ Endpoint for the client javascript bundle. + """ geoprocessingClientUrl: String @@ -14770,6 +12152,7 @@ type SketchClass implements Node { Root endpoint of a [@seasketch/geoprocessing](https://github.com/seasketch/geoprocessing) project that should be used for reporting. + """ geoprocessingProjectUrl: String id: Int! @@ -14778,20 +12161,20 @@ type SketchClass implements Node { If set to true, (non-admin) users should not be able to digitize new features using this sketch class, but they should still be able to access the sketch class in order to render existing sketches of this type. + """ isArchived: Boolean! isTemplate: Boolean! """ - [Mapbox GL Style](https://docs.mapbox.com/mapbox-gl-js/style-spec/) used to - render features. Sketches can be styled based on attribute data by using + [Mapbox GL Style](https://docs.mapbox.com/mapbox-gl-js/style-spec/) used to + render features. Sketches can be styled based on attribute data by using [Expressions](https://docs.mapbox.com/help/glossary/expression/). + """ mapboxGlStyle: JSON - """ - Label chosen by project admins that is shown to users. - """ + """Label chosen by project admins that is shown to users.""" name: String! """ @@ -14801,35 +12184,23 @@ type SketchClass implements Node { preprocessingEndpoint: String preprocessingProjectUrl: String - """ - Reads a single `Project` that is related to this `SketchClass`. - """ + """Reads a single `Project` that is related to this `SketchClass`.""" project: Project - """ - SketchClasses belong to a single project. - """ + """SketchClasses belong to a single project.""" projectId: Int! - """ - Number of sketches created with this sketch class - """ + """Number of sketches created with this sketch class""" sketchCount: BigInt templateDescription: String translatedProps: JSON! - """ - Reads and enables pagination through a set of `SketchClass`. - """ + """Reads and enables pagination through a set of `SketchClass`.""" validChildren( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [SketchClass!] } @@ -14839,40 +12210,26 @@ A condition to be used against `SketchClass` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input SketchClassCondition { - """ - Checks for equality with the object’s `formElementId` field. - """ + """Checks for equality with the object’s `formElementId` field.""" formElementId: Int - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `projectId` field. - """ + """Checks for equality with the object’s `projectId` field.""" projectId: Int } -""" -A `SketchClass` edge in the connection. -""" +"""A `SketchClass` edge in the connection.""" type SketchClassesEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `SketchClass` at the end of the edge. - """ + """The `SketchClass` at the end of the edge.""" node: SketchClass! } -""" -Methods to use when ordering `SketchClass`. -""" +"""Methods to use when ordering `SketchClass`.""" enum SketchClassesOrderBy { FORM_ELEMENT_ID_ASC FORM_ELEMENT_ID_DESC @@ -14890,30 +12247,34 @@ Represents an update to a `SketchClass`. Fields that are set will be updated. """ input SketchClassPatch { """ - If set to true, a geometry_type of POLYGON would allow for both POLYGONs and - MULTIPOLYGONs after preprocessing or on spatial file upload. Users will still - digitize single features. - - Note that this feature should be used seldomly, since for planning purposes it + If set to true, a geometry_type of POLYGON would allow for both POLYGONs and + MULTIPOLYGONs after preprocessing or on spatial file upload. Users will still + digitize single features. + + Note that this feature should be used seldomly, since for planning purposes it is unlikely to have non-contiguous zones. - - For CHOOSE_FEATURE geometry types, this field will enable the selction of + + For CHOOSE_FEATURE geometry types, this field will enable the selction of multiple features. + """ allowMulti: Boolean """ Geometry type users digitize. COLLECTION types act as a feature collection and have no drawn geometry. + """ geometryType: SketchGeometryType """ Name of the report to be displayed. + """ geoprocessingClientName: String """ Endpoint for the client javascript bundle. + """ geoprocessingClientUrl: String @@ -14921,6 +12282,7 @@ input SketchClassPatch { Root endpoint of a [@seasketch/geoprocessing](https://github.com/seasketch/geoprocessing) project that should be used for reporting. + """ geoprocessingProjectUrl: String @@ -14928,12 +12290,11 @@ input SketchClassPatch { If set to true, (non-admin) users should not be able to digitize new features using this sketch class, but they should still be able to access the sketch class in order to render existing sketches of this type. + """ isArchived: Boolean - """ - Label chosen by project admins that is shown to users. - """ + """Label chosen by project admins that is shown to users.""" name: String preprocessingEndpoint: String preprocessingProjectUrl: String @@ -14947,9 +12308,7 @@ type SketchFolder implements Node { """ collectionId: Int - """ - The parent folder, if any. - """ + """The parent folder, if any.""" folderId: Int id: Int! name: String! @@ -14969,14 +12328,10 @@ A condition to be used against `SketchFolder` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input SketchFolderCondition { - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `userId` field. - """ + """Checks for equality with the object’s `userId` field.""" userId: Int } @@ -14989,9 +12344,7 @@ input SketchFolderPatch { """ collectionId: Int - """ - The parent folder, if any. - """ + """The parent folder, if any.""" folderId: Int id: Int name: String @@ -15001,49 +12354,33 @@ input SketchFolderPatch { userId: Int } -""" -A connection to a list of `SketchFolder` values. -""" +"""A connection to a list of `SketchFolder` values.""" type SketchFoldersConnection { """ A list of edges which contains the `SketchFolder` and cursor to aid in pagination. """ edges: [SketchFoldersEdge!]! - """ - A list of `SketchFolder` objects. - """ + """A list of `SketchFolder` objects.""" nodes: [SketchFolder!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `SketchFolder` you could get from the connection. - """ + """The count of *all* `SketchFolder` you could get from the connection.""" totalCount: Int! } -""" -A `SketchFolder` edge in the connection. -""" +"""A `SketchFolder` edge in the connection.""" type SketchFoldersEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `SketchFolder` at the end of the edge. - """ + """The `SketchFolder` at the end of the edge.""" node: SketchFolder! } -""" -Methods to use when ordering `SketchFolder`. -""" +"""Methods to use when ordering `SketchFolder`.""" enum SketchFoldersOrderBy { ID_ASC ID_DESC @@ -15062,9 +12399,7 @@ enum SketchGeometryType { POLYGON } -""" -All input for the `softDeleteSprite` mutation. -""" +"""All input for the `softDeleteSprite` mutation.""" input SoftDeleteSpriteInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -15074,9 +12409,7 @@ input SoftDeleteSpriteInput { id: Int } -""" -The output of our `softDeleteSprite` mutation. -""" +"""The output of our `softDeleteSprite` mutation.""" type SoftDeleteSpritePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -15098,7 +12431,8 @@ enum SortByDirection { """ Image sprites for use in Mapbox GL Styles. The database holds metadata about the -sprite, the actual images are in cloud storage referenced by the URL parameter. +sprite, the actual images are in cloud storage referenced by the URL parameter. + """ type Sprite implements Node { category: String @@ -15116,33 +12450,23 @@ type Sprite implements Node { """ nodeId: ID! - """ - If unset, sprite will be available for use in all projects - """ + """If unset, sprite will be available for use in all projects""" projectId: Int - """ - Reads and enables pagination through a set of `SpriteImage`. - """ + """Reads and enables pagination through a set of `SpriteImage`.""" spriteImages( """ A condition to be used in determining which values should be returned by the collection. """ condition: SpriteImageCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `SpriteImage`. - """ + """The method to use when ordering `SpriteImage`.""" orderBy: [SpriteImagesOrderBy!] ): [SpriteImage!]! @@ -15153,9 +12477,7 @@ type Sprite implements Node { } type SpriteImage { - """ - Must be <= 1024 - """ + """Must be <= 1024""" height: Int! """ @@ -15165,20 +12487,14 @@ type SpriteImage { """ pixelRatio: Int! - """ - Reads a single `Sprite` that is related to this `SpriteImage`. - """ + """Reads a single `Sprite` that is related to this `SpriteImage`.""" sprite: Sprite spriteId: Int! - """ - Supports multipart Upload operations - """ + """Supports multipart Upload operations""" url: String! - """ - Must be <= 1024 - """ + """Must be <= 1024""" width: Int! } @@ -15187,15 +12503,11 @@ A condition to be used against `SpriteImage` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input SpriteImageCondition { - """ - Checks for equality with the object’s `spriteId` field. - """ + """Checks for equality with the object’s `spriteId` field.""" spriteId: Int } -""" -Methods to use when ordering `SpriteImage`. -""" +"""Methods to use when ordering `SpriteImage`.""" enum SpriteImagesOrderBy { NATURAL SPRITE_ID_ASC @@ -15208,9 +12520,7 @@ enum SpriteType { LINE } -""" -All input for the `submitDataUpload` mutation. -""" +"""All input for the `submitDataUpload` mutation.""" input SubmitDataUploadInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -15220,9 +12530,7 @@ input SubmitDataUploadInput { id: UUID } -""" -The output of our `submitDataUpload` mutation. -""" +"""The output of our `submitDataUpload` mutation.""" type SubmitDataUploadPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -15231,19 +12539,13 @@ type SubmitDataUploadPayload { clientMutationId: String dataUploadTask: DataUploadTask - """ - An edge for our `DataUploadTask`. May be used by Relay 1. - """ + """An edge for our `DataUploadTask`. May be used by Relay 1.""" dataUploadTaskEdge( - """ - The method to use when ordering `DataUploadTask`. - """ + """The method to use when ordering `DataUploadTask`.""" orderBy: [DataUploadTasksOrderBy!] = [PRIMARY_KEY_ASC] ): DataUploadTasksEdge - """ - Reads a single `Project` that is related to this `DataUploadTask`. - """ + """Reads a single `Project` that is related to this `DataUploadTask`.""" project: Project """ @@ -15256,75 +12558,52 @@ type SubmitDataUploadPayload { The root subscription type: contains realtime events you can subscribe to with the `subscription` operation. """ type Subscription { - """ - Triggered on all updates to DataUploadTasks in a project - """ + """Triggered on all updates to DataUploadTasks in a project""" dataUploadTasks(slug: String!): DataUploadTaskSubscriptionPayload - """ - Triggered when a new post is created in the subscribed topic - """ + """Triggered when a new post is created in the subscribed topic""" forumActivity(slug: String!): ForumActivityPayload """ Triggered when the status of a project invite changes, generally because - of a change in the delivery status of a related InviteEmail. Uses + of a change in the delivery status of a related InviteEmail. Uses x-ss-slug to determine appropriate project. """ projectInviteStateUpdated: ProjectInviteStateSubscriptionPayload - """ - Triggered when a project's draft table of contents status changes - """ - updatedDraftTableOfContentsStatus( - slug: String! - ): ProjectDraftTableOfContentsStatusPayload + """Triggered when a project's draft table of contents status changes""" + updatedDraftTableOfContentsStatus(slug: String!): ProjectDraftTableOfContentsStatusPayload - """ - Triggered when a map bookmark is updated - """ + """Triggered when a map bookmark is updated""" updatedMapBookmark(id: UUID!): BookmarkPayload } type Survey implements Node { """ PUBLIC or INVITE_ONLY + """ accessType: SurveyAccessType! archivedResponseCount: Int - """ - Reads and enables pagination through a set of `Basemap`. - """ + """Reads and enables pagination through a set of `Basemap`.""" basemaps( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [Basemap!] - """ - Reads a single `Form` that is related to this `Survey`. - """ + """Reads a single `Form` that is related to this `Survey`.""" form: Form - """ - Reads and enables pagination through a set of `Form`. - """ + """Reads and enables pagination through a set of `Form`.""" formsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -15332,14 +12611,10 @@ type Survey implements Node { """ condition: FormCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -15348,9 +12623,7 @@ type Survey implements Node { """ offset: Int - """ - The method to use when ordering `Form`. - """ + """The method to use when ordering `Form`.""" orderBy: [FormsOrderBy!] = [PRIMARY_KEY_ASC] ): FormsConnection! @deprecated(reason: "Please use form instead") @@ -15360,24 +12633,19 @@ type Survey implements Node { geofence: GeographyPolygon id: Int! - """ - Reads and enables pagination through a set of `Group`. - """ + """Reads and enables pagination through a set of `Group`.""" invitedGroups( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [Group!] """ Disabled surveys will not be accessible to non-admins. Invite email sending will be paused. + """ isDisabled: Boolean! isSpatial: Boolean @@ -15396,9 +12664,7 @@ type Survey implements Node { nodeId: ID! practiceResponseCount: Int - """ - Reads a single `Project` that is related to this `Survey`. - """ + """Reads a single `Project` that is related to this `Survey`.""" project: Project projectId: Int! responsesSpatialExtent: String @@ -15406,75 +12672,54 @@ type Survey implements Node { showProgress: Boolean! """ - Only applicable for public surveys. Show tools to respondants for sharing the + Only applicable for public surveys. Show tools to respondants for sharing the survey on social media to encourage responses. + """ showSocialMediaButtons: Boolean submittedResponseCount: Int supportedLanguages: [String]! - """ - Reads and enables pagination through a set of `SurveyInvitedGroup`. - """ + """Reads and enables pagination through a set of `SurveyInvitedGroup`.""" surveyInvitedGroups( """ A condition to be used in determining which values should be returned by the collection. """ condition: SurveyInvitedGroupCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `SurveyInvitedGroup`. - """ + """The method to use when ordering `SurveyInvitedGroup`.""" orderBy: [SurveyInvitedGroupsOrderBy!] ): [SurveyInvitedGroup!]! - """ - Reads and enables pagination through a set of `SurveyInvite`. - """ + """Reads and enables pagination through a set of `SurveyInvite`.""" surveyInvites( """ A condition to be used in determining which values should be returned by the collection. """ condition: SurveyInviteCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `SurveyInvite`. - """ + """The method to use when ordering `SurveyInvite`.""" orderBy: [SurveyInvitesOrderBy!] ): [SurveyInvite!]! - """ - Reads and enables pagination through a set of `SurveyResponse`. - """ + """Reads and enables pagination through a set of `SurveyResponse`.""" surveyResponsesConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -15482,14 +12727,10 @@ type Survey implements Node { """ condition: SurveyResponseCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -15498,9 +12739,7 @@ type Survey implements Node { """ offset: Int - """ - The method to use when ordering `SurveyResponse`. - """ + """The method to use when ordering `SurveyResponse`.""" orderBy: [SurveyResponsesOrderBy!] = [PRIMARY_KEY_ASC] ): SurveyResponsesConnection! } @@ -15514,14 +12753,10 @@ enum SurveyAccessType { A condition to be used against `Survey` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input SurveyCondition { - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `projectId` field. - """ + """Checks for equality with the object’s `projectId` field.""" projectId: Int } @@ -15548,34 +12783,24 @@ A condition to be used against `SurveyConsentDocument` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input SurveyConsentDocumentCondition { - """ - Checks for equality with the object’s `formElementId` field. - """ + """Checks for equality with the object’s `formElementId` field.""" formElementId: Int - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int } -""" -A connection to a list of `SurveyConsentDocument` values. -""" +"""A connection to a list of `SurveyConsentDocument` values.""" type SurveyConsentDocumentsConnection { """ A list of edges which contains the `SurveyConsentDocument` and cursor to aid in pagination. """ edges: [SurveyConsentDocumentsEdge!]! - """ - A list of `SurveyConsentDocument` objects. - """ + """A list of `SurveyConsentDocument` objects.""" nodes: [SurveyConsentDocument!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! """ @@ -15584,24 +12809,16 @@ type SurveyConsentDocumentsConnection { totalCount: Int! } -""" -A `SurveyConsentDocument` edge in the connection. -""" +"""A `SurveyConsentDocument` edge in the connection.""" type SurveyConsentDocumentsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `SurveyConsentDocument` at the end of the edge. - """ + """The `SurveyConsentDocument` at the end of the edge.""" node: SurveyConsentDocument! } -""" -Methods to use when ordering `SurveyConsentDocument`. -""" +"""Methods to use when ordering `SurveyConsentDocument`.""" enum SurveyConsentDocumentsOrderBy { FORM_ELEMENT_ID_ASC FORM_ELEMENT_ID_DESC @@ -15618,28 +12835,20 @@ type SurveyInvite implements Node { fullname: String id: Int! - """ - Reads and enables pagination through a set of `InviteEmail`. - """ + """Reads and enables pagination through a set of `InviteEmail`.""" inviteEmails( """ A condition to be used in determining which values should be returned by the collection. """ condition: InviteEmailCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int - """ - The method to use when ordering `InviteEmail`. - """ + """The method to use when ordering `InviteEmail`.""" orderBy: [InviteEmailsOrderBy!] ): [InviteEmail!]! @@ -15654,9 +12863,7 @@ type SurveyInvite implements Node { """ status: InviteStatus - """ - Reads a single `Survey` that is related to this `SurveyInvite`. - """ + """Reads a single `Survey` that is related to this `SurveyInvite`.""" survey: Survey surveyId: Int! userId: Int @@ -15668,28 +12875,20 @@ A condition to be used against `SurveyInvite` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input SurveyInviteCondition { - """ - Checks for equality with the object’s `email` field. - """ + """Checks for equality with the object’s `email` field.""" email: Email - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `surveyId` field. - """ + """Checks for equality with the object’s `surveyId` field.""" surveyId: Int } type SurveyInvitedGroup { groupId: Int! - """ - Reads a single `Survey` that is related to this `SurveyInvitedGroup`. - """ + """Reads a single `Survey` that is related to this `SurveyInvitedGroup`.""" survey: Survey surveyId: Int! } @@ -15699,28 +12898,20 @@ A condition to be used against `SurveyInvitedGroup` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input SurveyInvitedGroupCondition { - """ - Checks for equality with the object’s `groupId` field. - """ + """Checks for equality with the object’s `groupId` field.""" groupId: Int - """ - Checks for equality with the object’s `surveyId` field. - """ + """Checks for equality with the object’s `surveyId` field.""" surveyId: Int } -""" -An input for mutations affecting `SurveyInvitedGroup` -""" +"""An input for mutations affecting `SurveyInvitedGroup`""" input SurveyInvitedGroupInput { groupId: Int! surveyId: Int! } -""" -Methods to use when ordering `SurveyInvitedGroup`. -""" +"""Methods to use when ordering `SurveyInvitedGroup`.""" enum SurveyInvitedGroupsOrderBy { GROUP_ID_ASC GROUP_ID_DESC @@ -15741,24 +12932,16 @@ input SurveyInvitePatch { fullname: String } -""" -A `SurveyInvite` edge in the connection. -""" +"""A `SurveyInvite` edge in the connection.""" type SurveyInvitesEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `SurveyInvite` at the end of the edge. - """ + """The `SurveyInvite` at the end of the edge.""" node: SurveyInvite! } -""" -Methods to use when ordering `SurveyInvite`. -""" +"""Methods to use when ordering `SurveyInvite`.""" enum SurveyInvitesOrderBy { EMAIL_ASC EMAIL_DESC @@ -15791,6 +12974,7 @@ Represents an update to a `Survey`. Fields that are set will be updated. input SurveyPatch { """ PUBLIC or INVITE_ONLY + """ accessType: SurveyAccessType @@ -15803,6 +12987,7 @@ input SurveyPatch { """ Disabled surveys will not be accessible to non-admins. Invite email sending will be paused. + """ isDisabled: Boolean @@ -15817,8 +13002,9 @@ input SurveyPatch { showProgress: Boolean """ - Only applicable for public surveys. Show tools to respondants for sharing the + Only applicable for public surveys. Show tools to respondants for sharing the survey on social media to encourage responses. + """ showSocialMediaButtons: Boolean supportedLanguages: [String] @@ -15832,13 +13018,12 @@ type SurveyResponse implements Node { Should be set by the client on submission and tracked by cookies or localStorage. Surveys that permit only a single entry enable users to bypass the limit for legitimate purposes, like entering responses on a shared computer. + """ bypassedDuplicateSubmissionControl: Boolean! createdAt: Datetime! - """ - JSON representation of responses, keyed by the form field export_id - """ + """JSON representation of responses, keyed by the form field export_id""" data: JSON! id: Int! @@ -15849,12 +13034,14 @@ type SurveyResponse implements Node { """ Duplicate entries are detected by matching contact-information field values. + """ isDuplicateEntry: Boolean! """ Detected by comparing ip hashes from previous entries. IP hashes are not tied to particular responses, so only the second and subsequent entries are flagged. + """ isDuplicateIp: Boolean! @@ -15867,6 +13054,7 @@ type SurveyResponse implements Node { """ Unusual or missing user-agent headers on submissions are flagged. May indicate scripting but does not necessarily imply malicious intent. + """ isUnrecognizedUserAgent: Boolean! lastUpdatedByEmail: String @@ -15890,12 +13078,11 @@ type SurveyResponse implements Node { Checked on SUBMISSION, so adding or changing a survey geofence after responses have been submitted will not update values. GPS coordinates and IP addresses are not stored for privacy purposes. + """ outsideGeofence: Boolean! - """ - Reads a single `Survey` that is related to this `SurveyResponse`. - """ + """Reads a single `Survey` that is related to this `SurveyResponse`.""" survey: Survey surveyId: Int! updatedAt: Datetime @@ -15912,19 +13099,13 @@ A condition to be used against `SurveyResponse` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input SurveyResponseCondition { - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `surveyId` field. - """ + """Checks for equality with the object’s `surveyId` field.""" surveyId: Int - """ - Checks for equality with the object’s `userId` field. - """ + """Checks for equality with the object’s `userId` field.""" userId: Int } @@ -15934,9 +13115,7 @@ Represents an update to a `SurveyResponse`. Fields that are set will be updated. input SurveyResponsePatch { archived: Boolean - """ - JSON representation of responses, keyed by the form field export_id - """ + """JSON representation of responses, keyed by the form field export_id""" data: JSON """ @@ -15947,49 +13126,33 @@ input SurveyResponsePatch { updatedAt: Datetime } -""" -A connection to a list of `SurveyResponse` values. -""" +"""A connection to a list of `SurveyResponse` values.""" type SurveyResponsesConnection { """ A list of edges which contains the `SurveyResponse` and cursor to aid in pagination. """ edges: [SurveyResponsesEdge!]! - """ - A list of `SurveyResponse` objects. - """ + """A list of `SurveyResponse` objects.""" nodes: [SurveyResponse!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `SurveyResponse` you could get from the connection. - """ + """The count of *all* `SurveyResponse` you could get from the connection.""" totalCount: Int! } -""" -A `SurveyResponse` edge in the connection. -""" +"""A `SurveyResponse` edge in the connection.""" type SurveyResponsesEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `SurveyResponse` at the end of the edge. - """ + """The `SurveyResponse` at the end of the edge.""" node: SurveyResponse! } -""" -Methods to use when ordering `SurveyResponse`. -""" +"""Methods to use when ordering `SurveyResponse`.""" enum SurveyResponsesOrderBy { ID_ASC ID_DESC @@ -16002,9 +13165,7 @@ enum SurveyResponsesOrderBy { USER_ID_DESC } -""" -Methods to use when ordering `Survey`. -""" +"""Methods to use when ordering `Survey`.""" enum SurveysOrderBy { ID_ASC ID_DESC @@ -16022,19 +13183,18 @@ type SurveyTokenInfo { } """ -TableOfContentsItems represent a tree-view of folders and operational layers -that can be added to the map. Both layers and folders may be nested into other +TableOfContentsItems represent a tree-view of folders and operational layers +that can be added to the map. Both layers and folders may be nested into other folders for organization, and each folder has its own access control list. Items that represent data layers have a `DataLayer` relation, which in turn has -a reference to a `DataSource`. Usually these relations should be fetched in -batch only once the layer is turned on, using the +a reference to a `DataSource`. Usually these relations should be fetched in +batch only once the layer is turned on, using the `dataLayersAndSourcesByLayerId` query. + """ type TableOfContentsItem implements Node { - """ - Reads a single `Acl` that is related to this `TableOfContentsItem`. - """ + """Reads a single `Acl` that is related to this `TableOfContentsItem`.""" acl: Acl """ @@ -16110,11 +13270,13 @@ type TableOfContentsItem implements Node { nodeId: ID! """ - stable_id of the parent folder, if any. This property cannot be changed - directly. To rearrange items into folders, use the + stable_id of the parent folder, if any. This property cannot be changed + directly. To rearrange items into folders, use the `updateTableOfContentsItemParent` mutation. + """ parentStableId: String + primaryDownloadUrl: String project: Project projectId: Int! @@ -16123,24 +13285,21 @@ type TableOfContentsItem implements Node { """ showRadioChildren: Boolean! - """ - Position in the layer list - """ + """Position in the layer list""" sortIndex: Int! """ - The stable_id property must be set by clients when creating new items. [Nanoid](https://github.com/ai/nanoid#readme) - should be used with a custom alphabet that excludes dashes and has a lenght of + The stable_id property must be set by clients when creating new items. [Nanoid](https://github.com/ai/nanoid#readme) + should be used with a custom alphabet that excludes dashes and has a lenght of 9. The purpose of the stable_id is to control the nesting arrangement of items and provide a stable reference for layer visibility settings and map bookmarks. - When published, the id primary key property of the item will change but not the + When published, the id primary key property of the item will change but not the stable_id. + """ stableId: String! - """ - Name used in the table of contents rendering - """ + """Name used in the table of contents rendering""" title: String! translatedProps: JSON! usesDynamicMetadata: Boolean @@ -16151,110 +13310,68 @@ A condition to be used against `TableOfContentsItem` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input TableOfContentsItemCondition { - """ - Checks for equality with the object’s `dataLayerId` field. - """ + """Checks for equality with the object’s `dataLayerId` field.""" dataLayerId: Int - """ - Checks for equality with the object’s `ftsAr` field. - """ + """Checks for equality with the object’s `ftsAr` field.""" ftsAr: String - """ - Checks for equality with the object’s `ftsDa` field. - """ + """Checks for equality with the object’s `ftsDa` field.""" ftsDa: String - """ - Checks for equality with the object’s `ftsDe` field. - """ + """Checks for equality with the object’s `ftsDe` field.""" ftsDe: String - """ - Checks for equality with the object’s `ftsEn` field. - """ + """Checks for equality with the object’s `ftsEn` field.""" ftsEn: String - """ - Checks for equality with the object’s `ftsEs` field. - """ + """Checks for equality with the object’s `ftsEs` field.""" ftsEs: String - """ - Checks for equality with the object’s `ftsFr` field. - """ + """Checks for equality with the object’s `ftsFr` field.""" ftsFr: String - """ - Checks for equality with the object’s `ftsId` field. - """ + """Checks for equality with the object’s `ftsId` field.""" ftsId: String - """ - Checks for equality with the object’s `ftsIt` field. - """ + """Checks for equality with the object’s `ftsIt` field.""" ftsIt: String - """ - Checks for equality with the object’s `ftsLt` field. - """ + """Checks for equality with the object’s `ftsLt` field.""" ftsLt: String - """ - Checks for equality with the object’s `ftsNl` field. - """ + """Checks for equality with the object’s `ftsNl` field.""" ftsNl: String - """ - Checks for equality with the object’s `ftsNo` field. - """ + """Checks for equality with the object’s `ftsNo` field.""" ftsNo: String - """ - Checks for equality with the object’s `ftsPt` field. - """ + """Checks for equality with the object’s `ftsPt` field.""" ftsPt: String - """ - Checks for equality with the object’s `ftsRo` field. - """ + """Checks for equality with the object’s `ftsRo` field.""" ftsRo: String - """ - Checks for equality with the object’s `ftsRu` field. - """ + """Checks for equality with the object’s `ftsRu` field.""" ftsRu: String - """ - Checks for equality with the object’s `ftsSimple` field. - """ + """Checks for equality with the object’s `ftsSimple` field.""" ftsSimple: String - """ - Checks for equality with the object’s `ftsSv` field. - """ + """Checks for equality with the object’s `ftsSv` field.""" ftsSv: String - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int - """ - Checks for equality with the object’s `isDraft` field. - """ + """Checks for equality with the object’s `isDraft` field.""" isDraft: Boolean - """ - Checks for equality with the object’s `projectId` field. - """ + """Checks for equality with the object’s `projectId` field.""" projectId: Int } -""" -An input for mutations affecting `TableOfContentsItem` -""" +"""An input for mutations affecting `TableOfContentsItem`""" input TableOfContentsItemInput { """ If set, users will be able to zoom to the bounds of this item. [minx, miny, maxx, maxy] @@ -16285,9 +13402,10 @@ input TableOfContentsItemInput { metadata: JSON """ - stable_id of the parent folder, if any. This property cannot be changed - directly. To rearrange items into folders, use the + stable_id of the parent folder, if any. This property cannot be changed + directly. To rearrange items into folders, use the `updateTableOfContentsItemParent` mutation. + """ parentStableId: String projectId: Int! @@ -16298,18 +13416,17 @@ input TableOfContentsItemInput { showRadioChildren: Boolean """ - The stable_id property must be set by clients when creating new items. [Nanoid](https://github.com/ai/nanoid#readme) - should be used with a custom alphabet that excludes dashes and has a lenght of + The stable_id property must be set by clients when creating new items. [Nanoid](https://github.com/ai/nanoid#readme) + should be used with a custom alphabet that excludes dashes and has a lenght of 9. The purpose of the stable_id is to control the nesting arrangement of items and provide a stable reference for layer visibility settings and map bookmarks. - When published, the id primary key property of the item will change but not the + When published, the id primary key property of the item will change but not the stable_id. + """ stableId: String! - """ - Name used in the table of contents rendering - """ + """Name used in the table of contents rendering""" title: String! } @@ -16346,30 +13463,22 @@ input TableOfContentsItemPatch { """ showRadioChildren: Boolean - """ - Name used in the table of contents rendering - """ + """Name used in the table of contents rendering""" title: String translatedProps: JSON } -""" -A connection to a list of `TableOfContentsItem` values. -""" +"""A connection to a list of `TableOfContentsItem` values.""" type TableOfContentsItemsConnection { """ A list of edges which contains the `TableOfContentsItem` and cursor to aid in pagination. """ edges: [TableOfContentsItemsEdge!]! - """ - A list of `TableOfContentsItem` objects. - """ + """A list of `TableOfContentsItem` objects.""" nodes: [TableOfContentsItem!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! """ @@ -16378,24 +13487,16 @@ type TableOfContentsItemsConnection { totalCount: Int! } -""" -A `TableOfContentsItem` edge in the connection. -""" +"""A `TableOfContentsItem` edge in the connection.""" type TableOfContentsItemsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `TableOfContentsItem` at the end of the edge. - """ + """The `TableOfContentsItem` at the end of the edge.""" node: TableOfContentsItem! } -""" -Methods to use when ordering `TableOfContentsItem`. -""" +"""Methods to use when ordering `TableOfContentsItem`.""" enum TableOfContentsItemsOrderBy { DATA_LAYER_ID_ASC DATA_LAYER_ID_DESC @@ -16405,8 +13506,6 @@ enum TableOfContentsItemsOrderBy { FTS_DA_DESC FTS_DE_ASC FTS_DE_DESC - FTS_EL_ASC - FTS_EL_DESC FTS_EN_ASC FTS_EN_DESC FTS_ES_ASC @@ -16444,35 +13543,6 @@ enum TableOfContentsItemsOrderBy { PROJECT_ID_DESC } -""" -All input for the `tableOfContentsItemsPrimaryDownloadUrl` mutation. -""" -input TableOfContentsItemsPrimaryDownloadUrlInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - item: TableOfContentsItemInput -} - -""" -The output of our `tableOfContentsItemsPrimaryDownloadUrl` mutation. -""" -type TableOfContentsItemsPrimaryDownloadUrlPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - string: String -} - enum TileScheme { TMS XYZ @@ -16483,9 +13553,7 @@ type TocItemDetails { type: SketchChildType! } -""" -All input for the `toggleAdminAccess` mutation. -""" +"""All input for the `toggleAdminAccess` mutation.""" input ToggleAdminAccessInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -16496,9 +13564,7 @@ input ToggleAdminAccessInput { userId: Int } -""" -The output of our `toggleAdminAccess` mutation. -""" +"""The output of our `toggleAdminAccess` mutation.""" type ToggleAdminAccessPayload { boolean: Boolean @@ -16514,9 +13580,7 @@ type ToggleAdminAccessPayload { query: Query } -""" -All input for the `toggleForumPostingBan` mutation. -""" +"""All input for the `toggleForumPostingBan` mutation.""" input ToggleForumPostingBanInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -16527,9 +13591,7 @@ input ToggleForumPostingBanInput { userId: Int } -""" -The output of our `toggleForumPostingBan` mutation. -""" +"""The output of our `toggleForumPostingBan` mutation.""" type ToggleForumPostingBanPayload { boolean: Boolean @@ -16545,9 +13607,7 @@ type ToggleForumPostingBanPayload { query: Query } -""" -All input for the `toggleLanguageSupport` mutation. -""" +"""All input for the `toggleLanguageSupport` mutation.""" input ToggleLanguageSupportInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -16559,9 +13619,7 @@ input ToggleLanguageSupportInput { slug: String } -""" -The output of our `toggleLanguageSupport` mutation. -""" +"""The output of our `toggleLanguageSupport` mutation.""" type ToggleLanguageSupportPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -16569,19 +13627,13 @@ type ToggleLanguageSupportPayload { """ clientMutationId: String - """ - Reads a single `DataSourcesBucket` that is related to this `Project`. - """ + """Reads a single `DataSourcesBucket` that is related to this `Project`.""" dataSourcesBucket: DataSourcesBucket project: Project - """ - An edge for our `Project`. May be used by Relay 1. - """ + """An edge for our `Project`. May be used by Relay 1.""" projectEdge( - """ - The method to use when ordering `Project`. - """ + """The method to use when ordering `Project`.""" orderBy: [ProjectsOrderBy!] = [PRIMARY_KEY_ASC] ): ProjectsEdge @@ -16591,9 +13643,7 @@ type ToggleLanguageSupportPayload { query: Query } -""" -All input for the `toggleResponsesPractice` mutation. -""" +"""All input for the `toggleResponsesPractice` mutation.""" input ToggleResponsesPracticeInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -16604,9 +13654,7 @@ input ToggleResponsesPracticeInput { isPractice: Boolean } -""" -The output of our `toggleResponsesPractice` mutation. -""" +"""The output of our `toggleResponsesPractice` mutation.""" type ToggleResponsesPracticePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -16626,14 +13674,13 @@ type Topic implements Node { """ User Profile of the author. If a user has not shared their profile the first post contents will be hidden. + """ authorProfile: Profile blurb: String createdAt: Datetime! - """ - Reads a single `Forum` that is related to this `Topic`. - """ + """Reads a single `Forum` that is related to this `Topic`.""" forum: Forum forumId: Int! id: Int! @@ -16641,8 +13688,9 @@ type Topic implements Node { """ Locked topics can only be posted to by project admins and will display a lock symbol. - + Can be toggled by project admins using `setTopicLocked()` mutation. + """ locked: Boolean! @@ -16652,28 +13700,18 @@ type Topic implements Node { nodeId: ID! participantCount: Int - """ - Reads and enables pagination through a set of `Profile`. - """ + """Reads and enables pagination through a set of `Profile`.""" participantsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -16683,18 +13721,12 @@ type Topic implements Node { offset: Int ): ProfilesConnection! - """ - Reads and enables pagination through a set of `Post`. - """ + """Reads and enables pagination through a set of `Post`.""" postsConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -16702,14 +13734,10 @@ type Topic implements Node { """ condition: PostCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -16718,17 +13746,16 @@ type Topic implements Node { """ offset: Int - """ - The method to use when ordering `Post`. - """ + """The method to use when ordering `Post`.""" orderBy: [PostsOrderBy!] = [PRIMARY_KEY_ASC] ): PostsConnection! postsCount: Int """ Sticky topics will be listed at the topic of the forum. - + Can be toggled by project admins using `setTopicSticky()` mutation. + """ sticky: Boolean! @@ -16742,14 +13769,10 @@ type Topic implements Node { A condition to be used against `Topic` object types. All fields are tested for equality and combined with a logical ‘and.’ """ input TopicCondition { - """ - Checks for equality with the object’s `forumId` field. - """ + """Checks for equality with the object’s `forumId` field.""" forumId: Int - """ - Checks for equality with the object’s `id` field. - """ + """Checks for equality with the object’s `id` field.""" id: Int } @@ -16759,15 +13782,17 @@ Represents an update to a `Topic`. Fields that are set will be updated. input TopicPatch { """ Locked topics can only be posted to by project admins and will display a lock symbol. - + Can be toggled by project admins using `setTopicLocked()` mutation. + """ locked: Boolean """ Sticky topics will be listed at the topic of the forum. - + Can be toggled by project admins using `setTopicSticky()` mutation. + """ sticky: Boolean @@ -16777,49 +13802,33 @@ input TopicPatch { title: String } -""" -A connection to a list of `Topic` values. -""" +"""A connection to a list of `Topic` values.""" type TopicsConnection { """ A list of edges which contains the `Topic` and cursor to aid in pagination. """ edges: [TopicsEdge!]! - """ - A list of `Topic` objects. - """ + """A list of `Topic` objects.""" nodes: [Topic!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `Topic` you could get from the connection. - """ + """The count of *all* `Topic` you could get from the connection.""" totalCount: Int! } -""" -A `Topic` edge in the connection. -""" +"""A `Topic` edge in the connection.""" type TopicsEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `Topic` at the end of the edge. - """ + """The `Topic` at the end of the edge.""" node: Topic! } -""" -Methods to use when ordering `Topic`. -""" +"""Methods to use when ordering `Topic`.""" enum TopicsOrderBy { FORUM_ID_ASC FORUM_ID_DESC @@ -16877,9 +13886,7 @@ type UnsplashUser { username: String! } -""" -All input for the `updateAclByBasemapId` mutation. -""" +"""All input for the `updateAclByBasemapId` mutation.""" input UpdateAclByBasemapIdInput { basemapId: Int! @@ -16895,9 +13902,7 @@ input UpdateAclByBasemapIdInput { patch: AclPatch! } -""" -All input for the `updateAclByNodeId` mutation. -""" +"""All input for the `updateAclByNodeId` mutation.""" input UpdateAclByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -16916,9 +13921,7 @@ input UpdateAclByNodeIdInput { patch: AclPatch! } -""" -All input for the `updateAclBySketchClassId` mutation. -""" +"""All input for the `updateAclBySketchClassId` mutation.""" input UpdateAclBySketchClassIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -16933,9 +13936,7 @@ input UpdateAclBySketchClassIdInput { sketchClassId: Int! } -""" -All input for the `updateAclByTableOfContentsItemId` mutation. -""" +"""All input for the `updateAclByTableOfContentsItemId` mutation.""" input UpdateAclByTableOfContentsItemIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -16950,9 +13951,7 @@ input UpdateAclByTableOfContentsItemIdInput { tableOfContentsItemId: Int! } -""" -All input for the `updateAcl` mutation. -""" +"""All input for the `updateAcl` mutation.""" input UpdateAclInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -16967,18 +13966,12 @@ input UpdateAclInput { patch: AclPatch! } -""" -The output of our update `Acl` mutation. -""" +"""The output of our update `Acl` mutation.""" type UpdateAclPayload { - """ - The `Acl` that was updated by this mutation. - """ + """The `Acl` that was updated by this mutation.""" acl: Acl - """ - Reads a single `Basemap` that is related to this `Acl`. - """ + """Reads a single `Basemap` that is related to this `Acl`.""" basemap: Basemap """ @@ -16992,20 +13985,14 @@ type UpdateAclPayload { """ query: Query - """ - Reads a single `SketchClass` that is related to this `Acl`. - """ + """Reads a single `SketchClass` that is related to this `Acl`.""" sketchClass: SketchClass - """ - Reads a single `TableOfContentsItem` that is related to this `Acl`. - """ + """Reads a single `TableOfContentsItem` that is related to this `Acl`.""" tableOfContentsItem: TableOfContentsItem } -""" -All input for the `updateBasemapByNodeId` mutation. -""" +"""All input for the `updateBasemapByNodeId` mutation.""" input UpdateBasemapByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17024,9 +14011,7 @@ input UpdateBasemapByNodeIdInput { patch: BasemapPatch! } -""" -All input for the `updateBasemap` mutation. -""" +"""All input for the `updateBasemap` mutation.""" input UpdateBasemapInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17041,9 +14026,7 @@ input UpdateBasemapInput { patch: BasemapPatch! } -""" -All input for the `updateBasemapOfflineTileSettings` mutation. -""" +"""All input for the `updateBasemapOfflineTileSettings` mutation.""" input UpdateBasemapOfflineTileSettingsInput { basemapId: Int @@ -17058,19 +14041,13 @@ input UpdateBasemapOfflineTileSettingsInput { useDefault: Boolean } -""" -The output of our `updateBasemapOfflineTileSettings` mutation. -""" +"""The output of our `updateBasemapOfflineTileSettings` mutation.""" type UpdateBasemapOfflineTileSettingsPayload { basemap: Basemap - """ - An edge for our `Basemap`. May be used by Relay 1. - """ + """An edge for our `Basemap`. May be used by Relay 1.""" basemapEdge( - """ - The method to use when ordering `Basemap`. - """ + """The method to use when ordering `Basemap`.""" orderBy: [BasemapsOrderBy!] = [PRIMARY_KEY_ASC] ): BasemapsEdge @@ -17085,9 +14062,7 @@ type UpdateBasemapOfflineTileSettingsPayload { """ interactivitySettings: InteractivitySetting - """ - Reads a single `Project` that is related to this `Basemap`. - """ + """Reads a single `Project` that is related to this `Basemap`.""" project: Project """ @@ -17096,22 +14071,14 @@ type UpdateBasemapOfflineTileSettingsPayload { query: Query } -""" -The output of our update `Basemap` mutation. -""" +"""The output of our update `Basemap` mutation.""" type UpdateBasemapPayload { - """ - The `Basemap` that was updated by this mutation. - """ + """The `Basemap` that was updated by this mutation.""" basemap: Basemap - """ - An edge for our `Basemap`. May be used by Relay 1. - """ + """An edge for our `Basemap`. May be used by Relay 1.""" basemapEdge( - """ - The method to use when ordering `Basemap`. - """ + """The method to use when ordering `Basemap`.""" orderBy: [BasemapsOrderBy!] = [PRIMARY_KEY_ASC] ): BasemapsEdge @@ -17126,9 +14093,7 @@ type UpdateBasemapPayload { """ interactivitySettings: InteractivitySetting - """ - Reads a single `Project` that is related to this `Basemap`. - """ + """Reads a single `Project` that is related to this `Basemap`.""" project: Project """ @@ -17137,9 +14102,7 @@ type UpdateBasemapPayload { query: Query } -""" -All input for the `updateCommunityGuidelineByNodeId` mutation. -""" +"""All input for the `updateCommunityGuidelineByNodeId` mutation.""" input UpdateCommunityGuidelineByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17158,9 +14121,7 @@ input UpdateCommunityGuidelineByNodeIdInput { patch: CommunityGuidelinePatch! } -""" -All input for the `updateCommunityGuideline` mutation. -""" +"""All input for the `updateCommunityGuideline` mutation.""" input UpdateCommunityGuidelineInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17175,9 +14136,7 @@ input UpdateCommunityGuidelineInput { projectId: Int! } -""" -The output of our update `CommunityGuideline` mutation. -""" +"""The output of our update `CommunityGuideline` mutation.""" type UpdateCommunityGuidelinePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -17185,14 +14144,10 @@ type UpdateCommunityGuidelinePayload { """ clientMutationId: String - """ - The `CommunityGuideline` that was updated by this mutation. - """ + """The `CommunityGuideline` that was updated by this mutation.""" communityGuideline: CommunityGuideline - """ - Reads a single `Project` that is related to this `CommunityGuideline`. - """ + """Reads a single `Project` that is related to this `CommunityGuideline`.""" project: Project """ @@ -17201,9 +14156,7 @@ type UpdateCommunityGuidelinePayload { query: Query } -""" -All input for the `updateDataHostingQuota` mutation. -""" +"""All input for the `updateDataHostingQuota` mutation.""" input UpdateDataHostingQuotaInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17214,9 +14167,7 @@ input UpdateDataHostingQuotaInput { quota: BigInt } -""" -The output of our `updateDataHostingQuota` mutation. -""" +"""The output of our `updateDataHostingQuota` mutation.""" type UpdateDataHostingQuotaPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -17224,19 +14175,13 @@ type UpdateDataHostingQuotaPayload { """ clientMutationId: String - """ - Reads a single `DataSourcesBucket` that is related to this `Project`. - """ + """Reads a single `DataSourcesBucket` that is related to this `Project`.""" dataSourcesBucket: DataSourcesBucket project: Project - """ - An edge for our `Project`. May be used by Relay 1. - """ + """An edge for our `Project`. May be used by Relay 1.""" projectEdge( - """ - The method to use when ordering `Project`. - """ + """The method to use when ordering `Project`.""" orderBy: [ProjectsOrderBy!] = [PRIMARY_KEY_ASC] ): ProjectsEdge @@ -17246,9 +14191,7 @@ type UpdateDataHostingQuotaPayload { query: Query } -""" -All input for the `updateDataLayerByInteractivitySettingsId` mutation. -""" +"""All input for the `updateDataLayerByInteractivitySettingsId` mutation.""" input UpdateDataLayerByInteractivitySettingsIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17263,9 +14206,7 @@ input UpdateDataLayerByInteractivitySettingsIdInput { patch: DataLayerPatch! } -""" -All input for the `updateDataLayerByNodeId` mutation. -""" +"""All input for the `updateDataLayerByNodeId` mutation.""" input UpdateDataLayerByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17284,9 +14225,7 @@ input UpdateDataLayerByNodeIdInput { patch: DataLayerPatch! } -""" -All input for the `updateDataLayer` mutation. -""" +"""All input for the `updateDataLayer` mutation.""" input UpdateDataLayerInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17301,9 +14240,7 @@ input UpdateDataLayerInput { patch: DataLayerPatch! } -""" -The output of our update `DataLayer` mutation. -""" +"""The output of our update `DataLayer` mutation.""" type UpdateDataLayerPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -17311,24 +14248,16 @@ type UpdateDataLayerPayload { """ clientMutationId: String - """ - The `DataLayer` that was updated by this mutation. - """ + """The `DataLayer` that was updated by this mutation.""" dataLayer: DataLayer - """ - An edge for our `DataLayer`. May be used by Relay 1. - """ + """An edge for our `DataLayer`. May be used by Relay 1.""" dataLayerEdge( - """ - The method to use when ordering `DataLayer`. - """ + """The method to use when ordering `DataLayer`.""" orderBy: [DataLayersOrderBy!] = [PRIMARY_KEY_ASC] ): DataLayersEdge - """ - Reads a single `DataSource` that is related to this `DataLayer`. - """ + """Reads a single `DataSource` that is related to this `DataLayer`.""" dataSource: DataSource """ @@ -17342,9 +14271,7 @@ type UpdateDataLayerPayload { query: Query } -""" -All input for the `updateDataSourceByNodeId` mutation. -""" +"""All input for the `updateDataSourceByNodeId` mutation.""" input UpdateDataSourceByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17363,9 +14290,7 @@ input UpdateDataSourceByNodeIdInput { patch: DataSourcePatch! } -""" -All input for the `updateDataSource` mutation. -""" +"""All input for the `updateDataSource` mutation.""" input UpdateDataSourceInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17373,9 +14298,7 @@ input UpdateDataSourceInput { """ clientMutationId: String - """ - Should be used as sourceId in stylesheets. - """ + """Should be used as sourceId in stylesheets.""" id: Int! """ @@ -17384,9 +14307,7 @@ input UpdateDataSourceInput { patch: DataSourcePatch! } -""" -The output of our update `DataSource` mutation. -""" +"""The output of our update `DataSource` mutation.""" type UpdateDataSourcePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -17394,18 +14315,12 @@ type UpdateDataSourcePayload { """ clientMutationId: String - """ - The `DataSource` that was updated by this mutation. - """ + """The `DataSource` that was updated by this mutation.""" dataSource: DataSource - """ - An edge for our `DataSource`. May be used by Relay 1. - """ + """An edge for our `DataSource`. May be used by Relay 1.""" dataSourceEdge( - """ - The method to use when ordering `DataSource`. - """ + """The method to use when ordering `DataSource`.""" orderBy: [DataSourcesOrderBy!] = [PRIMARY_KEY_ASC] ): DataSourcesEdge @@ -17432,9 +14347,7 @@ input UpdateEmailNotificationPreferenceByUserIdInput { userId: Int! } -""" -The output of our update `EmailNotificationPreference` mutation. -""" +"""The output of our update `EmailNotificationPreference` mutation.""" type UpdateEmailNotificationPreferencePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -17442,18 +14355,12 @@ type UpdateEmailNotificationPreferencePayload { """ clientMutationId: String - """ - The `EmailNotificationPreference` that was updated by this mutation. - """ + """The `EmailNotificationPreference` that was updated by this mutation.""" emailNotificationPreference: EmailNotificationPreference - """ - An edge for our `EmailNotificationPreference`. May be used by Relay 1. - """ + """An edge for our `EmailNotificationPreference`. May be used by Relay 1.""" emailNotificationPreferenceEdge( - """ - The method to use when ordering `EmailNotificationPreference`. - """ + """The method to use when ordering `EmailNotificationPreference`.""" orderBy: [EmailNotificationPreferencesOrderBy!] = [NATURAL] ): EmailNotificationPreferencesEdge @@ -17468,9 +14375,7 @@ type UpdateEmailNotificationPreferencePayload { user: User } -""" -All input for the `updateFormByNodeId` mutation. -""" +"""All input for the `updateFormByNodeId` mutation.""" input UpdateFormByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17489,9 +14394,7 @@ input UpdateFormByNodeIdInput { patch: FormPatch! } -""" -All input for the `updateFormBySketchClassId` mutation. -""" +"""All input for the `updateFormBySketchClassId` mutation.""" input UpdateFormBySketchClassIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17504,15 +14407,11 @@ input UpdateFormBySketchClassIdInput { """ patch: FormPatch! - """ - Related *SketchClass* - """ + """Related *SketchClass*""" sketchClassId: Int! } -""" -All input for the `updateFormBySurveyId` mutation. -""" +"""All input for the `updateFormBySurveyId` mutation.""" input UpdateFormBySurveyIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17525,15 +14424,11 @@ input UpdateFormBySurveyIdInput { """ patch: FormPatch! - """ - Related *Survey* - """ + """Related *Survey*""" surveyId: Int! } -""" -All input for the `updateFormElementByNodeId` mutation. -""" +"""All input for the `updateFormElementByNodeId` mutation.""" input UpdateFormElementByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17552,9 +14447,7 @@ input UpdateFormElementByNodeIdInput { patch: FormElementPatch! } -""" -All input for the `updateFormElement` mutation. -""" +"""All input for the `updateFormElement` mutation.""" input UpdateFormElementInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17569,9 +14462,7 @@ input UpdateFormElementInput { patch: FormElementPatch! } -""" -The output of our update `FormElement` mutation. -""" +"""The output of our update `FormElement` mutation.""" type UpdateFormElementPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -17579,18 +14470,12 @@ type UpdateFormElementPayload { """ clientMutationId: String - """ - The `FormElement` that was updated by this mutation. - """ + """The `FormElement` that was updated by this mutation.""" formElement: FormElement - """ - An edge for our `FormElement`. May be used by Relay 1. - """ + """An edge for our `FormElement`. May be used by Relay 1.""" formElementEdge( - """ - The method to use when ordering `FormElement`. - """ + """The method to use when ordering `FormElement`.""" orderBy: [FormElementsOrderBy!] = [PRIMARY_KEY_ASC] ): FormElementsEdge @@ -17600,9 +14485,7 @@ type UpdateFormElementPayload { query: Query } -""" -All input for the `updateForm` mutation. -""" +"""All input for the `updateForm` mutation.""" input UpdateFormInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17617,9 +14500,7 @@ input UpdateFormInput { patch: FormPatch! } -""" -All input for the `updateFormLogicConditionByNodeId` mutation. -""" +"""All input for the `updateFormLogicConditionByNodeId` mutation.""" input UpdateFormLogicConditionByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17638,9 +14519,7 @@ input UpdateFormLogicConditionByNodeIdInput { patch: FormLogicConditionPatch! } -""" -All input for the `updateFormLogicCondition` mutation. -""" +"""All input for the `updateFormLogicCondition` mutation.""" input UpdateFormLogicConditionInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17655,9 +14534,7 @@ input UpdateFormLogicConditionInput { patch: FormLogicConditionPatch! } -""" -The output of our update `FormLogicCondition` mutation. -""" +"""The output of our update `FormLogicCondition` mutation.""" type UpdateFormLogicConditionPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -17665,18 +14542,12 @@ type UpdateFormLogicConditionPayload { """ clientMutationId: String - """ - The `FormLogicCondition` that was updated by this mutation. - """ + """The `FormLogicCondition` that was updated by this mutation.""" formLogicCondition: FormLogicCondition - """ - An edge for our `FormLogicCondition`. May be used by Relay 1. - """ + """An edge for our `FormLogicCondition`. May be used by Relay 1.""" formLogicConditionEdge( - """ - The method to use when ordering `FormLogicCondition`. - """ + """The method to use when ordering `FormLogicCondition`.""" orderBy: [FormLogicConditionsOrderBy!] = [PRIMARY_KEY_ASC] ): FormLogicConditionsEdge @@ -17686,9 +14557,7 @@ type UpdateFormLogicConditionPayload { query: Query } -""" -All input for the `updateFormLogicRuleByNodeId` mutation. -""" +"""All input for the `updateFormLogicRuleByNodeId` mutation.""" input UpdateFormLogicRuleByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17707,9 +14576,7 @@ input UpdateFormLogicRuleByNodeIdInput { patch: FormLogicRulePatch! } -""" -All input for the `updateFormLogicRule` mutation. -""" +"""All input for the `updateFormLogicRule` mutation.""" input UpdateFormLogicRuleInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17724,9 +14591,7 @@ input UpdateFormLogicRuleInput { patch: FormLogicRulePatch! } -""" -The output of our update `FormLogicRule` mutation. -""" +"""The output of our update `FormLogicRule` mutation.""" type UpdateFormLogicRulePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -17734,18 +14599,12 @@ type UpdateFormLogicRulePayload { """ clientMutationId: String - """ - The `FormLogicRule` that was updated by this mutation. - """ + """The `FormLogicRule` that was updated by this mutation.""" formLogicRule: FormLogicRule - """ - An edge for our `FormLogicRule`. May be used by Relay 1. - """ + """An edge for our `FormLogicRule`. May be used by Relay 1.""" formLogicRuleEdge( - """ - The method to use when ordering `FormLogicRule`. - """ + """The method to use when ordering `FormLogicRule`.""" orderBy: [FormLogicRulesOrderBy!] = [PRIMARY_KEY_ASC] ): FormLogicRulesEdge @@ -17755,9 +14614,7 @@ type UpdateFormLogicRulePayload { query: Query } -""" -The output of our update `Form` mutation. -""" +"""The output of our update `Form` mutation.""" type UpdateFormPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -17765,18 +14622,12 @@ type UpdateFormPayload { """ clientMutationId: String - """ - The `Form` that was updated by this mutation. - """ + """The `Form` that was updated by this mutation.""" form: Form - """ - An edge for our `Form`. May be used by Relay 1. - """ + """An edge for our `Form`. May be used by Relay 1.""" formEdge( - """ - The method to use when ordering `Form`. - """ + """The method to use when ordering `Form`.""" orderBy: [FormsOrderBy!] = [PRIMARY_KEY_ASC] ): FormsEdge @@ -17785,20 +14636,14 @@ type UpdateFormPayload { """ query: Query - """ - Reads a single `SketchClass` that is related to this `Form`. - """ + """Reads a single `SketchClass` that is related to this `Form`.""" sketchClass: SketchClass - """ - Reads a single `Survey` that is related to this `Form`. - """ + """Reads a single `Survey` that is related to this `Form`.""" survey: Survey } -""" -All input for the `updateForumByNodeId` mutation. -""" +"""All input for the `updateForumByNodeId` mutation.""" input UpdateForumByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17817,9 +14662,7 @@ input UpdateForumByNodeIdInput { patch: ForumPatch! } -""" -All input for the `updateForum` mutation. -""" +"""All input for the `updateForum` mutation.""" input UpdateForumInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17834,9 +14677,7 @@ input UpdateForumInput { patch: ForumPatch! } -""" -The output of our update `Forum` mutation. -""" +"""The output of our update `Forum` mutation.""" type UpdateForumPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -17844,24 +14685,16 @@ type UpdateForumPayload { """ clientMutationId: String - """ - The `Forum` that was updated by this mutation. - """ + """The `Forum` that was updated by this mutation.""" forum: Forum - """ - An edge for our `Forum`. May be used by Relay 1. - """ + """An edge for our `Forum`. May be used by Relay 1.""" forumEdge( - """ - The method to use when ordering `Forum`. - """ + """The method to use when ordering `Forum`.""" orderBy: [ForumsOrderBy!] = [PRIMARY_KEY_ASC] ): ForumsEdge - """ - Reads a single `Project` that is related to this `Forum`. - """ + """Reads a single `Project` that is related to this `Forum`.""" project: Project """ @@ -17870,9 +14703,7 @@ type UpdateForumPayload { query: Query } -""" -All input for the `updateGroupByNodeId` mutation. -""" +"""All input for the `updateGroupByNodeId` mutation.""" input UpdateGroupByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17891,9 +14722,7 @@ input UpdateGroupByNodeIdInput { patch: GroupPatch! } -""" -All input for the `updateGroupByProjectIdAndName` mutation. -""" +"""All input for the `updateGroupByProjectIdAndName` mutation.""" input UpdateGroupByProjectIdAndNameInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17901,9 +14730,7 @@ input UpdateGroupByProjectIdAndNameInput { """ clientMutationId: String - """ - Label for the group. - """ + """Label for the group.""" name: String! """ @@ -17913,9 +14740,7 @@ input UpdateGroupByProjectIdAndNameInput { projectId: Int! } -""" -All input for the `updateGroup` mutation. -""" +"""All input for the `updateGroup` mutation.""" input UpdateGroupInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17930,9 +14755,7 @@ input UpdateGroupInput { patch: GroupPatch! } -""" -The output of our update `Group` mutation. -""" +"""The output of our update `Group` mutation.""" type UpdateGroupPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -17940,14 +14763,10 @@ type UpdateGroupPayload { """ clientMutationId: String - """ - The `Group` that was updated by this mutation. - """ + """The `Group` that was updated by this mutation.""" group: Group - """ - Reads a single `Project` that is related to this `Group`. - """ + """Reads a single `Project` that is related to this `Group`.""" project: Project """ @@ -17956,9 +14775,7 @@ type UpdateGroupPayload { query: Query } -""" -All input for the `updateInteractivitySettingByNodeId` mutation. -""" +"""All input for the `updateInteractivitySettingByNodeId` mutation.""" input UpdateInteractivitySettingByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17977,9 +14794,7 @@ input UpdateInteractivitySettingByNodeIdInput { patch: InteractivitySettingPatch! } -""" -All input for the `updateInteractivitySetting` mutation. -""" +"""All input for the `updateInteractivitySetting` mutation.""" input UpdateInteractivitySettingInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -17994,9 +14809,7 @@ input UpdateInteractivitySettingInput { patch: InteractivitySettingPatch! } -""" -The output of our update `InteractivitySetting` mutation. -""" +"""The output of our update `InteractivitySetting` mutation.""" type UpdateInteractivitySettingPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -18004,9 +14817,7 @@ type UpdateInteractivitySettingPayload { """ clientMutationId: String - """ - The `InteractivitySetting` that was updated by this mutation. - """ + """The `InteractivitySetting` that was updated by this mutation.""" interactivitySetting: InteractivitySetting """ @@ -18015,9 +14826,7 @@ type UpdateInteractivitySettingPayload { query: Query } -""" -All input for the `updateMapboxSecretKey` mutation. -""" +"""All input for the `updateMapboxSecretKey` mutation.""" input UpdateMapboxSecretKeyInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18028,9 +14837,7 @@ input UpdateMapboxSecretKeyInput { secret: String } -""" -The output of our `updateMapboxSecretKey` mutation. -""" +"""The output of our `updateMapboxSecretKey` mutation.""" type UpdateMapboxSecretKeyPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -18038,19 +14845,13 @@ type UpdateMapboxSecretKeyPayload { """ clientMutationId: String - """ - Reads a single `DataSourcesBucket` that is related to this `Project`. - """ + """Reads a single `DataSourcesBucket` that is related to this `Project`.""" dataSourcesBucket: DataSourcesBucket project: Project - """ - An edge for our `Project`. May be used by Relay 1. - """ + """An edge for our `Project`. May be used by Relay 1.""" projectEdge( - """ - The method to use when ordering `Project`. - """ + """The method to use when ordering `Project`.""" orderBy: [ProjectsOrderBy!] = [PRIMARY_KEY_ASC] ): ProjectsEdge @@ -18060,9 +14861,7 @@ type UpdateMapboxSecretKeyPayload { query: Query } -""" -All input for the `updateOfflineTileSettingByNodeId` mutation. -""" +"""All input for the `updateOfflineTileSettingByNodeId` mutation.""" input UpdateOfflineTileSettingByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18100,9 +14899,7 @@ input UpdateOfflineTileSettingByProjectIdAndBasemapIdInput { projectId: Int! } -""" -All input for the `updateOfflineTileSetting` mutation. -""" +"""All input for the `updateOfflineTileSetting` mutation.""" input UpdateOfflineTileSettingInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18117,13 +14914,9 @@ input UpdateOfflineTileSettingInput { patch: OfflineTileSettingPatch! } -""" -The output of our update `OfflineTileSetting` mutation. -""" +"""The output of our update `OfflineTileSetting` mutation.""" type UpdateOfflineTileSettingPayload { - """ - Reads a single `Basemap` that is related to this `OfflineTileSetting`. - """ + """Reads a single `Basemap` that is related to this `OfflineTileSetting`.""" basemap: Basemap """ @@ -18132,14 +14925,10 @@ type UpdateOfflineTileSettingPayload { """ clientMutationId: String - """ - The `OfflineTileSetting` that was updated by this mutation. - """ + """The `OfflineTileSetting` that was updated by this mutation.""" offlineTileSetting: OfflineTileSetting - """ - Reads a single `Project` that is related to this `OfflineTileSetting`. - """ + """Reads a single `Project` that is related to this `OfflineTileSetting`.""" project: Project """ @@ -18148,9 +14937,7 @@ type UpdateOfflineTileSettingPayload { query: Query } -""" -All input for the `updateOptionalBasemapLayerByNodeId` mutation. -""" +"""All input for the `updateOptionalBasemapLayerByNodeId` mutation.""" input UpdateOptionalBasemapLayerByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18169,9 +14956,7 @@ input UpdateOptionalBasemapLayerByNodeIdInput { patch: OptionalBasemapLayerPatch! } -""" -All input for the `updateOptionalBasemapLayer` mutation. -""" +"""All input for the `updateOptionalBasemapLayer` mutation.""" input UpdateOptionalBasemapLayerInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18186,9 +14971,7 @@ input UpdateOptionalBasemapLayerInput { patch: OptionalBasemapLayerPatch! } -""" -The output of our update `OptionalBasemapLayer` mutation. -""" +"""The output of our update `OptionalBasemapLayer` mutation.""" type UpdateOptionalBasemapLayerPayload { """ Reads a single `Basemap` that is related to this `OptionalBasemapLayer`. @@ -18201,9 +14984,7 @@ type UpdateOptionalBasemapLayerPayload { """ clientMutationId: String - """ - The `OptionalBasemapLayer` that was updated by this mutation. - """ + """The `OptionalBasemapLayer` that was updated by this mutation.""" optionalBasemapLayer: OptionalBasemapLayer """ @@ -18212,9 +14993,7 @@ type UpdateOptionalBasemapLayerPayload { query: Query } -""" -All input for the `updatePost` mutation. -""" +"""All input for the `updatePost` mutation.""" input UpdatePostInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18225,9 +15004,7 @@ input UpdatePostInput { postId: Int } -""" -The output of our `updatePost` mutation. -""" +"""The output of our `updatePost` mutation.""" type UpdatePostPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -18236,13 +15013,9 @@ type UpdatePostPayload { clientMutationId: String post: Post - """ - An edge for our `Post`. May be used by Relay 1. - """ + """An edge for our `Post`. May be used by Relay 1.""" postEdge( - """ - The method to use when ordering `Post`. - """ + """The method to use when ordering `Post`.""" orderBy: [PostsOrderBy!] = [PRIMARY_KEY_ASC] ): PostsEdge @@ -18251,15 +15024,11 @@ type UpdatePostPayload { """ query: Query - """ - Reads a single `Topic` that is related to this `Post`. - """ + """Reads a single `Topic` that is related to this `Post`.""" topic: Topic } -""" -All input for the `updateProfileByUserId` mutation. -""" +"""All input for the `updateProfileByUserId` mutation.""" input UpdateProfileByUserIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18274,9 +15043,7 @@ input UpdateProfileByUserIdInput { userId: Int! } -""" -The output of our update `Profile` mutation. -""" +"""The output of our update `Profile` mutation.""" type UpdateProfilePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -18284,18 +15051,12 @@ type UpdateProfilePayload { """ clientMutationId: String - """ - The `Profile` that was updated by this mutation. - """ + """The `Profile` that was updated by this mutation.""" profile: Profile - """ - An edge for our `Profile`. May be used by Relay 1. - """ + """An edge for our `Profile`. May be used by Relay 1.""" profileEdge( - """ - The method to use when ordering `Profile`. - """ + """The method to use when ordering `Profile`.""" orderBy: [ProfilesOrderBy!] = [NATURAL] ): ProfilesEdge @@ -18304,15 +15065,11 @@ type UpdateProfilePayload { """ query: Query - """ - Reads a single `User` that is related to this `Profile`. - """ + """Reads a single `User` that is related to this `Profile`.""" user: User } -""" -All input for the `updateProjectByNodeId` mutation. -""" +"""All input for the `updateProjectByNodeId` mutation.""" input UpdateProjectByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18331,9 +15088,7 @@ input UpdateProjectByNodeIdInput { patch: ProjectPatch! } -""" -All input for the `updateProjectBySlug` mutation. -""" +"""All input for the `updateProjectBySlug` mutation.""" input UpdateProjectBySlugInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18352,9 +15107,7 @@ input UpdateProjectBySlugInput { slug: String! } -""" -All input for the `updateProject` mutation. -""" +"""All input for the `updateProject` mutation.""" input UpdateProjectInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18387,9 +15140,7 @@ input UpdateProjectInviteGroupByInviteIdAndGroupIdInput { patch: ProjectInviteGroupPatch! } -""" -The output of our update `ProjectInviteGroup` mutation. -""" +"""The output of our update `ProjectInviteGroup` mutation.""" type UpdateProjectInviteGroupPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -18397,9 +15148,7 @@ type UpdateProjectInviteGroupPayload { """ clientMutationId: String - """ - Reads a single `Group` that is related to this `ProjectInviteGroup`. - """ + """Reads a single `Group` that is related to this `ProjectInviteGroup`.""" group: Group """ @@ -18407,18 +15156,12 @@ type UpdateProjectInviteGroupPayload { """ invite: ProjectInvite - """ - The `ProjectInviteGroup` that was updated by this mutation. - """ + """The `ProjectInviteGroup` that was updated by this mutation.""" projectInviteGroup: ProjectInviteGroup - """ - An edge for our `ProjectInviteGroup`. May be used by Relay 1. - """ + """An edge for our `ProjectInviteGroup`. May be used by Relay 1.""" projectInviteGroupEdge( - """ - The method to use when ordering `ProjectInviteGroup`. - """ + """The method to use when ordering `ProjectInviteGroup`.""" orderBy: [ProjectInviteGroupsOrderBy!] = [NATURAL] ): ProjectInviteGroupsEdge @@ -18428,9 +15171,7 @@ type UpdateProjectInviteGroupPayload { query: Query } -""" -All input for the `updateProjectInvite` mutation. -""" +"""All input for the `updateProjectInvite` mutation.""" input UpdateProjectInviteInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18444,9 +15185,7 @@ input UpdateProjectInviteInput { makeAdmin: Boolean } -""" -The output of our `updateProjectInvite` mutation. -""" +"""The output of our `updateProjectInvite` mutation.""" type UpdateProjectInvitePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -18461,9 +15200,7 @@ type UpdateProjectInvitePayload { query: Query } -""" -The output of our update `Project` mutation. -""" +"""The output of our update `Project` mutation.""" type UpdateProjectPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -18471,23 +15208,15 @@ type UpdateProjectPayload { """ clientMutationId: String - """ - Reads a single `DataSourcesBucket` that is related to this `Project`. - """ + """Reads a single `DataSourcesBucket` that is related to this `Project`.""" dataSourcesBucket: DataSourcesBucket - """ - The `Project` that was updated by this mutation. - """ + """The `Project` that was updated by this mutation.""" project: Project - """ - An edge for our `Project`. May be used by Relay 1. - """ + """An edge for our `Project`. May be used by Relay 1.""" projectEdge( - """ - The method to use when ordering `Project`. - """ + """The method to use when ordering `Project`.""" orderBy: [ProjectsOrderBy!] = [PRIMARY_KEY_ASC] ): ProjectsEdge @@ -18516,9 +15245,7 @@ input UpdateProjectsSharedBasemapByBasemapIdAndProjectIdInput { projectId: Int! } -""" -The output of our update `ProjectsSharedBasemap` mutation. -""" +"""The output of our update `ProjectsSharedBasemap` mutation.""" type UpdateProjectsSharedBasemapPayload { """ Reads a single `Basemap` that is related to this `ProjectsSharedBasemap`. @@ -18531,18 +15258,12 @@ type UpdateProjectsSharedBasemapPayload { """ clientMutationId: String - """ - The `ProjectsSharedBasemap` that was updated by this mutation. - """ + """The `ProjectsSharedBasemap` that was updated by this mutation.""" projectsSharedBasemap: ProjectsSharedBasemap - """ - An edge for our `ProjectsSharedBasemap`. May be used by Relay 1. - """ + """An edge for our `ProjectsSharedBasemap`. May be used by Relay 1.""" projectsSharedBasemapEdge( - """ - The method to use when ordering `ProjectsSharedBasemap`. - """ + """The method to use when ordering `ProjectsSharedBasemap`.""" orderBy: [ProjectsSharedBasemapsOrderBy!] = [NATURAL] ): ProjectsSharedBasemapsEdge @@ -18552,9 +15273,7 @@ type UpdateProjectsSharedBasemapPayload { query: Query } -""" -All input for the `updateSketchClassByFormElementId` mutation. -""" +"""All input for the `updateSketchClassByFormElementId` mutation.""" input UpdateSketchClassByFormElementIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18564,6 +15283,7 @@ input UpdateSketchClassByFormElementIdInput { """ If set, this sketch class is only for use in a survey indicated by the form_element. + """ formElementId: Int! @@ -18573,9 +15293,7 @@ input UpdateSketchClassByFormElementIdInput { patch: SketchClassPatch! } -""" -All input for the `updateSketchClassByNodeId` mutation. -""" +"""All input for the `updateSketchClassByNodeId` mutation.""" input UpdateSketchClassByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18594,9 +15312,7 @@ input UpdateSketchClassByNodeIdInput { patch: SketchClassPatch! } -""" -All input for the `updateSketchClass` mutation. -""" +"""All input for the `updateSketchClass` mutation.""" input UpdateSketchClassInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18611,9 +15327,7 @@ input UpdateSketchClassInput { patch: SketchClassPatch! } -""" -The output of our update `SketchClass` mutation. -""" +"""The output of our update `SketchClass` mutation.""" type UpdateSketchClassPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -18621,14 +15335,10 @@ type UpdateSketchClassPayload { """ clientMutationId: String - """ - Reads a single `FormElement` that is related to this `SketchClass`. - """ + """Reads a single `FormElement` that is related to this `SketchClass`.""" formElement: FormElement - """ - Reads a single `Project` that is related to this `SketchClass`. - """ + """Reads a single `Project` that is related to this `SketchClass`.""" project: Project """ @@ -18636,25 +15346,17 @@ type UpdateSketchClassPayload { """ query: Query - """ - The `SketchClass` that was updated by this mutation. - """ + """The `SketchClass` that was updated by this mutation.""" sketchClass: SketchClass - """ - An edge for our `SketchClass`. May be used by Relay 1. - """ + """An edge for our `SketchClass`. May be used by Relay 1.""" sketchClassEdge( - """ - The method to use when ordering `SketchClass`. - """ + """The method to use when ordering `SketchClass`.""" orderBy: [SketchClassesOrderBy!] = [PRIMARY_KEY_ASC] ): SketchClassesEdge } -""" -All input for the `updateSketchFolderByNodeId` mutation. -""" +"""All input for the `updateSketchFolderByNodeId` mutation.""" input UpdateSketchFolderByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18673,9 +15375,7 @@ input UpdateSketchFolderByNodeIdInput { patch: SketchFolderPatch! } -""" -All input for the `updateSketchFolder` mutation. -""" +"""All input for the `updateSketchFolder` mutation.""" input UpdateSketchFolderInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18690,9 +15390,7 @@ input UpdateSketchFolderInput { patch: SketchFolderPatch! } -""" -The output of our update `SketchFolder` mutation. -""" +"""The output of our update `SketchFolder` mutation.""" type UpdateSketchFolderPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -18705,25 +15403,17 @@ type UpdateSketchFolderPayload { """ query: Query - """ - The `SketchFolder` that was updated by this mutation. - """ + """The `SketchFolder` that was updated by this mutation.""" sketchFolder: SketchFolder - """ - An edge for our `SketchFolder`. May be used by Relay 1. - """ + """An edge for our `SketchFolder`. May be used by Relay 1.""" sketchFolderEdge( - """ - The method to use when ordering `SketchFolder`. - """ + """The method to use when ordering `SketchFolder`.""" orderBy: [SketchFoldersOrderBy!] = [PRIMARY_KEY_ASC] ): SketchFoldersEdge } -""" -All input for the `updateSketchParent` mutation. -""" +"""All input for the `updateSketchParent` mutation.""" input UpdateSketchParentInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18735,9 +15425,7 @@ input UpdateSketchParentInput { id: Int } -""" -The output of our `updateSketchParent` mutation. -""" +"""The output of our `updateSketchParent` mutation.""" type UpdateSketchParentPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -18745,19 +15433,13 @@ type UpdateSketchParentPayload { """ clientMutationId: String - """ - Reads a single `Sketch` that is related to this `Sketch`. - """ + """Reads a single `Sketch` that is related to this `Sketch`.""" collection: Sketch - """ - Reads a single `Sketch` that is related to this `Sketch`. - """ + """Reads a single `Sketch` that is related to this `Sketch`.""" copiedFrom: Sketch - """ - Reads a single `FormElement` that is related to this `Sketch`. - """ + """Reads a single `FormElement` that is related to this `Sketch`.""" formElement: FormElement """ @@ -18766,14 +15448,10 @@ type UpdateSketchParentPayload { query: Query sketch: Sketch - """ - Reads a single `SketchClass` that is related to this `Sketch`. - """ + """Reads a single `SketchClass` that is related to this `Sketch`.""" sketchClass: SketchClass - """ - Reads a single `User` that is related to this `Sketch`. - """ + """Reads a single `User` that is related to this `Sketch`.""" user: User } @@ -18783,9 +15461,7 @@ type UpdateSketchTocItemParentResults { updatedCollections: [Sketch]! } -""" -All input for the `updateSurveyByNodeId` mutation. -""" +"""All input for the `updateSurveyByNodeId` mutation.""" input UpdateSurveyByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18804,9 +15480,7 @@ input UpdateSurveyByNodeIdInput { patch: SurveyPatch! } -""" -All input for the `updateSurvey` mutation. -""" +"""All input for the `updateSurvey` mutation.""" input UpdateSurveyInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18821,9 +15495,7 @@ input UpdateSurveyInput { patch: SurveyPatch! } -""" -All input for the `updateSurveyInviteByEmailAndSurveyId` mutation. -""" +"""All input for the `updateSurveyInviteByEmailAndSurveyId` mutation.""" input UpdateSurveyInviteByEmailAndSurveyIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18839,9 +15511,7 @@ input UpdateSurveyInviteByEmailAndSurveyIdInput { surveyId: Int! } -""" -All input for the `updateSurveyInviteByEmail` mutation. -""" +"""All input for the `updateSurveyInviteByEmail` mutation.""" input UpdateSurveyInviteByEmailInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18856,9 +15526,7 @@ input UpdateSurveyInviteByEmailInput { patch: SurveyInvitePatch! } -""" -All input for the `updateSurveyInviteByNodeId` mutation. -""" +"""All input for the `updateSurveyInviteByNodeId` mutation.""" input UpdateSurveyInviteByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18877,9 +15545,7 @@ input UpdateSurveyInviteByNodeIdInput { patch: SurveyInvitePatch! } -""" -All input for the `updateSurveyInvitedGroups` mutation. -""" +"""All input for the `updateSurveyInvitedGroups` mutation.""" input UpdateSurveyInvitedGroupsInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18890,9 +15556,7 @@ input UpdateSurveyInvitedGroupsInput { surveyId: Int } -""" -The output of our `updateSurveyInvitedGroups` mutation. -""" +"""The output of our `updateSurveyInvitedGroups` mutation.""" type UpdateSurveyInvitedGroupsPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -18907,9 +15571,7 @@ type UpdateSurveyInvitedGroupsPayload { query: Query } -""" -All input for the `updateSurveyInvite` mutation. -""" +"""All input for the `updateSurveyInvite` mutation.""" input UpdateSurveyInviteInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -18924,9 +15586,7 @@ input UpdateSurveyInviteInput { patch: SurveyInvitePatch! } -""" -The output of our update `SurveyInvite` mutation. -""" +"""The output of our update `SurveyInvite` mutation.""" type UpdateSurveyInvitePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -18939,30 +15599,20 @@ type UpdateSurveyInvitePayload { """ query: Query - """ - Reads a single `Survey` that is related to this `SurveyInvite`. - """ + """Reads a single `Survey` that is related to this `SurveyInvite`.""" survey: Survey - """ - The `SurveyInvite` that was updated by this mutation. - """ + """The `SurveyInvite` that was updated by this mutation.""" surveyInvite: SurveyInvite - """ - An edge for our `SurveyInvite`. May be used by Relay 1. - """ + """An edge for our `SurveyInvite`. May be used by Relay 1.""" surveyInviteEdge( - """ - The method to use when ordering `SurveyInvite`. - """ + """The method to use when ordering `SurveyInvite`.""" orderBy: [SurveyInvitesOrderBy!] = [PRIMARY_KEY_ASC] ): SurveyInvitesEdge } -""" -The output of our update `Survey` mutation. -""" +"""The output of our update `Survey` mutation.""" type UpdateSurveyPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -18970,9 +15620,7 @@ type UpdateSurveyPayload { """ clientMutationId: String - """ - Reads a single `Project` that is related to this `Survey`. - """ + """Reads a single `Project` that is related to this `Survey`.""" project: Project """ @@ -18980,15 +15628,11 @@ type UpdateSurveyPayload { """ query: Query - """ - The `Survey` that was updated by this mutation. - """ + """The `Survey` that was updated by this mutation.""" survey: Survey } -""" -All input for the `updateSurveyResponseByNodeId` mutation. -""" +"""All input for the `updateSurveyResponseByNodeId` mutation.""" input UpdateSurveyResponseByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -19007,9 +15651,7 @@ input UpdateSurveyResponseByNodeIdInput { patch: SurveyResponsePatch! } -""" -All input for the `updateSurveyResponse` mutation. -""" +"""All input for the `updateSurveyResponse` mutation.""" input UpdateSurveyResponseInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -19024,9 +15666,7 @@ input UpdateSurveyResponseInput { patch: SurveyResponsePatch! } -""" -The output of our update `SurveyResponse` mutation. -""" +"""The output of our update `SurveyResponse` mutation.""" type UpdateSurveyResponsePayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -19039,30 +15679,20 @@ type UpdateSurveyResponsePayload { """ query: Query - """ - Reads a single `Survey` that is related to this `SurveyResponse`. - """ + """Reads a single `Survey` that is related to this `SurveyResponse`.""" survey: Survey - """ - The `SurveyResponse` that was updated by this mutation. - """ + """The `SurveyResponse` that was updated by this mutation.""" surveyResponse: SurveyResponse - """ - An edge for our `SurveyResponse`. May be used by Relay 1. - """ + """An edge for our `SurveyResponse`. May be used by Relay 1.""" surveyResponseEdge( - """ - The method to use when ordering `SurveyResponse`. - """ + """The method to use when ordering `SurveyResponse`.""" orderBy: [SurveyResponsesOrderBy!] = [PRIMARY_KEY_ASC] ): SurveyResponsesEdge } -""" -All input for the `updateTableOfContentsItemByDataLayerId` mutation. -""" +"""All input for the `updateTableOfContentsItemByDataLayerId` mutation.""" input UpdateTableOfContentsItemByDataLayerIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -19081,9 +15711,7 @@ input UpdateTableOfContentsItemByDataLayerIdInput { patch: TableOfContentsItemPatch! } -""" -All input for the `updateTableOfContentsItemByNodeId` mutation. -""" +"""All input for the `updateTableOfContentsItemByNodeId` mutation.""" input UpdateTableOfContentsItemByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -19102,9 +15730,7 @@ input UpdateTableOfContentsItemByNodeIdInput { patch: TableOfContentsItemPatch! } -""" -All input for the `updateTableOfContentsItemChildren` mutation. -""" +"""All input for the `updateTableOfContentsItemChildren` mutation.""" input UpdateTableOfContentsItemChildrenInput { childIds: [Int] @@ -19116,9 +15742,7 @@ input UpdateTableOfContentsItemChildrenInput { parentId: Int } -""" -The output of our `updateTableOfContentsItemChildren` mutation. -""" +"""The output of our `updateTableOfContentsItemChildren` mutation.""" type UpdateTableOfContentsItemChildrenPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -19133,9 +15757,7 @@ type UpdateTableOfContentsItemChildrenPayload { tableOfContentsItems: [TableOfContentsItem!] } -""" -All input for the `updateTableOfContentsItem` mutation. -""" +"""All input for the `updateTableOfContentsItem` mutation.""" input UpdateTableOfContentsItemInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -19150,9 +15772,7 @@ input UpdateTableOfContentsItemInput { patch: TableOfContentsItemPatch! } -""" -The output of our update `TableOfContentsItem` mutation. -""" +"""The output of our update `TableOfContentsItem` mutation.""" type UpdateTableOfContentsItemPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -19170,18 +15790,12 @@ type UpdateTableOfContentsItemPayload { """ query: Query - """ - The `TableOfContentsItem` that was updated by this mutation. - """ + """The `TableOfContentsItem` that was updated by this mutation.""" tableOfContentsItem: TableOfContentsItem - """ - An edge for our `TableOfContentsItem`. May be used by Relay 1. - """ + """An edge for our `TableOfContentsItem`. May be used by Relay 1.""" tableOfContentsItemEdge( - """ - The method to use when ordering `TableOfContentsItem`. - """ + """The method to use when ordering `TableOfContentsItem`.""" orderBy: [TableOfContentsItemsOrderBy!] = [PRIMARY_KEY_ASC] ): TableOfContentsItemsEdge } @@ -19191,9 +15805,7 @@ input UpdateTocItemParentInput { type: SketchChildType! } -""" -All input for the `updateTopicByNodeId` mutation. -""" +"""All input for the `updateTopicByNodeId` mutation.""" input UpdateTopicByNodeIdInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -19212,9 +15824,7 @@ input UpdateTopicByNodeIdInput { patch: TopicPatch! } -""" -All input for the `updateTopic` mutation. -""" +"""All input for the `updateTopic` mutation.""" input UpdateTopicInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -19229,9 +15839,7 @@ input UpdateTopicInput { patch: TopicPatch! } -""" -The output of our update `Topic` mutation. -""" +"""The output of our update `Topic` mutation.""" type UpdateTopicPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -19239,9 +15847,7 @@ type UpdateTopicPayload { """ clientMutationId: String - """ - Reads a single `Forum` that is related to this `Topic`. - """ + """Reads a single `Forum` that is related to this `Topic`.""" forum: Forum """ @@ -19249,25 +15855,17 @@ type UpdateTopicPayload { """ query: Query - """ - The `Topic` that was updated by this mutation. - """ + """The `Topic` that was updated by this mutation.""" topic: Topic - """ - An edge for our `Topic`. May be used by Relay 1. - """ + """An edge for our `Topic`. May be used by Relay 1.""" topicEdge( - """ - The method to use when ordering `Topic`. - """ + """The method to use when ordering `Topic`.""" orderBy: [TopicsOrderBy!] = [PRIMARY_KEY_ASC] ): TopicsEdge } -""" -All input for the `updateZIndexes` mutation. -""" +"""All input for the `updateZIndexes` mutation.""" input UpdateZIndexesInput { """ An arbitrary string value with no semantic meaning. Will be included in the @@ -19277,9 +15875,7 @@ input UpdateZIndexesInput { dataLayerIds: [Int] } -""" -The output of our `updateZIndexes` mutation. -""" +"""The output of our `updateZIndexes` mutation.""" type UpdateZIndexesPayload { """ The exact same `clientMutationId` that was provided in the mutation input, @@ -19294,9 +15890,7 @@ type UpdateZIndexesPayload { query: Query } -""" -The `Upload` scalar type represents a file upload. -""" +"""The `Upload` scalar type represents a file upload.""" scalar Upload type UploaderResponse { @@ -19309,9 +15903,10 @@ The SeaSketch User type is quite sparse since authentication is handled by Auth0 and we store no personal information unless the user explicitly adds it to the user `Profile`. -During operation of the system, users identify themselves using bearer tokens. +During operation of the system, users identify themselves using bearer tokens. These tokens contain ephemeral information like `canonical_email` which can be used to accept project invite tokens. + """ type User implements Node { accessRequestDenied(slug: String): Boolean @@ -19328,6 +15923,7 @@ type User implements Node { Only visible to admins of projects a user has joined. Can be used for identification purposes since users will not gain any access control privileges until this email has been confirmed. + """ canonicalEmail: String deniedBy(projectId: Int): User @@ -19341,14 +15937,10 @@ type User implements Node { Reads and enables pagination through a set of `EmailNotificationPreference`. """ emailNotificationPreferencesConnection( - """ - Read all values in the set after (below) this cursor. - """ + """Read all values in the set after (below) this cursor.""" after: Cursor - """ - Read all values in the set before (above) this cursor. - """ + """Read all values in the set before (above) this cursor.""" before: Cursor """ @@ -19356,14 +15948,10 @@ type User implements Node { """ condition: EmailNotificationPreferenceCondition - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Only read the last `n` values of the set. - """ + """Only read the last `n` values of the set.""" last: Int """ @@ -19372,31 +15960,26 @@ type User implements Node { """ offset: Int - """ - The method to use when ordering `EmailNotificationPreference`. - """ + """The method to use when ordering `EmailNotificationPreference`.""" orderBy: [EmailNotificationPreferencesOrderBy!] = [NATURAL] - ): EmailNotificationPreferencesConnection! - @deprecated(reason: "Please use emailNotificationPreference instead") + ): EmailNotificationPreferencesConnection! @deprecated(reason: "Please use emailNotificationPreference instead") """ List of groups for the given project and user. Only available to project admins. + """ groups( - """ - Only read the first `n` values of the set. - """ + """Only read the first `n` values of the set.""" first: Int - """ - Skip the first `n` values. - """ + """Skip the first `n` values.""" offset: Int ): [Group!] id: Int! """ Indicates if user is admin on the current project, indicated by the `x-ss-slug` header. + """ isAdmin: Boolean needsAccessRequestApproval(slug: String): Boolean @@ -19407,65 +15990,48 @@ type User implements Node { nodeId: ID! """ - Indicates whether the user has seen post-registration information. Can be - updated with `confirmOnboarded()` mutation. - + Indicates whether the user has seen post-registration information. Can be + updated with `confirmOnboarded()` mutation. + Since this field is a date, it could hypothetically be reset as terms of service are updated, though it may be better to add a new property to track that. + """ onboarded: Datetime participationStatus(projectId: Int): ParticipationStatus - """ - Reads a single `Profile` that is related to this `User`. - """ + """Reads a single `Profile` that is related to this `User`.""" profile: Profile } -""" -A connection to a list of `User` values. -""" +"""A connection to a list of `User` values.""" type UsersConnection { """ A list of edges which contains the `User` and cursor to aid in pagination. """ edges: [UsersEdge!]! - """ - A list of `User` objects. - """ + """A list of `User` objects.""" nodes: [User!]! - """ - Information to aid in pagination. - """ + """Information to aid in pagination.""" pageInfo: PageInfo! - """ - The count of *all* `User` you could get from the connection. - """ + """The count of *all* `User` you could get from the connection.""" totalCount: Int! } -""" -A `User` edge in the connection. -""" +"""A `User` edge in the connection.""" type UsersEdge { - """ - A cursor for use in pagination. - """ + """A cursor for use in pagination.""" cursor: Cursor - """ - The `User` at the end of the edge. - """ + """The `User` at the end of the edge.""" node: User! } -""" -Methods to use when ordering `User`. -""" +"""Methods to use when ordering `User`.""" enum UsersOrderBy { ID_ASC ID_DESC diff --git a/packages/api/generated-schema.gql b/packages/api/generated-schema.gql index 60f71940f..f6c8fdeef 100644 --- a/packages/api/generated-schema.gql +++ b/packages/api/generated-schema.gql @@ -8360,12 +8360,6 @@ type Mutation { """ input: SubmitDataUploadInput! ): SubmitDataUploadPayload - tableOfContentsItemsPrimaryDownloadUrl( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: TableOfContentsItemsPrimaryDownloadUrlInput! - ): TableOfContentsItemsPrimaryDownloadUrlPayload """ Toggle admin access for the given project and user. User must have already @@ -13282,6 +13276,7 @@ type TableOfContentsItem implements Node { """ parentStableId: String + primaryDownloadUrl: String project: Project projectId: Int! @@ -13548,31 +13543,6 @@ enum TableOfContentsItemsOrderBy { PROJECT_ID_DESC } -"""All input for the `tableOfContentsItemsPrimaryDownloadUrl` mutation.""" -input TableOfContentsItemsPrimaryDownloadUrlInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - item: TableOfContentsItemInput -} - -"""The output of our `tableOfContentsItemsPrimaryDownloadUrl` mutation.""" -type TableOfContentsItemsPrimaryDownloadUrlPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - string: String -} - enum TileScheme { TMS XYZ diff --git a/packages/api/migrations/committed/000291.sql b/packages/api/migrations/committed/000291.sql new file mode 100644 index 000000000..33bc67276 --- /dev/null +++ b/packages/api/migrations/committed/000291.sql @@ -0,0 +1,50 @@ +--! Previous: sha1:f4cd21cedac1eb31ea84100cbf8d8a3452540402 +--! Hash: sha1:d70db66b6510ada0a863d3d17bb89203fd3c8036 + +-- Enter migration here +grant execute on function table_of_contents_items_primary_download_url to anon; + +alter table data_upload_outputs add column if not exists original_filename text; + +update + data_upload_outputs +set + original_filename = data_sources.uploaded_source_filename +from + data_sources +where + data_upload_outputs.data_source_id = data_sources.id +and + data_upload_outputs.is_original = true; + +create or replace function table_of_contents_items_primary_download_url(item table_of_contents_items) + returns text + security definer + stable + language sql + as $$ + select + case + when item.enable_download = false then null + when item.data_layer_id is null then null + else + ( + select + data_upload_outputs.url || '?download=' || data_upload_outputs.original_filename + from + data_upload_outputs + where + data_upload_outputs.data_source_id = ( + select + data_layers.data_source_id + from + data_layers + where + data_layers.id = item.data_layer_id + ) + and + data_upload_outputs.is_original = true + limit 1 + ) + end; + $$; diff --git a/packages/api/schema.sql b/packages/api/schema.sql index 605103775..c9fbd6336 100644 --- a/packages/api/schema.sql +++ b/packages/api/schema.sql @@ -11418,309 +11418,25 @@ CREATE FUNCTION public.search_overlays(lang text, query text, "projectId" intege LANGUAGE plpgsql STABLE SECURITY DEFINER AS $$ declare - supported_languages jsonb := get_supported_languages(); - config regconfig; - q tsquery := websearch_to_tsquery(config, query); + q tsquery := websearch_to_tsquery('english'::regconfig, query); begin - select key::regconfig into config from jsonb_each_text(get_supported_languages()) where value = lower(lang); IF position(' ' in query) <= 0 THEN - q := to_tsquery(config, query || ':*'); - end if; - if config is null then - q = plainto_tsquery('simple', query); - IF position(' ' in query) <= 0 THEN - q := to_tsquery('simple', query || ':*'); - end if; - -- use the simple index - return query select - id, - stable_id, - ts_headline('simple', title, q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline('simple', jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_simple @@ q - limit - coalesce("limit", 10); - elsif config = 'english'::regconfig then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_en @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'es' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_es @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'pt' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline('portuguese', jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_pt @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'ar' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline('arabic', jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_ar @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'da' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_da @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'nl' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_nl @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'fr' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_fr @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'de' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_de @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'el' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_el @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'id' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_id @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'it' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_it @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'lt' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_lt @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'no' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_no @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'ro' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_ro @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'ru' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_ru @@ q - limit - coalesce("limit", 10); - elsif lower(lang) = 'sv' then - return query select - id, - stable_id, - ts_headline(config, coalesce( - translated_props->lang->>'title'::text, title - ), q, 'StartSel=<<<, StopSel=>>>') as title_headline, - ts_headline(config, jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, - is_folder - from - table_of_contents_items - where - project_id = "projectId" and - is_draft = draft and - fts_sv @@ q - limit - coalesce("limit", 10); - else - raise exception 'Unsupported language: %', lang; + q := to_tsquery('english'::regconfig, query || ':*'); end if; + return query select + id, + stable_id, + ts_headline('english', title, q, 'StartSel=<<<, StopSel=>>>') as title_headline, + ts_headline('english', jsonb_array_to_string(collect_prosemirror_text_nodes(metadata)), q, 'MaxFragments=10, MaxWords=7, MinWords=3, StartSel=<<<, StopSel=>>>') as metadata_headline, + is_folder + from + table_of_contents_items + where + project_id = "projectId" and + is_draft = draft and + fts_en @@ q + limit + coalesce("limit", 10); end; $$; @@ -13237,7 +12953,7 @@ CREATE FUNCTION public.table_of_contents_items_is_custom_gl_source(t public.tabl -- CREATE FUNCTION public.table_of_contents_items_primary_download_url(item public.table_of_contents_items) RETURNS text - LANGUAGE sql SECURITY DEFINER + LANGUAGE sql STABLE SECURITY DEFINER AS $$ select case @@ -13245,15 +12961,22 @@ CREATE FUNCTION public.table_of_contents_items_primary_download_url(item public. when item.data_layer_id is null then null else ( - select data_upload_outputs.url - from data_upload_outputs - where data_upload_outputs.data_source_id = ( - select data_layers.data_source_id - from data_layers - where data_layers.id = item.data_layer_id - ) - and data_upload_outputs.is_original = true - limit 1 + select + data_upload_outputs.url || '?download=' || data_upload_outputs.original_filename + from + data_upload_outputs + where + data_upload_outputs.data_source_id = ( + select + data_layers.data_source_id + from + data_layers + where + data_layers.id = item.data_layer_id + ) + and + data_upload_outputs.is_original = true + limit 1 ) end; $$; @@ -14664,7 +14387,8 @@ CREATE TABLE public.data_upload_outputs ( remote text NOT NULL, is_original boolean DEFAULT false NOT NULL, size bigint NOT NULL, - filename text NOT NULL + filename text NOT NULL, + original_filename text ); diff --git a/packages/api/src/spatialUploads/index.ts b/packages/api/src/spatialUploads/index.ts index 4945ca6d6..0b4ba7adf 100644 --- a/packages/api/src/spatialUploads/index.ts +++ b/packages/api/src/spatialUploads/index.ts @@ -199,8 +199,9 @@ export async function createDBRecordsForProcessedUpload( filename, url, is_original, - project_id - ) values ($1, $2, $3, $4, $5, $6, $7, $8) + project_id, + original_filename + ) values ($1, $2, $3, $4, $5, $6, $7, $8, $9) `, [ dataSourceId, @@ -211,6 +212,7 @@ export async function createDBRecordsForProcessedUpload( output.url, Boolean(output.isOriginal), projectId, + layer.filename, ] ); } diff --git a/packages/client/src/admin/data/LayerTableOfContentsItemEditor.tsx b/packages/client/src/admin/data/LayerTableOfContentsItemEditor.tsx index d8759d859..032512002 100644 --- a/packages/client/src/admin/data/LayerTableOfContentsItemEditor.tsx +++ b/packages/client/src/admin/data/LayerTableOfContentsItemEditor.tsx @@ -495,73 +495,17 @@ export default function LayerTableOfContentsItemEditor( )} {source?.importType === - DataSourceImportTypes.Upload && - (source.uploadedSourceFilename || "User Upload")} + DataSourceImportTypes.Upload && ( + + )} } /> - {source.geostats && - source.geostats.attributes && - Array.isArray(source.geostats.attributes) && ( - - {( - source.geostats.attributes as { - type: string; - count: number; - attribute: string; - values: any[]; - max?: number; - min?: number; - }[] - ) - .slice( - 0, - showMoreColumns - ? source.geostats.attributes.length - : 4 - ) - .map((attr) => { - return ( -
-
- {attr.attribute}{" "} - {attr.values.length && ( -
- -
- )} -
-
- {attr.type} -
-
- ); - })} - {showMoreColumns === false && - source.geostats.attributes.length > 4 && ( - - )} - - } - /> - )} )} @@ -924,3 +868,25 @@ export default function LayerTableOfContentsItemEditor( ); } + +function UploadedSourceName({ + filename, + primaryDownloadUrl, +}: { + filename?: string; + primaryDownloadUrl?: string; +}) { + if (primaryDownloadUrl) { + return ( + + {filename} + + ); + } else { + return {filename || "User upload"}; + } +} diff --git a/packages/client/src/generated/graphql.ts b/packages/client/src/generated/graphql.ts index 4e25b2eb4..79f8d37a6 100644 --- a/packages/client/src/generated/graphql.ts +++ b/packages/client/src/generated/graphql.ts @@ -6497,7 +6497,6 @@ export type Mutation = { /** Superusers only. "Deletes" a sprite but keeps it in the DB in case layers are already referencing it. */ softDeleteSprite?: Maybe; submitDataUpload?: Maybe; - tableOfContentsItemsPrimaryDownloadUrl?: Maybe; /** * Toggle admin access for the given project and user. User must have already * joined the project and shared their user profile. @@ -7621,12 +7620,6 @@ export type MutationSubmitDataUploadArgs = { }; -/** The root mutation type which contains root level fields which mutate data. */ -export type MutationTableOfContentsItemsPrimaryDownloadUrlArgs = { - input: TableOfContentsItemsPrimaryDownloadUrlInput; -}; - - /** The root mutation type which contains root level fields which mutate data. */ export type MutationToggleAdminAccessArgs = { input: ToggleAdminAccessInput; @@ -12085,6 +12078,7 @@ export type TableOfContentsItem = Node & { * `updateTableOfContentsItemParent` mutation. */ parentStableId?: Maybe; + primaryDownloadUrl?: Maybe; project?: Maybe; projectId: Scalars['Int']; /** If set, children of this folder will appear as radio options so that only one may be toggle at a time */ @@ -12284,29 +12278,6 @@ export enum TableOfContentsItemsOrderBy { ProjectIdDesc = 'PROJECT_ID_DESC' } -/** All input for the `tableOfContentsItemsPrimaryDownloadUrl` mutation. */ -export type TableOfContentsItemsPrimaryDownloadUrlInput = { - /** - * An arbitrary string value with no semantic meaning. Will be included in the - * payload verbatim. May be used to track mutations by the client. - */ - clientMutationId?: Maybe; - item?: Maybe; -}; - -/** The output of our `tableOfContentsItemsPrimaryDownloadUrl` mutation. */ -export type TableOfContentsItemsPrimaryDownloadUrlPayload = { - __typename?: 'TableOfContentsItemsPrimaryDownloadUrlPayload'; - /** - * The exact same `clientMutationId` that was provided in the mutation input, - * unchanged and unused. May be used by a client to track mutations. - */ - clientMutationId?: Maybe; - /** Our root query field type. Allows us to run any query from our mutation payload. */ - query?: Maybe; - string?: Maybe; -}; - export enum TileScheme { Tms = 'TMS', Xyz = 'XYZ' @@ -15814,7 +15785,7 @@ export type GetLayerItemQuery = ( { __typename?: 'Query' } & { tableOfContentsItem?: Maybe<( { __typename?: 'TableOfContentsItem' } - & Pick + & Pick & { acl?: Maybe<( { __typename?: 'Acl' } & Pick @@ -23501,6 +23472,7 @@ export const GetLayerItemDocument = gql` title enableDownload geoprocessingReferenceId + primaryDownloadUrl dataLayer { id zIndex diff --git a/packages/client/src/generated/queries.ts b/packages/client/src/generated/queries.ts index 9b0a54f90..3986eeedb 100644 --- a/packages/client/src/generated/queries.ts +++ b/packages/client/src/generated/queries.ts @@ -6495,7 +6495,6 @@ export type Mutation = { /** Superusers only. "Deletes" a sprite but keeps it in the DB in case layers are already referencing it. */ softDeleteSprite?: Maybe; submitDataUpload?: Maybe; - tableOfContentsItemsPrimaryDownloadUrl?: Maybe; /** * Toggle admin access for the given project and user. User must have already * joined the project and shared their user profile. @@ -7619,12 +7618,6 @@ export type MutationSubmitDataUploadArgs = { }; -/** The root mutation type which contains root level fields which mutate data. */ -export type MutationTableOfContentsItemsPrimaryDownloadUrlArgs = { - input: TableOfContentsItemsPrimaryDownloadUrlInput; -}; - - /** The root mutation type which contains root level fields which mutate data. */ export type MutationToggleAdminAccessArgs = { input: ToggleAdminAccessInput; @@ -12083,6 +12076,7 @@ export type TableOfContentsItem = Node & { * `updateTableOfContentsItemParent` mutation. */ parentStableId?: Maybe; + primaryDownloadUrl?: Maybe; project?: Maybe; projectId: Scalars['Int']; /** If set, children of this folder will appear as radio options so that only one may be toggle at a time */ @@ -12282,29 +12276,6 @@ export enum TableOfContentsItemsOrderBy { ProjectIdDesc = 'PROJECT_ID_DESC' } -/** All input for the `tableOfContentsItemsPrimaryDownloadUrl` mutation. */ -export type TableOfContentsItemsPrimaryDownloadUrlInput = { - /** - * An arbitrary string value with no semantic meaning. Will be included in the - * payload verbatim. May be used to track mutations by the client. - */ - clientMutationId?: Maybe; - item?: Maybe; -}; - -/** The output of our `tableOfContentsItemsPrimaryDownloadUrl` mutation. */ -export type TableOfContentsItemsPrimaryDownloadUrlPayload = { - __typename?: 'TableOfContentsItemsPrimaryDownloadUrlPayload'; - /** - * The exact same `clientMutationId` that was provided in the mutation input, - * unchanged and unused. May be used by a client to track mutations. - */ - clientMutationId?: Maybe; - /** Our root query field type. Allows us to run any query from our mutation payload. */ - query?: Maybe; - string?: Maybe; -}; - export enum TileScheme { Tms = 'TMS', Xyz = 'XYZ' @@ -15812,7 +15783,7 @@ export type GetLayerItemQuery = ( { __typename?: 'Query' } & { tableOfContentsItem?: Maybe<( { __typename?: 'TableOfContentsItem' } - & Pick + & Pick & { acl?: Maybe<( { __typename?: 'Acl' } & Pick @@ -21656,6 +21627,7 @@ export const GetLayerItemDocument = /*#__PURE__*/ gql` title enableDownload geoprocessingReferenceId + primaryDownloadUrl dataLayer { id zIndex diff --git a/packages/client/src/queries/DraftTableOfContents.graphql b/packages/client/src/queries/DraftTableOfContents.graphql index d98c6b8ac..df2e53086 100644 --- a/packages/client/src/queries/DraftTableOfContents.graphql +++ b/packages/client/src/queries/DraftTableOfContents.graphql @@ -210,6 +210,7 @@ query GetLayerItem($id: Int!) { title enableDownload geoprocessingReferenceId + primaryDownloadUrl dataLayer { id zIndex diff --git a/packages/uploads-server/.gitignore b/packages/uploads-server/.gitignore new file mode 100644 index 000000000..a0b4c4a2e --- /dev/null +++ b/packages/uploads-server/.gitignore @@ -0,0 +1,2 @@ +**/*.sqlite +**/*.sqlite-* \ No newline at end of file diff --git a/packages/uploads-server/package-lock.json b/packages/uploads-server/package-lock.json index ef2674064..46592629e 100644 --- a/packages/uploads-server/package-lock.json +++ b/packages/uploads-server/package-lock.json @@ -10,7 +10,7 @@ "devDependencies": { "@cloudflare/workers-types": "^4.20230419.0", "typescript": "^5.0.4", - "wrangler": "^3.0.0" + "wrangler": "^3.26.0" } }, "node_modules/@cloudflare/kv-asset-handler": { @@ -23,9 +23,9 @@ } }, "node_modules/@cloudflare/workerd-darwin-64": { - "version": "1.20230710.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20230710.0.tgz", - "integrity": "sha512-TDEgTfzTkveW+U0qtg9/60PXbl2klnEso0oio501zAnY2SOC1x7M0qb8UkhvjHFUVpwdykUzTPWPIWFBcF1ibA==", + "version": "1.20240129.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20240129.0.tgz", + "integrity": "sha512-DfVVB5IsQLVcWPJwV019vY3nEtU88c2Qu2ST5SQxqcGivZ52imagLRK0RHCIP8PK4piSiq90qUC6ybppUsw8eg==", "cpu": [ "x64" ], @@ -39,9 +39,9 @@ } }, "node_modules/@cloudflare/workerd-darwin-arm64": { - "version": "1.20230710.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20230710.0.tgz", - "integrity": "sha512-dxBwnKcj7TiM1JGiODg0LASa25A9P0XLeMkmF8YCECZoq+3QLH/uY4Vbm1xeEy8iXUZrt/uYN72bBE83vY4HIQ==", + "version": "1.20240129.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20240129.0.tgz", + "integrity": "sha512-t0q8ABkmumG1zRM/MZ/vIv/Ysx0vTAXnQAPy/JW5aeQi/tqrypXkO9/NhPc0jbF/g/hIPrWEqpDgEp3CB7Da7Q==", "cpu": [ "arm64" ], @@ -55,9 +55,9 @@ } }, "node_modules/@cloudflare/workerd-linux-64": { - "version": "1.20230710.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20230710.0.tgz", - "integrity": "sha512-WrKZwL76i51jQLFpSxklpRSm2s8T9Xf6tVzQaiLTtpguKZSF/CTAyjjEOVfS7FXk+Te8lyAJAFQnj5QHoJ3pzA==", + "version": "1.20240129.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20240129.0.tgz", + "integrity": "sha512-sFV1uobHgDI+6CKBS/ZshQvOvajgwl6BtiYaH4PSFSpvXTmRx+A9bcug+6BnD+V4WgwxTiEO2iR97E1XuwDAVw==", "cpu": [ "x64" ], @@ -71,9 +71,9 @@ } }, "node_modules/@cloudflare/workerd-linux-arm64": { - "version": "1.20230710.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20230710.0.tgz", - "integrity": "sha512-eWdbOoqFqQ4m1/Wwy2dRDaOVXjOmWGjwBliU8pvm2m9RjfRTdfik7z6E3vOkalxqJDHiJ0f8SUykKz2oM1lD0A==", + "version": "1.20240129.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20240129.0.tgz", + "integrity": "sha512-O7q7htHaFRp8PgTqNJx1/fYc3+LnvAo6kWWB9a14C5OWak6AAZk42PNpKPx+DXTmGvI+8S1+futBGUeJ8NPDXg==", "cpu": [ "arm64" ], @@ -87,9 +87,9 @@ } }, "node_modules/@cloudflare/workerd-windows-64": { - "version": "1.20230710.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20230710.0.tgz", - "integrity": "sha512-P5ihH98Pb72HrsVsvb/HCSezvAvEtPeVQVBKgIclNE9e0fkA4zX9QMzBBFvLy3yr0YLf4r7MO2tNnt7JFnheGA==", + "version": "1.20240129.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20240129.0.tgz", + "integrity": "sha512-YqGno0XSqqqkDmNoGEX6M8kJlI2lEfWntbTPVtHaZlaXVR9sWfoD7TEno0NKC95cXFz+ioyFLbgbOdnfWwmVAA==", "cpu": [ "x64" ], @@ -108,19 +108,31 @@ "integrity": "sha512-bq0QMM51KyqTL/lIFUToT2AZfulO7pqwQvdZhjPMbxlIJADDNYeFd+GEQ6YGiGl5G/xxVEkpEql59sYlSfzYIg==", "dev": true }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/@esbuild-plugins/node-globals-polyfill": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.1.1.tgz", - "integrity": "sha512-MR0oAA+mlnJWrt1RQVQ+4VYuRJW/P2YmRTv1AsplObyvuBMnPHiizUF95HHYiSsMGLhyGtWufaq2XQg6+iurBg==", + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.2.3.tgz", + "integrity": "sha512-r3MIryXDeXDOZh7ih1l/yE9ZLORCd5e8vWg02azWRGj5SPTuoh69A2AIyn0Z31V/kHBfZ4HgWJ+OK3GTTwLmnw==", "dev": true, "peerDependencies": { "esbuild": "*" } }, "node_modules/@esbuild-plugins/node-modules-polyfill": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-modules-polyfill/-/node-modules-polyfill-0.1.4.tgz", - "integrity": "sha512-uZbcXi0zbmKC/050p3gJnne5Qdzw8vkXIv+c2BW0Lsc1ji1SkrxbKPUy5Efr0blbTu1SL8w4eyfpnSdPg3G0Qg==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-modules-polyfill/-/node-modules-polyfill-0.2.2.tgz", + "integrity": "sha512-LXV7QsWJxRuMYvKbiznh+U1ilIop3g2TeKRzUxOG5X3YITc8JyyTa90BmLwqqv0YnX4v32CSlG+vsziZp9dMvA==", "dev": true, "dependencies": { "escape-string-regexp": "^4.0.0", @@ -131,9 +143,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.3.tgz", - "integrity": "sha512-mueuEoh+s1eRbSJqq9KNBQwI4QhQV6sRXIfTyLXSHGMpyew61rOK4qY21uKbXl1iBoMb0AdL1deWFCQVlN2qHA==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", + "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", "cpu": [ "arm" ], @@ -147,9 +159,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.3.tgz", - "integrity": "sha512-RolFVeinkeraDvN/OoRf1F/lP0KUfGNb5jxy/vkIMeRRChkrX/HTYN6TYZosRJs3a1+8wqpxAo5PI5hFmxyPRg==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz", + "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==", "cpu": [ "arm64" ], @@ -163,9 +175,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.3.tgz", - "integrity": "sha512-SFpTUcIT1bIJuCCBMCQWq1bL2gPTjWoLZdjmIhjdcQHaUfV41OQfho6Ici5uvvkMmZRXIUGpM3GxysP/EU7ifQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz", + "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==", "cpu": [ "x64" ], @@ -179,9 +191,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.3.tgz", - "integrity": "sha512-DO8WykMyB+N9mIDfI/Hug70Dk1KipavlGAecxS3jDUwAbTpDXj0Lcwzw9svkhxfpCagDmpaTMgxWK8/C/XcXvw==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz", + "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==", "cpu": [ "arm64" ], @@ -195,9 +207,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.3.tgz", - "integrity": "sha512-uEqZQ2omc6BvWqdCiyZ5+XmxuHEi1SPzpVxXCSSV2+Sh7sbXbpeNhHIeFrIpRjAs0lI1FmA1iIOxFozKBhKgRQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz", + "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==", "cpu": [ "x64" ], @@ -211,9 +223,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.3.tgz", - "integrity": "sha512-nJansp3sSXakNkOD5i5mIz2Is/HjzIhFs49b1tjrPrpCmwgBmH9SSzhC/Z1UqlkivqMYkhfPwMw1dGFUuwmXhw==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz", + "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==", "cpu": [ "arm64" ], @@ -227,9 +239,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.3.tgz", - "integrity": "sha512-TfoDzLw+QHfc4a8aKtGSQ96Wa+6eimljjkq9HKR0rHlU83vw8aldMOUSJTUDxbcUdcgnJzPaX8/vGWm7vyV7ug==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz", + "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==", "cpu": [ "x64" ], @@ -243,9 +255,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.3.tgz", - "integrity": "sha512-VwswmSYwVAAq6LysV59Fyqk3UIjbhuc6wb3vEcJ7HEJUtFuLK9uXWuFoH1lulEbE4+5GjtHi3MHX+w1gNHdOWQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz", + "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==", "cpu": [ "arm" ], @@ -259,9 +271,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.3.tgz", - "integrity": "sha512-7I3RlsnxEFCHVZNBLb2w7unamgZ5sVwO0/ikE2GaYvYuUQs9Qte/w7TqWcXHtCwxvZx/2+F97ndiUQAWs47ZfQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz", + "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==", "cpu": [ "arm64" ], @@ -275,9 +287,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.3.tgz", - "integrity": "sha512-X8FDDxM9cqda2rJE+iblQhIMYY49LfvW4kaEjoFbTTQ4Go8G96Smj2w3BRTwA8IHGoi9dPOPGAX63dhuv19UqA==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz", + "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==", "cpu": [ "ia32" ], @@ -291,9 +303,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.3.tgz", - "integrity": "sha512-hIbeejCOyO0X9ujfIIOKjBjNAs9XD/YdJ9JXAy1lHA+8UXuOqbFe4ErMCqMr8dhlMGBuvcQYGF7+kO7waj2KHw==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", + "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", "cpu": [ "loong64" ], @@ -307,9 +319,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.3.tgz", - "integrity": "sha512-znFRzICT/V8VZQMt6rjb21MtAVJv/3dmKRMlohlShrbVXdBuOdDrGb+C2cZGQAR8RFyRe7HS6klmHq103WpmVw==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz", + "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==", "cpu": [ "mips64el" ], @@ -323,9 +335,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.3.tgz", - "integrity": "sha512-EV7LuEybxhXrVTDpbqWF2yehYRNz5e5p+u3oQUS2+ZFpknyi1NXxr8URk4ykR8Efm7iu04//4sBg249yNOwy5Q==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz", + "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==", "cpu": [ "ppc64" ], @@ -339,9 +351,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.3.tgz", - "integrity": "sha512-uDxqFOcLzFIJ+r/pkTTSE9lsCEaV/Y6rMlQjUI9BkzASEChYL/aSQjZjchtEmdnVxDKETnUAmsaZ4pqK1eE5BQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz", + "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==", "cpu": [ "riscv64" ], @@ -355,9 +367,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.3.tgz", - "integrity": "sha512-NbeREhzSxYwFhnCAQOQZmajsPYtX71Ufej3IQ8W2Gxskfz9DK58ENEju4SbpIj48VenktRASC52N5Fhyf/aliQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz", + "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==", "cpu": [ "s390x" ], @@ -371,9 +383,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.3.tgz", - "integrity": "sha512-SDiG0nCixYO9JgpehoKgScwic7vXXndfasjnD5DLbp1xltANzqZ425l7LSdHynt19UWOcDjG9wJJzSElsPvk0w==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz", + "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==", "cpu": [ "x64" ], @@ -387,9 +399,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.3.tgz", - "integrity": "sha512-AzbsJqiHEq1I/tUvOfAzCY15h4/7Ivp3ff/o1GpP16n48JMNAtbW0qui2WCgoIZArEHD0SUQ95gvR0oSO7ZbdA==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz", + "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==", "cpu": [ "x64" ], @@ -403,9 +415,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.3.tgz", - "integrity": "sha512-gSABi8qHl8k3Cbi/4toAzHiykuBuWLZs43JomTcXkjMZVkp0gj3gg9mO+9HJW/8GB5H89RX/V0QP4JGL7YEEVg==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz", + "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==", "cpu": [ "x64" ], @@ -419,9 +431,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.3.tgz", - "integrity": "sha512-SF9Kch5Ete4reovvRO6yNjMxrvlfT0F0Flm+NPoUw5Z4Q3r1d23LFTgaLwm3Cp0iGbrU/MoUI+ZqwCv5XJijCw==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz", + "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==", "cpu": [ "x64" ], @@ -435,9 +447,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.3.tgz", - "integrity": "sha512-u5aBonZIyGopAZyOnoPAA6fGsDeHByZ9CnEzyML9NqntK6D/xl5jteZUKm/p6nD09+v3pTM6TuUIqSPcChk5gg==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz", + "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==", "cpu": [ "arm64" ], @@ -451,9 +463,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.3.tgz", - "integrity": "sha512-GlgVq1WpvOEhNioh74TKelwla9KDuAaLZrdxuuUgsP2vayxeLgVc+rbpIv0IYF4+tlIzq2vRhofV+KGLD+37EQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz", + "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==", "cpu": [ "ia32" ], @@ -467,9 +479,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.3.tgz", - "integrity": "sha512-5/JuTd8OWW8UzEtyf19fbrtMJENza+C9JoPIkvItgTBQ1FO2ZLvjbPO6Xs54vk0s5JB5QsfieUEshRQfu7ZHow==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz", + "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==", "cpu": [ "x64" ], @@ -482,10 +494,44 @@ "node": ">=12" } }, + "node_modules/@fastify/busboy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.0.tgz", + "integrity": "sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==", + "dev": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, "node_modules/acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -495,9 +541,9 @@ } }, "node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", "dev": true, "engines": { "node": ">=0.4.0" @@ -525,37 +571,6 @@ "printable-characters": "^1.0.42" } }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/better-sqlite3": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-8.4.0.tgz", - "integrity": "sha512-NmsNW1CQvqMszu/CFAJ3pLct6NEFlNfuGM6vw72KHkjOD1UDnL96XNN1BMQc1hiHo8vE2GbOWQYIpZ+YM5wrZw==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "bindings": "^1.5.0", - "prebuild-install": "^7.1.0" - } - }, "node_modules/binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", @@ -565,26 +580,6 @@ "node": ">=8" } }, - "node_modules/bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "dev": true, - "dependencies": { - "file-uri-to-path": "1.0.0" - } - }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, "node_modules/blake3-wasm": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/blake3-wasm/-/blake3-wasm-2.1.5.tgz", @@ -603,48 +598,6 @@ "node": ">=8" } }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/busboy": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", - "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", - "dev": true, - "dependencies": { - "streamsearch": "^1.1.0" - }, - "engines": { - "node": ">=10.16.0" - } - }, "node_modules/capnp-ts": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/capnp-ts/-/capnp-ts-0.7.0.tgz", @@ -682,12 +635,6 @@ "fsevents": "~2.3.2" } }, - "node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true - }, "node_modules/cookie": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", @@ -720,52 +667,10 @@ } } }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "dev": true, - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/detect-libc": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", - "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "dependencies": { - "once": "^1.4.0" - } - }, "node_modules/esbuild": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.3.tgz", - "integrity": "sha512-71f7EjPWTiSguen8X/kxEpkAS7BFHwtQKisCDDV3Y4GLGWBaoSCyD5uXkaUew6JDzA9FEN1W23mdnSwW9kqCeg==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", + "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", "dev": true, "hasInstallScript": true, "bin": { @@ -775,28 +680,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.3", - "@esbuild/android-arm64": "0.16.3", - "@esbuild/android-x64": "0.16.3", - "@esbuild/darwin-arm64": "0.16.3", - "@esbuild/darwin-x64": "0.16.3", - "@esbuild/freebsd-arm64": "0.16.3", - "@esbuild/freebsd-x64": "0.16.3", - "@esbuild/linux-arm": "0.16.3", - "@esbuild/linux-arm64": "0.16.3", - "@esbuild/linux-ia32": "0.16.3", - "@esbuild/linux-loong64": "0.16.3", - "@esbuild/linux-mips64el": "0.16.3", - "@esbuild/linux-ppc64": "0.16.3", - "@esbuild/linux-riscv64": "0.16.3", - "@esbuild/linux-s390x": "0.16.3", - "@esbuild/linux-x64": "0.16.3", - "@esbuild/netbsd-x64": "0.16.3", - "@esbuild/openbsd-x64": "0.16.3", - "@esbuild/sunos-x64": "0.16.3", - "@esbuild/win32-arm64": "0.16.3", - "@esbuild/win32-ia32": "0.16.3", - "@esbuild/win32-x64": "0.16.3" + "@esbuild/android-arm": "0.17.19", + "@esbuild/android-arm64": "0.17.19", + "@esbuild/android-x64": "0.17.19", + "@esbuild/darwin-arm64": "0.17.19", + "@esbuild/darwin-x64": "0.17.19", + "@esbuild/freebsd-arm64": "0.17.19", + "@esbuild/freebsd-x64": "0.17.19", + "@esbuild/linux-arm": "0.17.19", + "@esbuild/linux-arm64": "0.17.19", + "@esbuild/linux-ia32": "0.17.19", + "@esbuild/linux-loong64": "0.17.19", + "@esbuild/linux-mips64el": "0.17.19", + "@esbuild/linux-ppc64": "0.17.19", + "@esbuild/linux-riscv64": "0.17.19", + "@esbuild/linux-s390x": "0.17.19", + "@esbuild/linux-x64": "0.17.19", + "@esbuild/netbsd-x64": "0.17.19", + "@esbuild/openbsd-x64": "0.17.19", + "@esbuild/sunos-x64": "0.17.19", + "@esbuild/win32-arm64": "0.17.19", + "@esbuild/win32-ia32": "0.17.19", + "@esbuild/win32-x64": "0.17.19" } }, "node_modules/escape-string-regexp": { @@ -829,21 +734,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/expand-template": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", - "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true - }, "node_modules/fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", @@ -856,12 +746,6 @@ "node": ">=8" } }, - "node_modules/fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, "node_modules/fsevents": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", @@ -876,6 +760,15 @@ "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/get-source": { "version": "2.0.12", "resolved": "https://registry.npmjs.org/get-source/-/get-source-2.0.12.tgz", @@ -886,21 +779,6 @@ "source-map": "^0.6.1" } }, - "node_modules/get-source/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", - "dev": true - }, "node_modules/glob-parent": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", @@ -919,43 +797,17 @@ "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", "dev": true }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "dev": true - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } }, "node_modules/is-binary-path": { "version": "2.1.0", @@ -969,6 +821,18 @@ "node": ">=8" } }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -999,27 +863,6 @@ "node": ">=0.12.0" } }, - "node_modules/kleur": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", - "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/magic-string": { "version": "0.25.9", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", @@ -1041,60 +884,32 @@ "node": ">=10.0.0" } }, - "node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/miniflare": { - "version": "3.20230710.0", - "resolved": "https://registry.npmjs.org/miniflare/-/miniflare-3.20230710.0.tgz", - "integrity": "sha512-kVxJoJFeepK+rGJp9UN0D8d3sL6hjFbzd3qcLUUUKosp0ouoleOa6uPNK0b8fEBWWqFUD2W4V4ziN7UvXFB4pg==", + "version": "3.20240129.0", + "resolved": "https://registry.npmjs.org/miniflare/-/miniflare-3.20240129.0.tgz", + "integrity": "sha512-27pDhlP2G/4gXmvnSt6LjMQ8KrkmbJElIQmn+BLjdiyIx+zXY4E8MSPJmi9flgf0dn3wtjuHO2ASenuopqqxrw==", "dev": true, "dependencies": { + "@cspotcode/source-map-support": "0.8.1", "acorn": "^8.8.0", "acorn-walk": "^8.2.0", - "better-sqlite3": "^8.1.0", "capnp-ts": "^0.7.0", "exit-hook": "^2.2.1", "glob-to-regexp": "^0.4.1", - "http-cache-semantics": "^4.1.0", - "kleur": "^4.1.5", - "set-cookie-parser": "^2.6.0", - "source-map-support": "0.5.21", "stoppable": "^1.1.0", - "undici": "^5.13.0", - "workerd": "1.20230710.0", + "undici": "^5.28.2", + "workerd": "1.20240129.0", "ws": "^8.11.0", "youch": "^3.2.2", "zod": "^3.20.6" }, + "bin": { + "miniflare": "bootstrap.js" + }, "engines": { "node": ">=16.13" } }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", - "dev": true - }, "node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -1128,24 +943,6 @@ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/napi-build-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", - "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==", - "dev": true - }, - "node_modules/node-abi": { - "version": "3.45.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.45.0.tgz", - "integrity": "sha512-iwXuFrMAcFVi/ZoZiqq8BzAdsLw9kxDfTC0HMyjXfSL/6CSDAGD5UmR7azrAgWV1zKYq7dUUMj4owusBWKLsiQ==", - "dev": true, - "dependencies": { - "semver": "^7.3.5" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/node-forge": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", @@ -1164,14 +961,11 @@ "node": ">=0.10.0" } }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true }, "node_modules/path-to-regexp": { "version": "6.2.1", @@ -1191,87 +985,48 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/prebuild-install": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", - "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", - "dev": true, - "dependencies": { - "detect-libc": "^2.0.0", - "expand-template": "^2.0.3", - "github-from-package": "0.0.0", - "minimist": "^1.2.3", - "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^1.0.1", - "node-abi": "^3.3.0", - "pump": "^3.0.0", - "rc": "^1.2.7", - "simple-get": "^4.0.0", - "tar-fs": "^2.0.0", - "tunnel-agent": "^0.6.0" - }, - "bin": { - "prebuild-install": "bin.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/printable-characters": { "version": "1.0.42", "resolved": "https://registry.npmjs.org/printable-characters/-/printable-characters-1.0.42.tgz", "integrity": "sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ==", "dev": true }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" } }, - "node_modules/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dev": true, "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { - "rc": "cli.js" - } - }, - "node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "resolve": "bin/resolve" }, - "engines": { - "node": ">= 6" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "node_modules/resolve.exports": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", + "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, "engines": { - "node": ">=8.10.0" + "node": ">=10" } }, "node_modules/rollup-plugin-inject": { @@ -1304,26 +1059,6 @@ "estree-walker": "^0.6.1" } }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/selfsigned": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", @@ -1336,92 +1071,7 @@ "node": ">=10" } }, - "node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/set-cookie-parser": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.6.0.tgz", - "integrity": "sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==", - "dev": true - }, - "node_modules/simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, "node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/source-map-support/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", @@ -1457,59 +1107,16 @@ "npm": ">=6" } }, - "node_modules/streamsearch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", - "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", - "dev": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", - "dev": true, - "dependencies": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } - }, - "node_modules/tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" + "node": ">= 0.4" }, - "engines": { - "node": ">=6" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/to-regex-range": { @@ -1525,23 +1132,11 @@ } }, "node_modules/tslib": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.0.tgz", - "integrity": "sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==", + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", "dev": true }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" - } - }, "node_modules/typescript": { "version": "5.1.6", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", @@ -1556,27 +1151,21 @@ } }, "node_modules/undici": { - "version": "5.22.1", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.22.1.tgz", - "integrity": "sha512-Ji2IJhFXZY0x/0tVBXeQwgPlLWw13GVzpsWPQ3rV50IFMMof2I55PZZxtm4P6iNq+L5znYN9nSTAq0ZyE6lSJw==", + "version": "5.28.2", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", + "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", "dev": true, "dependencies": { - "busboy": "^1.6.0" + "@fastify/busboy": "^2.0.0" }, "engines": { "node": ">=14.0" } }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, "node_modules/workerd": { - "version": "1.20230710.0", - "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20230710.0.tgz", - "integrity": "sha512-4iC+8w3UNixJ+b6GA2VOG2B6rnfSbSnm7Fnvsvq9iJuolG34fnD9xrfaXu6oN7H3Wyby3z8OIm0fy3szTvuRcg==", + "version": "1.20240129.0", + "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20240129.0.tgz", + "integrity": "sha512-t4pnsmjjk/u+GdVDgH2M1AFmJaBUABshYK/vT/HNrAXsHSwN6VR8Yqw0JQ845OokO34VLkuUtYQYyxHHKpdtsw==", "dev": true, "hasInstallScript": true, "bin": { @@ -1586,30 +1175,32 @@ "node": ">=16" }, "optionalDependencies": { - "@cloudflare/workerd-darwin-64": "1.20230710.0", - "@cloudflare/workerd-darwin-arm64": "1.20230710.0", - "@cloudflare/workerd-linux-64": "1.20230710.0", - "@cloudflare/workerd-linux-arm64": "1.20230710.0", - "@cloudflare/workerd-windows-64": "1.20230710.0" + "@cloudflare/workerd-darwin-64": "1.20240129.0", + "@cloudflare/workerd-darwin-arm64": "1.20240129.0", + "@cloudflare/workerd-linux-64": "1.20240129.0", + "@cloudflare/workerd-linux-arm64": "1.20240129.0", + "@cloudflare/workerd-windows-64": "1.20240129.0" } }, "node_modules/wrangler": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-3.2.0.tgz", - "integrity": "sha512-Fne5c91uolV4+E0B60F/meWbD/sr/oSPBfr6x1gapu6I7Ipu5uUt29K/fuGRgXRQcVVKnd5k3fS++ruuLODoxA==", + "version": "3.26.0", + "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-3.26.0.tgz", + "integrity": "sha512-2FKDyL0wV6ws+9AHkQl5/Yzn17kG9jlpgyT7wqCDkhb5q+TCL/I8N5IKVwXe8tRrTluBI1QQZRRymoA5nu0pHw==", "dev": true, "dependencies": { "@cloudflare/kv-asset-handler": "^0.2.0", - "@esbuild-plugins/node-globals-polyfill": "^0.1.1", - "@esbuild-plugins/node-modules-polyfill": "^0.1.4", + "@esbuild-plugins/node-globals-polyfill": "^0.2.3", + "@esbuild-plugins/node-modules-polyfill": "^0.2.2", "blake3-wasm": "^2.1.5", "chokidar": "^3.5.3", - "esbuild": "0.16.3", - "miniflare": "3.20230710.0", + "esbuild": "0.17.19", + "miniflare": "3.20240129.0", "nanoid": "^3.3.3", "path-to-regexp": "^6.2.0", + "resolve": "^1.22.8", + "resolve.exports": "^2.0.2", "selfsigned": "^2.0.1", - "source-map": "^0.7.4", + "source-map": "0.6.1", "xxhash-wasm": "^1.0.1" }, "bin": { @@ -1617,22 +1208,16 @@ "wrangler2": "bin/wrangler.js" }, "engines": { - "node": ">=16.13.0" + "node": ">=16.17.0" }, "optionalDependencies": { "fsevents": "~2.3.2" } }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, "node_modules/ws": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", + "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", "dev": true, "engines": { "node": ">=10.0.0" @@ -1656,16 +1241,10 @@ "integrity": "sha512-ibF0Or+FivM9lNrg+HGJfVX8WJqgo+kCLDc4vx6xMeTce7Aj+DLttKbxxRR/gNLSAelRc1omAPlJ77N/Jem07A==", "dev": true }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/youch": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/youch/-/youch-3.2.3.tgz", - "integrity": "sha512-ZBcWz/uzZaQVdCvfV4uk616Bbpf2ee+F/AvuKDR5EwX/Y4v06xWdtMluqTD7+KlZdM93lLm9gMZYo0sKBS0pgw==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/youch/-/youch-3.3.3.tgz", + "integrity": "sha512-qSFXUk3UZBLfggAW3dJKg0BMblG5biqSF8M34E06o5CSsZtH92u9Hqmj2RzGiHDi64fhe83+4tENFP2DB6t6ZA==", "dev": true, "dependencies": { "cookie": "^0.5.0", @@ -1674,9 +1253,9 @@ } }, "node_modules/zod": { - "version": "3.21.4", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz", - "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==", + "version": "3.22.4", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz", + "integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==", "dev": true, "funding": { "url": "https://github.com/sponsors/colinhacks" @@ -1694,37 +1273,37 @@ } }, "@cloudflare/workerd-darwin-64": { - "version": "1.20230710.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20230710.0.tgz", - "integrity": "sha512-TDEgTfzTkveW+U0qtg9/60PXbl2klnEso0oio501zAnY2SOC1x7M0qb8UkhvjHFUVpwdykUzTPWPIWFBcF1ibA==", + "version": "1.20240129.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20240129.0.tgz", + "integrity": "sha512-DfVVB5IsQLVcWPJwV019vY3nEtU88c2Qu2ST5SQxqcGivZ52imagLRK0RHCIP8PK4piSiq90qUC6ybppUsw8eg==", "dev": true, "optional": true }, "@cloudflare/workerd-darwin-arm64": { - "version": "1.20230710.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20230710.0.tgz", - "integrity": "sha512-dxBwnKcj7TiM1JGiODg0LASa25A9P0XLeMkmF8YCECZoq+3QLH/uY4Vbm1xeEy8iXUZrt/uYN72bBE83vY4HIQ==", + "version": "1.20240129.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20240129.0.tgz", + "integrity": "sha512-t0q8ABkmumG1zRM/MZ/vIv/Ysx0vTAXnQAPy/JW5aeQi/tqrypXkO9/NhPc0jbF/g/hIPrWEqpDgEp3CB7Da7Q==", "dev": true, "optional": true }, "@cloudflare/workerd-linux-64": { - "version": "1.20230710.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20230710.0.tgz", - "integrity": "sha512-WrKZwL76i51jQLFpSxklpRSm2s8T9Xf6tVzQaiLTtpguKZSF/CTAyjjEOVfS7FXk+Te8lyAJAFQnj5QHoJ3pzA==", + "version": "1.20240129.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20240129.0.tgz", + "integrity": "sha512-sFV1uobHgDI+6CKBS/ZshQvOvajgwl6BtiYaH4PSFSpvXTmRx+A9bcug+6BnD+V4WgwxTiEO2iR97E1XuwDAVw==", "dev": true, "optional": true }, "@cloudflare/workerd-linux-arm64": { - "version": "1.20230710.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20230710.0.tgz", - "integrity": "sha512-eWdbOoqFqQ4m1/Wwy2dRDaOVXjOmWGjwBliU8pvm2m9RjfRTdfik7z6E3vOkalxqJDHiJ0f8SUykKz2oM1lD0A==", + "version": "1.20240129.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20240129.0.tgz", + "integrity": "sha512-O7q7htHaFRp8PgTqNJx1/fYc3+LnvAo6kWWB9a14C5OWak6AAZk42PNpKPx+DXTmGvI+8S1+futBGUeJ8NPDXg==", "dev": true, "optional": true }, "@cloudflare/workerd-windows-64": { - "version": "1.20230710.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20230710.0.tgz", - "integrity": "sha512-P5ihH98Pb72HrsVsvb/HCSezvAvEtPeVQVBKgIclNE9e0fkA4zX9QMzBBFvLy3yr0YLf4r7MO2tNnt7JFnheGA==", + "version": "1.20240129.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20240129.0.tgz", + "integrity": "sha512-YqGno0XSqqqkDmNoGEX6M8kJlI2lEfWntbTPVtHaZlaXVR9sWfoD7TEno0NKC95cXFz+ioyFLbgbOdnfWwmVAA==", "dev": true, "optional": true }, @@ -1734,17 +1313,26 @@ "integrity": "sha512-bq0QMM51KyqTL/lIFUToT2AZfulO7pqwQvdZhjPMbxlIJADDNYeFd+GEQ6YGiGl5G/xxVEkpEql59sYlSfzYIg==", "dev": true }, + "@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "0.3.9" + } + }, "@esbuild-plugins/node-globals-polyfill": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.1.1.tgz", - "integrity": "sha512-MR0oAA+mlnJWrt1RQVQ+4VYuRJW/P2YmRTv1AsplObyvuBMnPHiizUF95HHYiSsMGLhyGtWufaq2XQg6+iurBg==", + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.2.3.tgz", + "integrity": "sha512-r3MIryXDeXDOZh7ih1l/yE9ZLORCd5e8vWg02azWRGj5SPTuoh69A2AIyn0Z31V/kHBfZ4HgWJ+OK3GTTwLmnw==", "dev": true, "requires": {} }, "@esbuild-plugins/node-modules-polyfill": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-modules-polyfill/-/node-modules-polyfill-0.1.4.tgz", - "integrity": "sha512-uZbcXi0zbmKC/050p3gJnne5Qdzw8vkXIv+c2BW0Lsc1ji1SkrxbKPUy5Efr0blbTu1SL8w4eyfpnSdPg3G0Qg==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-modules-polyfill/-/node-modules-polyfill-0.2.2.tgz", + "integrity": "sha512-LXV7QsWJxRuMYvKbiznh+U1ilIop3g2TeKRzUxOG5X3YITc8JyyTa90BmLwqqv0YnX4v32CSlG+vsziZp9dMvA==", "dev": true, "requires": { "escape-string-regexp": "^4.0.0", @@ -1752,169 +1340,197 @@ } }, "@esbuild/android-arm": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.3.tgz", - "integrity": "sha512-mueuEoh+s1eRbSJqq9KNBQwI4QhQV6sRXIfTyLXSHGMpyew61rOK4qY21uKbXl1iBoMb0AdL1deWFCQVlN2qHA==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", + "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", "dev": true, "optional": true }, "@esbuild/android-arm64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.3.tgz", - "integrity": "sha512-RolFVeinkeraDvN/OoRf1F/lP0KUfGNb5jxy/vkIMeRRChkrX/HTYN6TYZosRJs3a1+8wqpxAo5PI5hFmxyPRg==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz", + "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==", "dev": true, "optional": true }, "@esbuild/android-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.3.tgz", - "integrity": "sha512-SFpTUcIT1bIJuCCBMCQWq1bL2gPTjWoLZdjmIhjdcQHaUfV41OQfho6Ici5uvvkMmZRXIUGpM3GxysP/EU7ifQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz", + "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==", "dev": true, "optional": true }, "@esbuild/darwin-arm64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.3.tgz", - "integrity": "sha512-DO8WykMyB+N9mIDfI/Hug70Dk1KipavlGAecxS3jDUwAbTpDXj0Lcwzw9svkhxfpCagDmpaTMgxWK8/C/XcXvw==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz", + "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==", "dev": true, "optional": true }, "@esbuild/darwin-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.3.tgz", - "integrity": "sha512-uEqZQ2omc6BvWqdCiyZ5+XmxuHEi1SPzpVxXCSSV2+Sh7sbXbpeNhHIeFrIpRjAs0lI1FmA1iIOxFozKBhKgRQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz", + "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==", "dev": true, "optional": true }, "@esbuild/freebsd-arm64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.3.tgz", - "integrity": "sha512-nJansp3sSXakNkOD5i5mIz2Is/HjzIhFs49b1tjrPrpCmwgBmH9SSzhC/Z1UqlkivqMYkhfPwMw1dGFUuwmXhw==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz", + "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==", "dev": true, "optional": true }, "@esbuild/freebsd-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.3.tgz", - "integrity": "sha512-TfoDzLw+QHfc4a8aKtGSQ96Wa+6eimljjkq9HKR0rHlU83vw8aldMOUSJTUDxbcUdcgnJzPaX8/vGWm7vyV7ug==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz", + "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==", "dev": true, "optional": true }, "@esbuild/linux-arm": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.3.tgz", - "integrity": "sha512-VwswmSYwVAAq6LysV59Fyqk3UIjbhuc6wb3vEcJ7HEJUtFuLK9uXWuFoH1lulEbE4+5GjtHi3MHX+w1gNHdOWQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz", + "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==", "dev": true, "optional": true }, "@esbuild/linux-arm64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.3.tgz", - "integrity": "sha512-7I3RlsnxEFCHVZNBLb2w7unamgZ5sVwO0/ikE2GaYvYuUQs9Qte/w7TqWcXHtCwxvZx/2+F97ndiUQAWs47ZfQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz", + "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==", "dev": true, "optional": true }, "@esbuild/linux-ia32": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.3.tgz", - "integrity": "sha512-X8FDDxM9cqda2rJE+iblQhIMYY49LfvW4kaEjoFbTTQ4Go8G96Smj2w3BRTwA8IHGoi9dPOPGAX63dhuv19UqA==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz", + "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==", "dev": true, "optional": true }, "@esbuild/linux-loong64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.3.tgz", - "integrity": "sha512-hIbeejCOyO0X9ujfIIOKjBjNAs9XD/YdJ9JXAy1lHA+8UXuOqbFe4ErMCqMr8dhlMGBuvcQYGF7+kO7waj2KHw==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", + "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", "dev": true, "optional": true }, "@esbuild/linux-mips64el": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.3.tgz", - "integrity": "sha512-znFRzICT/V8VZQMt6rjb21MtAVJv/3dmKRMlohlShrbVXdBuOdDrGb+C2cZGQAR8RFyRe7HS6klmHq103WpmVw==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz", + "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==", "dev": true, "optional": true }, "@esbuild/linux-ppc64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.3.tgz", - "integrity": "sha512-EV7LuEybxhXrVTDpbqWF2yehYRNz5e5p+u3oQUS2+ZFpknyi1NXxr8URk4ykR8Efm7iu04//4sBg249yNOwy5Q==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz", + "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==", "dev": true, "optional": true }, "@esbuild/linux-riscv64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.3.tgz", - "integrity": "sha512-uDxqFOcLzFIJ+r/pkTTSE9lsCEaV/Y6rMlQjUI9BkzASEChYL/aSQjZjchtEmdnVxDKETnUAmsaZ4pqK1eE5BQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz", + "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==", "dev": true, "optional": true }, "@esbuild/linux-s390x": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.3.tgz", - "integrity": "sha512-NbeREhzSxYwFhnCAQOQZmajsPYtX71Ufej3IQ8W2Gxskfz9DK58ENEju4SbpIj48VenktRASC52N5Fhyf/aliQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz", + "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==", "dev": true, "optional": true }, "@esbuild/linux-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.3.tgz", - "integrity": "sha512-SDiG0nCixYO9JgpehoKgScwic7vXXndfasjnD5DLbp1xltANzqZ425l7LSdHynt19UWOcDjG9wJJzSElsPvk0w==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz", + "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==", "dev": true, "optional": true }, "@esbuild/netbsd-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.3.tgz", - "integrity": "sha512-AzbsJqiHEq1I/tUvOfAzCY15h4/7Ivp3ff/o1GpP16n48JMNAtbW0qui2WCgoIZArEHD0SUQ95gvR0oSO7ZbdA==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz", + "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==", "dev": true, "optional": true }, "@esbuild/openbsd-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.3.tgz", - "integrity": "sha512-gSABi8qHl8k3Cbi/4toAzHiykuBuWLZs43JomTcXkjMZVkp0gj3gg9mO+9HJW/8GB5H89RX/V0QP4JGL7YEEVg==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz", + "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==", "dev": true, "optional": true }, "@esbuild/sunos-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.3.tgz", - "integrity": "sha512-SF9Kch5Ete4reovvRO6yNjMxrvlfT0F0Flm+NPoUw5Z4Q3r1d23LFTgaLwm3Cp0iGbrU/MoUI+ZqwCv5XJijCw==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz", + "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==", "dev": true, "optional": true }, "@esbuild/win32-arm64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.3.tgz", - "integrity": "sha512-u5aBonZIyGopAZyOnoPAA6fGsDeHByZ9CnEzyML9NqntK6D/xl5jteZUKm/p6nD09+v3pTM6TuUIqSPcChk5gg==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz", + "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==", "dev": true, "optional": true }, "@esbuild/win32-ia32": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.3.tgz", - "integrity": "sha512-GlgVq1WpvOEhNioh74TKelwla9KDuAaLZrdxuuUgsP2vayxeLgVc+rbpIv0IYF4+tlIzq2vRhofV+KGLD+37EQ==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz", + "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==", "dev": true, "optional": true }, "@esbuild/win32-x64": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.3.tgz", - "integrity": "sha512-5/JuTd8OWW8UzEtyf19fbrtMJENza+C9JoPIkvItgTBQ1FO2ZLvjbPO6Xs54vk0s5JB5QsfieUEshRQfu7ZHow==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz", + "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==", "dev": true, "optional": true }, + "@fastify/busboy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.0.tgz", + "integrity": "sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==", + "dev": true + }, + "@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, "acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "dev": true }, "acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", "dev": true }, "anymatch": { @@ -1936,48 +1552,12 @@ "printable-characters": "^1.0.42" } }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "better-sqlite3": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-8.4.0.tgz", - "integrity": "sha512-NmsNW1CQvqMszu/CFAJ3pLct6NEFlNfuGM6vw72KHkjOD1UDnL96XNN1BMQc1hiHo8vE2GbOWQYIpZ+YM5wrZw==", - "dev": true, - "requires": { - "bindings": "^1.5.0", - "prebuild-install": "^7.1.0" - } - }, "binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "dev": true, - "requires": { - "file-uri-to-path": "1.0.0" - } - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, "blake3-wasm": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/blake3-wasm/-/blake3-wasm-2.1.5.tgz", @@ -1993,31 +1573,6 @@ "fill-range": "^7.0.1" } }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "busboy": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", - "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", - "dev": true, - "requires": { - "streamsearch": "^1.1.0" - } - }, "capnp-ts": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/capnp-ts/-/capnp-ts-0.7.0.tgz", @@ -2044,12 +1599,6 @@ "readdirp": "~3.6.0" } }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true - }, "cookie": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", @@ -2071,64 +1620,34 @@ "ms": "2.1.2" } }, - "decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "dev": true, - "requires": { - "mimic-response": "^3.1.0" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, - "detect-libc": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", - "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, "esbuild": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.3.tgz", - "integrity": "sha512-71f7EjPWTiSguen8X/kxEpkAS7BFHwtQKisCDDV3Y4GLGWBaoSCyD5uXkaUew6JDzA9FEN1W23mdnSwW9kqCeg==", + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", + "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", "dev": true, "requires": { - "@esbuild/android-arm": "0.16.3", - "@esbuild/android-arm64": "0.16.3", - "@esbuild/android-x64": "0.16.3", - "@esbuild/darwin-arm64": "0.16.3", - "@esbuild/darwin-x64": "0.16.3", - "@esbuild/freebsd-arm64": "0.16.3", - "@esbuild/freebsd-x64": "0.16.3", - "@esbuild/linux-arm": "0.16.3", - "@esbuild/linux-arm64": "0.16.3", - "@esbuild/linux-ia32": "0.16.3", - "@esbuild/linux-loong64": "0.16.3", - "@esbuild/linux-mips64el": "0.16.3", - "@esbuild/linux-ppc64": "0.16.3", - "@esbuild/linux-riscv64": "0.16.3", - "@esbuild/linux-s390x": "0.16.3", - "@esbuild/linux-x64": "0.16.3", - "@esbuild/netbsd-x64": "0.16.3", - "@esbuild/openbsd-x64": "0.16.3", - "@esbuild/sunos-x64": "0.16.3", - "@esbuild/win32-arm64": "0.16.3", - "@esbuild/win32-ia32": "0.16.3", - "@esbuild/win32-x64": "0.16.3" + "@esbuild/android-arm": "0.17.19", + "@esbuild/android-arm64": "0.17.19", + "@esbuild/android-x64": "0.17.19", + "@esbuild/darwin-arm64": "0.17.19", + "@esbuild/darwin-x64": "0.17.19", + "@esbuild/freebsd-arm64": "0.17.19", + "@esbuild/freebsd-x64": "0.17.19", + "@esbuild/linux-arm": "0.17.19", + "@esbuild/linux-arm64": "0.17.19", + "@esbuild/linux-ia32": "0.17.19", + "@esbuild/linux-loong64": "0.17.19", + "@esbuild/linux-mips64el": "0.17.19", + "@esbuild/linux-ppc64": "0.17.19", + "@esbuild/linux-riscv64": "0.17.19", + "@esbuild/linux-s390x": "0.17.19", + "@esbuild/linux-x64": "0.17.19", + "@esbuild/netbsd-x64": "0.17.19", + "@esbuild/openbsd-x64": "0.17.19", + "@esbuild/sunos-x64": "0.17.19", + "@esbuild/win32-arm64": "0.17.19", + "@esbuild/win32-ia32": "0.17.19", + "@esbuild/win32-x64": "0.17.19" } }, "escape-string-regexp": { @@ -2149,18 +1668,6 @@ "integrity": "sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==", "dev": true }, - "expand-template": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", - "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", - "dev": true - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true - }, "fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", @@ -2170,12 +1677,6 @@ "to-regex-range": "^5.0.1" } }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, "fsevents": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", @@ -2183,6 +1684,12 @@ "dev": true, "optional": true }, + "function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true + }, "get-source": { "version": "2.0.12", "resolved": "https://registry.npmjs.org/get-source/-/get-source-2.0.12.tgz", @@ -2191,22 +1698,8 @@ "requires": { "data-uri-to-buffer": "^2.0.0", "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } } }, - "github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", - "dev": true - }, "glob-parent": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", @@ -2222,29 +1715,14 @@ "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", "dev": true }, - "http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "dev": true - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true + "hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dev": true, + "requires": { + "function-bind": "^1.1.2" + } }, "is-binary-path": { "version": "2.1.0", @@ -2255,6 +1733,15 @@ "binary-extensions": "^2.0.0" } }, + "is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, + "requires": { + "hasown": "^2.0.0" + } + }, "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -2276,21 +1763,6 @@ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true }, - "kleur": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", - "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", - "dev": true - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, "magic-string": { "version": "0.25.9", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", @@ -2306,48 +1778,26 @@ "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", "dev": true }, - "mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "dev": true - }, "miniflare": { - "version": "3.20230710.0", - "resolved": "https://registry.npmjs.org/miniflare/-/miniflare-3.20230710.0.tgz", - "integrity": "sha512-kVxJoJFeepK+rGJp9UN0D8d3sL6hjFbzd3qcLUUUKosp0ouoleOa6uPNK0b8fEBWWqFUD2W4V4ziN7UvXFB4pg==", + "version": "3.20240129.0", + "resolved": "https://registry.npmjs.org/miniflare/-/miniflare-3.20240129.0.tgz", + "integrity": "sha512-27pDhlP2G/4gXmvnSt6LjMQ8KrkmbJElIQmn+BLjdiyIx+zXY4E8MSPJmi9flgf0dn3wtjuHO2ASenuopqqxrw==", "dev": true, "requires": { + "@cspotcode/source-map-support": "0.8.1", "acorn": "^8.8.0", "acorn-walk": "^8.2.0", - "better-sqlite3": "^8.1.0", "capnp-ts": "^0.7.0", "exit-hook": "^2.2.1", "glob-to-regexp": "^0.4.1", - "http-cache-semantics": "^4.1.0", - "kleur": "^4.1.5", - "set-cookie-parser": "^2.6.0", - "source-map-support": "0.5.21", "stoppable": "^1.1.0", - "undici": "^5.13.0", - "workerd": "1.20230710.0", + "undici": "^5.28.2", + "workerd": "1.20240129.0", "ws": "^8.11.0", "youch": "^3.2.2", "zod": "^3.20.6" } }, - "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true - }, - "mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", - "dev": true - }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -2366,21 +1816,6 @@ "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", "dev": true }, - "napi-build-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", - "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==", - "dev": true - }, - "node-abi": { - "version": "3.45.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.45.0.tgz", - "integrity": "sha512-iwXuFrMAcFVi/ZoZiqq8BzAdsLw9kxDfTC0HMyjXfSL/6CSDAGD5UmR7azrAgWV1zKYq7dUUMj4owusBWKLsiQ==", - "dev": true, - "requires": { - "semver": "^7.3.5" - } - }, "node-forge": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", @@ -2393,14 +1828,11 @@ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "requires": { - "wrappy": "1" - } + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true }, "path-to-regexp": { "version": "6.2.1", @@ -2414,65 +1846,12 @@ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true }, - "prebuild-install": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", - "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", - "dev": true, - "requires": { - "detect-libc": "^2.0.0", - "expand-template": "^2.0.3", - "github-from-package": "0.0.0", - "minimist": "^1.2.3", - "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^1.0.1", - "node-abi": "^3.3.0", - "pump": "^3.0.0", - "rc": "^1.2.7", - "simple-get": "^4.0.0", - "tar-fs": "^2.0.0", - "tunnel-agent": "^0.6.0" - } - }, "printable-characters": { "version": "1.0.42", "resolved": "https://registry.npmjs.org/printable-characters/-/printable-characters-1.0.42.tgz", "integrity": "sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ==", "dev": true }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, "readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", @@ -2482,6 +1861,23 @@ "picomatch": "^2.2.1" } }, + "resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "requires": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "resolve.exports": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", + "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", + "dev": true + }, "rollup-plugin-inject": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rollup-plugin-inject/-/rollup-plugin-inject-3.0.2.tgz", @@ -2511,12 +1907,6 @@ "estree-walker": "^0.6.1" } }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, "selfsigned": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", @@ -2526,62 +1916,12 @@ "node-forge": "^1" } }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-cookie-parser": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.6.0.tgz", - "integrity": "sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==", - "dev": true - }, - "simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "dev": true - }, - "simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", - "dev": true, - "requires": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, "source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, "sourcemap-codec": { "version": "1.4.8", "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", @@ -2604,52 +1944,12 @@ "integrity": "sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==", "dev": true }, - "streamsearch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", - "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true }, - "tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", - "dev": true, - "requires": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -2660,20 +1960,11 @@ } }, "tslib": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.0.tgz", - "integrity": "sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==", + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", "dev": true }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, "typescript": { "version": "5.1.6", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", @@ -2681,64 +1972,54 @@ "dev": true }, "undici": { - "version": "5.22.1", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.22.1.tgz", - "integrity": "sha512-Ji2IJhFXZY0x/0tVBXeQwgPlLWw13GVzpsWPQ3rV50IFMMof2I55PZZxtm4P6iNq+L5znYN9nSTAq0ZyE6lSJw==", + "version": "5.28.2", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", + "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", "dev": true, "requires": { - "busboy": "^1.6.0" + "@fastify/busboy": "^2.0.0" } }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, "workerd": { - "version": "1.20230710.0", - "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20230710.0.tgz", - "integrity": "sha512-4iC+8w3UNixJ+b6GA2VOG2B6rnfSbSnm7Fnvsvq9iJuolG34fnD9xrfaXu6oN7H3Wyby3z8OIm0fy3szTvuRcg==", + "version": "1.20240129.0", + "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20240129.0.tgz", + "integrity": "sha512-t4pnsmjjk/u+GdVDgH2M1AFmJaBUABshYK/vT/HNrAXsHSwN6VR8Yqw0JQ845OokO34VLkuUtYQYyxHHKpdtsw==", "dev": true, "requires": { - "@cloudflare/workerd-darwin-64": "1.20230710.0", - "@cloudflare/workerd-darwin-arm64": "1.20230710.0", - "@cloudflare/workerd-linux-64": "1.20230710.0", - "@cloudflare/workerd-linux-arm64": "1.20230710.0", - "@cloudflare/workerd-windows-64": "1.20230710.0" + "@cloudflare/workerd-darwin-64": "1.20240129.0", + "@cloudflare/workerd-darwin-arm64": "1.20240129.0", + "@cloudflare/workerd-linux-64": "1.20240129.0", + "@cloudflare/workerd-linux-arm64": "1.20240129.0", + "@cloudflare/workerd-windows-64": "1.20240129.0" } }, "wrangler": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-3.2.0.tgz", - "integrity": "sha512-Fne5c91uolV4+E0B60F/meWbD/sr/oSPBfr6x1gapu6I7Ipu5uUt29K/fuGRgXRQcVVKnd5k3fS++ruuLODoxA==", + "version": "3.26.0", + "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-3.26.0.tgz", + "integrity": "sha512-2FKDyL0wV6ws+9AHkQl5/Yzn17kG9jlpgyT7wqCDkhb5q+TCL/I8N5IKVwXe8tRrTluBI1QQZRRymoA5nu0pHw==", "dev": true, "requires": { "@cloudflare/kv-asset-handler": "^0.2.0", - "@esbuild-plugins/node-globals-polyfill": "^0.1.1", - "@esbuild-plugins/node-modules-polyfill": "^0.1.4", + "@esbuild-plugins/node-globals-polyfill": "^0.2.3", + "@esbuild-plugins/node-modules-polyfill": "^0.2.2", "blake3-wasm": "^2.1.5", "chokidar": "^3.5.3", - "esbuild": "0.16.3", + "esbuild": "0.17.19", "fsevents": "~2.3.2", - "miniflare": "3.20230710.0", + "miniflare": "3.20240129.0", "nanoid": "^3.3.3", "path-to-regexp": "^6.2.0", + "resolve": "^1.22.8", + "resolve.exports": "^2.0.2", "selfsigned": "^2.0.1", - "source-map": "^0.7.4", + "source-map": "0.6.1", "xxhash-wasm": "^1.0.1" } }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, "ws": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", + "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", "dev": true, "requires": {} }, @@ -2748,16 +2029,10 @@ "integrity": "sha512-ibF0Or+FivM9lNrg+HGJfVX8WJqgo+kCLDc4vx6xMeTce7Aj+DLttKbxxRR/gNLSAelRc1omAPlJ77N/Jem07A==", "dev": true }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "youch": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/youch/-/youch-3.2.3.tgz", - "integrity": "sha512-ZBcWz/uzZaQVdCvfV4uk616Bbpf2ee+F/AvuKDR5EwX/Y4v06xWdtMluqTD7+KlZdM93lLm9gMZYo0sKBS0pgw==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/youch/-/youch-3.3.3.tgz", + "integrity": "sha512-qSFXUk3UZBLfggAW3dJKg0BMblG5biqSF8M34E06o5CSsZtH92u9Hqmj2RzGiHDi64fhe83+4tENFP2DB6t6ZA==", "dev": true, "requires": { "cookie": "^0.5.0", @@ -2766,9 +2041,9 @@ } }, "zod": { - "version": "3.21.4", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz", - "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==", + "version": "3.22.4", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz", + "integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==", "dev": true } } diff --git a/packages/uploads-server/package.json b/packages/uploads-server/package.json index ca7ffcd84..c8f5b6f7b 100644 --- a/packages/uploads-server/package.json +++ b/packages/uploads-server/package.json @@ -9,6 +9,6 @@ "devDependencies": { "@cloudflare/workers-types": "^4.20230419.0", "typescript": "^5.0.4", - "wrangler": "^3.0.0" + "wrangler": "^3.26.0" } -} \ No newline at end of file +} diff --git a/packages/uploads-server/src/worker.ts b/packages/uploads-server/src/worker.ts index a0a2ad79c..d3955de5a 100644 --- a/packages/uploads-server/src/worker.ts +++ b/packages/uploads-server/src/worker.ts @@ -42,8 +42,6 @@ export default { const cacheKey = new Request(url.toString(), request); const cache = caches.default; - console.log(`${request.method} object ${objectName}: ${request.url}`); - if (request.method === 'GET' || request.method === 'HEAD') { if (objectName === '' || objectName.endsWith('/')) { if (request.method == 'HEAD') { @@ -63,12 +61,9 @@ export default { // for future access let cachedResponse = await cache.match(cacheKey); if (cachedResponse) { - console.log(`Cache hit for: ${request.url}.`); return cachedResponse; } - console.log(`Response for request url: ${request.url} not present in cache. Fetching and caching request.`); - const object = await env.SSN_UPLOADS.get(objectName, { range: request.headers, }); @@ -80,8 +75,14 @@ export default { const headers = new Headers(); object.writeHttpMetadata(headers); headers.set('Cache-Control', 'public, max-age=31536000, immutable'); - // TODO: limit in the future to prevent hot-linking - headers.set('Access-Control-Allow-Origin', '*'); + const origin = request.headers.get('origin'); + if (origin && isAllowedOrigin(origin)) { + headers.set('Access-Control-Allow-Origin', origin); + } + const downloadParam = url.searchParams.get('download'); + if (downloadParam && downloadParam.length > 0) { + headers.set('Content-Disposition', `attachment; filename="${downloadParam}"`); + } headers.set('etag', object.httpEtag); if (object.range) { // @ts-ignore @@ -117,3 +118,27 @@ export default { }); }, }; + +const allowedOrigins = ['localhost', '127.0.0.1', '*.seasketch.org']; + +function isAllowedOrigin(origin: string) { + // No origin provided, possibly a non-CORS request or server-to-server request + if (!origin) return false; + + // Extract the domain from the origin + const domain = new URL(origin).hostname; + + if (allowedOrigins.includes(domain)) { + return true; + } + + const wildCardOrigins = allowedOrigins.filter((o) => o.startsWith('*.')); + for (const origin of wildCardOrigins) { + if (domain.endsWith(origin.slice(2))) { + return true; + } + } + + // Origin does not match any allowed pattern + return false; +} diff --git a/packages/uploads-server/wrangler.toml b/packages/uploads-server/wrangler.toml index b040c2a96..c992f3c06 100644 --- a/packages/uploads-server/wrangler.toml +++ b/packages/uploads-server/wrangler.toml @@ -20,6 +20,7 @@ usage_model = "bundled" [[r2_buckets]] binding = "SSN_UPLOADS" bucket_name = "ssn-tiles" +preview_bucket_name = "ssn-tiles" # Bind a Queue producer. Use this binding to schedule an arbitrary task that may be processed later by a Queue consumer. # Docs: https://developers.cloudflare.com/queues/get-started