From 7b1325778cc0c3fb9fce152a078e6d02939b58db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Prod=27homme?= Date: Wed, 13 Nov 2024 15:47:01 +0100 Subject: [PATCH] feat(cms): Add dataset metadata fields --- client/src/types/generated/strapi.schemas.ts | 452 ++++++++++-------- .../dataset/content-types/dataset/schema.json | 5 + cms/src/components/metadata/item.json | 35 ++ .../1.0.0/full_documentation.json | 104 +++- cms/types/generated/components.d.ts | 19 + cms/types/generated/contentTypes.d.ts | 1 + 6 files changed, 409 insertions(+), 207 deletions(-) create mode 100644 cms/src/components/metadata/item.json diff --git a/client/src/types/generated/strapi.schemas.ts b/client/src/types/generated/strapi.schemas.ts index cfa4261..da8c7e2 100644 --- a/client/src/types/generated/strapi.schemas.ts +++ b/client/src/types/generated/strapi.schemas.ts @@ -245,15 +245,6 @@ export interface UploadFile { export type TopicResponseMeta = { [key: string]: unknown }; -export interface Topic { - createdAt?: string; - createdBy?: TopicCreatedBy; - name: string; - slug: string; - updatedAt?: string; - updatedBy?: TopicUpdatedBy; -} - export interface TopicResponseDataObject { attributes?: Topic; id?: number; @@ -275,32 +266,19 @@ export type TopicUpdatedBy = { data?: TopicUpdatedByData; }; -export type TopicCreatedByDataAttributes = { - blocked?: boolean; - createdAt?: string; - createdBy?: TopicCreatedByDataAttributesCreatedBy; - email?: string; - firstname?: string; - isActive?: boolean; - lastname?: string; - preferedLanguage?: string; - registrationToken?: string; - resetPasswordToken?: string; - roles?: TopicCreatedByDataAttributesRoles; - updatedAt?: string; - updatedBy?: TopicCreatedByDataAttributesUpdatedBy; - username?: string; -}; - -export type TopicCreatedByData = { - attributes?: TopicCreatedByDataAttributes; - id?: number; -}; - export type TopicCreatedBy = { data?: TopicCreatedByData; }; +export interface Topic { + createdAt?: string; + createdBy?: TopicCreatedBy; + name: string; + slug: string; + updatedAt?: string; + updatedBy?: TopicUpdatedBy; +} + export type TopicCreatedByDataAttributesUpdatedByDataAttributes = { [key: string]: unknown }; export type TopicCreatedByDataAttributesUpdatedByData = { @@ -321,6 +299,28 @@ export type TopicCreatedByDataAttributesRoles = { data?: TopicCreatedByDataAttributesRolesDataItem[]; }; +export type TopicCreatedByDataAttributes = { + blocked?: boolean; + createdAt?: string; + createdBy?: TopicCreatedByDataAttributesCreatedBy; + email?: string; + firstname?: string; + isActive?: boolean; + lastname?: string; + preferedLanguage?: string; + registrationToken?: string; + resetPasswordToken?: string; + roles?: TopicCreatedByDataAttributesRoles; + updatedAt?: string; + updatedBy?: TopicCreatedByDataAttributesUpdatedBy; + username?: string; +}; + +export type TopicCreatedByData = { + attributes?: TopicCreatedByDataAttributes; + id?: number; +}; + export type TopicCreatedByDataAttributesRolesDataItemAttributesUsersDataItemAttributes = { [key: string]: unknown }; export type TopicCreatedByDataAttributesRolesDataItemAttributesUsersDataItem = { @@ -332,18 +332,6 @@ export type TopicCreatedByDataAttributesRolesDataItemAttributesUsers = { data?: TopicCreatedByDataAttributesRolesDataItemAttributesUsersDataItem[]; }; -export type TopicCreatedByDataAttributesRolesDataItemAttributes = { - code?: string; - createdAt?: string; - createdBy?: TopicCreatedByDataAttributesRolesDataItemAttributesCreatedBy; - description?: string; - name?: string; - permissions?: TopicCreatedByDataAttributesRolesDataItemAttributesPermissions; - updatedAt?: string; - updatedBy?: TopicCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; - users?: TopicCreatedByDataAttributesRolesDataItemAttributesUsers; -}; - export type TopicCreatedByDataAttributesRolesDataItemAttributesUpdatedByDataAttributes = { [key: string]: unknown }; export type TopicCreatedByDataAttributesRolesDataItemAttributesUpdatedByData = { @@ -364,6 +352,18 @@ export type TopicCreatedByDataAttributesRolesDataItemAttributesPermissions = { data?: TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem[]; }; +export type TopicCreatedByDataAttributesRolesDataItemAttributes = { + code?: string; + createdAt?: string; + createdBy?: TopicCreatedByDataAttributesRolesDataItemAttributesCreatedBy; + description?: string; + name?: string; + permissions?: TopicCreatedByDataAttributesRolesDataItemAttributesPermissions; + updatedAt?: string; + updatedBy?: TopicCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; + users?: TopicCreatedByDataAttributesRolesDataItemAttributesUsers; +}; + export type TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes = { [key: string]: unknown }; export type TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData = { @@ -375,6 +375,15 @@ export type TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataIt data?: TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData; }; +export type TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleData = { + attributes?: TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes; + id?: number; +}; + +export type TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole = { + data?: TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleData; +}; + export type TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = { action?: string; actionParameters?: unknown; @@ -390,15 +399,6 @@ export type TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataIt export type TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes = { [key: string]: unknown }; -export type TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleData = { - attributes?: TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes; - id?: number; -}; - -export type TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole = { - data?: TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleData; -}; - export type TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByDataAttributes = { [key: string]: unknown }; export type TopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByData = { @@ -466,6 +466,11 @@ export interface TopicRequest { export type SubTopicResponseMeta = { [key: string]: unknown }; +export interface SubTopicResponse { + data?: SubTopicResponseDataObject; + meta?: SubTopicResponseMeta; +} + export interface SubTopic { createdAt?: string; createdBy?: SubTopicCreatedBy; @@ -479,11 +484,6 @@ export interface SubTopicResponseDataObject { id?: number; } -export interface SubTopicResponse { - data?: SubTopicResponseDataObject; - meta?: SubTopicResponseMeta; -} - export type SubTopicUpdatedByDataAttributes = { [key: string]: unknown }; export type SubTopicUpdatedByData = { @@ -495,6 +495,26 @@ export type SubTopicUpdatedBy = { data?: SubTopicUpdatedByData; }; +export type SubTopicCreatedByDataAttributesUpdatedByDataAttributes = { [key: string]: unknown }; + +export type SubTopicCreatedByDataAttributesUpdatedByData = { + attributes?: SubTopicCreatedByDataAttributesUpdatedByDataAttributes; + id?: number; +}; + +export type SubTopicCreatedByDataAttributesUpdatedBy = { + data?: SubTopicCreatedByDataAttributesUpdatedByData; +}; + +export type SubTopicCreatedByDataAttributesRolesDataItem = { + attributes?: SubTopicCreatedByDataAttributesRolesDataItemAttributes; + id?: number; +}; + +export type SubTopicCreatedByDataAttributesRoles = { + data?: SubTopicCreatedByDataAttributesRolesDataItem[]; +}; + export type SubTopicCreatedByDataAttributes = { blocked?: boolean; createdAt?: string; @@ -521,26 +541,6 @@ export type SubTopicCreatedBy = { data?: SubTopicCreatedByData; }; -export type SubTopicCreatedByDataAttributesUpdatedByDataAttributes = { [key: string]: unknown }; - -export type SubTopicCreatedByDataAttributesUpdatedByData = { - attributes?: SubTopicCreatedByDataAttributesUpdatedByDataAttributes; - id?: number; -}; - -export type SubTopicCreatedByDataAttributesUpdatedBy = { - data?: SubTopicCreatedByDataAttributesUpdatedByData; -}; - -export type SubTopicCreatedByDataAttributesRolesDataItem = { - attributes?: SubTopicCreatedByDataAttributesRolesDataItemAttributes; - id?: number; -}; - -export type SubTopicCreatedByDataAttributesRoles = { - data?: SubTopicCreatedByDataAttributesRolesDataItem[]; -}; - export type SubTopicCreatedByDataAttributesRolesDataItemAttributesUsersDataItemAttributes = { [key: string]: unknown }; export type SubTopicCreatedByDataAttributesRolesDataItemAttributesUsersDataItem = { @@ -552,18 +552,6 @@ export type SubTopicCreatedByDataAttributesRolesDataItemAttributesUsers = { data?: SubTopicCreatedByDataAttributesRolesDataItemAttributesUsersDataItem[]; }; -export type SubTopicCreatedByDataAttributesRolesDataItemAttributes = { - code?: string; - createdAt?: string; - createdBy?: SubTopicCreatedByDataAttributesRolesDataItemAttributesCreatedBy; - description?: string; - name?: string; - permissions?: SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissions; - updatedAt?: string; - updatedBy?: SubTopicCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; - users?: SubTopicCreatedByDataAttributesRolesDataItemAttributesUsers; -}; - export type SubTopicCreatedByDataAttributesRolesDataItemAttributesUpdatedByDataAttributes = { [key: string]: unknown }; export type SubTopicCreatedByDataAttributesRolesDataItemAttributesUpdatedByData = { @@ -575,6 +563,19 @@ export type SubTopicCreatedByDataAttributesRolesDataItemAttributesUpdatedBy = { data?: SubTopicCreatedByDataAttributesRolesDataItemAttributesUpdatedByData; }; +export type SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = { + action?: string; + actionParameters?: unknown; + conditions?: unknown; + createdAt?: string; + createdBy?: SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy; + properties?: unknown; + role?: SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole; + subject?: string; + updatedAt?: string; + updatedBy?: SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy; +}; + export type SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem = { attributes?: SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes; id?: number; @@ -584,6 +585,18 @@ export type SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissions = data?: SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem[]; }; +export type SubTopicCreatedByDataAttributesRolesDataItemAttributes = { + code?: string; + createdAt?: string; + createdBy?: SubTopicCreatedByDataAttributesRolesDataItemAttributesCreatedBy; + description?: string; + name?: string; + permissions?: SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissions; + updatedAt?: string; + updatedBy?: SubTopicCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; + users?: SubTopicCreatedByDataAttributesRolesDataItemAttributesUsers; +}; + export type SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes = { [key: string]: unknown }; export type SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData = { @@ -617,19 +630,6 @@ export type SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDat data?: SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByData; }; -export type SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = { - action?: string; - actionParameters?: unknown; - conditions?: unknown; - createdAt?: string; - createdBy?: SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy; - properties?: unknown; - role?: SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole; - subject?: string; - updatedAt?: string; - updatedBy?: SubTopicCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy; -}; - export type SubTopicCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes = { [key: string]: unknown }; export type SubTopicCreatedByDataAttributesRolesDataItemAttributesCreatedByData = { @@ -685,6 +685,11 @@ export interface SubTopicRequest { export type LocationResponseMeta = { [key: string]: unknown }; +export interface LocationResponseDataObject { + attributes?: Location; + id?: number; +} + export interface LocationResponse { data?: LocationResponseDataObject; meta?: LocationResponseMeta; @@ -710,6 +715,15 @@ export const LocationType = { hydrological: 'hydrological', } as const; +export type LocationParentData = { + attributes?: LocationParentDataAttributes; + id?: number; +}; + +export type LocationParent = { + data?: LocationParentData; +}; + export interface Location { code: string; createdAt?: string; @@ -722,20 +736,6 @@ export interface Location { updatedBy?: LocationUpdatedBy; } -export interface LocationResponseDataObject { - attributes?: Location; - id?: number; -} - -export type LocationParentData = { - attributes?: LocationParentDataAttributes; - id?: number; -}; - -export type LocationParent = { - data?: LocationParentData; -}; - export type LocationParentDataAttributesUpdatedByDataAttributes = { [key: string]: unknown }; export type LocationParentDataAttributesUpdatedByData = { @@ -756,6 +756,18 @@ export const LocationParentDataAttributesType = { hydrological: 'hydrological', } as const; +export type LocationParentDataAttributes = { + code?: string; + createdAt?: string; + createdBy?: LocationParentDataAttributesCreatedBy; + level?: number; + name?: string; + parent?: LocationParentDataAttributesParent; + type?: LocationParentDataAttributesType; + updatedAt?: string; + updatedBy?: LocationParentDataAttributesUpdatedBy; +}; + export type LocationParentDataAttributesParentDataAttributes = { [key: string]: unknown }; export type LocationParentDataAttributesParentData = { @@ -793,18 +805,6 @@ export type LocationParentDataAttributesCreatedBy = { data?: LocationParentDataAttributesCreatedByData; }; -export type LocationParentDataAttributes = { - code?: string; - createdAt?: string; - createdBy?: LocationParentDataAttributesCreatedBy; - level?: number; - name?: string; - parent?: LocationParentDataAttributesParent; - type?: LocationParentDataAttributesType; - updatedAt?: string; - updatedBy?: LocationParentDataAttributesUpdatedBy; -}; - export type LocationParentDataAttributesCreatedByDataAttributesUpdatedByDataAttributes = { [key: string]: unknown }; export type LocationParentDataAttributesCreatedByDataAttributesUpdatedByData = { @@ -816,6 +816,18 @@ export type LocationParentDataAttributesCreatedByDataAttributesUpdatedBy = { data?: LocationParentDataAttributesCreatedByDataAttributesUpdatedByData; }; +export type LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributes = { + code?: string; + createdAt?: string; + createdBy?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedBy; + description?: string; + name?: string; + permissions?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissions; + updatedAt?: string; + updatedBy?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; + users?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsers; +}; + export type LocationParentDataAttributesCreatedByDataAttributesRolesDataItem = { attributes?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributes; id?: number; @@ -836,18 +848,6 @@ export type LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttr data?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItem[]; }; -export type LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributes = { - code?: string; - createdAt?: string; - createdBy?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedBy; - description?: string; - name?: string; - permissions?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissions; - updatedAt?: string; - updatedBy?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedBy; - users?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesUsers; -}; - export type LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByDataAttributes = { [key: string]: unknown }; export type LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByData = { @@ -859,19 +859,6 @@ export type LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttr data?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesUpdatedByData; }; -export type LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = { - action?: string; - actionParameters?: unknown; - conditions?: unknown; - createdAt?: string; - createdBy?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy; - properties?: unknown; - role?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole; - subject?: string; - updatedAt?: string; - updatedBy?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy; -}; - export type LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItem = { attributes?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes; id?: number; @@ -914,6 +901,19 @@ export type LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttr data?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedByData; }; +export type LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributes = { + action?: string; + actionParameters?: unknown; + conditions?: unknown; + createdAt?: string; + createdBy?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesCreatedBy; + properties?: unknown; + role?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRole; + subject?: string; + updatedAt?: string; + updatedBy?: LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy; +}; + export type LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes = { [key: string]: unknown }; export type LocationParentDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByData = { @@ -970,10 +970,6 @@ export interface LocationListResponse { meta?: LocationListResponseMeta; } -export interface LocationRequest { - data: LocationRequestData; -} - export type LocationRequestDataType = typeof LocationRequestDataType[keyof typeof LocationRequestDataType]; @@ -993,6 +989,10 @@ export type LocationRequestData = { type: LocationRequestDataType; }; +export interface LocationRequest { + data: LocationRequestData; +} + export type LegendLegendConfigComponentType = typeof LegendLegendConfigComponentType[keyof typeof LegendLegendConfigComponentType]; @@ -1022,11 +1022,6 @@ export interface LegendLegendConfigComponent { export type LayerResponseMeta = { [key: string]: unknown }; -export interface LayerResponseDataObject { - attributes?: Layer; - id?: number; -} - export interface LayerResponse { data?: LayerResponseDataObject; meta?: LayerResponseMeta; @@ -1052,25 +1047,12 @@ export const LayerType = { animated: 'animated', } as const; -export interface Layer { - createdAt?: string; - createdBy?: LayerCreatedBy; - dataset?: LayerDataset; - download_link?: string; - legend_config: LegendLegendConfigComponent; - mapbox_config: unknown; - name: string; - params_config: unknown; - type: LayerType; - updatedAt?: string; - updatedBy?: LayerUpdatedBy; -} - export type LayerDatasetDataAttributes = { createdAt?: string; createdBy?: LayerDatasetDataAttributesCreatedBy; default_layer?: LayerDatasetDataAttributesDefaultLayer; layers?: LayerDatasetDataAttributesLayers; + metadata?: LayerDatasetDataAttributesMetadata; name?: string; sub_topic?: LayerDatasetDataAttributesSubTopic; topic?: LayerDatasetDataAttributesTopic; @@ -1087,6 +1069,25 @@ export type LayerDataset = { data?: LayerDatasetData; }; +export interface Layer { + createdAt?: string; + createdBy?: LayerCreatedBy; + dataset?: LayerDataset; + download_link?: string; + legend_config: LegendLegendConfigComponent; + mapbox_config: unknown; + name: string; + params_config: unknown; + type: LayerType; + updatedAt?: string; + updatedBy?: LayerUpdatedBy; +} + +export interface LayerResponseDataObject { + attributes?: Layer; + id?: number; +} + export type LayerDatasetDataAttributesUpdatedByDataAttributes = { [key: string]: unknown }; export type LayerDatasetDataAttributesUpdatedByData = { @@ -1098,10 +1099,6 @@ export type LayerDatasetDataAttributesUpdatedBy = { data?: LayerDatasetDataAttributesUpdatedByData; }; -export type LayerDatasetDataAttributesTopicDataAttributesUpdatedBy = { - data?: LayerDatasetDataAttributesTopicDataAttributesUpdatedByData; -}; - export type LayerDatasetDataAttributesTopicDataAttributes = { createdAt?: string; createdBy?: LayerDatasetDataAttributesTopicDataAttributesCreatedBy; @@ -1127,6 +1124,10 @@ export type LayerDatasetDataAttributesTopicDataAttributesUpdatedByData = { id?: number; }; +export type LayerDatasetDataAttributesTopicDataAttributesUpdatedBy = { + data?: LayerDatasetDataAttributesTopicDataAttributesUpdatedByData; +}; + export type LayerDatasetDataAttributesTopicDataAttributesCreatedByDataAttributes = { [key: string]: unknown }; export type LayerDatasetDataAttributesTopicDataAttributesCreatedByData = { @@ -1177,6 +1178,18 @@ export type LayerDatasetDataAttributesSubTopicDataAttributesCreatedBy = { data?: LayerDatasetDataAttributesSubTopicDataAttributesCreatedByData; }; +export type LayerDatasetDataAttributesMetadata = { + description?: string; + id?: number; + main_applications?: string; + source?: string; + spatial_resolution?: string; + temporal_coverage?: string; + temporal_resolution?: string; + units?: string; + website?: string; +}; + export type LayerDatasetDataAttributesLayersDataItem = { attributes?: LayerDatasetDataAttributesLayersDataItemAttributes; id?: number; @@ -1258,6 +1271,11 @@ export type LayerDatasetDataAttributesLayersDataItemAttributesDataset = { data?: LayerDatasetDataAttributesLayersDataItemAttributesDatasetData; }; +export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByData = { + attributes?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributes; + id?: number; +}; + export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedBy = { data?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedByData; }; @@ -1273,6 +1291,11 @@ export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttri data?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesUpdatedByData; }; +export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItem = { + attributes?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributes; + id?: number; +}; + export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRoles = { data?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItem[]; }; @@ -1294,11 +1317,6 @@ export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttri username?: string; }; -export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByData = { - attributes?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributes; - id?: number; -}; - export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItemAttributes = { [key: string]: unknown }; export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUsersDataItem = { @@ -1333,16 +1351,6 @@ export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttri users?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesUsers; }; -export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItem = { - attributes?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributes; - id?: number; -}; - -export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData = { - attributes?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes; - id?: number; -}; - export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy = { data?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData; }; @@ -1371,6 +1379,11 @@ export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttri export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes = { [key: string]: unknown }; +export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByData = { + attributes?: LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedByDataAttributes; + id?: number; +}; + export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleDataAttributes = { [key: string]: unknown }; export type LayerDatasetDataAttributesLayersDataItemAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesRoleData = { @@ -1496,13 +1509,31 @@ export interface LayerRequest { data: LayerRequestData; } +export interface MetadataItemComponent { + description?: string; + id?: number; + main_applications?: string; + source?: string; + spatial_resolution?: string; + temporal_coverage?: string; + temporal_resolution?: string; + units?: string; + website?: string; +} + export type DatasetResponseMeta = { [key: string]: unknown }; +export interface DatasetResponse { + data?: DatasetResponseDataObject; + meta?: DatasetResponseMeta; +} + export interface Dataset { createdAt?: string; createdBy?: DatasetCreatedBy; default_layer?: DatasetDefaultLayer; layers?: DatasetLayers; + metadata?: MetadataItemComponent; name: string; sub_topic?: DatasetSubTopic; topic?: DatasetTopic; @@ -1515,11 +1546,6 @@ export interface DatasetResponseDataObject { id?: number; } -export interface DatasetResponse { - data?: DatasetResponseDataObject; - meta?: DatasetResponseMeta; -} - export type DatasetUpdatedByDataAttributes = { [key: string]: unknown }; export type DatasetUpdatedByData = { @@ -1553,10 +1579,6 @@ export type DatasetSubTopic = { data?: DatasetSubTopicData; }; -export type DatasetLayersDataItemAttributesUpdatedBy = { - data?: DatasetLayersDataItemAttributesUpdatedByData; -}; - export type DatasetLayersDataItemAttributes = { createdAt?: string; createdBy?: DatasetLayersDataItemAttributesCreatedBy; @@ -1587,6 +1609,10 @@ export type DatasetLayersDataItemAttributesUpdatedByData = { id?: number; }; +export type DatasetLayersDataItemAttributesUpdatedBy = { + data?: DatasetLayersDataItemAttributesUpdatedByData; +}; + export type DatasetLayersDataItemAttributesType = typeof DatasetLayersDataItemAttributesType[keyof typeof DatasetLayersDataItemAttributesType]; @@ -1657,6 +1683,7 @@ export type DatasetLayersDataItemAttributesDatasetDataAttributes = { createdBy?: DatasetLayersDataItemAttributesDatasetDataAttributesCreatedBy; default_layer?: DatasetLayersDataItemAttributesDatasetDataAttributesDefaultLayer; layers?: DatasetLayersDataItemAttributesDatasetDataAttributesLayers; + metadata?: DatasetLayersDataItemAttributesDatasetDataAttributesMetadata; name?: string; sub_topic?: DatasetLayersDataItemAttributesDatasetDataAttributesSubTopic; topic?: DatasetLayersDataItemAttributesDatasetDataAttributesTopic; @@ -1819,6 +1846,8 @@ export type DatasetLayersDataItemAttributesDatasetDataAttributesTopicDataAttribu updatedBy?: DatasetLayersDataItemAttributesDatasetDataAttributesTopicDataAttributesCreatedByDataAttributesRolesDataItemAttributesPermissionsDataItemAttributesUpdatedBy; }; +export type DatasetLayersDataItemAttributesDatasetDataAttributesTopicDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes = { [key: string]: unknown }; + export type DatasetLayersDataItemAttributesDatasetDataAttributesTopicDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByData = { attributes?: DatasetLayersDataItemAttributesDatasetDataAttributesTopicDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes; id?: number; @@ -1828,8 +1857,6 @@ export type DatasetLayersDataItemAttributesDatasetDataAttributesTopicDataAttribu data?: DatasetLayersDataItemAttributesDatasetDataAttributesTopicDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByData; }; -export type DatasetLayersDataItemAttributesDatasetDataAttributesTopicDataAttributesCreatedByDataAttributesRolesDataItemAttributesCreatedByDataAttributes = { [key: string]: unknown }; - export type DatasetLayersDataItemAttributesDatasetDataAttributesTopicDataAttributesCreatedByDataAttributesCreatedByDataAttributes = { [key: string]: unknown }; export type DatasetLayersDataItemAttributesDatasetDataAttributesTopicDataAttributesCreatedByDataAttributesCreatedByData = { @@ -1880,6 +1907,18 @@ export type DatasetLayersDataItemAttributesDatasetDataAttributesSubTopicDataAttr updatedBy?: DatasetLayersDataItemAttributesDatasetDataAttributesSubTopicDataAttributesUpdatedBy; }; +export type DatasetLayersDataItemAttributesDatasetDataAttributesMetadata = { + description?: string; + id?: number; + main_applications?: string; + source?: string; + spatial_resolution?: string; + temporal_coverage?: string; + temporal_resolution?: string; + units?: string; + website?: string; +}; + export type DatasetLayersDataItemAttributesDatasetDataAttributesLayersDataItemAttributes = { [key: string]: unknown }; export type DatasetLayersDataItemAttributesDatasetDataAttributesLayersDataItem = { @@ -1984,6 +2023,7 @@ export type DatasetRequestDataDefaultLayer = number | string; export type DatasetRequestData = { default_layer?: DatasetRequestDataDefaultLayer; layers?: DatasetRequestDataLayersItem[]; + metadata?: MetadataItemComponent; name: string; sub_topic?: DatasetRequestDataSubTopic; topic?: DatasetRequestDataTopic; diff --git a/cms/src/api/dataset/content-types/dataset/schema.json b/cms/src/api/dataset/content-types/dataset/schema.json index 0696b6f..3a3084d 100644 --- a/cms/src/api/dataset/content-types/dataset/schema.json +++ b/cms/src/api/dataset/content-types/dataset/schema.json @@ -35,6 +35,11 @@ "type": "relation", "relation": "oneToOne", "target": "api::sub-topic.sub-topic" + }, + "metadata": { + "type": "component", + "repeatable": false, + "component": "metadata.item" } } } diff --git a/cms/src/components/metadata/item.json b/cms/src/components/metadata/item.json new file mode 100644 index 0000000..5c507db --- /dev/null +++ b/cms/src/components/metadata/item.json @@ -0,0 +1,35 @@ +{ + "collectionName": "components_metadata_item", + "info": { + "displayName": "Item", + "description": "" + }, + "options": {}, + "attributes": { + "source": { + "type": "string" + }, + "website": { + "type": "string", + "regex": "^(https?:\\/\\/)?(www\\.)?[a-zA-Z0-9-]+(\\.[a-zA-Z0-9-]+)+((\\/[a-zA-Z0-9\\-._~:/?#\\[\\]@!$&'()*+,;=\\s%]*)*)$" + }, + "description": { + "type": "text" + }, + "main_applications": { + "type": "richtext" + }, + "temporal_resolution": { + "type": "string" + }, + "temporal_coverage": { + "type": "richtext" + }, + "spatial_resolution": { + "type": "string" + }, + "units": { + "type": "string" + } + } +} diff --git a/cms/src/extensions/documentation/documentation/1.0.0/full_documentation.json b/cms/src/extensions/documentation/documentation/1.0.0/full_documentation.json index 25e9008..74611dd 100644 --- a/cms/src/extensions/documentation/documentation/1.0.0/full_documentation.json +++ b/cms/src/extensions/documentation/documentation/1.0.0/full_documentation.json @@ -14,7 +14,7 @@ "name": "Apache 2.0", "url": "https://www.apache.org/licenses/LICENSE-2.0.html" }, - "x-generation-date": "2024-11-11T08:14:01.299Z" + "x-generation-date": "2024-11-13T14:44:54.472Z" }, "x-strapi-config": { "path": "/documentation", @@ -147,6 +147,9 @@ } ], "example": "string or id" + }, + "metadata": { + "$ref": "#/components/schemas/MetadataItemComponent" } } } @@ -712,6 +715,38 @@ } } }, + "metadata": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "source": { + "type": "string" + }, + "website": { + "type": "string" + }, + "description": { + "type": "string" + }, + "main_applications": { + "type": "string" + }, + "temporal_resolution": { + "type": "string" + }, + "temporal_coverage": { + "type": "string" + }, + "spatial_resolution": { + "type": "string" + }, + "units": { + "type": "string" + } + } + }, "createdAt": { "type": "string", "format": "date-time" @@ -863,6 +898,9 @@ } } }, + "metadata": { + "$ref": "#/components/schemas/MetadataItemComponent" + }, "createdAt": { "type": "string", "format": "date-time" @@ -929,6 +967,38 @@ } } }, + "MetadataItemComponent": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "source": { + "type": "string" + }, + "website": { + "type": "string" + }, + "description": { + "type": "string" + }, + "main_applications": { + "type": "string" + }, + "temporal_resolution": { + "type": "string" + }, + "temporal_coverage": { + "type": "string" + }, + "spatial_resolution": { + "type": "string" + }, + "units": { + "type": "string" + } + } + }, "LayerRequest": { "type": "object", "required": [ @@ -1603,6 +1673,38 @@ } } }, + "metadata": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "source": { + "type": "string" + }, + "website": { + "type": "string" + }, + "description": { + "type": "string" + }, + "main_applications": { + "type": "string" + }, + "temporal_resolution": { + "type": "string" + }, + "temporal_coverage": { + "type": "string" + }, + "spatial_resolution": { + "type": "string" + }, + "units": { + "type": "string" + } + } + }, "createdAt": { "type": "string", "format": "date-time" diff --git a/cms/types/generated/components.d.ts b/cms/types/generated/components.d.ts index 09626ca..b174892 100644 --- a/cms/types/generated/components.d.ts +++ b/cms/types/generated/components.d.ts @@ -1,5 +1,23 @@ import type { Schema, Attribute } from '@strapi/strapi'; +export interface MetadataItem extends Schema.Component { + collectionName: 'components_metadata_item'; + info: { + displayName: 'Item'; + description: ''; + }; + attributes: { + source: Attribute.String; + website: Attribute.String; + description: Attribute.Text; + main_applications: Attribute.RichText; + temporal_resolution: Attribute.String; + temporal_coverage: Attribute.RichText; + spatial_resolution: Attribute.String; + units: Attribute.String; + }; +} + export interface LegendLegendConfig extends Schema.Component { collectionName: 'components_legend_legend_configs'; info: { @@ -38,6 +56,7 @@ export interface LegendItems extends Schema.Component { declare module '@strapi/types' { export module Shared { export interface Components { + 'metadata.item': MetadataItem; 'legend.legend-config': LegendLegendConfig; 'legend.items': LegendItems; } diff --git a/cms/types/generated/contentTypes.d.ts b/cms/types/generated/contentTypes.d.ts index 37e6618..cc8d08c 100644 --- a/cms/types/generated/contentTypes.d.ts +++ b/cms/types/generated/contentTypes.d.ts @@ -821,6 +821,7 @@ export interface ApiDatasetDataset extends Schema.CollectionType { 'oneToOne', 'api::sub-topic.sub-topic' >; + metadata: Attribute.Component<'metadata.item'>; createdAt: Attribute.DateTime; updatedAt: Attribute.DateTime; createdBy: Attribute.Relation<