@wisemen/one-of 0.0.14 → 0.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,9 @@
1
1
  import { ApiExtraModels, ApiProperty, ApiResponse, getSchemaPath } from '@nestjs/swagger';
2
2
  import { applyDecorators } from '@nestjs/common';
3
- import { DECORATORS } from '@nestjs/swagger/dist/constants.js';
4
3
  import { isFunction, isString } from '@nestjs/common/utils/shared.utils.js';
5
4
  import { pascalCase } from './pascal-case.js';
5
+ const SWAGGER_API_MODEL_PROPERTIES_ARRAY = 'swagger/apiModelPropertiesArray';
6
+ const SWAGGER_API_MODEL_PROPERTIES = 'swagger/apiModelProperties';
6
7
  export const ONE_OF_TYPE_API_PROPERTY = 'wisemen.one_of_type_api_property';
7
8
  export const ONE_OF_META_API_PROPERTY = 'wisemen.one_of_meta_api_property';
8
9
  export const ONE_OF_DISCRIMINATED_TYPES = 'wisemen.one_of_discriminated_types';
@@ -49,7 +50,7 @@ export function OneOfApiProperty(forClass, options) {
49
50
  };
50
51
  }
51
52
  export function OneOfApiExtraModels(forClass) {
52
- // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
53
+ // oxlint-disable-next-line typescript/no-unsafe-function-type
53
54
  return (target) => {
54
55
  const decorators = new OneOfDecorators(forClass);
55
56
  const decorator = decorators.OneOfApiExtraModelsDecorator();
@@ -82,7 +83,7 @@ class OneOfDecoratorCallbacks {
82
83
  this.apiProperties.set(toClass, subscribers);
83
84
  }
84
85
  subscribeApiExtraModels(toClass,
85
- // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
86
+ // oxlint-disable-next-line typescript/no-unsafe-function-type
86
87
  target) {
87
88
  const subscribers = this.apiExtraModels.get(toClass) ?? [];
88
89
  subscribers.push({ target });
@@ -233,12 +234,12 @@ class OneOfDecorators {
233
234
  });
234
235
  }
235
236
  copyApiModelPropertiesMetadata(responseClass, dynamicClass) {
236
- const propertiesMetadata = Reflect.getMetadata(DECORATORS.API_MODEL_PROPERTIES_ARRAY, responseClass.prototype);
237
- Reflect.defineMetadata(DECORATORS.API_MODEL_PROPERTIES_ARRAY, Array.from(propertiesMetadata), dynamicClass.prototype);
237
+ const propertiesMetadata = Reflect.getMetadata(SWAGGER_API_MODEL_PROPERTIES_ARRAY, responseClass.prototype);
238
+ Reflect.defineMetadata(SWAGGER_API_MODEL_PROPERTIES_ARRAY, Array.from(propertiesMetadata), dynamicClass.prototype);
238
239
  }
239
240
  copyResponseApiPropertyMetadata(responseClass, dynamicClass) {
240
241
  for (const property of this.getModelProperties(responseClass.prototype)) {
241
- const metaData = Reflect.getMetadata(DECORATORS.API_MODEL_PROPERTIES, responseClass.prototype, property);
242
+ const metaData = Reflect.getMetadata(SWAGGER_API_MODEL_PROPERTIES, responseClass.prototype, property);
242
243
  const metaDataCopy = { ...metaData };
243
244
  const decorator = ApiProperty(metaDataCopy);
244
245
  decorator(dynamicClass.prototype, property);
@@ -271,7 +272,7 @@ class OneOfDecorators {
271
272
  return propertyName;
272
273
  }
273
274
  getModelProperties(prototype) {
274
- const properties = Reflect.getMetadata(DECORATORS.API_MODEL_PROPERTIES_ARRAY, prototype) ?? [];
275
+ const properties = Reflect.getMetadata(SWAGGER_API_MODEL_PROPERTIES_ARRAY, prototype) ?? [];
275
276
  return properties
276
277
  .filter(isString)
277
278
  .filter((key) => key.charAt(0) === ':' && !isFunction(prototype[key]))
@@ -1 +1 @@
1
- {"version":3,"file":"one-of.decorators.js","sourceRoot":"","sources":["../lib/one-of.decorators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"one-of.decorators.js","sourceRoot":"","sources":["../lib/one-of.decorators.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wisemen/one-of",
3
- "version": "0.0.14",
3
+ "version": "0.0.16",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -8,26 +8,29 @@
8
8
  "types": "./dist/index.d.ts",
9
9
  "type": "module",
10
10
  "files": [
11
- "dist/"
11
+ "dist/",
12
+ "skills/"
12
13
  ],
13
14
  "peerDependencies": {
14
- "@nestjs/common": ">=11.1.17",
15
- "@nestjs/swagger": ">=11.2.6",
16
- "class-transformer": ">=0.5.1",
17
- "class-validator": ">=0.15.1",
18
- "reflect-metadata": ">=0.2.2",
19
- "typeorm": ">=0.3.28"
15
+ "@nestjs/common": "^11.1.19",
16
+ "@nestjs/swagger": "^11.4.2",
17
+ "class-transformer": "^0.5.1",
18
+ "class-validator": "^0.15.1",
19
+ "reflect-metadata": "^0.2.2",
20
+ "typeorm": "^1.0.0"
20
21
  },
21
22
  "devDependencies": {
22
23
  "@types/node": "25.3.0",
23
- "eslint": "9.39.4",
24
+ "eslint": "10.2.1",
25
+ "oxlint": "1.59.0",
24
26
  "expect": "30.2.0",
25
- "typescript": ">=4.8.4 <=5.9.3",
26
- "@wisemen/eslint-config-nestjs": "0.2.13"
27
+ "typescript": "^5.9.3",
28
+ "oxlint-tsgolint": "0.20.0",
29
+ "@wisemen/eslint-config-nestjs": "1.1.1"
27
30
  },
28
31
  "author": "Kobe Kwanten",
29
32
  "contributors": [],
30
- "license": "GPL",
33
+ "license": "SEE LICENSE IN LICENSE.md",
31
34
  "repository": {
32
35
  "type": "git",
33
36
  "url": "https://github.com/wisemen-digital/wisemen-core",
@@ -39,7 +42,9 @@
39
42
  "build": "tsc",
40
43
  "pretest": "npm run clean && npm run build",
41
44
  "test": "node --test",
42
- "lint": "eslint --cache",
45
+ "lint:oxlint": "oxlint --type-aware",
46
+ "lint:eslint": "eslint --cache",
47
+ "lint": "pnpm run lint:oxlint && pnpm run lint:eslint",
43
48
  "prerelease": "npm run build",
44
49
  "release": "pnpx release-it"
45
50
  }
@@ -0,0 +1,88 @@
1
+ ---
2
+ name: getting-started
3
+ description: Use when documenting discriminated NestJS API responses with Swagger.
4
+ ---
5
+
6
+ # @wisemen/one-of - Getting Started
7
+
8
+ Use `@wisemen/one-of` when an API response has a shared shape with a `type`
9
+ discriminator and variant-specific `meta`.
10
+
11
+ ## Define The Response Shape
12
+
13
+ ```ts
14
+ import { ApiProperty } from '@nestjs/swagger'
15
+ import { OneOfMeta, OneOfMetaApiProperty, OneOfResponse, OneOfTypeApiProperty } from '@wisemen/one-of'
16
+
17
+ enum NotificationType {
18
+ DRIVER_CREATED = 'driver.created',
19
+ DRIVER_UPDATED = 'driver.updated',
20
+ }
21
+
22
+ class Notification {} // example class that anchors the type and meta
23
+
24
+ @OneOfResponse(Notification)
25
+ class NotificationResponse {
26
+ @ApiProperty({ type: String, format: 'uuid' })
27
+ uuid: string
28
+
29
+ @OneOfTypeApiProperty()
30
+ type: NotificationType
31
+
32
+ @OneOfMetaApiProperty()
33
+ meta: unknown
34
+ }
35
+
36
+ @OneOfMeta(Notification, NotificationType.DRIVER_CREATED)
37
+ class DriverCreatedNotificationMeta {
38
+ @ApiProperty({ type: String, format: 'uuid' })
39
+ driverUuid: string
40
+
41
+ @ApiProperty({type: String, format: 'date-time'})
42
+ createdAt: Date
43
+ }
44
+
45
+ @OneOfMeta(Notification, NotificationType.DRIVER_UPDATED)
46
+ class DriverUpdatedNotificationMeta {
47
+ @ApiProperty({ type: String, format: 'uuid' })
48
+ driverUuid: string
49
+
50
+ @ApiProperty({type: String, format: 'date-time'})
51
+ updatedAt: Date
52
+ }
53
+ ```
54
+
55
+ Always pair `@OneOfResponse(...)` with both `@OneOfTypeApiProperty()` and
56
+ `@OneOfMetaApiProperty()`. Each `@OneOfMeta(...)` registers one allowed
57
+ discriminator value.
58
+
59
+ ## Expose It In Swagger
60
+
61
+ Use `@OneOfApiResponse(...)` for direct controller responses:
62
+
63
+ ```ts
64
+ import { Controller, Get } from '@nestjs/common'
65
+ import { OneOfApiResponse } from '@wisemen/one-of'
66
+
67
+ @Controller('/notifications')
68
+ class NotificationController {
69
+ @Get()
70
+ @OneOfApiResponse(Notification)
71
+ async getNotification(): Promise<NotificationResponse> {
72
+ throw new Error('not implemented')
73
+ }
74
+ }
75
+ ```
76
+
77
+ Use `@OneOfApiExtraModels(...)` and `@OneOfApiProperty(...)` when the one-of
78
+ response is nested inside another DTO:
79
+
80
+ ```ts
81
+ import { OneOfApiExtraModels, OneOfApiProperty } from '@wisemen/one-of'
82
+
83
+ @OneOfApiExtraModels(Notification)
84
+ class GetNotificationsResponse {
85
+ @OneOfApiProperty(Notification, { isArray: true })
86
+ items: NotificationResponse[]
87
+ }
88
+ ```