@typia/utils 13.0.0-dev.20260427 → 13.0.0-dev.20260427-2

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.
@@ -138,27 +138,24 @@ var LlmSchemaConverter;
138
138
  reasons,
139
139
  },
140
140
  };
141
- const convertConstant = (input) => {
142
- if (input.const === null)
143
- return {
144
- type: "null",
145
- };
146
- if (typeof input.const === "boolean")
147
- return {
148
- type: "boolean",
149
- enum: [input.const],
150
- };
151
- if (typeof input.const === "string")
152
- return {
153
- type: "string",
154
- enum: [input.const],
155
- };
156
- if (typeof input.const === "number")
157
- return {
158
- type: Number.isInteger(input.const) ? "integer" : "number",
159
- enum: [input.const],
160
- };
161
- return null;
141
+ const visitConstant = (input) => {
142
+ const insert = (value) => {
143
+ var _a;
144
+ const matched = union.find((u) => (u === null || u === void 0 ? void 0 : u.type) === typeof value);
145
+ if (matched !== undefined) {
146
+ (_a = matched.enum) !== null && _a !== void 0 ? _a : (matched.enum = []);
147
+ matched.enum.push(value);
148
+ }
149
+ else
150
+ union.push({
151
+ type: typeof value,
152
+ enum: [value],
153
+ });
154
+ };
155
+ if (OpenApiTypeChecker_1.OpenApiTypeChecker.isConstant(input))
156
+ insert(input.const);
157
+ else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isOneOf(input))
158
+ input.oneOf.forEach(visitConstant);
162
159
  };
163
160
  const visit = (input, accessor) => {
164
161
  var _a;
@@ -263,11 +260,6 @@ var LlmSchemaConverter;
263
260
  ? OpenApiConstraintShifter_1.OpenApiConstraintShifter.shiftArray(Object.assign(Object.assign({}, input), { items: items.value }))
264
261
  : Object.assign(Object.assign({}, input), { items: items.value }));
265
262
  }
266
- else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isConstant(input)) {
267
- const constant = convertConstant(input);
268
- if (constant !== null)
269
- union.push(constant);
270
- }
271
263
  else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isString(input))
272
264
  union.push(props.config.strict === true
273
265
  ? OpenApiConstraintShifter_1.OpenApiConstraintShifter.shiftString(Object.assign({}, input))
@@ -282,8 +274,8 @@ var LlmSchemaConverter;
282
274
  else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isConstant(input) === false)
283
275
  union.push(Object.assign({}, input));
284
276
  };
277
+ visitConstant(props.schema);
285
278
  visit(props.schema, (_a = props.accessor) !== null && _a !== void 0 ? _a : "$input.schema");
286
- const normalized = normalizeLlmUnion(union);
287
279
  if (reasons.length > 0)
288
280
  return {
289
281
  success: false,
@@ -293,29 +285,29 @@ var LlmSchemaConverter;
293
285
  reasons,
294
286
  },
295
287
  };
296
- else if (normalized.length === 0)
288
+ else if (union.length === 0)
297
289
  return {
298
290
  // unknown type
299
291
  success: true,
300
292
  value: Object.assign(Object.assign({}, attribute), { type: undefined }),
301
293
  };
302
- else if (normalized.length === 1)
294
+ else if (union.length === 1)
303
295
  return {
304
296
  // single type
305
297
  success: true,
306
- value: Object.assign(Object.assign(Object.assign({}, attribute), normalized[0]), { description: props.config.strict === true &&
307
- LlmTypeChecker_1.LlmTypeChecker.isReference(normalized[0])
298
+ value: Object.assign(Object.assign(Object.assign({}, attribute), union[0]), { description: props.config.strict === true &&
299
+ LlmTypeChecker_1.LlmTypeChecker.isReference(union[0])
308
300
  ? undefined
309
- : ((_b = normalized[0].description) !== null && _b !== void 0 ? _b : attribute.description) }),
301
+ : ((_b = union[0].description) !== null && _b !== void 0 ? _b : attribute.description) }),
310
302
  };
