@hyprune/schema 0.6.0 → 0.8.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hyprune/schema",
3
- "version": "0.6.0",
3
+ "version": "0.8.0",
4
4
  "description": "Versioned JSON Schemas for Hyprune world packages and the IPC protocol, with a validator and CLI for world authors",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -0,0 +1,93 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://hyprune.com/schema/v0.10/library.schema.json",
4
+ "title": "Hyprune object library manifest 0.10 (library.json, RFC-0011) (DRAFT until world format 0.10)",
5
+ "type": "object",
6
+ "properties": {
7
+ "formatVersion": {
8
+ "const": "0.10"
9
+ },
10
+ "id": {
11
+ "$ref": "../v0.8/common.schema.json#/$defs/id"
12
+ },
13
+ "version": {
14
+ "$ref": "../v0.8/common.schema.json#/$defs/version"
15
+ },
16
+ "name": {
17
+ "type": "string",
18
+ "minLength": 1,
19
+ "maxLength": 64,
20
+ "pattern": "^[^\\u0000-\\u001f\\u007f]+$"
21
+ },
22
+ "description": {
23
+ "type": "string",
24
+ "maxLength": 512
25
+ },
26
+ "license": {
27
+ "type": "string",
28
+ "minLength": 1,
29
+ "maxLength": 256
30
+ },
31
+ "attribution": {
32
+ "type": "array",
33
+ "items": {
34
+ "type": "object",
35
+ "properties": {
36
+ "path": {
37
+ "anyOf": [
38
+ {
39
+ "$ref": "../v0.8/common.schema.json#/$defs/path"
40
+ },
41
+ {
42
+ "const": "."
43
+ }
44
+ ]
45
+ },
46
+ "author": {
47
+ "type": "string",
48
+ "minLength": 1,
49
+ "maxLength": 256
50
+ },
51
+ "license": {
52
+ "type": "string",
53
+ "minLength": 1,
54
+ "maxLength": 256
55
+ },
56
+ "source": {
57
+ "type": "string",
58
+ "minLength": 1,
59
+ "maxLength": 2048,
60
+ "pattern": "^https://"
61
+ }
62
+ },
63
+ "required": [
64
+ "path",
65
+ "author",
66
+ "license"
67
+ ],
68
+ "additionalProperties": false
69
+ },
70
+ "minItems": 1,
71
+ "maxItems": 256
72
+ },
73
+ "objects": {
74
+ "type": "array",
75
+ "items": {
76
+ "$ref": "../v0.8/common.schema.json#/$defs/slug"
77
+ },
78
+ "minItems": 1,
79
+ "maxItems": 256,
80
+ "uniqueItems": true
81
+ }
82
+ },
83
+ "required": [
84
+ "formatVersion",
85
+ "id",
86
+ "version",
87
+ "name",
88
+ "license",
89
+ "attribution",
90
+ "objects"
91
+ ],
92
+ "additionalProperties": false
93
+ }