@speclynx/apidom-parser-adapter-openapi-yaml-3-0 4.2.0 → 4.3.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,14 @@
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.3.1](https://github.com/speclynx/apidom/compare/v4.3.0...v4.3.1) (2026-04-08)
7
+
8
+ **Note:** Version bump only for package @speclynx/apidom-parser-adapter-openapi-yaml-3-0
9
+
10
+ # [4.3.0](https://github.com/speclynx/apidom/compare/v4.2.0...v4.3.0) (2026-04-07)
11
+
12
+ **Note:** Version bump only for package @speclynx/apidom-parser-adapter-openapi-yaml-3-0
13
+
6
14
  # [4.2.0](https://github.com/speclynx/apidom/compare/v4.1.0...v4.2.0) (2026-03-17)
7
15
 
8
16
  **Note:** Version bump only for package @speclynx/apidom-parser-adapter-openapi-yaml-3-0
@@ -21537,19 +21537,26 @@ function composeNode(ctx, token, props, onError) {
21537
21537
  case 'block-map':
21538
21538
  case 'block-seq':
21539
21539
  case 'flow-collection':
21540
- node = (0,_compose_collection_js__WEBPACK_IMPORTED_MODULE_2__.composeCollection)(CN, ctx, token, props, onError);
21541
- if (anchor)
21542
- node.anchor = anchor.source.substring(1);
21540
+ try {
21541
+ node = (0,_compose_collection_js__WEBPACK_IMPORTED_MODULE_2__.composeCollection)(CN, ctx, token, props, onError);
21542
+ if (anchor)
21543
+ node.anchor = anchor.source.substring(1);
21544
+ }
21545
+ catch (error) {
21546
+ // Almost certainly here due to a stack overflow
21547
+ const message = error instanceof Error ? error.message : String(error);
21548
+ onError(token, 'RESOURCE_EXHAUSTION', message);
21549
+ }
21543
21550
  break;
21544
21551
  default: {
21545
21552
  const message = token.type === 'error'
21546
21553
  ? token.message
21547
21554
  : `Unsupported token (type: ${token.type})`;
21548
21555
  onError(token, 'UNEXPECTED_TOKEN', message);
21549
- node = composeEmptyNode(ctx, token.offset, undefined, null, props, onError);
21550
21556
  isSrcToken = false;
21551
21557
  }
21552
21558
  }
21559
+ node ?? (node = composeEmptyNode(ctx, token.offset, undefined, null, props, onError));
21553
21560
  if (anchor && node.anchor === '')
21554
21561
  onError(anchor, 'BAD_ALIAS', 'Anchor cannot be an empty string');
21555
21562
  if (atKey &&
@@ -29068,6 +29075,7 @@ function createStringifyContext(doc, options) {
29068
29075
  nullStr: 'null',
29069
29076
  simpleKeys: false,
29070
29077
  singleQuote: null,
29078
+ trailingComma: false,
29071
29079
  trueStr: 'true',
29072
29080
  verifyAliasOrder: true
29073
29081
  }, doc.schema.toStringOptions, options);
@@ -29293,12 +29301,22 @@ function stringifyFlowCollection({ items }, ctx, { flowChars, itemIndent }) {
29293
29301
  if (comment)
29294
29302
  reqNewline = true;
29295
29303
  let str = (0,_stringify_js__WEBPACK_IMPORTED_MODULE_1__.stringify)(item, itemCtx, () => (comment = null));
29296
- if (i < items.length - 1)
29304
+ reqNewline || (reqNewline = lines.length > linesAtValue || str.includes('\n'));
29305
+ if (i < items.length - 1) {
29297
29306
  str += ',';
29307
+ }
29308
+ else if (ctx.options.trailingComma) {
29309
+ if (ctx.options.lineWidth > 0) {
29310
+ reqNewline || (reqNewline = lines.reduce((sum, line) => sum + line.length + 2, 2) +
29311
+ (str.length + 2) >
29312
+ ctx.options.lineWidth);
29313
+ }
29314
+ if (reqNewline) {
29315
+ str += ',';
29316
+ }
29317
+ }
29298
29318
  if (comment)
29299
29319
  str += (0,_stringifyComment_js__WEBPACK_IMPORTED_MODULE_2__.lineComment)(str, itemIndent, commentString(comment));
29300
- if (!reqNewline && (lines.length > linesAtValue || str.includes('\n')))
29301
- reqNewline = true;
29302
29320
  lines.push(str);
29303
29321
  linesAtValue = lines.length;
29304
29322
  }