311
303
  return {
312
304
  success: true,
313
- value: Object.assign(Object.assign({}, attribute), { anyOf: normalized.map((u) => (Object.assign(Object.assign({}, u), { description: props.config.strict === true && LlmTypeChecker_1.LlmTypeChecker.isReference(u)
305
+ value: Object.assign(Object.assign({}, attribute), { anyOf: union.map((u) => (Object.assign(Object.assign({}, u), { description: props.config.strict === true && LlmTypeChecker_1.LlmTypeChecker.isReference(u)
314
306
  ? undefined
315
307
  : u.description }))), "x-discriminator": OpenApiTypeChecker_1.OpenApiTypeChecker.isOneOf(props.schema) &&
316
308
  props.schema.discriminator !== undefined &&
317
- props.schema.oneOf.length === normalized.length &&
318
- normalized.every((e) => LlmTypeChecker_1.LlmTypeChecker.isReference(e) || LlmTypeChecker_1.LlmTypeChecker.isNull(e))
309
+ props.schema.oneOf.length === union.length &&
310
+ union.every((e) => LlmTypeChecker_1.LlmTypeChecker.isReference(e) || LlmTypeChecker_1.LlmTypeChecker.isNull(e))
319
311
  ? {
320
312
  propertyName: props.schema.discriminator.propertyName,
321
313
  mapping: props.schema.discriminator.mapping !== undefined
@@ -323,11 +315,7 @@ var LlmSchemaConverter;
323
315
  key,
324
316
  `#/$defs/${value.split("/").at(-1)}`,
325
317
  ]))
326
- : discriminatorMapping({
327
- propertyName: props.schema.discriminator.propertyName,
328
- refs: normalized.filter(LlmTypeChecker_1.LlmTypeChecker.isReference),
329
- $defs: props.$defs,
330
- }),
318
+ : undefined,
331
319
  }
332
320
  : undefined }),
333
321
  };
@@ -425,91 +413,6 @@ var LlmSchemaConverter;
425
413
  }));
426
414
  };
427
415
  })(LlmSchemaConverter || (exports.LlmSchemaConverter = LlmSchemaConverter = {}));
428
- const discriminatorMapping = (props) => {
429
- const entries = props.refs.flatMap((ref) => {
430
- var _a;
431
- const key = (_a = ref.$ref.split("#/$defs/")[1]) !== null && _a !== void 0 ? _a : ref.$ref.split("/").at(-1);
432
- const schema = props.$defs[key];
433
- if (!schema || !LlmTypeChecker_1.LlmTypeChecker.isObject(schema))
434
- return [];
435
- const literals = llmDiscriminatorLiterals(schema.properties[props.propertyName], props.$defs);
436
- return literals.map((literal) => [literal, ref.$ref]);
437
- });
438
- return entries.length !== 0 ? Object.fromEntries(entries) : undefined;
439
- };
440
- const llmDiscriminatorLiterals = (schema, $defs) => {
441
- var _a, _b;
442
- if (schema === undefined)
443
- return [];
444
- if (LlmTypeChecker_1.LlmTypeChecker.isReference(schema)) {
445
- const key = (_a = schema.$ref.split("#/$defs/")[1]) !== null && _a !== void 0 ? _a : schema.$ref.split("/").at(-1);
446
- return llmDiscriminatorLiterals($defs[key], $defs);
447
- }
448
- if (LlmTypeChecker_1.LlmTypeChecker.isString(schema))
449
- return (_b = schema.enum) !== null && _b !== void 0 ? _b : [];
450
- if (LlmTypeChecker_1.LlmTypeChecker.isAnyOf(schema))
451
- return schema.anyOf.flatMap((child) => llmDiscriminatorLiterals(child, $defs));
452
- return [];
453
- };
454
- const normalizeLlmUnion = (union) => {
455
- if (union.length <= 1)
456
- return union;
457
- if (union.every(isEnumOnlyString)) {
458
- return [
459
- {
460
- type: "string",
461
- enum: uniqueEnumValues(union.flatMap((schema) => { var _a; return (_a = schema.enum) !== null && _a !== void 0 ? _a : []; })),
462
- },
463
- ];
464
- }
465
- if (union.every(isEnumOnlyBoolean)) {
466
- return [
467
- {
468
- type: "boolean",
469
- enum: uniqueEnumValues(union.flatMap((schema) => { var _a; return (_a = schema.enum) !== null && _a !== void 0 ? _a : []; })),
470
- },
471
- ];
472
- }
473
- if (union.every(isEnumOnlyInteger)) {
474
- return [
475
- {
476
- type: "integer",
477
- enum: uniqueEnumValues(union.flatMap((schema) => { var _a; return (_a = schema.enum) !== null && _a !== void 0 ? _a : []; })),
478
- },
479
- ];
480
- }
481
- if (union.every(isEnumOnlyNumber)) {
482
- return [
483
- {
484
- type: "number",
485
- enum: uniqueEnumValues(union.flatMap((schema) => { var _a; return (_a = schema.enum) !== null && _a !== void 0 ? _a : []; })),
486
- },
487
- ];
488
- }
489
- return union;
490
- };
491
- const isEnumOnlyString = (schema) => LlmTypeChecker_1.LlmTypeChecker.isString(schema) &&
492
- Array.isArray(schema.enum) &&
493
- schema.enum.length !== 0 &&
494
- primitiveSchemaHasOnlyEnum(schema);
495
- const isEnumOnlyBoolean = (schema) => LlmTypeChecker_1.LlmTypeChecker.isBoolean(schema) &&
496
- Array.isArray(schema.enum) &&
497
- schema.enum.length !== 0 &&
498
- primitiveSchemaHasOnlyEnum(schema);
499
- const isEnumOnlyInteger = (schema) => LlmTypeChecker_1.LlmTypeChecker.isInteger(schema) &&
500
- Array.isArray(schema.enum) &&
501
- schema.enum.length !== 0 &&
502
- primitiveSchemaHasOnlyEnum(schema);
503
- const isEnumOnlyNumber = (schema) => LlmTypeChecker_1.LlmTypeChecker.isNumber(schema) &&
504
- Array.isArray(schema.enum) &&
505
- schema.enum.length !== 0 &&
506
- primitiveSchemaHasOnlyEnum(schema);
507
- const primitiveSchemaHasOnlyEnum = (schema) => Object.entries(schema).every(([key, value]) => {
508
- if (value === undefined)
509
- return true;
510
- return key === "type" || key === "enum";
511
- });
512
- const uniqueEnumValues = (values) => Array.from(new Set(values));
513
416
  const validateStrict = (schema, accessor) => {
514
417
  var _a;
515
418
  var _b;
@@ -1 +1 @@
1
- {"version":3,"file":"LlmSchemaConverter.js","sourceRoot":"","sources":["../../src/converters/LlmSchemaConverter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlmSchemaConverter.js","sourceRoot":"","sources":["../../src/converters/LlmSchemaConverter.ts"],"names":[],"mappings":"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"}
@@ -150,27 +150,24 @@ function requireLlmSchemaConverter () {
150
150
  reasons,
151
151
  },
152
152
  };
153
- const convertConstant = (input) => {
154
- if (input.const === null)
155
- return {
156
- type: "null",
157
- };
158
- if (typeof input.const === "boolean")
159
- return {
160
- type: "boolean",
161
- enum: [input.const],
162
- };
163
- if (typeof input.const === "string")
164
- return {
165
- type: "string",
166
- enum: [input.const],
167
- };
168
- if (typeof input.const === "number")
169
- return {
170
- type: Number.isInteger(input.const) ? "integer" : "number",
171
- enum: [input.const],
172
- };
173
- return null;
153
+ const visitConstant = (input) => {
154
+ const insert = (value) => {
155
+ var _a;
156
+ const matched = union.find((u) => (u === null || u === void 0 ? void 0 : u.type) === typeof value);
157
+ if (matched !== undefined) {
158
+ (_a = matched.enum) !== null && _a !== void 0 ? _a : (matched.enum = []);
159
+ matched.enum.push(value);
160
+ }
161
+ else
162
+ union.push({
163
+ type: typeof value,
164
+ enum: [value],
165
+ });
166
+ };
167
+ if (OpenApiTypeChecker_1.OpenApiTypeChecker.isConstant(input))
168
+ insert(input.const);
169
+ else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isOneOf(input))
170
+ input.oneOf.forEach(visitConstant);
174
171
  };
175
172
  const visit = (input, accessor) => {
176
173
  var _a;
@@ -275,11 +272,6 @@ function requireLlmSchemaConverter () {
275
272
  ? OpenApiConstraintShifter_1.OpenApiConstraintShifter.shiftArray(Object.assign(Object.assign({}, input), { items: items.value }))
276
273
  : Object.assign(Object.assign({}, input), { items: items.value }));
277
274
  }
278
- else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isConstant(input)) {
279
- const constant = convertConstant(input);
280
- if (constant !== null)
281
- union.push(constant);
282
- }
283
275
  else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isString(input))
