From 2bd45a3471bf795f2c85e61b24421d2bd90095c1 Mon Sep 17 00:00:00 2001 From: RonitKissis Date: Mon, 27 Jan 2025 11:53:17 +0200 Subject: [PATCH 1/6] feat!: add product status to raster --- src/models/layerMetadata/layerMetadata.ts | 33 ++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/src/models/layerMetadata/layerMetadata.ts b/src/models/layerMetadata/layerMetadata.ts index 7dbf4766..87e26b8a 100644 --- a/src/models/layerMetadata/layerMetadata.ts +++ b/src/models/layerMetadata/layerMetadata.ts @@ -17,7 +17,7 @@ import { getPyCSWMapping, IPYCSWMapping, pycsw } from './decorators/property/csw import { getInputDataMapping, IDataMapping, IPropSHPMapping } from './decorators/property/shp.decorator'; import { getCatalogDBMapping, ICatalogDBMapping, catalogDB, ORMColumnType } from './decorators/property/catalogDB.decorator'; import { getTsTypesMapping, tsTypes, TsTypes } from './decorators/property/tsTypes.decorator'; -import { ProductType, Transparency, TileOutputFormat } from './enums'; +import { ProductType, Transparency, TileOutputFormat, RecordStatus } from './enums'; export interface ILayerMetadata { id: string | undefined; @@ -44,6 +44,7 @@ export interface ILayerMetadata { transparency: Transparency | undefined; tileMimeFormat: TilesMimeFormat | undefined; tileOutputFormat: TileOutputFormat | undefined; + productStatus: RecordStatus | undefined; } export interface IPropPYCSWMapping extends IPYCSWMapping { @@ -1142,6 +1143,36 @@ export class LayerMetadata implements ILayerMetadata, IMetadataCommonModel { //#endregion + //#region Raster: productStatus + @pycsw({ + profile: 'mc_raster', + xmlElement: 'mc:productStatus', + queryableField: 'mc:productStatus', + pycswField: 'pycsw:productStatus', + }) + @catalogDB({ + column: { + name: 'product_status', + type: 'text', + default: RecordStatus.PUBLISHED, + nullable: false, + }, + }) + @tsTypes({ + mappingType: TsTypes.RECORD_STATUS, + }) + @graphql({ + nullable: true, + }) + @fieldConfig({ + category: FieldCategory.MAIN, + default: RecordStatus.PUBLISHED, + isLifecycleEnvolved: true, + }) + //#endregion + public productStatus: RecordStatus | undefined = RecordStatus.PUBLISHED; + //#endregion + public static getPyCSWMapping(prop: string): IPYCSWMapping | undefined { return getPyCSWMapping(new LayerMetadata(), prop); } From 360fd700aa20c85829ff4b7c27c58602bb3f1308 Mon Sep 17 00:00:00 2001 From: RonitKissis Date: Sun, 30 Mar 2025 15:07:30 +0300 Subject: [PATCH 2/6] feat!: add product status --- .../layerMetadata/layerRASTERMetadata.ts | 32 ++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/src/models/layerMetadata/layerRASTERMetadata.ts b/src/models/layerMetadata/layerRASTERMetadata.ts index 7e9a889d..99c6d986 100644 --- a/src/models/layerMetadata/layerRASTERMetadata.ts +++ b/src/models/layerMetadata/layerRASTERMetadata.ts @@ -1,7 +1,7 @@ import { keys } from 'ts-transformer-keys'; import { NewRasterLayerMetadata, UpdateRasterLayerMetadata, RasterLayerMetadata, Transparency, TileOutputFormat } from '@map-colonies/raster-shared'; import { GeoJSON } from 'geojson'; -import { TilesMimeFormat, RecordType, ProductType } from '@map-colonies/types'; +import { TilesMimeFormat, RecordType, ProductType, RecordStatus } from '@map-colonies/types'; import { IPropCatalogDBMapping } from '../common/interfaces/propCatalogDBMapping.interface'; import { graphql } from '../common/decorators/graphQL/graphql.decorator'; import { @@ -1128,6 +1128,36 @@ export class LayerMetadata implements RasterLayerMetadata { //#endregion public tileOutputFormat!: TileOutputFormat; + //#region Raster: productStatus + @pycsw({ + profile: 'mc_raster', + xmlElement: 'mc:productStatus', + queryableField: 'mc:productStatus', + pycswField: 'pycsw:productStatus', + }) + @catalogDB({ + column: { + name: 'product_status', + type: 'text', + default: RecordStatus.UNPUBLISHED, + nullable: false, + }, + }) + @tsTypes({ + mappingType: TsTypes.RECORD_STATUS, + }) + @graphql({ + nullable: true, + }) + @fieldConfig({ + category: FieldCategory.MAIN, + default: RecordStatus.PUBLISHED, + isLifecycleEnvolved: true, + }) + //#endregion + public productStatus: RecordStatus | undefined = RecordStatus.PUBLISHED; + //#endregion + //#endregion public constructor() { From b77ef916b861509179c3f404a87f1c55c5e1e4d0 Mon Sep 17 00:00:00 2001 From: RonitKissis Date: Thu, 3 Apr 2025 16:09:04 +0300 Subject: [PATCH 3/6] fix: default value --- src/models/layerMetadata/layerRASTERMetadata.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/models/layerMetadata/layerRASTERMetadata.ts b/src/models/layerMetadata/layerRASTERMetadata.ts index aa3ba0e7..9e71a8f0 100644 --- a/src/models/layerMetadata/layerRASTERMetadata.ts +++ b/src/models/layerMetadata/layerRASTERMetadata.ts @@ -1155,7 +1155,7 @@ export class LayerMetadata implements RasterLayerMetadata { isLifecycleEnvolved: true, }) //#endregion - public productStatus: RecordStatus | undefined = RecordStatus.PUBLISHED; + public productStatus: RecordStatus | undefined = RecordStatus.UNPUBLISHED; //#endregion //#endregion From f5a523efdae34ad60cd6c78d6124eb7afd712e22 Mon Sep 17 00:00:00 2001 From: RonitKissis Date: Sun, 6 Apr 2025 15:51:04 +0300 Subject: [PATCH 4/6] fix: versions --- package-lock.json | 12 ++++++------ package.json | 4 ++-- src/models/layerMetadata/layerRASTERMetadata.ts | 3 ++- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4e424a7f..4a9e8397 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "17.17.2", "license": "MIT", "dependencies": { - "@map-colonies/raster-shared": "^1.9.2", + "@map-colonies/raster-shared": "file:../../raster/raster-shared/map-colonies-raster-shared-1.9.2.tgz", "@types/geojson": "^7946.0.7", "change-case-all": "^2.1.0", "reflect-metadata": "^0.1.13", @@ -1419,8 +1419,9 @@ }, "node_modules/@map-colonies/raster-shared": { "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@map-colonies/raster-shared/-/raster-shared-1.9.2.tgz", - "integrity": "sha512-vzaKqkIkAHCLa/gsvGeNr3J528uqaKmwDJP35Mn1/IVBA8YvpMOXsiM48ZXGlEUVBHP3W9sqy02CAQvSKAylkQ==", + "resolved": "file:../../raster/raster-shared/map-colonies-raster-shared-1.9.2.tgz", + "integrity": "sha512-Q1Ding0Q5XQ8OWwDPJCeKEjz/+epLEu3yEOS+yF/c94dSZwCW1WBD7Vk5sFgaLog15DzCp95WKfemqwgMyVizg==", + "license": "ISC", "dependencies": { "@map-colonies/mc-priority-queue": "^8.2.1", "@map-colonies/types": "^1.4.0", @@ -15058,9 +15059,8 @@ "dev": true }, "@map-colonies/raster-shared": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@map-colonies/raster-shared/-/raster-shared-1.9.2.tgz", - "integrity": "sha512-vzaKqkIkAHCLa/gsvGeNr3J528uqaKmwDJP35Mn1/IVBA8YvpMOXsiM48ZXGlEUVBHP3W9sqy02CAQvSKAylkQ==", + "version": "file:../../raster/raster-shared/map-colonies-raster-shared-1.9.2.tgz", + "integrity": "sha512-Q1Ding0Q5XQ8OWwDPJCeKEjz/+epLEu3yEOS+yF/c94dSZwCW1WBD7Vk5sFgaLog15DzCp95WKfemqwgMyVizg==", "requires": { "@map-colonies/mc-priority-queue": "^8.2.1", "@map-colonies/types": "^1.4.0", diff --git a/package.json b/package.json index eeffa42e..8ca1a4da 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@map-colonies/mc-model-types", - "version": "17.17.2", + "version": "17.17.3", "description": "json schemas for validations and generated ts models", "author": "", "license": "MIT", @@ -37,7 +37,7 @@ "test:integration": "jest --config=./tests/configurations/integration/jest.config.js" }, "dependencies": { - "@map-colonies/raster-shared": "^1.9.2", + "@map-colonies/raster-shared": "file:../../raster/raster-shared/map-colonies-raster-shared-1.9.2.tgz", "@types/geojson": "^7946.0.7", "change-case-all": "^2.1.0", "reflect-metadata": "^0.1.13", diff --git a/src/models/layerMetadata/layerRASTERMetadata.ts b/src/models/layerMetadata/layerRASTERMetadata.ts index 9e71a8f0..4252d363 100644 --- a/src/models/layerMetadata/layerRASTERMetadata.ts +++ b/src/models/layerMetadata/layerRASTERMetadata.ts @@ -1155,7 +1155,7 @@ export class LayerMetadata implements RasterLayerMetadata { isLifecycleEnvolved: true, }) //#endregion - public productStatus: RecordStatus | undefined = RecordStatus.UNPUBLISHED; + public productStatus!: RecordStatus; //#endregion //#endregion @@ -1200,6 +1200,7 @@ export class LayerMetadata implements RasterLayerMetadata { this.productId = DUMMY_VALUE_STRING; this.productType = ProductType.ORTHOPHOTO; this.footprint = {} as GeoJSON; + this.productStatus = RecordStatus.UNPUBLISHED; } public static getPyCSWMapping(prop: string): IPYCSWMapping | undefined { From d949374556d922f253928dbce09567b80101965d Mon Sep 17 00:00:00 2001 From: RonitKissis Date: Mon, 7 Apr 2025 10:36:27 +0300 Subject: [PATCH 5/6] fix: product_status is optional --- package-lock.json | 18 +++++++++--------- package.json | 2 +- .../layerMetadata/layerRASTERMetadata.ts | 4 ++-- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4a9e8397..5011a814 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,15 +1,15 @@ { "name": "@map-colonies/mc-model-types", - "version": "17.17.2", + "version": "17.17.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@map-colonies/mc-model-types", - "version": "17.17.2", + "version": "17.17.3", "license": "MIT", "dependencies": { - "@map-colonies/raster-shared": "file:../../raster/raster-shared/map-colonies-raster-shared-1.9.2.tgz", + "@map-colonies/raster-shared": "^1.10.0", "@types/geojson": "^7946.0.7", "change-case-all": "^2.1.0", "reflect-metadata": "^0.1.13", @@ -1418,10 +1418,9 @@ "dev": true }, "node_modules/@map-colonies/raster-shared": { - "version": "1.9.2", - "resolved": "file:../../raster/raster-shared/map-colonies-raster-shared-1.9.2.tgz", - "integrity": "sha512-Q1Ding0Q5XQ8OWwDPJCeKEjz/+epLEu3yEOS+yF/c94dSZwCW1WBD7Vk5sFgaLog15DzCp95WKfemqwgMyVizg==", - "license": "ISC", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@map-colonies/raster-shared/-/raster-shared-1.10.0.tgz", + "integrity": "sha512-kkqpxy86u61L21EJMUKEOKhqmTdqAZTJhlvQiVjqjyDjhG3XZB+fxDls7rDOKi4caOwLl/J5Cc2SCyG2iNlBNA==", "dependencies": { "@map-colonies/mc-priority-queue": "^8.2.1", "@map-colonies/types": "^1.4.0", @@ -15059,8 +15058,9 @@ "dev": true }, "@map-colonies/raster-shared": { - "version": "file:../../raster/raster-shared/map-colonies-raster-shared-1.9.2.tgz", - "integrity": "sha512-Q1Ding0Q5XQ8OWwDPJCeKEjz/+epLEu3yEOS+yF/c94dSZwCW1WBD7Vk5sFgaLog15DzCp95WKfemqwgMyVizg==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@map-colonies/raster-shared/-/raster-shared-1.10.0.tgz", + "integrity": "sha512-kkqpxy86u61L21EJMUKEOKhqmTdqAZTJhlvQiVjqjyDjhG3XZB+fxDls7rDOKi4caOwLl/J5Cc2SCyG2iNlBNA==", "requires": { "@map-colonies/mc-priority-queue": "^8.2.1", "@map-colonies/types": "^1.4.0", diff --git a/package.json b/package.json index 8ca1a4da..5659b17c 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ "test:integration": "jest --config=./tests/configurations/integration/jest.config.js" }, "dependencies": { - "@map-colonies/raster-shared": "file:../../raster/raster-shared/map-colonies-raster-shared-1.9.2.tgz", + "@map-colonies/raster-shared": "^1.10.0", "@types/geojson": "^7946.0.7", "change-case-all": "^2.1.0", "reflect-metadata": "^0.1.13", diff --git a/src/models/layerMetadata/layerRASTERMetadata.ts b/src/models/layerMetadata/layerRASTERMetadata.ts index 4252d363..38a9a990 100644 --- a/src/models/layerMetadata/layerRASTERMetadata.ts +++ b/src/models/layerMetadata/layerRASTERMetadata.ts @@ -1151,11 +1151,11 @@ export class LayerMetadata implements RasterLayerMetadata { }) @fieldConfig({ category: FieldCategory.MAIN, - default: RecordStatus.PUBLISHED, + default: RecordStatus.UNPUBLISHED, isLifecycleEnvolved: true, }) //#endregion - public productStatus!: RecordStatus; + public productStatus?: RecordStatus | undefined = RecordStatus.UNPUBLISHED; //#endregion //#endregion From 62ec8685c1ea68322d708920112058c81353a1ea Mon Sep 17 00:00:00 2001 From: RonitKissis Date: Mon, 7 Apr 2025 13:17:40 +0300 Subject: [PATCH 6/6] fix: revert to true version --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 5011a814..69cb931a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@map-colonies/mc-model-types", - "version": "17.17.3", + "version": "17.17.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@map-colonies/mc-model-types", - "version": "17.17.3", + "version": "17.17.2", "license": "MIT", "dependencies": { "@map-colonies/raster-shared": "^1.10.0", diff --git a/package.json b/package.json index 5659b17c..6e0bf4b2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@map-colonies/mc-model-types", - "version": "17.17.3", + "version": "17.17.2", "description": "json schemas for validations and generated ts models", "author": "", "license": "MIT",