@skmtc/core 0.0.438 → 0.0.439

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.
@@ -23,6 +23,12 @@ export declare class ParseContext {
23
23
  registerExtension(extensionFields: Record<string, unknown> | undefined): void;
24
24
  logSkippedFields(skipped: Record<string, unknown>): void;
25
25
  }
26
+ type SetValueArgs = {
27
+ extensions: Record<string, unknown>;
28
+ stackTrail: (string | number)[];
29
+ value: unknown;
30
+ };
31
+ export declare const setValue: ({ extensions, stackTrail, value }: SetValueArgs) => void;
26
32
  export declare const parseSchema: (schema: string) => OpenAPIV3.Document<{}>;
27
33
  export {};
28
34
  //# sourceMappingURL=ParseContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ParseContext.d.ts","sourceRoot":"","sources":["../../src/context/ParseContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAI9C,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,KAAK,GAAG,MAAM,wCAAwC,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAIjD,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,WAAW,EAAE,WAAW,CAAA;IACxB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC,CAAA;AAED,qBAAa,YAAY;;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAClB,WAAW,EAAE,WAAW,CAAA;IAExB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gBAEvB,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,eAAe;IAQ3D,KAAK;IAeL,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAiBlD,iBAAiB,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI;IAc7E,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAUlD;AAkBD,eAAO,MAAM,WAAW,WAAY,MAAM,2BAMzC,CAAA"}