284
276
  union.push(props.config.strict === true
285
277
  ? OpenApiConstraintShifter_1.OpenApiConstraintShifter.shiftString(Object.assign({}, input))
@@ -294,8 +286,8 @@ function requireLlmSchemaConverter () {
294
286
  else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isConstant(input) === false)
295
287
  union.push(Object.assign({}, input));
296
288
  };
289
+ visitConstant(props.schema);
297
290
  visit(props.schema, (_a = props.accessor) !== null && _a !== void 0 ? _a : "$input.schema");
298
- const normalized = normalizeLlmUnion(union);
299
291
  if (reasons.length > 0)
300
292
  return {
301
293
  success: false,
@@ -305,29 +297,29 @@ function requireLlmSchemaConverter () {
305
297
  reasons,
306
298
  },
307
299
  };
308
- else if (normalized.length === 0)
300
+ else if (union.length === 0)
309
301
  return {
310
302
  // unknown type
311
303
  success: true,
312
304
  value: Object.assign(Object.assign({}, attribute), { type: undefined }),
313
305
  };
314
- else if (normalized.length === 1)
306
+ else if (union.length === 1)
315
307
  return {
316
308
  // single type
317
309
  success: true,
318
- value: Object.assign(Object.assign(Object.assign({}, attribute), normalized[0]), { description: props.config.strict === true &&
319
- LlmTypeChecker_1.LlmTypeChecker.isReference(normalized[0])
310
+ value: Object.assign(Object.assign(Object.assign({}, attribute), union[0]), { description: props.config.strict === true &&
311
+ LlmTypeChecker_1.LlmTypeChecker.isReference(union[0])
320
312
  ? undefined
321
- : ((_b = normalized[0].description) !== null && _b !== void 0 ? _b : attribute.description) }),
313
+ : ((_b = union[0].description) !== null && _b !== void 0 ? _b : attribute.description) }),
322
314
  };
323
315
  return {
324
316
  success: true,
325
- value: Object.assign(Object.assign({}, attribute), { anyOf: normalized.map((u) => (Object.assign(Object.assign({}, u), { description: props.config.strict === true && LlmTypeChecker_1.LlmTypeChecker.isReference(u)
317
+ value: Object.assign(Object.assign({}, attribute), { anyOf: union.map((u) => (Object.assign(Object.assign({}, u), { description: props.config.strict === true && LlmTypeChecker_1.LlmTypeChecker.isReference(u)
326
318
  ? undefined
327
319
  : u.description }))), "x-discriminator": OpenApiTypeChecker_1.OpenApiTypeChecker.isOneOf(props.schema) &&
328
320
  props.schema.discriminator !== undefined &&
329
- props.schema.oneOf.length === normalized.length &&
330
- normalized.every((e) => LlmTypeChecker_1.LlmTypeChecker.isReference(e) || LlmTypeChecker_1.LlmTypeChecker.isNull(e))
321
+ props.schema.oneOf.length === union.length &&
322
+ union.every((e) => LlmTypeChecker_1.LlmTypeChecker.isReference(e) || LlmTypeChecker_1.LlmTypeChecker.isNull(e))
331
323
  ? {
332
324
  propertyName: props.schema.discriminator.propertyName,
333
325
  mapping: props.schema.discriminator.mapping !== undefined
@@ -335,11 +327,7 @@ function requireLlmSchemaConverter () {
335
327
  key,
336
328
  `#/$defs/${value.split("/").at(-1)}`,
337
329
  ]))
338
- : discriminatorMapping({
339
- propertyName: props.schema.discriminator.propertyName,
340
- refs: normalized.filter(LlmTypeChecker_1.LlmTypeChecker.isReference),
341
- $defs: props.$defs,
342
- }),
330
+ : undefined,
343
331
  }
344
332
  : undefined }),
345
333
  };
@@ -437,91 +425,6 @@ function requireLlmSchemaConverter () {
437
425
  }));
438
426
  };
439
427
  })(LlmSchemaConverter$1 || (LlmSchemaConverter.LlmSchemaConverter = LlmSchemaConverter$1 = {}));
