5etools-utils 0.10.3 → 0.10.5

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": "5etools-utils",
3
- "version": "0.10.3",
3
+ "version": "0.10.5",
4
4
  "description": "Shared utilities for the 5etools ecosystem.",
5
5
  "type": "module",
6
6
  "main": "lib/Api.js",
@@ -3,7 +3,7 @@
3
3
  "$id": "entry.json",
4
4
  "title": "Entry",
5
5
  "description": "A recursively renderable object.",
6
- "version": "1.8.17",
6
+ "version": "1.8.18",
7
7
  "$defs": {
8
8
  "_arrayOfSpell": {
9
9
  "type": "array",
@@ -37,37 +37,46 @@
37
37
  "inset"
38
38
  ]
39
39
  },
40
+ "mediaHrefInternal": {
41
+ "type": "object",
42
+ "properties": {
43
+ "type": {
44
+ "const": "internal"
45
+ },
46
+ "path": {
47
+ "type": "string"
48
+ }
49
+ },
50
+ "required": [
51
+ "path"
52
+ ],
53
+ "additionalProperties": false
54
+ },
55
+ "mediaHrefExternal": {
56
+ "type": "object",
57
+ "properties": {
58
+ "type": {
59
+ "const": "external"
60
+ },
61
+ "url": {
62
+ "type": "string",
63
+ "description": "\"uri-reference\" is unsuitable for brew, as it requires URL-encoding \"'\" (see: https://www.ietf.org/rfc/rfc3986.txt)",
64
+ "minLength": 3,
65
+ "pattern": "^https?://"
66
+ }
67
+ },
68
+ "required": [
69
+ "url"
70
+ ],
71
+ "additionalProperties": false
72
+ },
40
73
  "mediaHref": {
41
74
  "oneOf": [
42
75
  {
43
- "type": "object",
44
- "properties": {
45
- "type": {
46
- "const": "internal"
47
- },
48
- "path": {
49
- "type": "string"
50
- }
51
- },
52
- "required": [
53
- "path"
54
- ],
55
- "additionalProperties": false
76
+ "$ref": "#/$defs/mediaHrefInternal"
56
77
  },
57
78
  {
58
- "type": "object",
59
- "properties": {
60
- "type": {
61
- "const": "external"
62
- },
63
- "url": {
64
- "$ref": "util.json#/$defs/url"
65
- }
66
- },
67
- "required": [
68
- "url"
69
- ],
70
- "additionalProperties": false
79
+ "$ref": "#/$defs/mediaHrefExternal"
71
80
  }
72
81
  ]
73
82
  },
@@ -1308,19 +1317,7 @@
1308
1317
  "additionalProperties": false
1309
1318
  },
1310
1319
  {
1311
- "type": "object",
1312
- "properties": {
1313
- "type": {
1314
- "const": "external"
1315
- },
1316
- "url": {
1317
- "$ref": "util.json#/$defs/url"
1318
- }
1319
- },
1320
- "required": [
1321
- "url"
1322
- ],
1323
- "additionalProperties": false
1320
+ "$ref": "#/$defs/mediaHrefExternal"
1324
1321
  }
1325
1322
  ]
1326
1323
  }
@@ -1130,20 +1130,26 @@
1130
1130
  "_mod": {
1131
1131
  "$ref": "util.json#/$defs/_modObject"
1132
1132
  },
