From c453f2c6351791bc79e24693565c58c39a6f4906 Mon Sep 17 00:00:00 2001 From: Gabriel Rabelo Date: Wed, 23 Apr 2025 14:34:05 -0300 Subject: [PATCH 1/6] feat: add service inventory schema definitions in service-inventory.ts and update package version --- package.json | 2 +- src/types/service-inventory.ts | 71 ++++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 src/types/service-inventory.ts diff --git a/package.json b/package.json index e46c481..a777d97 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@ozmap/ozn-sdk", - "version": "0.0.1-1075-3", + "version": "0.0.1-1066-1", "description": "OZN SDK is a powerful tool for developers to build their own applications on top of OZN using TMForum pattern.", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/src/types/service-inventory.ts b/src/types/service-inventory.ts new file mode 100644 index 0000000..ec330e1 --- /dev/null +++ b/src/types/service-inventory.ts @@ -0,0 +1,71 @@ +import { z } from 'zod'; +import { geographicAddressOutputSchema } from './geographic-address'; + +const ResourceLocationSchema = z.object({ + type: z.string(), + labelType: z.string(), + name: z.string(), + description: z.nullable(z.string()), + parentLocation: z.nullable(z.any()), // Assuming it can be null or a reference to another location + address: geographicAddressOutputSchema, +}); + +const CharacteristicSchema = z.object({ + id: z.nullable(z.string()), + name: z.string(), + valueType: z.string(), + value: z.string(), +}); + +const ResourceSchema = z.object({ + id: z.string(), + name: z.string(), + entityType: z.string(), + characteristic: z.array(CharacteristicSchema).nullable(), + resourceLocation: z.nullable(ResourceLocationSchema), +}); + +const SupportingResourceSchema = z.object({ + id: z.string(), + entityType: z.string(), + name: z.nullable(z.string()), + role: z.nullable(z.string()), + resource: z.array(ResourceSchema).nullable(), + characteristic: z.array(CharacteristicSchema).nullable(), + supportingResource: z.nullable(z.any()), // Recursive, will define later +}); + +// Update SupportingResourceSchema to handle recursion +SupportingResourceSchema.partial().extend({ + supportingResource: z.nullable(z.array(SupportingResourceSchema)), +}); + +const RelatedPartyPropertySchema = z.object({ + name: z.string(), + value: z.string(), +}); + +const RelatedPartySchema = z.object({ + role: z.string(), + property: z.array(RelatedPartyPropertySchema), +}); + +const PlaceSchema = z.object({ + id: z.string(), + type: z.string(), +}); + +const ServiceSchema = z.object({ + id: z.string(), + description: z.string(), + isServiceEnabled: z.boolean(), + name: z.string(), + serviceType: z.string(), + relatedParty: z.array(RelatedPartySchema), + place: z.array(PlaceSchema), + state: z.string(), + supportingResource: z.array(SupportingResourceSchema), +}); + +export const ServiceInventoryOutputSchema = z.array(ServiceSchema); +export type ServiceInventoryOutput = z.infer; From 0c2bb5e2acbbb07a96395e851e33134d192180f3 Mon Sep 17 00:00:00 2001 From: Gabriel Rabelo Date: Tue, 13 May 2025 15:09:07 -0300 Subject: [PATCH 2/6] chore: bump 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 b23d35e..e7e99c6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ozmap/ozn-sdk", - "version": "0.0.1-1075-4", + "version": "0.0.1-1066-2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ozmap/ozn-sdk", - "version": "0.0.1-1075-4", + "version": "0.0.1-1066-2", "license": "MIT", "dependencies": { "zod": "^3.24.2" diff --git a/package.json b/package.json index a777d97..cf76bb5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@ozmap/ozn-sdk", - "version": "0.0.1-1066-1", + "version": "0.0.1-1066-2", "description": "OZN SDK is a powerful tool for developers to build their own applications on top of OZN using TMForum pattern.", "main": "dist/index.js", "types": "dist/index.d.ts", From f94d9ba6d75dc4ea744e562d63c11f62e63af7c8 Mon Sep 17 00:00:00 2001 From: Gabriel Rabelo Date: Tue, 13 May 2025 17:04:30 -0300 Subject: [PATCH 3/6] OZN-1066 feat #time 5m update iframeViability to string --- src/types/service-qualification.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/types/service-qualification.ts b/src/types/service-qualification.ts index 341d078..7b899df 100644 --- a/src/types/service-qualification.ts +++ b/src/types/service-qualification.ts @@ -64,7 +64,7 @@ export const RelatedEntitySchema = z.object({ const ServiceSchema = z.object({ serviceCharacteristic: z.array(CharacteristicSchema), relatedEntity: z.array(RelatedEntitySchema), - iframeViability: z.boolean(), + iframeViability: z.string().optional(), }); const ServiceQualificationItemSchema = z.object({ From e9306adbb8c2ce3624ed00001eaa66e6db4fb839 Mon Sep 17 00:00:00 2001 From: Gabriel Rabelo Date: Tue, 13 May 2025 17:04:49 -0300 Subject: [PATCH 4/6] chore: bump 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 e7e99c6..2a0a4bd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ozmap/ozn-sdk", - "version": "0.0.1-1066-2", + "version": "0.0.1-1066-3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ozmap/ozn-sdk", - "version": "0.0.1-1066-2", + "version": "0.0.1-1066-3", "license": "MIT", "dependencies": { "zod": "^3.24.2" diff --git a/package.json b/package.json index cf76bb5..a6e7686 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@ozmap/ozn-sdk", - "version": "0.0.1-1066-2", + "version": "0.0.1-1066-3", "description": "OZN SDK is a powerful tool for developers to build their own applications on top of OZN using TMForum pattern.", "main": "dist/index.js", "types": "dist/index.d.ts", From 4df21718a24a840773d3f6f7ce123c24226725df Mon Sep 17 00:00:00 2001 From: Gabriel Rabelo Date: Fri, 16 May 2025 12:08:04 -0300 Subject: [PATCH 5/6] OZN-1066 feat: #time 5m remove idArea and idOperator from ConfirmOrderInputSchema --- src/types/confirm-order.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/types/confirm-order.ts b/src/types/confirm-order.ts index aee27b3..615e204 100644 --- a/src/types/confirm-order.ts +++ b/src/types/confirm-order.ts @@ -3,8 +3,6 @@ import { z } from 'zod'; export const ConfirmOrderInputSchema = z.object({ port: z.object({ idExternal: z.string(), - idArea: z.string(), - idOperator: z.string(), nameExternal: z.string(), }), address: z.string(), From 564e9f4aae35149aa5c2c22bdd2f982e75ab50da Mon Sep 17 00:00:00 2001 From: Gabriel Rabelo Date: Fri, 16 May 2025 12:09:28 -0300 Subject: [PATCH 6/6] chore: bump 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 2a0a4bd..2b94306 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ozmap/ozn-sdk", - "version": "0.0.1-1066-3", + "version": "0.0.1-1066-4", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ozmap/ozn-sdk", - "version": "0.0.1-1066-3", + "version": "0.0.1-1066-4", "license": "MIT", "dependencies": { "zod": "^3.24.2" diff --git a/package.json b/package.json index a6e7686..40f2309 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@ozmap/ozn-sdk", - "version": "0.0.1-1066-3", + "version": "0.0.1-1066-4", "description": "OZN SDK is a powerful tool for developers to build their own applications on top of OZN using TMForum pattern.", "main": "dist/index.js", "types": "dist/index.d.ts",