440
- const discriminatorMapping = (props) => {
441
- const entries = props.refs.flatMap((ref) => {
442
- var _a;
443
- const key = (_a = ref.$ref.split("#/$defs/")[1]) !== null && _a !== void 0 ? _a : ref.$ref.split("/").at(-1);
444
- const schema = props.$defs[key];
445
- if (!schema || !LlmTypeChecker_1.LlmTypeChecker.isObject(schema))
446
- return [];
447
- const literals = llmDiscriminatorLiterals(schema.properties[props.propertyName], props.$defs);
448
- return literals.map((literal) => [literal, ref.$ref]);
449
- });
450
- return entries.length !== 0 ? Object.fromEntries(entries) : undefined;
451
- };
452
- const llmDiscriminatorLiterals = (schema, $defs) => {
453
- var _a, _b;
454
- if (schema === undefined)
455
- return [];
456
- if (LlmTypeChecker_1.LlmTypeChecker.isReference(schema)) {
457
- const key = (_a = schema.$ref.split("#/$defs/")[1]) !== null && _a !== void 0 ? _a : schema.$ref.split("/").at(-1);
458
- return llmDiscriminatorLiterals($defs[key], $defs);
459
- }
460
- if (LlmTypeChecker_1.LlmTypeChecker.isString(schema))
461
- return (_b = schema.enum) !== null && _b !== void 0 ? _b : [];
462
- if (LlmTypeChecker_1.LlmTypeChecker.isAnyOf(schema))
463
- return schema.anyOf.flatMap((child) => llmDiscriminatorLiterals(child, $defs));
464
- return [];
465
- };
466
- const normalizeLlmUnion = (union) => {
467
- if (union.length <= 1)
468
- return union;
469
- if (union.every(isEnumOnlyString)) {
470
- return [
471
- {
472
- type: "string",
473
- enum: uniqueEnumValues(union.flatMap((schema) => { var _a; return (_a = schema.enum) !== null && _a !== void 0 ? _a : []; })),
474
- },
475
- ];
476
- }
477
- if (union.every(isEnumOnlyBoolean)) {
478
- return [
479
- {
480
- type: "boolean",
481
- enum: uniqueEnumValues(union.flatMap((schema) => { var _a; return (_a = schema.enum) !== null && _a !== void 0 ? _a : []; })),
482
- },
483
- ];
484
- }
485
- if (union.every(isEnumOnlyInteger)) {
486
- return [
487
- {
488
- type: "integer",
489
- enum: uniqueEnumValues(union.flatMap((schema) => { var _a; return (_a = schema.enum) !== null && _a !== void 0 ? _a : []; })),
490
- },
491
- ];
492
- }
493
- if (union.every(isEnumOnlyNumber)) {
494
- return [
495
- {
496
- type: "number",
497
- enum: uniqueEnumValues(union.flatMap((schema) => { var _a; return (_a = schema.enum) !== null && _a !== void 0 ? _a : []; })),
498
- },
499
- ];
500
- }
501
- return union;
502
- };
503
- const isEnumOnlyString = (schema) => LlmTypeChecker_1.LlmTypeChecker.isString(schema) &&
504
- Array.isArray(schema.enum) &&
505
- schema.enum.length !== 0 &&
506
- primitiveSchemaHasOnlyEnum(schema);
507
- const isEnumOnlyBoolean = (schema) => LlmTypeChecker_1.LlmTypeChecker.isBoolean(schema) &&
508
- Array.isArray(schema.enum) &&
509
- schema.enum.length !== 0 &&
510
- primitiveSchemaHasOnlyEnum(schema);
511
- const isEnumOnlyInteger = (schema) => LlmTypeChecker_1.LlmTypeChecker.isInteger(schema) &&
512
- Array.isArray(schema.enum) &&
513
- schema.enum.length !== 0 &&
514
- primitiveSchemaHasOnlyEnum(schema);
515
- const isEnumOnlyNumber = (schema) => LlmTypeChecker_1.LlmTypeChecker.isNumber(schema) &&
516
- Array.isArray(schema.enum) &&
517
- schema.enum.length !== 0 &&
518
- primitiveSchemaHasOnlyEnum(schema);
519
- const primitiveSchemaHasOnlyEnum = (schema) => Object.entries(schema).every(([key, value]) => {
520
- if (value === undefined)
521
- return true;
522
- return key === "type" || key === "enum";
523
- });
524
- const uniqueEnumValues = (values) => Array.from(new Set(values));
525
428
  const validateStrict = (schema, accessor) => {
526
429
  var _a;
527
430
  var _b;