1
+ {"version":3,"file":"ParseContext.d.ts","sourceRoot":"","sources":["../../src/context/ParseContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAI9C,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,KAAK,GAAG,MAAM,wCAAwC,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAIjD,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,WAAW,EAAE,WAAW,CAAA;IACxB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC,CAAA;AAED,qBAAa,YAAY;;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAClB,WAAW,EAAE,WAAW,CAAA;IAExB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gBAEvB,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,eAAe;IAQ3D,KAAK;IAeL,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAiBlD,iBAAiB,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI;IAc7E,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAUlD;AAED,KAAK,YAAY,GAAG;IAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;IAC/B,KAAK,EAAE,OAAO,CAAA;CACf,CAAA;AAED,eAAO,MAAM,QAAQ,sCAAuC,YAAY,SAYvE,CAAA;AAED,eAAO,MAAM,WAAW,WAAY,MAAM,2BAMzC,CAAA"}
@@ -15,7 +15,7 @@ import { parse as parseYaml } from '../deps/jsr.io/@std/yaml/0.215.0/mod.js';
15
15
  import { toDocumentFieldsV3 } from '../oas/document/toDocumentFieldsV3.js';
16
16
  import { OasDocument } from '../oas/document/Document.js';
17
17
  import { tracer } from '../helpers/tracer.js';
18
- import { set, setWith } from 'lodash-es';
18
+ import { set, get } from 'lodash-es';
19
19
  export class ParseContext {
20
20
  constructor({ schema, logger, stackTrail }) {
21
21
  _ParseContext_instances.add(this);
@@ -90,14 +90,15 @@ _ParseContext_stackTrail = new WeakMap(), _ParseContext_instances = new WeakSet(
90
90
  });
91
91
  return this.oasDocument;
92
92
  };
93
- const setValue = ({ extensions, stackTrail, value }) => {
94
- const isResponses = stackTrail[stackTrail.length - 1] === 'responses';
95
- if (isResponses) {
96
- setWith(extensions, stackTrail, value, Object);
97
- }
98
- else {
99
- set(extensions, stackTrail, value);
93
+ export const setValue = ({ extensions, stackTrail, value }) => {
94
+ const responsesIndex = stackTrail.indexOf('responses');
95
+ if (responsesIndex !== -1) {
96
+ const path = stackTrail.slice(0, responsesIndex + 1);
97
+ if (!get(extensions, path)) {
98
+ set(extensions, path, {});
99
+ }
100
100
  }
101
+ set(extensions, stackTrail, value);
101
102
  };
102
103
  export const parseSchema = (schema) => {
103
104
  if (schema.trimStart().startsWith('{')) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParseContext.test.d.ts","sourceRoot":"","sources":["../../src/context/ParseContext.test.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skmtc/core",
3
- "version": "0.0.438",
3
+ "version": "0.0.439",
4
4
  "main": "./script/mod.js",
5
5
  "module": "./esm/mod.js",
6
6
  "exports": {
@@ -46,7 +46,7 @@
46
46
  }
47
47
  },
48
48
  "scripts": {
49
- "test": "node test_runner.js"
49
+ "test": "exit 0"
50
50
  },
51
51
  "dependencies": {
52
52
  "@babel/helper-validator-identifier": "7.22.20",
@@ -23,6 +23,12 @@ export declare class ParseContext {
23
23
  registerExtension(extensionFields: Record<string, unknown> | undefined): void;
24
24
  logSkippedFields(skipped: Record<string, unknown>): void;
25
25
  }
26
+ type SetValueArgs = {
27
+ extensions: Record<string, unknown>;
28
+ stackTrail: (string | number)[];
29
+ value: unknown;
30
+ };
31
+ export declare const setValue: ({ extensions, stackTrail, value }: SetValueArgs) => void;
26
32
  export declare const parseSchema: (schema: string) => OpenAPIV3.Document<{}>;
27
33
  export {};
28
34
  //# sourceMappingURL=ParseContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ParseContext.d.ts","sourceRoot":"","sources":["../../src/context/ParseContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAI9C,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,KAAK,GAAG,MAAM,wCAAwC,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAIjD,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,WAAW,EAAE,WAAW,CAAA;IACxB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC,CAAA;AAED,qBAAa,YAAY;;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAClB,WAAW,EAAE,WAAW,CAAA;IAExB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gBAEvB,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,eAAe;IAQ3D,KAAK;IAeL,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAiBlD,iBAAiB,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI;IAc7E,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAUlD;AAkBD,eAAO,MAAM,WAAW,WAAY,MAAM,2BAMzC,CAAA"}
1
+ {"version":3,"file":"ParseContext.d.ts","sourceRoot":"","sources":["../../src/context/ParseContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAI9C,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,KAAK,GAAG,MAAM,wCAAwC,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAIjD,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,WAAW,EAAE,WAAW,CAAA;IACxB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC,CAAA;AAED,qBAAa,YAAY;;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAClB,WAAW,EAAE,WAAW,CAAA;IAExB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gBAEvB,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,eAAe;IAQ3D,KAAK;IAeL,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAiBlD,iBAAiB,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI;IAc7E,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAUlD;AAED,KAAK,YAAY,GAAG;IAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;IAC/B,KAAK,EAAE,OAAO,CAAA;CACf,CAAA;AAED,eAAO,MAAM,QAAQ,sCAAuC,YAAY,SAYvE,CAAA;AAED,eAAO,MAAM,WAAW,WAAY,MAAM,2BAMzC,CAAA"}
@@ -35,7 +35,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
35
35
  };
36
36
  var _ParseContext_instances, _ParseContext_stackTrail, _ParseContext_parseSchema, _ParseContext_parseDocument;
37
37
  Object.defineProperty(exports, "__esModule", { value: true });
38
- exports.parseSchema = exports.ParseContext = void 0;
38
+ exports.parseSchema = exports.setValue = exports.ParseContext = void 0;
39
39
  const Sentry = __importStar(require("@sentry/deno"));
40
40
  const mod_js_1 = require("../deps/jsr.io/@std/yaml/0.215.0/mod.js");
41
41
  const toDocumentFieldsV3_js_1 = require("../oas/document/toDocumentFieldsV3.js");
@@ -86,11 +86,11 @@ class ParseContext {
86
86
  registerExtension(extensionFields) {
87
87
  const { stackTrail } = __classPrivateFieldGet(this, _ParseContext_stackTrail, "f").slice(1);
88
88
  if (!extensionFields) {
89
- setValue({ extensions: this.extentions, stackTrail, value: 'NO_VALUE' });
89
+ (0, exports.setValue)({ extensions: this.extentions, stackTrail, value: 'NO_VALUE' });
90
90
  return;
91
91
  }
92
92
  Object.entries(extensionFields).forEach(([key, value]) => {
93
- setValue({ extensions: this.extentions, stackTrail: stackTrail.concat(key), value });
93
+ (0, exports.setValue)({ extensions: this.extentions, stackTrail: stackTrail.concat(key), value });
94
94
  });
95
95
  }
96
96
  logSkippedFields(skipped) {
@@ -118,14 +118,16 @@ _ParseContext_stackTrail = new WeakMap(), _ParseContext_instances = new WeakSet(
118
118
  return this.oasDocument;
119
119
  };
120
120
  const setValue = ({ extensions, stackTrail, value }) => {
121
- const isResponses = stackTrail[stackTrail.length - 1] === 'responses';
122
- if (isResponses) {
123
- (0, lodash_es_1.setWith)(extensions, stackTrail, value, Object);
124
- }
125
- else {
126
- (0, lodash_es_1.set)(extensions, stackTrail, value);
121
+ const responsesIndex = stackTrail.indexOf('responses');
122
+ if (responsesIndex !== -1) {
123
+ const path = stackTrail.slice(0, responsesIndex + 1);
124
+ if (!(0, lodash_es_1.get)(extensions, path)) {
125
+ (0, lodash_es_1.set)(extensions, path, {});
126
+ }
127
127
  }
128
+ (0, lodash_es_1.set)(extensions, stackTrail, value);
128
129
  };
130
+ exports.setValue = setValue;
129
131
  const parseSchema = (schema) => {
130
132
  if (schema.trimStart().startsWith('{')) {
131
133
  return JSON.parse(schema);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParseContext.test.d.ts","sourceRoot":"","sources":["../../src/context/ParseContext.test.ts"],"names":[],"mappings":""}