1133
- "_trait": {
1134
- "type": "object",
1135
- "properties": {
1136
- "name": {
1137
- "type": "string"
1133
+ "_templates": {
1134
+ "type": "array",
1135
+ "items": {
1136
+ "type": "object",
1137
+ "properties": {
1138
+ "name": {
1139
+ "type": "string"
1140
+ },
1141
+ "source": {
1142
+ "$ref": "util.json#/$defs/source"
1143
+ }
1138
1144
  },
1139
- "source": {
1140
- "$ref": "util.json#/$defs/source"
1141
- }
1145
+ "required": [
1146
+ "name",
1147
+ "source"
1148
+ ],
1149
+ "additionalProperties": false
1142
1150
  },
1143
- "required": [
1144
- "name",
1145
- "source"
1146
- ]
1151
+ "minItems": 1,
1152
+ "uniqueItems": true
1147
1153
  },
1148
1154
  "_preserve": {
1149
1155
  "type": "object",
@@ -3,7 +3,7 @@
3
3
  "$id": "items-shared.json",
4
4
  "title": "Shared Item Schema",
5
5
  "description": "Shared item definitions to be used in item schemas.",
6
- "version": "1.0.6",
6
+ "version": "1.0.7",
7
7
  "$defs": {
8
8
  "_itemModifySpeedEqual": {
9
9
  "type": "string",
@@ -156,9 +156,12 @@
156
156
  "itemType": {
157
157
  "type": "string",
158
158
  "$comment": "Dumped from `Object(Parser.ITEM_TYPE_JSON_TO_ABV)`",
159
- "description": "$: Treasure\n A: Ammunition\n AF: Ammunition (futuristic)\n AIR: Vehicle (air)\n AT: Artisan Tool\n EM: Eldritch Machine\n EXP: Explosive\n FD: Food and Drink\n G: Adventuring Gear\n GS: Gaming Set\n GV: Generic Variant\n HA: Heavy Armor\n IDG: Illegal Drug\n INS: Instrument\n LA: Light Armor\n M: Melee Weapon\n MA: Medium Armor\n MNT: Mount\n MR: Master Rune \n OTH: Other\n P: Potion\n R: Ranged Weapon\n RD: Rod\n RG: Ring\n S: Shield\n SC: Scroll\n SCF: Spellcasting Focus\n SHP: Vehicle (water)\n SPC: Vehicle (space)\n T: Tool\n TAH: Tack and Harness\n TG: Trade Good\n VEH: Vehicle (land)\n WD: Wand",
159
+ "description": "$: Treasure\n $A: Treasure (Art Object)\n $A: Treasure (Coinage)\n $G: Treasure (Gemstone)\n A: Ammunition\n AF: Ammunition (futuristic)\n AIR: Vehicle (air)\n AT: Artisan Tool\n EM: Eldritch Machine\n EXP: Explosive\n FD: Food and Drink\n G: Adventuring Gear\n GS: Gaming Set\n GV: Generic Variant\n HA: Heavy Armor\n IDG: Illegal Drug\n INS: Instrument\n LA: Light Armor\n M: Melee Weapon\n MA: Medium Armor\n MNT: Mount\n MR: Master Rune \n OTH: Other\n P: Potion\n R: Ranged Weapon\n RD: Rod\n RG: Ring\n S: Shield\n SC: Scroll\n SCF: Spellcasting Focus\n SHP: Vehicle (water)\n SPC: Vehicle (space)\n T: Tool\n TAH: Tack and Harness\n TG: Trade Good\n VEH: Vehicle (land)\n WD: Wand",
160
160
  "examples": [
161
161
  "$",
162
+ "$A",
163
+ "$C",
164
+ "$G",
162
165
  "A",
163
166
  "AF",
164
167
  "AIR",
@@ -3,7 +3,7 @@
3
3
  "$id": "util.json",
4
4
  "title": "Util",
5
5
  "description": "Utility definitions to be used in other schemas.",
6
- "version": "1.15.4",
6
+ "version": "1.16.0",
7
7
  "$defs": {
8
8
  "metaDependenciesArray": {
9
9
  "type": "array",
@@ -3514,20 +3514,26 @@
3514
3514
  "_mod": {
3515
3515
  "$ref": "#/$defs/_modObject"
3516
3516
  },
3517
- "_trait": {
3518
- "type": "object",
3519
- "properties": {
3520
- "name": {
3521
- "type": "string"
3517
+ "_templates": {
3518
+ "type": "array",
3519
+ "items": {
3520
+ "type": "object",
3521
+ "properties": {
3522
+ "name": {
3523
+ "type": "string"
3524
+ },
3525
+ "source": {
3526
+ "$ref": "util.json#/$defs/source"
3527
+ }
3522
3528
  },
3523
- "source": {
3524
- "$ref": "util.json#/$defs/source"
3525
- }
3529
+ "required": [
3530
+ "name",
3531
+ "source"
3532
+ ],
3533
+ "additionalProperties": false
3526
3534
  },
3527
- "required": [
3528
- "name",
3529
- "source"
3530
- ]
3535
+ "minItems": 1,
3536
+ "uniqueItems": true
3531
3537
  },
3532
3538
  "_preserve": {
3533
3539
  "type": "object",
@@ -3546,20 +3552,26 @@
3546
3552
  "_mod": {
3547
3553
  "$ref": "#/$defs/_modObject"
3548
3554
  },
3549
- "_trait": {
3550
- "type": "object",
3551
- "properties": {
3552
- "name": {
3553
- "type": "string"
3555
+ "_templates": {
3556
+ "type": "array",
3557
+ "items": {
3558
+ "type": "object",
3559
+ "properties": {
3560
+ "name": {
3561
+ "type": "string"
3562
+ },
3563
+ "source": {
3564
+ "$ref": "util.json#/$defs/source"
3565
+ }
3554
3566
  },
3555
- "source": {
3556
- "$ref": "util.json#/$defs/source"
3557
- }
3567
+ "required": [
3568
+ "name",
3569
+ "source"
3570
+ ],
3571
+ "additionalProperties": false
3558
3572
  },
3559
- "required": [
3560
- "name",
3561
- "source"
3562
- ]
3573
+ "minItems": 1,
3574
+ "uniqueItems": true
3563
3575
  },
3564
3576
  "_preserve": {
3565
3577
  "type": "object",
@@ -3644,7 +3656,7 @@
3644
3656
  {
3645
3657
  "type": "object",
3646
3658
  "properties": {
3647
- "_template": {
3659
+ "_abstract": {
3648
3660
  "type": "object",
3649
3661
  "properties": {
3650
3662
  "name": {
@@ -3683,7 +3695,7 @@
3683
3695
  }
3684
3696
  },
3685
3697
  "required": [
3686
- "_template",
3698
+ "_abstract",
3687
3699
  "_implementations"
3688
3700
  ]
3689
3701
  }
@@ -3,7 +3,7 @@
3
3
  "$id": "entry.json",
4
4
  "title": "Entry",
5
5
  "description": "A recursively renderable object.",
6
- "version": "1.8.17",
6
+ "version": "1.8.18",
7
7
  "$defs": {
8
8
  "_arrayOfSpell": {
9
9
  "type": "array",
@@ -37,37 +37,46 @@
37
37
  "inset"
38
38
  ]
39
39
  },
40
+ "mediaHrefInternal": {
41
+ "type": "object",
42
+ "properties": {
43
+ "type": {
44
+ "const": "internal"
45
+ },
46
+ "path": {
47
+ "type": "string"
48
+ }
49
+ },
50
+ "required": [
51
+ "path"
52
+ ],
53
+ "additionalProperties": false
54
+ },
55
+ "mediaHrefExternal": {
56
+ "type": "object",
57
+ "properties": {
58
+ "type": {
59
+ "const": "external"
60
+ },
61
+ "url": {
62
+ "type": "string",
63
+ "description": "\"uri-reference\" is unsuitable for brew, as it requires URL-encoding \"'\" (see: https://www.ietf.org/rfc/rfc3986.txt)",
64
+ "minLength": 3,
65
+ "pattern": "^https?://"
66
+ }
67
+ },
68
+ "required": [
69
+ "url"
70
+ ],
71
+ "additionalProperties": false
72
+ },
40
73
  "mediaHref": {
41
74
  "oneOf": [
42
75
  {
43
- "type": "object",
44
- "properties": {
45
- "type": {
46
- "const": "internal"
47
- },
48
- "path": {
49
- "type": "string"
50
- }
51
- },
52
- "required": [
53
- "path"
54
- ],
55
- "additionalProperties": false
76
+ "$ref": "#/$defs/mediaHrefInternal"
56
77
  },
57
78
  {
58
- "type": "object",
59
- "properties": {
60
- "type": {
61
- "const": "external"
62
- },
63
- "url": {
64
- "$ref": "util.json#/$defs/url"
65
- }
66
- },
67
- "required": [
68
- "url"
69
- ],
70
- "additionalProperties": false
79
+ "$ref": "#/$defs/mediaHrefExternal"
71
80
  }
72
81
  ]
73
82
  },
@@ -1308,19 +1317,7 @@
1308
1317
  "additionalProperties": false
1309
1318
  },
1310
1319
  {
1311
- "type": "object",
1312
- "properties": {
1313
- "type": {
1314
- "const": "external"
1315
- },
1316
- "url": {
1317
- "$ref": "util.json#/$defs/url"
1318
- }
1319
- },
1320
- "required": [
1321
- "url"
1322
- ],
1323
- "additionalProperties": false
1320
+ "$ref": "#/$defs/mediaHrefExternal"
1324
1321
  }
1325
1322
  ]
1326
1323
  }
@@ -1130,20 +1130,26 @@
1130
1130
  "_mod": {
1131
1131
  "$ref": "util.json#/$defs/_modObject"
1132
1132
  },
1133
- "_trait": {
1134
- "type": "object",
1135
- "properties": {
1136
- "name": {
1137
- "type": "string"
1133
+ "_templates": {
1134
+ "type": "array",
1135
+ "items": {
1136
+ "type": "object",
1137
+ "properties": {
1138
+ "name": {
1139
+ "type": "string"
1140
+ },
1141
+ "source": {
1142
+ "$ref": "util.json#/$defs/source"
1143
+ }
1138
1144
  },
1139
- "source": {
1140
- "$ref": "util.json#/$defs/source"
1141
- }
1145
+ "required": [
1146
+ "name",
1147
+ "source"
1148
+ ],
1149
+ "additionalProperties": false
1142
1150
  },
1143
- "required": [
1144
- "name",
1145
- "source"
1146
- ]
1151
+ "minItems": 1,
1152
+ "uniqueItems": true
1147
1153
  },
1148
1154
  "_preserve": {
1149
1155
  "type": "object",
@@ -3,7 +3,7 @@
3
3
  "$id": "items-shared.json",
4
4
  "title": "Shared Item Schema",
5
5
  "description": "Shared item definitions to be used in item schemas.",
6
- "version": "1.0.6",
6
+ "version": "1.0.7",
7
7
  "$defs": {
8
8
  "_itemModifySpeedEqual": {
9
9
  "type": "string",
@@ -156,9 +156,12 @@
156
156
  "itemType": {
157
157
  "type": "string",
158
158
  "$comment": "Dumped from `Object(Parser.ITEM_TYPE_JSON_TO_ABV)`",
159
- "description": "$: Treasure\n A: Ammunition\n AF: Ammunition (futuristic)\n AIR: Vehicle (air)\n AT: Artisan Tool\n EM: Eldritch Machine\n EXP: Explosive\n FD: Food and Drink\n G: Adventuring Gear\n GS: Gaming Set\n GV: Generic Variant\n HA: Heavy Armor\n IDG: Illegal Drug\n INS: Instrument\n LA: Light Armor\n M: Melee Weapon\n MA: Medium Armor\n MNT: Mount\n MR: Master Rune \n OTH: Other\n P: Potion\n R: Ranged Weapon\n RD: Rod\n RG: Ring\n S: Shield\n SC: Scroll\n SCF: Spellcasting Focus\n SHP: Vehicle (water)\n SPC: Vehicle (space)\n T: Tool\n TAH: Tack and Harness\n TG: Trade Good\n VEH: Vehicle (land)\n WD: Wand",
159
+ "description": "$: Treasure\n $A: Treasure (Art Object)\n $A: Treasure (Coinage)\n $G: Treasure (Gemstone)\n A: Ammunition\n AF: Ammunition (futuristic)\n AIR: Vehicle (air)\n AT: Artisan Tool\n EM: Eldritch Machine\n EXP: Explosive\n FD: Food and Drink\n G: Adventuring Gear\n GS: Gaming Set\n GV: Generic Variant\n HA: Heavy Armor\n IDG: Illegal Drug\n INS: Instrument\n LA: Light Armor\n M: Melee Weapon\n MA: Medium Armor\n MNT: Mount\n MR: Master Rune \n OTH: Other\n P: Potion\n R: Ranged Weapon\n RD: Rod\n RG: Ring\n S: Shield\n SC: Scroll\n SCF: Spellcasting Focus\n SHP: Vehicle (water)\n SPC: Vehicle (space)\n T: Tool\n TAH: Tack and Harness\n TG: Trade Good\n VEH: Vehicle (land)\n WD: Wand",
160
160
  "examples": [
161
161
  "$",
162
+ "$A",
163
+ "$C",
164
+ "$G",
162
165
  "A",
163
166
  "AF",
164
167
  "AIR",
@@ -3,7 +3,7 @@
3
3
  "$id": "util.json",
4
4
  "title": "Util",
5
5
  "description": "Utility definitions to be used in other schemas.",
6
- "version": "1.15.4",
6
+ "version": "1.16.0",
7
7
  "$defs": {
8
8
  "metaDependenciesArray": {
9
9
  "type": "array",
@@ -3514,20 +3514,26 @@
3514
3514
  "_mod": {
3515
3515
  "$ref": "#/$defs/_modObject"
3516
3516
  },
3517
- "_trait": {
3518
- "type": "object",
3519
- "properties": {
3520
- "name": {
3521
- "type": "string"
3517
+ "_templates": {
3518
+ "type": "array",
3519
+ "items": {
3520
+ "type": "object",
3521
+ "properties": {
3522
+ "name": {
3523
+ "type": "string"
3524
+ },
3525
+ "source": {
3526
+ "$ref": "util.json#/$defs/source"
3527
+ }
3522
3528
  },
3523
- "source": {
3524
- "$ref": "util.json#/$defs/source"
3525
- }
3529
+ "required": [
3530
+ "name",
3531
+ "source"
3532
+ ],
3533
+ "additionalProperties": false
3526
3534
  },
3527
- "required": [
3528
- "name",
3529
- "source"
3530
- ]
3535
+ "minItems": 1,
3536
+ "uniqueItems": true
3531
3537
  },
3532
3538
  "_preserve": {
3533
3539
  "type": "object",
@@ -3546,20 +3552,26 @@
3546
3552
  "_mod": {
3547
3553
  "$ref": "#/$defs/_modObject"
3548
3554
  },
3549
- "_trait": {
3550
- "type": "object",
3551
- "properties": {
3552
- "name": {
3553
- "type": "string"
3555
+ "_templates": {
3556
+ "type": "array",
3557
+ "items": {
3558
+ "type": "object",
3559
+ "properties": {
3560
+ "name": {
3561
+ "type": "string"
3562
+ },
3563
+ "source": {
3564
+ "$ref": "util.json#/$defs/source"
3565
+ }
3554
3566
  },
3555
- "source": {
3556
- "$ref": "util.json#/$defs/source"
3557
- }
3567
+ "required": [
3568
+ "name",
3569
+ "source"
3570
+ ],
3571
+ "additionalProperties": false
3558
3572
  },
3559
- "required": [
3560
- "name",
3561
- "source"
3562
- ]
3573
+ "minItems": 1,
3574
+ "uniqueItems": true
3563
3575
  },
3564
3576
  "_preserve": {
3565
3577
  "type": "object",
@@ -3644,7 +3656,7 @@
3644
3656
  {
3645
3657
  "type": "object",
3646
3658
  "properties": {
3647
- "_template": {
3659
+ "_abstract": {
3648
3660
  "type": "object",
3649
3661
  "properties": {
3650
3662
  "name": {
@@ -3683,7 +3695,7 @@
3683
3695
  }
3684
3696
  },
3685
3697
  "required": [
3686
- "_template",
3698
+ "_abstract",
3687
3699
  "_implementations"
3688
3700
  ]
3689
3701
  }
@@ -3,7 +3,7 @@
3
3
  "$id": "entry.json",
4
4
  "title": "Entry",
5
5
  "description": "A recursively renderable object.",
6
- "version": "1.8.17",
6
+ "version": "1.8.18",
7
7
  "$defs": {
8
8
  "_arrayOfSpell": {
9
9
  "type": "array",
@@ -37,37 +37,46 @@
37
37
  "inset"
38
38
  ]
39
39
  },
40
+ "mediaHrefInternal": {
41
+ "type": "object",
42
+ "properties": {
43
+ "type": {
44
+ "const": "internal"
45
+ },
46
+ "path": {
47
+ "type": "string"
48
+ }
49
+ },
50
+ "required": [
51
+ "path"
52
+ ],
53
+ "additionalProperties": false
54
+ },
55
+ "mediaHrefExternal": {
56
+ "type": "object",
57
+ "properties": {
58
+ "type": {
59
+ "const": "external"
60
+ },
61
+ "url": {
62
+ "type": "string",
63
+ "description": "\"uri-reference\" is unsuitable for brew, as it requires URL-encoding \"'\" (see: https://www.ietf.org/rfc/rfc3986.txt)",
64
+ "format": "uri-reference",
65
+ "pattern": "^https?://"
66
+ }
67
+ },
68
+ "required": [
69
+ "url"
70
+ ],
71
+ "additionalProperties": false
72
+ },
40
73
  "mediaHref": {
41
74
  "oneOf": [
42
75
  {
43
- "type": "object",
44
- "properties": {
45
- "type": {
46
- "const": "internal"
47
- },
48
- "path": {
49
- "type": "string"
50
- }
51
- },
52
- "required": [
53
- "path"
54
- ],
55
- "additionalProperties": false
76
+ "$ref": "#/$defs/mediaHrefInternal"
56
77
  },
57
78
  {
58
- "type": "object",
59
- "properties": {
60
- "type": {
61
- "const": "external"
62
- },
63
- "url": {
64
- "$ref": "util.json#/$defs/url"
65
- }
66
- },
67
- "required": [
68
- "url"
69
- ],
70
- "additionalProperties": false
79
+ "$ref": "#/$defs/mediaHrefExternal"
71
80
  }
72
81
  ]
73
82
  },
@@ -1280,19 +1289,7 @@
1280
1289
  "additionalProperties": false
1281
1290
  },
1282
1291
  {
1283
- "type": "object",
1284
- "properties": {
1285
- "type": {
1286
- "const": "external"
1287
- },
1288
- "url": {
1289
- "$ref": "util.json#/$defs/url"
1290
- }
1291
- },
1292
- "required": [
1293
- "url"
1294
- ],
1295
- "additionalProperties": false
1292
+ "$ref": "#/$defs/mediaHrefExternal"
1296
1293
  }
1297
1294
  ]
1298
1295
  }