@datasworn-community/core 0.2.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.
Files changed (201) hide show
  1. package/README.md +11 -0
  2. package/dist/cjs/Datasworn.d.ts +5012 -0
  3. package/dist/cjs/Datasworn.d.ts.map +1 -0
  4. package/dist/cjs/Datasworn.js +3 -0
  5. package/dist/cjs/Datasworn.js.map +1 -0
  6. package/dist/cjs/DataswornSource.d.ts +5025 -0
  7. package/dist/cjs/DataswornSource.d.ts.map +1 -0
  8. package/dist/cjs/DataswornSource.js +3 -0
  9. package/dist/cjs/DataswornSource.js.map +1 -0
  10. package/dist/cjs/DataswornTree.d.ts +9 -0
  11. package/dist/cjs/DataswornTree.d.ts.map +1 -0
  12. package/dist/cjs/DataswornTree.js +25 -0
  13. package/dist/cjs/DataswornTree.js.map +1 -0
  14. package/dist/cjs/DataswornVersion.d.ts +8 -0
  15. package/dist/cjs/DataswornVersion.d.ts.map +1 -0
  16. package/dist/cjs/DataswornVersion.js +10 -0
  17. package/dist/cjs/DataswornVersion.js.map +1 -0
  18. package/dist/cjs/Errors.d.ts +5 -0
  19. package/dist/cjs/Errors.d.ts.map +1 -0
  20. package/dist/cjs/Errors.js +11 -0
  21. package/dist/cjs/Errors.js.map +1 -0
  22. package/dist/cjs/IdElements/CONST.d.ts +37 -0
  23. package/dist/cjs/IdElements/CONST.d.ts.map +1 -0
  24. package/dist/cjs/IdElements/CONST.js +26 -0
  25. package/dist/cjs/IdElements/CONST.js.map +1 -0
  26. package/dist/cjs/IdElements/PathKeys.d.ts +13 -0
  27. package/dist/cjs/IdElements/PathKeys.d.ts.map +1 -0
  28. package/dist/cjs/IdElements/PathKeys.js +3 -0
  29. package/dist/cjs/IdElements/PathKeys.js.map +1 -0
  30. package/dist/cjs/IdElements/Pattern.d.ts +13 -0
  31. package/dist/cjs/IdElements/Pattern.d.ts.map +1 -0
  32. package/dist/cjs/IdElements/Pattern.js +20 -0
  33. package/dist/cjs/IdElements/Pattern.js.map +1 -0
  34. package/dist/cjs/IdElements/TypeGuard.d.ts +25 -0
  35. package/dist/cjs/IdElements/TypeGuard.d.ts.map +1 -0
  36. package/dist/cjs/IdElements/TypeGuard.js +72 -0
  37. package/dist/cjs/IdElements/TypeGuard.js.map +1 -0
  38. package/dist/cjs/IdElements/TypeId.d.ts +114 -0
  39. package/dist/cjs/IdElements/TypeId.d.ts.map +1 -0
  40. package/dist/cjs/IdElements/TypeId.js +259 -0
  41. package/dist/cjs/IdElements/TypeId.js.map +1 -0
  42. package/dist/cjs/IdElements/index.d.ts +6 -0
  43. package/dist/cjs/IdElements/index.d.ts.map +1 -0
  44. package/dist/cjs/IdElements/index.js +48 -0
  45. package/dist/cjs/IdElements/index.js.map +1 -0
  46. package/dist/cjs/IdParser.d.ts +380 -0
  47. package/dist/cjs/IdParser.d.ts.map +1 -0
  48. package/dist/cjs/IdParser.js +1012 -0
  49. package/dist/cjs/IdParser.js.map +1 -0
  50. package/dist/cjs/Migrations/index.d.ts +2 -0
  51. package/dist/cjs/Migrations/index.d.ts.map +1 -0
  52. package/dist/cjs/Migrations/index.js +18 -0
  53. package/dist/cjs/Migrations/index.js.map +1 -0
  54. package/dist/cjs/Migrations/updateIds.d.ts +34 -0
  55. package/dist/cjs/Migrations/updateIds.d.ts.map +1 -0
  56. package/dist/cjs/Migrations/updateIds.js +141 -0
  57. package/dist/cjs/Migrations/updateIds.js.map +1 -0
  58. package/dist/cjs/StringId.d.ts +47 -0
  59. package/dist/cjs/StringId.d.ts.map +1 -0
  60. package/dist/cjs/StringId.js +3 -0
  61. package/dist/cjs/StringId.js.map +1 -0
  62. package/dist/cjs/Tree.d.ts +5 -0
  63. package/dist/cjs/Tree.d.ts.map +1 -0
  64. package/dist/cjs/Tree.js +3 -0
  65. package/dist/cjs/Tree.js.map +1 -0
  66. package/dist/cjs/TypeNode.d.ts +93 -0
  67. package/dist/cjs/TypeNode.d.ts.map +1 -0
  68. package/dist/cjs/TypeNode.js +3 -0
  69. package/dist/cjs/TypeNode.js.map +1 -0
  70. package/dist/cjs/Utils/Array.d.ts +16 -0
  71. package/dist/cjs/Utils/Array.d.ts.map +1 -0
  72. package/dist/cjs/Utils/Array.js +14 -0
  73. package/dist/cjs/Utils/Array.js.map +1 -0
  74. package/dist/cjs/Utils/Id.d.ts +75 -0
  75. package/dist/cjs/Utils/Id.d.ts.map +1 -0
  76. package/dist/cjs/Utils/Id.js +3 -0
  77. package/dist/cjs/Utils/Id.js.map +1 -0
  78. package/dist/cjs/Utils/Number.d.ts +5 -0
  79. package/dist/cjs/Utils/Number.d.ts.map +1 -0
  80. package/dist/cjs/Utils/Number.js +4 -0
  81. package/dist/cjs/Utils/Number.js.map +1 -0
  82. package/dist/cjs/Utils/Sort.d.ts +17 -0
  83. package/dist/cjs/Utils/Sort.d.ts.map +1 -0
  84. package/dist/cjs/Utils/Sort.js +277 -0
  85. package/dist/cjs/Utils/Sort.js.map +1 -0
  86. package/dist/cjs/Utils/String.d.ts +4 -0
  87. package/dist/cjs/Utils/String.d.ts.map +1 -0
  88. package/dist/cjs/Utils/String.js +3 -0
  89. package/dist/cjs/Utils/String.js.map +1 -0
  90. package/dist/cjs/index.d.ts +10 -0
  91. package/dist/cjs/index.d.ts.map +1 -0
  92. package/dist/cjs/index.js +47 -0
  93. package/dist/cjs/index.js.map +1 -0
  94. package/dist/cjs/mergeExpansion.d.ts +3 -0
  95. package/dist/cjs/mergeExpansion.d.ts.map +1 -0
  96. package/dist/cjs/mergeExpansion.js +113 -0
  97. package/dist/cjs/mergeExpansion.js.map +1 -0
  98. package/dist/cjs/package.json +1 -0
  99. package/dist/cjs/tsconfig.tsbuildinfo +1 -0
  100. package/dist/esm/Datasworn.d.ts +5012 -0
  101. package/dist/esm/Datasworn.d.ts.map +1 -0
  102. package/dist/esm/Datasworn.js +2 -0
  103. package/dist/esm/Datasworn.js.map +1 -0
  104. package/dist/esm/DataswornSource.d.ts +5025 -0
  105. package/dist/esm/DataswornSource.d.ts.map +1 -0
  106. package/dist/esm/DataswornSource.js +2 -0
  107. package/dist/esm/DataswornSource.js.map +1 -0
  108. package/dist/esm/DataswornTree.d.ts +9 -0
  109. package/dist/esm/DataswornTree.d.ts.map +1 -0
  110. package/dist/esm/DataswornTree.js +21 -0
  111. package/dist/esm/DataswornTree.js.map +1 -0
  112. package/dist/esm/DataswornVersion.d.ts +8 -0
  113. package/dist/esm/DataswornVersion.d.ts.map +1 -0
  114. package/dist/esm/DataswornVersion.js +7 -0
  115. package/dist/esm/DataswornVersion.js.map +1 -0
  116. package/dist/esm/Errors.d.ts +5 -0
  117. package/dist/esm/Errors.d.ts.map +1 -0
  118. package/dist/esm/Errors.js +7 -0
  119. package/dist/esm/Errors.js.map +1 -0
  120. package/dist/esm/IdElements/CONST.d.ts +37 -0
  121. package/dist/esm/IdElements/CONST.d.ts.map +1 -0
  122. package/dist/esm/IdElements/CONST.js +23 -0
  123. package/dist/esm/IdElements/CONST.js.map +1 -0
  124. package/dist/esm/IdElements/PathKeys.d.ts +13 -0
  125. package/dist/esm/IdElements/PathKeys.d.ts.map +1 -0
  126. package/dist/esm/IdElements/PathKeys.js +2 -0
  127. package/dist/esm/IdElements/PathKeys.js.map +1 -0
  128. package/dist/esm/IdElements/Pattern.d.ts +13 -0
  129. package/dist/esm/IdElements/Pattern.d.ts.map +1 -0
  130. package/dist/esm/IdElements/Pattern.js +18 -0
  131. package/dist/esm/IdElements/Pattern.js.map +1 -0
  132. package/dist/esm/IdElements/TypeGuard.d.ts +25 -0
  133. package/dist/esm/IdElements/TypeGuard.d.ts.map +1 -0
  134. package/dist/esm/IdElements/TypeGuard.js +67 -0
  135. package/dist/esm/IdElements/TypeGuard.js.map +1 -0
  136. package/dist/esm/IdElements/TypeId.d.ts +114 -0
  137. package/dist/esm/IdElements/TypeId.d.ts.map +1 -0
  138. package/dist/esm/IdElements/TypeId.js +257 -0
  139. package/dist/esm/IdElements/TypeId.js.map +1 -0
  140. package/dist/esm/IdElements/index.d.ts +6 -0
  141. package/dist/esm/IdElements/index.d.ts.map +1 -0
  142. package/dist/esm/IdElements/index.js +6 -0
  143. package/dist/esm/IdElements/index.js.map +1 -0
  144. package/dist/esm/IdParser.d.ts +380 -0
  145. package/dist/esm/IdParser.d.ts.map +1 -0
  146. package/dist/esm/IdParser.js +1004 -0
  147. package/dist/esm/IdParser.js.map +1 -0
  148. package/dist/esm/Migrations/index.d.ts +2 -0
  149. package/dist/esm/Migrations/index.d.ts.map +1 -0
  150. package/dist/esm/Migrations/index.js +2 -0
  151. package/dist/esm/Migrations/index.js.map +1 -0
  152. package/dist/esm/Migrations/updateIds.d.ts +34 -0
  153. package/dist/esm/Migrations/updateIds.d.ts.map +1 -0
  154. package/dist/esm/Migrations/updateIds.js +135 -0
  155. package/dist/esm/Migrations/updateIds.js.map +1 -0
  156. package/dist/esm/StringId.d.ts +47 -0
  157. package/dist/esm/StringId.d.ts.map +1 -0
  158. package/dist/esm/StringId.js +2 -0
  159. package/dist/esm/StringId.js.map +1 -0
  160. package/dist/esm/Tree.d.ts +5 -0
  161. package/dist/esm/Tree.d.ts.map +1 -0
  162. package/dist/esm/Tree.js +2 -0
  163. package/dist/esm/Tree.js.map +1 -0
  164. package/dist/esm/TypeNode.d.ts +93 -0
  165. package/dist/esm/TypeNode.d.ts.map +1 -0
  166. package/dist/esm/TypeNode.js +2 -0
  167. package/dist/esm/TypeNode.js.map +1 -0
  168. package/dist/esm/Utils/Array.d.ts +16 -0
  169. package/dist/esm/Utils/Array.d.ts.map +1 -0
  170. package/dist/esm/Utils/Array.js +11 -0
  171. package/dist/esm/Utils/Array.js.map +1 -0
  172. package/dist/esm/Utils/Id.d.ts +75 -0
  173. package/dist/esm/Utils/Id.d.ts.map +1 -0
  174. package/dist/esm/Utils/Id.js +2 -0
  175. package/dist/esm/Utils/Id.js.map +1 -0
  176. package/dist/esm/Utils/Number.d.ts +5 -0
  177. package/dist/esm/Utils/Number.d.ts.map +1 -0
  178. package/dist/esm/Utils/Number.js +3 -0
  179. package/dist/esm/Utils/Number.js.map +1 -0
  180. package/dist/esm/Utils/Sort.d.ts +17 -0
  181. package/dist/esm/Utils/Sort.d.ts.map +1 -0
  182. package/dist/esm/Utils/Sort.js +267 -0
  183. package/dist/esm/Utils/Sort.js.map +1 -0
  184. package/dist/esm/Utils/String.d.ts +4 -0
  185. package/dist/esm/Utils/String.d.ts.map +1 -0
  186. package/dist/esm/Utils/String.js +2 -0
  187. package/dist/esm/Utils/String.js.map +1 -0
  188. package/dist/esm/index.d.ts +10 -0
  189. package/dist/esm/index.d.ts.map +1 -0
  190. package/dist/esm/index.js +7 -0
  191. package/dist/esm/index.js.map +1 -0
  192. package/dist/esm/mergeExpansion.d.ts +3 -0
  193. package/dist/esm/mergeExpansion.d.ts.map +1 -0
  194. package/dist/esm/mergeExpansion.js +107 -0
  195. package/dist/esm/mergeExpansion.js.map +1 -0
  196. package/dist/esm/package.json +1 -0
  197. package/dist/esm/tsconfig.tsbuildinfo +1 -0
  198. package/json/datasworn-source.schema.json +11420 -0
  199. package/json/datasworn.schema.json +11354 -0
  200. package/migration/0.1.0/id_regex_map.json +21 -0
  201. package/package.json +52 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Id.d.ts","sourceRoot":"","sources":["../../../src/Utils/Id.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=Id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Id.js","sourceRoot":"","sources":["../../../src/Utils/Id.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ type Enumerate<N extends number, Acc extends number[] = []> = Acc['length'] extends N ? Acc[number] : Enumerate<N, [...Acc, Acc['length']]>;
