@astrale-os/kernel-dsl 1.0.0-beta.19 → 1.0.0-beta.20

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.
@@ -35,7 +35,13 @@ type JsonObjectValueOf<Schema> = 'patternProperties' extends keyof Schema ? Port
35
35
  readonly additionalProperties: false;
36
36
  } ? JsonClosedObjectOf<Properties, Schema extends {
37
37
  readonly required: infer Names;
38
- } ? Names : readonly []> : PortableObject;
38
+ } ? Names : readonly []> : Schema extends {
39
+ readonly additionalProperties: infer Additional extends object;
40
+ } ? JsonListsNoName<Schema> extends true ? Readonly<Record<string, JsonSchemaValueOf<Additional>>> : PortableObject : PortableObject;
41
+ type JsonListsNoName<Schema> = 'properties' extends keyof Schema ? Schema extends {
42
+ readonly properties: infer Properties;
43
+ } ? [Properties] extends [never] ? false : JsonNoAlternativeNames<Properties> : false : true;
44
+ type JsonNoAlternativeNames<Properties> = Properties extends unknown ? [keyof Properties] extends [never] ? true : false : never;
39
45
  type JsonListsName<Names, Name> = [Names] extends [never] ? false : Names extends readonly unknown[] ? number extends Names['length'] ? false : true extends {
40
46
  [At in keyof Names]: JsonNamesExactly<Names[At], Name>;
41
47
  }[number] ? true : false : false;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@astrale-os/kernel-dsl",
3
- "version": "1.0.0-beta.19",
3
+ "version": "1.0.0-beta.20",
4
4
  "description": "Astrale Kernel DSL - Schema authoring, inference, and IR serialization",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {