@loopback/openapi-v3 3.4.7 → 4.0.1

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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,63 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [4.0.1](https://github.com/strongloop/loopback-next/compare/@loopback/openapi-v3@4.0.0...@loopback/openapi-v3@4.0.1) (2020-09-17)
7
+
8
+ **Note:** Version bump only for package @loopback/openapi-v3
9
+
10
+
11
+
12
+
13
+
14
+ # [4.0.0](https://github.com/strongloop/loopback-next/compare/@loopback/openapi-v3@3.4.9...@loopback/openapi-v3@4.0.0) (2020-09-15)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * improve handling of missing design-time type metadata ([95b6a2b](https://github.com/strongloop/loopback-next/commit/95b6a2b7ce64e614720df43b905f77a53a54e438))
20
+
21
+
22
+ ### Features
23
+
24
+ * **openapi-v3:** export a constant for the default openapi spec info ([fce91a2](https://github.com/strongloop/loopback-next/commit/fce91a20e514c557a5f84bfcae4eb7031894f114))
25
+ * move framework packages to `devDependencies` ([e2c61ce](https://github.com/strongloop/loopback-next/commit/e2c61ce79aa68d76f6e7138642034160b50063f0))
26
+
27
+
28
+ ### BREAKING CHANGES
29
+
30
+ * components no longer install core framework packages as
31
+ their own dependencies, they use the framework packages provided by the
32
+ target application instead.
33
+
34
+ If you are getting `npm install` errors after upgrade, then make sure
35
+ your project lists all dependencies required by the extensions you are
36
+ using.
37
+
38
+ Signed-off-by: Miroslav Bajtoš <mbajtoss@gmail.com>
39
+
40
+
41
+
42
+
43
+
44
+ ## [3.4.9](https://github.com/strongloop/loopback-next/compare/@loopback/openapi-v3@3.4.8...@loopback/openapi-v3@3.4.9) (2020-08-27)
45
+
46
+
47
+ ### Bug Fixes
48
+
49
+ * **repository-json-schema:** allows string-based order filter ([c10dca9](https://github.com/strongloop/loopback-next/commit/c10dca990f73d80c70752ae72fd1006bb356991d)), closes [#6140](https://github.com/strongloop/loopback-next/issues/6140)
50
+
51
+
52
+
53
+
54
+
55
+ ## [3.4.8](https://github.com/strongloop/loopback-next/compare/@loopback/openapi-v3@3.4.7...@loopback/openapi-v3@3.4.8) (2020-08-19)
56
+
57
+ **Note:** Version bump only for package @loopback/openapi-v3
58
+
59
+
60
+
61
+
62
+
6
63
  ## [3.4.7](https://github.com/strongloop/loopback-next/compare/@loopback/openapi-v3@3.4.6...@loopback/openapi-v3@3.4.7) (2020-08-05)
7
64
 
8
65
  **Note:** Version bump only for package @loopback/openapi-v3
@@ -20,7 +20,7 @@ exports.TS_TYPE_KEY = 'x-ts-type';
20
20
  * @param constructor - Controller class
21
21
  */
22
22
  function resolveControllerSpec(constructor) {
23
- var _a, _b, _c, _d, _e, _f;
23
+ var _a, _b, _c, _d, _e, _f, _g;
24
24
  debug(`Retrieving OpenAPI specification for controller ${constructor.name}`);
25
25
  let spec = core_1.MetadataInspector.getClassMetadata(keys_1.OAI3Keys.CLASS_KEY, constructor);
26
26
  if (spec) {
@@ -199,7 +199,7 @@ function resolveControllerSpec(constructor) {
199
199
  spec.paths[path][verb] = operationSpec;
200
200
  debug(` inferring schema object for method %s`, op);
201
201
  const opMetadata = core_1.MetadataInspector.getDesignTypeForMethod(constructor.prototype, op);
202
- const paramTypes = opMetadata.parameterTypes;
202
+ const paramTypes = (_g = opMetadata === null || opMetadata === void 0 ? void 0 : opMetadata.parameterTypes) !== null && _g !== void 0 ? _g : [];
203
203
  const isComplexType = (ctor) => !lodash_1.includes([String, Number, Boolean, Array, Object], ctor);
204
204
  for (const p of paramTypes) {
205
205
  if (isComplexType(p)) {
@@ -234,7 +234,7 @@ function processSchemaExtensions(spec, schema) {
234
234
  * You cannot provide BOTH a defnintion AND one of these keywords.
235
235
  */
236
236
  /* istanbul ignore else */
237
- const hasOwn = (prop) => schema === null || schema === void 0 ? void 0 : schema.hasOwnProperty(prop);
237
+ const hasOwn = (prop) => schema != null && Object.prototype.hasOwnProperty.call(schema, prop);
238
238
  if (SCHEMA_ARR_KEYS.some(k => hasOwn(k))) {
239
239
  SCHEMA_ARR_KEYS.forEach((k) => {
240
240
  /* istanbul ignore else */
@@ -1 +1 @@
1
- {"version":3,"file":"controller-spec.js","sourceRoot":"","sources":["../src/controller-spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller-spec.js","sourceRoot":"","sources":["../src/controller-spec.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,9 @@ const http_status_1 = tslib_1.__importDefault(require("http-status"));
11
11
  const keys_1 = require("../keys");
12
12
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
13
13
  function isResponseObject(c) {
14
- return !!(c === null || c === void 0 ? void 0 : c.hasOwnProperty('content')) && !!c.content;
14
+ return (c != null &&
15
+ Object.prototype.hasOwnProperty.call(c, 'content') &&
16
+ c.content != null);
15
17
  }
16
18
  function buildDecoratorReducer(responseCode, description, contentType = 'application/json') {
17
19
  const decoratorItemReducer = (r, m) => {
@@ -1 +1 @@
1
- {"version":3,"file":"response.decorator.js","sourceRoot":"","sources":["../../src/decorators/response.decorator.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;;AAEhE,yCAA2D;AAC3D,sEAAqC;AAOrC,kCAAiC;AAOjC,8DAA8D;AAC9D,SAAS,gBAAgB,CAAC,CAAM;IAC9B,OAAO,CAAC,EAAC,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,cAAc,CAAC,SAAS,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;AACvD,CAAC;AAED,SAAS,qBAAqB,CAC5B,YAAoB,EACpB,WAAmB,EACnB,WAAW,GAAG,kBAAkB;IAEhC,MAAM,oBAAoB,GAAG,CAC3B,CAA4B,EAC5B,CAAsB,EACtB,EAAE;;QACF,iDAAiD;QACjD,IAAI,gBAAgB,CAAC,CAAC,CAAC,EAAE;YACvB,MAAM,CAAC,IAAI,OAAC,CAAC,CAAC,OAAO,mCAAI,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;;gBACxC,CAAC,CAAC,IAAI,CAAC;oBACL,YAAY;oBACZ,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,MAEhB;oBACnB,WAAW,EAAE,EAAE;oBACf,WAAW,QAAE,CAAC,CAAC,WAAW,mCAAI,WAAW;iBAC1C,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,CAAC,CAAC,IAAI,CAAC;gBACL,YAAY;gBACZ,mBAAmB,EAAE,CAAC;gBACtB,kDAAkD;gBAClD,WAAW;gBACX,WAAW;aACZ,CAAC,CAAC;SACJ;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;IACF,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,QAAQ,CACtB,YAAoB,EACpB,GAAG,mBAA0C;IAE7C,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAgC,CAAC;IAEvE,OAAO,kCAA2B,CAAC,eAAe,CAChD,eAAQ,CAAC,mBAAmB,EAC5B,mBAAmB,CAAC,MAAM,CACxB,qBAAqB,CAAC,YAAY,EAAE,qBAAU,CAAC,UAAU,CAAW,CAAC,EACrE,EAAE,CACH,EACD,EAAC,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,KAAK,EAAC,CACtD,CAAC;AACJ,CAAC;AAdD,4BAcC;AAED,WAAiB,QAAQ;IACvB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACU,aAAI,GAAG,CAAC,GAAG,UAAoB,EAAE,EAAE;QAC9C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3B,UAAU,GAAG,CAAC,0BAA0B,CAAC,CAAC;SAC3C;QACD,MAAM,mBAAmB,GAAwB;YAC/C,OAAO,EAAE,EAAE;YACX,WAAW,EAAE,kBAAkB;SAChC,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE;YAC1B,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;gBAC/B,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,MAAM,EAAE,QAAQ;iBACjB;aACF,CAAC;SACH;QAED,OAAO,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IAC5C,CAAC,CAAC;AACJ,CAAC,EA1CgB,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QA0CxB"}
1
+ {"version":3,"file":"response.decorator.js","sourceRoot":"","sources":["../../src/decorators/response.decorator.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;;AAEhE,yCAA2D;AAC3D,sEAAqC;AAOrC,kCAAiC;AAOjC,8DAA8D;AAC9D,SAAS,gBAAgB,CAAC,CAAM;IAC9B,OAAO,CACL,CAAC,IAAI,IAAI;QACT,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC;QAClD,CAAC,CAAC,OAAO,IAAI,IAAI,CAClB,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAC5B,YAAoB,EACpB,WAAmB,EACnB,WAAW,GAAG,kBAAkB;IAEhC,MAAM,oBAAoB,GAAG,CAC3B,CAA4B,EAC5B,CAAsB,EACtB,EAAE;;QACF,iDAAiD;QACjD,IAAI,gBAAgB,CAAC,CAAC,CAAC,EAAE;YACvB,MAAM,CAAC,IAAI,OAAC,CAAC,CAAC,OAAO,mCAAI,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;;gBACxC,CAAC,CAAC,IAAI,CAAC;oBACL,YAAY;oBACZ,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,MAEhB;oBACnB,WAAW,EAAE,EAAE;oBACf,WAAW,QAAE,CAAC,CAAC,WAAW,mCAAI,WAAW;iBAC1C,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,CAAC,CAAC,IAAI,CAAC;gBACL,YAAY;gBACZ,mBAAmB,EAAE,CAAC;gBACtB,kDAAkD;gBAClD,WAAW;gBACX,WAAW;aACZ,CAAC,CAAC;SACJ;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;IACF,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,QAAQ,CACtB,YAAoB,EACpB,GAAG,mBAA0C;IAE7C,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAgC,CAAC;IAEvE,OAAO,kCAA2B,CAAC,eAAe,CAChD,eAAQ,CAAC,mBAAmB,EAC5B,mBAAmB,CAAC,MAAM,CACxB,qBAAqB,CAAC,YAAY,EAAE,qBAAU,CAAC,UAAU,CAAW,CAAC,EACrE,EAAE,CACH,EACD,EAAC,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,KAAK,EAAC,CACtD,CAAC;AACJ,CAAC;AAdD,4BAcC;AAED,WAAiB,QAAQ;IACvB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACU,aAAI,GAAG,CAAC,GAAG,UAAoB,EAAE,EAAE;QAC9C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3B,UAAU,GAAG,CAAC,0BAA0B,CAAC,CAAC;SAC3C;QACD,MAAM,mBAAmB,GAAwB;YAC/C,OAAO,EAAE,EAAE;YACX,WAAW,EAAE,kBAAkB;SAChC,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE;YAC1B,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;gBAC/B,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,MAAM,EAAE,QAAQ;iBACjB;aACF,CAAC;SACH;QAED,OAAO,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IAC5C,CAAC,CAAC;AACJ,CAAC,EA1CgB,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QA0CxB"}
@@ -10,6 +10,7 @@ const core_1 = require("@loopback/core");
10
10
  const debug_1 = tslib_1.__importDefault(require("debug"));
11
11
  const _ = tslib_1.__importStar(require("lodash"));
12
12
  const util_1 = require("util");
13
+ const types_1 = require("../types");
13
14
  const keys_1 = require("./keys");
14
15
  const jsonmergepatch = require('json-merge-patch');
15
16
  const debug = debug_1.default('loopback:openapi:spec-enhancer');
@@ -37,8 +38,7 @@ let OASEnhancerService = class OASEnhancerService {
37
38
  this._spec = {
38
39
  openapi: '3.0.0',
39
40
  info: {
40
- title: 'LoopBack Application',
41
- version: '1.0.0',
41
+ ...types_1.DEFAULT_OPENAPI_SPEC_INFO,
42
42
  },
43
43
  paths: {},
44
44
  };
@@ -1 +1 @@
1
- {"version":3,"file":"spec-enhancer.service.js","sourceRoot":"","sources":["../../src/enhancers/spec-enhancer.service.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;;AAEhE,yCAA0E;AAC1E,0DAAgC;AAChC,kDAA4B;AAC5B,+BAA6B;AAE7B,iCAA2C;AAE3C,MAAM,cAAc,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAEnD,MAAM,KAAK,GAAG,eAAW,CAAC,gCAAgC,CAAC,CAAC;AAS5D;;;;;;;GAOG;AAEH,IAAa,kBAAkB,GAA/B,MAAa,kBAAkB;IAC7B;IACE;;OAEG;IAEK,YAAmC;IAC3C;;;OAGG;IAEa,OAAmC;QAN3C,iBAAY,GAAZ,YAAY,CAAuB;QAM3B,YAAO,GAAP,OAAO,CAA4B;QAG7C,UAAK,GAAgB;YAC3B,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE;gBACJ,KAAK,EAAE,sBAAsB;gBAC7B,OAAO,EAAE,OAAO;aACjB;YACD,KAAK,EAAE,EAAE;SACV,CAAC;IATC,CAAC;IAWJ;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IACD;;OAEG;IACH,IAAI,IAAI,CAAC,KAAkB;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,iBAAiB,CACrB,IAAY;QAEZ,mCAAmC;QACnC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC5C,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAkB,CAAC;IAC/D,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,mBAAmB,CAAC,IAAY;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,QAAQ;YAAE,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,iBAAiB,CAAC,OAAO,GAAG,EAAE;QAClC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC5C,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC;QAC5C,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE;YACzB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACvC;QACD,KAAK,CAAC,0CAA0C,cAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF,CAAA;AAxEY,kBAAkB;IAD9B,qBAAc,CAAC,0BAAmB,CAAC,iCAAiC,CAAC;IAMjE,mBAAA,iBAAU,EAAE,CAAA;IAMZ,mBAAA,aAAM,EAAE,CAAA;;GAXA,kBAAkB,CAwE9B;AAxEY,gDAAkB;AA0E/B;;;;;;;;;;GAUG;AACH,SAAgB,gBAAgB,CAC9B,WAAiC,EACjC,SAA+B;IAE/B,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAChE,OAAO,UAAU,CAAC;AACpB,CAAC;AAND,4CAMC;AAED;;;;;;;;GAQG;AACH,SAAgB,yBAAyB,CACvC,IAAiB,EACjB,UAAkB,EAClB,UAAgC;IAEhC,MAAM,SAAS,GAAG;QAChB,UAAU,EAAE;YACV,eAAe,EAAE,EAAC,CAAC,UAAU,CAAC,EAAE,UAAU,EAAC;SAC5C;KACF,CAAC;IAEF,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACrD,OAAO,UAAU,CAAC;AACpB,CAAC;AAbD,8DAaC"}
1
+ {"version":3,"file":"spec-enhancer.service.js","sourceRoot":"","sources":["../../src/enhancers/spec-enhancer.service.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -2,6 +2,10 @@ import { Model } from '@loopback/repository';
2
2
  import { OpenAPIObject, ReferenceObject, ResponseObject, SchemaObject } from 'openapi3-ts';
3
3
  export declare type OpenApiSpec = OpenAPIObject;
4
4
  export * from 'openapi3-ts';
5
+ export declare const DEFAULT_OPENAPI_SPEC_INFO: {
6
+ title: string;
7
+ version: string;
8
+ };
5
9
  /**
6
10
  * Create an empty OpenApiSpec object that's still a valid openapi document.
7
11
  *
package/dist/types.js CHANGED
@@ -4,10 +4,14 @@
4
4
  // This file is licensed under the MIT License.
5
5
  // License text available at https://opensource.org/licenses/MIT
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.createEmptyApiSpec = void 0;
7
+ exports.createEmptyApiSpec = exports.DEFAULT_OPENAPI_SPEC_INFO = void 0;
8
8
  const tslib_1 = require("tslib");
9
9
  // Export also all spec interfaces
10
10
  tslib_1.__exportStar(require("openapi3-ts"), exports);
11
+ exports.DEFAULT_OPENAPI_SPEC_INFO = {
12
+ title: 'LoopBack Application',
13
+ version: '1.0.0',
14
+ };
11
15
  /**
12
16
  * Create an empty OpenApiSpec object that's still a valid openapi document.
13
17
  *
@@ -17,8 +21,7 @@ function createEmptyApiSpec() {
17
21
  return {
18
22
  openapi: '3.0.0',
19
23
  info: {
20
- title: 'LoopBack Application',
21
- version: '1.0.0',
24
+ ...exports.DEFAULT_OPENAPI_SPEC_INFO,
22
25
  },
23
26
  paths: {},
24
27
  servers: [{ url: '/' }],
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;;AAchE,kCAAkC;AAClC,sDAA4B;AAE5B;;;;GAIG;AACH,SAAgB,kBAAkB;IAChC,OAAO;QACL,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE;YACJ,KAAK,EAAE,sBAAsB;YAC7B,OAAO,EAAE,OAAO;SACjB;QACD,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,CAAC,EAAC,GAAG,EAAE,GAAG,EAAC,CAAC;KACtB,CAAC;AACJ,CAAC;AAVD,gDAUC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;;AAchE,kCAAkC;AAClC,sDAA4B;AAEf,QAAA,yBAAyB,GAAG;IACvC,KAAK,EAAE,sBAAsB;IAC7B,OAAO,EAAE,OAAO;CACjB,CAAC;AAEF;;;;GAIG;AACH,SAAgB,kBAAkB;IAChC,OAAO;QACL,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE;YACJ,GAAG,iCAAyB;SAC7B;QACD,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,CAAC,EAAC,GAAG,EAAE,GAAG,EAAC,CAAC;KACtB,CAAC;AACJ,CAAC;AATD,gDASC"}
package/package.json CHANGED
@@ -1,33 +1,36 @@
1
1
  {
2
2
  "name": "@loopback/openapi-v3",
3
- "version": "3.4.7",
3
+ "version": "4.0.1",
4
4
  "description": "Decorators that annotate LoopBack artifacts with OpenAPI v3 metadata and utilities that transform LoopBack metadata to OpenAPI v3 specifications",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "engines": {
8
8
  "node": ">=10.16"
9
9
  },
10
+ "peerDependencies": {
11
+ "@loopback/core": "^2.10.1"
12
+ },
10
13
  "dependencies": {
11
- "@loopback/core": "^2.9.3",
12
- "@loopback/repository-json-schema": "^2.4.8",
14
+ "@loopback/repository-json-schema": "^3.0.1",
13
15
  "debug": "^4.1.1",
14
16
  "http-status": "^1.4.2",
15
17
  "json-merge-patch": "^1.0.0",
16
- "lodash": "^4.17.19",
18
+ "lodash": "^4.17.20",
17
19
  "openapi3-ts": "^1.4.0",
18
- "tslib": "^2.0.0"
20
+ "tslib": "^2.0.1"
19
21
  },
20
22
  "devDependencies": {
21
- "@loopback/build": "^6.2.0",
22
- "@loopback/eslint-config": "^9.0.0",
23
- "@loopback/openapi-spec-builder": "^2.1.11",
24
- "@loopback/repository": "^2.11.0",
25
- "@loopback/testlab": "^3.2.2",
23
+ "@loopback/build": "^6.2.4",
24
+ "@loopback/core": "^2.10.1",
25
+ "@loopback/eslint-config": "^10.0.0",
26
+ "@loopback/openapi-spec-builder": "^2.1.15",
27
+ "@loopback/repository": "^3.0.1",
28
+ "@loopback/testlab": "^3.2.6",
26
29
  "@types/debug": "^4.1.5",
27
30
  "@types/http-status": "^1.1.2",
28
31
  "@types/json-merge-patch": "0.0.5",
29
- "@types/lodash": "^4.14.158",
30
- "@types/node": "^10.17.28"
32
+ "@types/lodash": "^4.14.161",
33
+ "@types/node": "^10.17.35"
31
34
  },
32
35
  "scripts": {
33
36
  "build": "lb-tsc",
@@ -60,5 +63,5 @@
60
63
  "url": "https://github.com/strongloop/loopback-next.git",
61
64
  "directory": "packages/openapi-v3"
62
65
  },
63
- "gitHead": "1619bf0c29aa03853a7977212e60028664fca640"
66
+ "gitHead": "79327fd7e68ebb05be0aa689f4986b54e2a99a6b"
64
67
  }
@@ -317,7 +317,7 @@ function resolveControllerSpec(constructor: Function): ControllerSpec {
317
317
  constructor.prototype,
318
318
  op,
319
319
  );
320
- const paramTypes = opMetadata.parameterTypes;
320
+ const paramTypes = opMetadata?.parameterTypes ?? [];
321
321
 
322
322
  const isComplexType = (ctor: Function) =>
323
323
  !includes([String, Number, Boolean, Array, Object], ctor);
@@ -363,7 +363,8 @@ function processSchemaExtensions(
363
363
  * You cannot provide BOTH a defnintion AND one of these keywords.
364
364
  */
365
365
  /* istanbul ignore else */
366
- const hasOwn = (prop: string) => schema?.hasOwnProperty(prop);
366
+ const hasOwn = (prop: string) =>
367
+ schema != null && Object.prototype.hasOwnProperty.call(schema, prop);
367
368
 
368
369
  if (SCHEMA_ARR_KEYS.some(k => hasOwn(k))) {
369
370
  SCHEMA_ARR_KEYS.forEach((k: MixKey) => {
@@ -20,7 +20,11 @@ interface ResponseWithContent extends ResponseObject {
20
20
  }
21
21
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
22
22
  function isResponseObject(c: any): c is ResponseWithContent {
23
- return !!c?.hasOwnProperty('content') && !!c.content;
23
+ return (
24
+ c != null &&
25
+ Object.prototype.hasOwnProperty.call(c, 'content') &&
26
+ c.content != null
27
+ );
24
28
  }
25
29
 
26
30
  function buildDecoratorReducer(
@@ -7,7 +7,11 @@ import {config, extensionPoint, extensions, Getter} from '@loopback/core';
7
7
  import debugModule from 'debug';
8
8
  import * as _ from 'lodash';
9
9
  import {inspect} from 'util';
10
- import {OpenApiSpec, SecuritySchemeObject} from '../types';
10
+ import {
11
+ DEFAULT_OPENAPI_SPEC_INFO,
12
+ OpenApiSpec,
13
+ SecuritySchemeObject,
14
+ } from '../types';
11
15
  import {OASEnhancerBindings} from './keys';
12
16
  import {OASEnhancer} from './types';
13
17
  const jsonmergepatch = require('json-merge-patch');
@@ -48,8 +52,7 @@ export class OASEnhancerService {
48
52
  private _spec: OpenApiSpec = {
49
53
  openapi: '3.0.0',
50
54
  info: {
51
- title: 'LoopBack Application',
52
- version: '1.0.0',
55
+ ...DEFAULT_OPENAPI_SPEC_INFO,
53
56
  },
54
57
  paths: {},
55
58
  };
package/src/types.ts CHANGED
@@ -18,6 +18,11 @@ export type OpenApiSpec = OpenAPIObject;
18
18
  // Export also all spec interfaces
19
19
  export * from 'openapi3-ts';
20
20
 
21
+ export const DEFAULT_OPENAPI_SPEC_INFO = {
22
+ title: 'LoopBack Application',
23
+ version: '1.0.0',
24
+ };
25
+
21
26
  /**
22
27
  * Create an empty OpenApiSpec object that's still a valid openapi document.
23
28
  *
@@ -27,8 +32,7 @@ export function createEmptyApiSpec(): OpenApiSpec {
27
32
  return {
28
33
  openapi: '3.0.0',
29
34
  info: {
30
- title: 'LoopBack Application',
31
- version: '1.0.0',
35
+ ...DEFAULT_OPENAPI_SPEC_INFO,
32
36
  },
33
37
  paths: {},
34
38
  servers: [{url: '/'}],