2
+ /** A Union of integer values from F to T, exclusive */
3
+ export type Range<F extends number, T extends number> = Exclude<Enumerate<T>, Enumerate<F>>;
4
+ export {};
5
+ //# sourceMappingURL=Number.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Number.d.ts","sourceRoot":"","sources":["../../../src/Utils/Number.ts"],"names":[],"mappings":"AAEA,KAAK,SAAS,CACb,CAAC,SAAS,MAAM,EAChB,GAAG,SAAS,MAAM,EAAE,GAAG,EAAE,IACtB,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,GACxB,GAAG,CAAC,MAAM,CAAC,GACX,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;AAExC,uDAAuD;AACvD,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,IAAI,OAAO,CAC9D,SAAS,CAAC,CAAC,CAAC,EACZ,SAAS,CAAC,CAAC,CAAC,CACZ,CAAA"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // these two types originally from https://stackoverflow.com/questions/39494689/is-it-possible-to-restrict-number-to-a-certain-range/70307091#comment127925458_70307091
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=Number.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Number.js","sourceRoot":"","sources":["../../../src/Utils/Number.ts"],"names":[],"mappings":";AAAA,uKAAuK"}
@@ -0,0 +1,17 @@
1
+ export declare const unsortableKeys: readonly ["columns", "controls", "contents", "options", "collections", "choices"];
2
+ export declare const idKeys: readonly ["_id", "_key", "_index"];
3
+ export declare const relationshipKeys: readonly ["replaces", "enhances", "oracle", "asset", "region", "theme", "domain", "name_oracle", "npc", "extra_card"];
4
+ export declare const discriminatorKeys: readonly ["type", "category", "field_type", "roll_type", "choice_type", "oracle_type", "value_type", "using"];
5
+ export declare const usageKeys: readonly ["auto", "duplicates", "number_of_rolls", "by", "method", "roll_options", "ally", "player", "is_impact", "disables_asset"];
6
+ export declare const shortDescriptionKeys: readonly ["result", "summary", "detail", "requirement", "features", "dangers", "drives", "tactics"];
7
+ export declare const longDescriptionKeys: readonly ["text", "text2", "text3", "description", "your_character"];
8
+ export declare const longArrayKeys: readonly ["denizens", "enhance_moves", "rows", "table"];
9
+ export declare const numericKeys: readonly ["min", "max", "value", "rank"];
10
+ export declare const rulesKeys: readonly ["condition_meters", "stats", "impacts", "special_tracks", "rollable", "prevents_recovery", "permanent", "optional", "control", "option", "condition_meter", "stat", "tracks", "conditions", "recover", "suffer", "choices", "xp_cost"];
11
+ export declare const sourceMetadataKeys: ["email", "authors", "date", "license", "page", "title", "url"];
12
+ export declare const dataswornKeyOrder: ["_id", "_key", "_index", "datasworn_version", "type", "ruleset", "title", "name", "canonical_name", "label", "type", "category", "field_type", "roll_type", "choice_type", "oracle_type", "value_type", "using", "email", "authors", "date", "license", "page", "title", "url", "rules", "condition_meters", "stats", "impacts", "special_tracks", "rollable", "prevents_recovery", "permanent", "optional", "control", "option", "condition_meter", "stat", "tracks", "conditions", "recover", "suffer", "choices", "xp_cost", "replaces", "enhances", "oracle", "asset", "region", "theme", "domain", "name_oracle", "npc", "extra_card", "min", "max", "value", "rank", "nature", "color", "icon", "images", "track", "dice", "enabled", "frequency", "options", "count_as_impact", "auto", "duplicates", "number_of_rolls", "by", "method", "roll_options", "ally", "player", "is_impact", "disables_asset", "shared", "attachments", "trigger", "roll", "result", "summary", "detail", "requirement", "features", "dangers", "drives", "tactics", "strong_hit", "weak_hit", "miss", "variants", "text", "text2", "text3", "description", "your_character", "abilities", "template", "rolls", "contents", "collections", "outcomes", "quest_starter", "your_truth", "controls", "date", "page", "authors", "license", "url", "embed_table", "match", "recommended_rolls", "oracles", "suggestions", "enhance_asset", "oracle_rolls", "tags", "_comment", "column_labels", "denizens", "enhance_moves", "rows", "table", "assets", "atlas", "moves", "npcs", "rarities", "delve_sites", "site_domains", "site_themes", "truths", "_source", "_i18n"];
13
+ export declare function compareObjectKeys(a: string, b: string, keyOrder?: Readonly<string[]>, unsortableKeys?: Set<string>): number;
14
+ export declare function sortDataswornKeys(value: Record<string, unknown>): Record<string, unknown>;
15
+ export declare function sortJson(key: string | number, value: unknown): unknown;
16
+ export declare function sortObjectKeys<T extends Record<string, unknown>>(object: T, keyOrder: Readonly<string[]>): T;
17
+ //# sourceMappingURL=Sort.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sort.d.ts","sourceRoot":"","sources":["../../../src/Utils/Sort.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,cAAc,mFAOjB,CAAA;AAEV,eAAO,MAAM,MAAM,oCAAqC,CAAA;AAExD,eAAO,MAAM,gBAAgB,uHAWnB,CAAA;AAGV,eAAO,MAAM,iBAAiB,+GASpB,CAAA;AAEV,eAAO,MAAM,SAAS,qIAWZ,CAAA;AAEV,eAAO,MAAM,oBAAoB,qGASvB,CAAA;AACV,eAAO,MAAM,mBAAmB,sEAMtB,CAAA;AACV,eAAO,MAAM,aAAa,yDAKhB,CAAA;AACV,eAAO,MAAM,WAAW,0CAA2C,CAAA;AACnE,eAAO,MAAM,SAAS,kPAuBZ,CAAA;AACV,eAAO,MAAM,kBAAkB,iEAW5B,CAAA;AAEH,eAAO,MAAM,iBAAiB,0jDA6ED,CAAA;AAE7B,wBAAgB,iBAAiB,CAChC,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,QAAQ,GAAE,QAAQ,CAAC,MAAM,EAAE,CAAM,EACjC,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,UAmB5B;AACD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,2BAE/D;AA8DD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,OAAO,WAM5D;AAED,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,MAAM,EAAE,CAAC,EACT,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,GAKU,CAAC,CACvC"}
@@ -0,0 +1,277 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.dataswornKeyOrder = exports.sourceMetadataKeys = exports.rulesKeys = exports.numericKeys = exports.longArrayKeys = exports.longDescriptionKeys = exports.shortDescriptionKeys = exports.usageKeys = exports.discriminatorKeys = exports.relationshipKeys = exports.idKeys = exports.unsortableKeys = void 0;
7
+ exports.compareObjectKeys = compareObjectKeys;
8
+ exports.sortDataswornKeys = sortDataswornKeys;
9
+ exports.sortJson = sortJson;
10
+ exports.sortObjectKeys = sortObjectKeys;
11
+ const CONST_js_1 = require("../IdElements/CONST.js");
12
+ const Pattern_js_1 = __importDefault(require("../IdElements/Pattern.js"));
13
+ exports.unsortableKeys = [
14
+ 'columns',
15
+ 'controls',
16
+ CONST_js_1.ContentsKey,
17
+ 'options',
18
+ CONST_js_1.CollectionsKey,
19
+ 'choices'
20
+ ];
21
+ exports.idKeys = [CONST_js_1.IdKey, '_key', '_index'];
22
+ exports.relationshipKeys = [
23
+ CONST_js_1.ReplacesKey,
24
+ CONST_js_1.EnhancesKey,
25
+ 'oracle',
26
+ 'asset',
27
+ 'region',
28
+ 'theme',
29
+ 'domain',
30
+ 'name_oracle',
31
+ 'npc',
32
+ 'extra_card'
33
+ ];
34
+ // TODO: this could be done programmatically by looking at the appropriate symbol key on DiscriminatedUnion schemas
35
+ exports.discriminatorKeys = [
36
+ 'type',
37
+ 'category',
38
+ 'field_type',
39
+ 'roll_type',
40
+ 'choice_type',
41
+ 'oracle_type',
42
+ 'value_type',
43
+ 'using'
44
+ ];
45
+ exports.usageKeys = [
46
+ 'auto',
47
+ 'duplicates',
48
+ 'number_of_rolls',
49
+ 'by',
50
+ 'method',
51
+ 'roll_options',
52
+ 'ally',
53
+ 'player',
54
+ 'is_impact',
55
+ 'disables_asset'
56
+ ];
57
+ exports.shortDescriptionKeys = [
58
+ 'result',
59
+ 'summary',
60
+ 'detail',
61
+ 'requirement',
62
+ 'features',
63
+ 'dangers',
64
+ 'drives',
65
+ 'tactics'
66
+ ];
67
+ exports.longDescriptionKeys = [
68
+ 'text',
69
+ 'text2',
70
+ 'text3',
71
+ 'description',
72
+ 'your_character'
73
+ ];
74
+ exports.longArrayKeys = [
75
+ 'denizens',
76
+ 'enhance_moves',
77
+ 'rows',
78
+ 'table'
79
+ ];
80
+ exports.numericKeys = ['min', 'max', 'value', 'rank'];
81
+ exports.rulesKeys = [
82
+ // top level
83
+ 'condition_meters',
84
+ 'stats',
85
+ 'impacts',
86
+ 'special_tracks',
87
+ // properties
88
+ 'rollable',
89
+ 'prevents_recovery',
90
+ 'permanent',
91
+ 'optional',
92
+ 'control',
93
+ 'option',
94
+ 'condition_meter',
95
+ 'stat',
96
+ 'tracks',
97
+ 'conditions',
98
+ 'recover',
99
+ 'suffer',
100
+ 'choices',
101
+ 'xp_cost'
102
+ ];
103
+ exports.sourceMetadataKeys = [
104
+ 'email',
105
+ 'authors',
106
+ 'date',
107
+ 'license',
108
+ 'page',
109
+ 'title',
110
+ 'url'
111
+ ];
112
+ exports.dataswornKeyOrder = [
113
+ ...exports.idKeys,
114
+ 'datasworn_version',
115
+ 'type',
116
+ 'ruleset',
117
+ 'title',
118
+ 'name',
119
+ 'canonical_name',
120
+ 'label',
121
+ ...exports.discriminatorKeys,
122
+ ...exports.sourceMetadataKeys,
123
+ 'rules',
124
+ ...exports.rulesKeys,
125
+ ...exports.relationshipKeys,
126
+ ...exports.numericKeys,
127
+ 'nature',
128
+ 'color',
129
+ 'icon',
130
+ 'images',
131
+ 'track',
132
+ 'dice',
133
+ 'enabled',
134
+ 'frequency',
135
+ 'options',
136
+ 'count_as_impact',
137
+ ...exports.usageKeys,
138
+ 'shared',
139
+ 'attachments',
140
+ 'trigger',
141
+ 'roll',
142
+ ...exports.shortDescriptionKeys,
143
+ 'strong_hit',
144
+ 'weak_hit',
145
+ 'miss',
146
+ 'variants',
147
+ ...exports.longDescriptionKeys,
148
+ 'abilities',
149
+ 'template',
150
+ 'rolls',
151
+ CONST_js_1.ContentsKey,
152
+ CONST_js_1.CollectionsKey,
153
+ 'outcomes',
154
+ 'quest_starter',
155
+ 'your_truth',
156
+ 'controls',
157
+ 'date',
158
+ 'page',
159
+ 'authors',
160
+ 'license',
161
+ 'url',
162
+ 'embed_table',
163
+ 'match',
164
+ 'recommended_rolls',
165
+ // relationships
166
+ 'oracles',
167
+ 'suggestions',
168
+ 'enhance_asset',
169
+ 'oracle_rolls',
170
+ 'tags',
171
+ '_comment',
172
+ // so it appears immediately above rows
173
+ 'column_labels',
174
+ // very long content
175
+ ...exports.longArrayKeys,
176
+ 'assets',
177
+ 'atlas',
178
+ 'moves',
179
+ 'npcs',
180
+ 'rarities',
181
+ 'delve_sites',
182
+ 'site_domains',
183
+ 'site_themes',
184
+ 'truths',
185
+ '_source',
186
+ '_i18n'
187
+ ];
188
+ function compareObjectKeys(a, b, keyOrder = [], unsortableKeys) {
189
+ const [indexA, indexB] = [a, b].map((key) => {
190
+ const index = keyOrder.indexOf(key);
191
+ if (unsortableKeys != null && index === -1)
192
+ // logger.warn(`key ${key} has not been assigned a sort order.`)
193
+ unsortableKeys.add(key);
194
+ return index;
195
+ });
196
+ // this shouldn't happen; but if a and b are the same, fall back to alphabetical order.
197
+ if (indexA === indexB)
198
+ return a.localeCompare(b, 'en-US');
199
+ // if one key lacks an explicit sort, place it last
200
+ if (indexA === -1)
201
+ return 1;
202
+ if (indexB === -1)
203
+ return -1;
204
+ return indexA - indexB;
205
+ }
206
+ function sortDataswornKeys(value) {
207
+ return sortObjectKeys(value, exports.dataswornKeyOrder);
208
+ }
209
+ function _isPOJO(value) {
210
+ if (typeof value !== 'object')
211
+ return false;
212
+ if (value === null)
213
+ return false;
214
+ if (Array.isArray(value))
215
+ return false;
216
+ return true;
217
+ }
218
+ function _isIdNode(value) {
219
+ if (!_isPOJO(value))
220
+ return false;
221
+ if (!(CONST_js_1.IdKey in value))
222
+ return false;
223
+ const id = value[CONST_js_1.IdKey];
224
+ return typeof id === 'string';
225
+ }
226
+ function _isDictionaryOfPOJOs(value) {
227
+ if (!_isPOJO(value))
228
+ return false;
229
+ for (const k in value) {
230
+ if (!Pattern_js_1.default.DictKey.test(k))
231
+ return false;
232
+ const dict_entry = value[k];
233
+ if (!_isPOJO(dict_entry))
234
+ return false;
235
+ }
236
+ return true;
237
+ }
238
+ function _isDictionaryOfIdNodes(value) {
239
+ if (!_isPOJO(value))
240
+ return false;
241
+ for (const k in value) {
242
+ if (!Pattern_js_1.default.DictKey.test(k))
243
+ return false;
244
+ const dict_entry = value[k];
245
+ if (!_isIdNode(dict_entry))
246
+ return false;
247
+ }
248
+ return true;
249
+ }
250
+ function _sortObject(key, value) {
251
+ if (_isDictionaryOfPOJOs(value))
252
+ return value;
253
+ }
254
+ const sortBlacklist = [
255
+ 'options',
256
+ 'controls',
257
+ 'contents',
258
+ 'collections',
259
+ 'oracles',
260
+ 'assets',
261
+ 'moves',
262
+ 'variants'
263
+ ];
264
+ function sortJson(key, value) {
265
+ if (sortBlacklist.includes(key))
266
+ return value;
267
+ if (!_isPOJO(value))
268
+ return value;
269
+ if (_isDictionaryOfIdNodes(value))
270
+ return value;
271
+ return sortDataswornKeys(value);
272
+ }
273
+ function sortObjectKeys(object, keyOrder) {
274
+ const entries = Object.entries(object).sort(([a], [b]) => compareObjectKeys(a, b, keyOrder));
275
+ return Object.fromEntries(entries);
276
+ }
277
+ //# sourceMappingURL=Sort.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sort.js","sourceRoot":"","sources":["../../../src/Utils/Sort.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type * as IdElements from '../IdElements/index.js';
2
+ export type Split<S extends string, Delimiter extends string = IdElements.CONST.PathKeySep> = S extends `${infer Head}${Delimiter}${infer Tail}` ? [Head, ...Split<Tail, Delimiter>] : S extends Delimiter ? [] : [S];
3
+ export type Join<Strings extends string[], Delimiter extends string = IdElements.CONST.PathKeySep> = Strings extends [infer U extends string] ? U : Strings extends [infer Head extends string, ...infer Tail extends string[]] ? `${Head}${Delimiter}${Join<Tail, Delimiter>}` : never;
4
+ //# sourceMappingURL=String.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"String.d.ts","sourceRoot":"","sources":["../../../src/Utils/String.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,UAAU,MAAM,wBAAwB,CAAA;AAIzD,MAAM,MAAM,KAAK,CAChB,CAAC,SAAS,MAAM,EAChB,SAAS,SAAS,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,UAAU,IACnD,CAAC,SAAS,GAAG,MAAM,IAAI,GAAG,SAAS,GAAG,MAAM,IAAI,EAAE,GACnD,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,GACjC,CAAC,SAAS,SAAS,GAClB,EAAE,GACF,CAAC,CAAC,CAAC,CAAA;AAEP,MAAM,MAAM,IAAI,CACf,OAAO,SAAS,MAAM,EAAE,EACxB,SAAS,SAAS,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,UAAU,IACnD,OAAO,SAAS,CAAC,MAAM,CAAC,SAAS,MAAM,CAAC,GACzC,CAAC,GACD,OAAO,SAAS,CAAC,MAAM,IAAI,SAAS,MAAM,EAAE,GAAG,MAAM,IAAI,SAAS,MAAM,EAAE,CAAC,GAC1E,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,GAC7C,KAAK,CAAA"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=String.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"String.js","sourceRoot":"","sources":["../../../src/Utils/String.ts"],"names":[],"mappings":""}
@@ -0,0 +1,10 @@
1
+ export type * as Datasworn from './Datasworn.js';
2
+ export type * as DataswornSource from './DataswornSource.js';
3
+ export { DataswornTree } from './DataswornTree.js';
4
+ export * from './DataswornVersion.js';
5
+ export * from './IdParser.js';
6
+ export * as Migrations from './Migrations/index.js';
7
+ export * as StringId from './StringId.js';
8
+ export type { Primary as PrimaryStringId } from './StringId.js';
9
+ export * from './mergeExpansion.js';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAChD,YAAY,KAAK,eAAe,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,cAAc,uBAAuB,CAAA;AACrC,cAAc,eAAe,CAAA;AAC7B,OAAO,KAAK,UAAU,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,YAAY,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/D,cAAc,qBAAqB,CAAA"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
+ };
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.StringId = exports.Migrations = exports.DataswornTree = void 0;
40
+ var DataswornTree_js_1 = require("./DataswornTree.js");
41
+ Object.defineProperty(exports, "DataswornTree", { enumerable: true, get: function () { return DataswornTree_js_1.DataswornTree; } });
42
+ __exportStar(require("./DataswornVersion.js"), exports);
43
+ __exportStar(require("./IdParser.js"), exports);
44
+ exports.Migrations = __importStar(require("./Migrations/index.js"));
45
+ exports.StringId = __importStar(require("./StringId.js"));
46
+ __exportStar(require("./mergeExpansion.js"), exports);
47
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,uDAAkD;AAAzC,iHAAA,aAAa,OAAA;AACtB,wDAAqC;AACrC,gDAA6B;AAC7B,oEAAmD;AACnD,0DAAyC;AAEzC,sDAAmC"}
@@ -0,0 +1,3 @@
1
+ import type * as Datasworn from './Datasworn.js';
2
+ export declare function mergeExpansion(ruleset: Datasworn.Ruleset, expansion: Datasworn.Expansion, strict?: boolean): Datasworn.Ruleset;
3
+ //# sourceMappingURL=mergeExpansion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeExpansion.d.ts","sourceRoot":"","sources":["../../src/mergeExpansion.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAiIhD,wBAAgB,cAAc,CAC7B,OAAO,EAAE,SAAS,CAAC,OAAO,EAC1B,SAAS,EAAE,SAAS,CAAC,SAAS,EAC9B,MAAM,UAAO,qBA0Cb"}
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.mergeExpansion = mergeExpansion;
7
+ const CONST_js_1 = require("./IdElements/CONST.js");
8
+ const TypeId_js_1 = __importDefault(require("./IdElements/TypeId.js"));
9
+ const IdParser_js_1 = require("./IdParser.js");
10
+ /**
11
+ * Applies overrides to Datasworn collection from another Datasworn collection.
12
+ * Mutates `target`.
13
+ * @param target The collection object to be enhanced.
14
+ * @param source The changes to be applied to `target`
15
+ * @returns The mutated `target`
16
+ * @throws If the `source` is missing a matching wildcardId.
17
+ * @experimental
18
+ */
19
+ function enhanceCollection(target, source) {
20
+ const err = new Error(`Expected source <${source._id}> "${CONST_js_1.EnhancesKey}" property to include a wildcard matching target <${target._id}>, but got ${JSON.stringify(source[CONST_js_1.EnhancesKey])}.`);
21
+ if (!(CONST_js_1.EnhancesKey in source))
22
+ throw err;
23
+ if (!Array.isArray(source[CONST_js_1.EnhancesKey]))
24
+ throw err;
25
+ const targetId = IdParser_js_1.IdParser.parse(target._id);
26
+ if (!targetId.isMatchedBy(...source[CONST_js_1.EnhancesKey]))
27
+ throw err;
28
+ target[CONST_js_1.ContentsKey] = applyDictionaryReplacements(target[CONST_js_1.ContentsKey], source[CONST_js_1.ContentsKey]);
29
+ target[CONST_js_1.CollectionsKey] =
30
+ applyDictionaryEnhancements(target[CONST_js_1.CollectionsKey], source[CONST_js_1.CollectionsKey]);
31
+ return target;
32
+ }
33
+ function applyDictionaryEnhancements(targetDictionary, sourceDictionary) {
34
+ // Handle undefined dictionaries (e.g., when a collection has no nested collections)
35
+ if (sourceDictionary == null)
36
+ return targetDictionary;
37
+ if (targetDictionary == null)
38
+ return sourceDictionary;
39
+ const targetMap = targetDictionary instanceof Map
40
+ ? targetDictionary
41
+ : new Map(Object.entries(targetDictionary));
42
+ const sourceMap = sourceDictionary instanceof Map
43
+ ? sourceDictionary
44
+ : new Map(Object.entries(sourceDictionary));
45
+ for (const [key, source] of sourceMap) {
46
+ if (!targetMap.has(key)) {
47
+ targetMap.set(key, source);
48
+ continue;
49
+ }
50
+ if (!(CONST_js_1.EnhancesKey in source))
51
+ continue;
52
+ const target = targetMap.get(key);
53
+ targetMap.set(key, enhanceCollection(target, source));
54
+ }
55
+ const result = targetDictionary instanceof Map ? targetMap : Object.fromEntries(targetMap);
56
+ return result;
57
+ }
58
+ function applyDictionaryReplacements(targetDictionary, sourceDictionary) {
59
+ const targetMap = targetDictionary instanceof Map
60
+ ? targetDictionary
61
+ : new Map(Object.entries(targetDictionary));
62
+ const sourceMap = sourceDictionary instanceof Map
63
+ ? sourceDictionary
64
+ : new Map(Object.entries(sourceDictionary));
65
+ for (const [key, source] of sourceMap) {
66
+ if (!targetMap.has(key)) {
67
+ targetMap.set(key, source);
68
+ continue;
69
+ }
70
+ if (!(CONST_js_1.ReplacesKey in source))
71
+ continue;
72
+ const target = targetMap.get(key);
73
+ const err = new Error(`Expected source <${source._id}> "${CONST_js_1.ReplacesKey}" property to include a wildcard matching target <${target._id}>, but got ${JSON.stringify(source[CONST_js_1.ReplacesKey])}`);
74
+ if (!(CONST_js_1.ReplacesKey in source))
75
+ throw err;
76
+ if (!Array.isArray(source[CONST_js_1.ReplacesKey]))
77
+ throw err;
78
+ const targetValueId = IdParser_js_1.IdParser.parse(target._id);
79
+ if (!targetValueId.isMatchedBy(...source[CONST_js_1.ReplacesKey]))
80
+ throw err;
81
+ targetMap.set(key, source);
82
+ }
83
+ const result = targetDictionary instanceof Map ? targetMap : Object.fromEntries(targetMap);
84
+ return result;
85
+ }
86
+ function mergeExpansion(ruleset, expansion, strict = true) {
87
+ if (strict && ruleset._id !== expansion.ruleset)
88
+ throw new Error(`Can only merge to the expansion's matching ruleset "${expansion.ruleset}" in strict mode, but got ruleset "${ruleset._id}".`);
89
+ const collections = TypeId_js_1.default.Collectable.map(TypeId_js_1.default.getBranchKey);
90
+ for (const branchKey of collections) {
91
+ if (!(branchKey in expansion))
92
+ continue;
93
+ const expansionBranch = expansion[branchKey];
94
+ if (!(branchKey in ruleset))
95
+ // @ts-expect-error
96
+ ruleset[branchKey] = expansionBranch;
97
+ else {
98
+ const rulesetBranch = ruleset[branchKey];
99
+ if (expansionBranch &&
100
+ typeof expansionBranch === 'object' &&
101
+ CONST_js_1.ReplacesKey in expansionBranch) {
102
+ // @ts-expect-error
103
+ ruleset[branchKey] = applyDictionaryReplacements(rulesetBranch, expansionBranch);
104
+ }
105
+ else {
106
+ // @ts-expect-error
107
+ ruleset[branchKey] = applyDictionaryEnhancements(rulesetBranch, expansionBranch);
108
+ }
109
+ }
110
+ }
111
+ return ruleset;
112
+ }
113
+ //# sourceMappingURL=mergeExpansion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeExpansion.js","sourceRoot":"","sources":["../../src/mergeExpansion.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"type":"commonjs"}