@bscotch/gcdata 0.20.1 → 0.21.1
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/dist/cl2.character.pointers.d.ts +3 -0
- package/dist/cl2.character.pointers.d.ts.map +1 -0
- package/dist/cl2.character.pointers.js +2 -0
- package/dist/cl2.character.pointers.js.map +1 -0
- package/dist/cl2.chat.pointers.d.ts +3 -0
- package/dist/cl2.chat.pointers.d.ts.map +1 -0
- package/dist/cl2.chat.pointers.js +2 -0
- package/dist/cl2.chat.pointers.js.map +1 -0
- package/dist/cl2.comfort.d.ts +3 -3
- package/dist/cl2.comfort.d.ts.map +1 -1
- package/dist/cl2.comfort.js +3 -3
- package/dist/cl2.comfort.js.map +1 -1
- package/dist/cl2.comfort.parse.d.ts +4 -4
- package/dist/cl2.comfort.parse.d.ts.map +1 -1
- package/dist/cl2.comfort.parse.js +32 -180
- package/dist/cl2.comfort.parse.js.map +1 -1
- package/dist/cl2.comfort.pointers.d.ts +2 -2
- package/dist/cl2.comfort.pointers.d.ts.map +1 -1
- package/dist/cl2.comfort.stringify.d.ts +2 -2
- package/dist/cl2.comfort.stringify.d.ts.map +1 -1
- package/dist/cl2.comfort.stringify.js +5 -3
- package/dist/cl2.comfort.stringify.js.map +1 -1
- package/dist/cl2.comfort.types.d.ts +6 -28
- package/dist/cl2.comfort.types.d.ts.map +1 -1
- package/dist/cl2.comfort.types.js +3 -67
- package/dist/cl2.comfort.types.js.map +1 -1
- package/dist/cl2.quest.d.ts +1 -1
- package/dist/cl2.quest.d.ts.map +1 -1
- package/dist/cl2.quest.js +1 -1
- package/dist/cl2.quest.js.map +1 -1
- package/dist/cl2.quest.parse.d.ts +1 -1
- package/dist/cl2.quest.parse.d.ts.map +1 -1
- package/dist/cl2.quest.parse.js +41 -201
- package/dist/cl2.quest.parse.js.map +1 -1
- package/dist/cl2.quest.types.d.ts +15 -25
- package/dist/cl2.quest.types.d.ts.map +1 -1
- package/dist/cl2.quest.types.js +1 -2
- package/dist/cl2.quest.types.js.map +1 -1
- package/dist/cl2.quest.utils.d.ts +0 -2
- package/dist/cl2.quest.utils.d.ts.map +1 -1
- package/dist/cl2.quest.utils.js +0 -14
- package/dist/cl2.quest.utils.js.map +1 -1
- package/dist/cl2.shared.parse.d.ts +38 -0
- package/dist/cl2.shared.parse.d.ts.map +1 -0
- package/dist/cl2.shared.parse.js +223 -0
- package/dist/cl2.shared.parse.js.map +1 -0
- package/dist/cl2.shared.types.d.ts +52 -11
- package/dist/cl2.shared.types.d.ts.map +1 -1
- package/dist/cl2.shared.types.js +25 -1
- package/dist/cl2.shared.types.js.map +1 -1
- package/dist/cl2.storyline.d.ts +1 -1
- package/dist/cl2.storyline.d.ts.map +1 -1
- package/dist/cl2.storyline.js +1 -1
- package/dist/cl2.storyline.js.map +1 -1
- package/dist/cl2.storyline.parse.d.ts.map +1 -1
- package/dist/cl2.storyline.parse.js +18 -177
- package/dist/cl2.storyline.parse.js.map +1 -1
- package/dist/cl2.storyline.stringify.d.ts +1 -1
- package/dist/cl2.storyline.stringify.d.ts.map +1 -1
- package/dist/cl2.storyline.types.d.ts +5 -24
- package/dist/cl2.storyline.types.d.ts.map +1 -1
- package/dist/cl2.storyline.types.js +1 -6
- package/dist/cl2.storyline.types.js.map +1 -1
- package/dist/cl2.types.auto.d.ts +10635 -10434
- package/dist/cl2.types.auto.d.ts.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/types.editor.d.ts +10 -0
- package/dist/types.editor.d.ts.map +1 -1
- package/dist/util.d.ts +2 -2
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +3 -0
- package/dist/util.js.map +1 -1
- package/package.json +1 -1
- package/dist/cl2.storyline.utils.d.ts +0 -1
- package/dist/cl2.storyline.utils.d.ts.map +0 -1
- package/dist/cl2.storyline.utils.js +0 -2
- package/dist/cl2.storyline.utils.js.map +0 -1
- package/dist/cl2.types.editor.d.ts +0 -33
- package/dist/cl2.types.editor.d.ts.map +0 -1
- package/dist/cl2.types.editor.js +0 -2
- package/dist/cl2.types.editor.js.map +0 -1
- package/dist/cl3.storyline.d.ts +0 -4
- package/dist/cl3.storyline.d.ts.map +0 -1
- package/dist/cl3.storyline.js +0 -4
- package/dist/cl3.storyline.js.map +0 -1
- package/dist/cl3.storyline.parse.d.ts +0 -7
- package/dist/cl3.storyline.parse.d.ts.map +0 -1
- package/dist/cl3.storyline.parse.js +0 -257
- package/dist/cl3.storyline.parse.js.map +0 -1
- package/dist/cl3.storyline.pointers.d.ts +0 -3
- package/dist/cl3.storyline.pointers.d.ts.map +0 -1
- package/dist/cl3.storyline.pointers.js +0 -2
- package/dist/cl3.storyline.pointers.js.map +0 -1
- package/dist/cl3.storyline.stringify.d.ts +0 -4
- package/dist/cl3.storyline.stringify.d.ts.map +0 -1
- package/dist/cl3.storyline.stringify.js +0 -23
- package/dist/cl3.storyline.stringify.js.map +0 -1
- package/dist/cl3.storyline.types.d.ts +0 -36
- package/dist/cl3.storyline.types.d.ts.map +0 -1
- package/dist/cl3.storyline.types.js +0 -87
- package/dist/cl3.storyline.types.js.map +0 -1
- package/dist/dict.d.ts +0 -3
- package/dist/dict.d.ts.map +0 -1
- package/dist/dict.js +0 -49777
- package/dist/dict.js.map +0 -1
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { assert } from './assert.js';
|
|
3
|
-
export const storylineSchemaId = 'cl2_storyline';
|
|
4
|
-
export function listStorylines(gcData) {
|
|
5
|
-
return gcData.listMotesBySchema(storylineSchemaId);
|
|
6
|
-
}
|
|
7
|
-
export function isStorylineMote(mote) {
|
|
8
|
-
return mote.schema_id === storylineSchemaId;
|
|
9
|
-
}
|
|
10
|
-
export function getStorylineMote(gcData, moteId) {
|
|
11
|
-
const mote = gcData.getMote(moteId);
|
|
12
|
-
assert(!mote || isStorylineMote(mote), `Mote ${moteId} is not a storyline`);
|
|
13
|
-
return mote;
|
|
14
|
-
}
|
|
15
|
-
export function getStorylineMotes(gcData) {
|
|
16
|
-
const motes = gcData.listMotesBySchema(storylineSchemaId);
|
|
17
|
-
return motes;
|
|
18
|
-
}
|
|
19
|
-
export function getStorylineSchema(gcData) {
|
|
20
|
-
return gcData.getSchema(storylineSchemaId);
|
|
21
|
-
}
|
|
22
|
-
// PATTERNS
|
|
23
|
-
// Note: These patterns are defined so that they'll work on partial lines
|
|
24
|
-
// as much as possible, so their group names should always be checked for existence.
|
|
25
|
-
const linePartsSchema = z.object({
|
|
26
|
-
indicator: z
|
|
27
|
-
.string()
|
|
28
|
-
.optional()
|
|
29
|
-
.describe('The symbol prefixing the line to indicate what the line type is'),
|
|
30
|
-
arrayTag: z
|
|
31
|
-
.string()
|
|
32
|
-
.regex(/^[a-z0-9]+$/)
|
|
33
|
-
.optional()
|
|
34
|
-
.describe("BsArrayElement identifier (without the '#' prefix)"),
|
|
35
|
-
labelGroup: z.string().optional().describe('The label, including the `:`'),
|
|
36
|
-
label: z.string().optional().describe('For `Label:Value` elements'),
|
|
37
|
-
text: z
|
|
38
|
-
.string()
|
|
39
|
-
.optional()
|
|
40
|
-
.describe('For dialog and similar, the text content'),
|
|
41
|
-
});
|
|
42
|
-
export const arrayTagPattern = '(?:#(?<arrayTag>[a-z0-9]+))';
|
|
43
|
-
export const linePatterns = [
|
|
44
|
-
/** Label:Text */
|
|
45
|
-
`^(?<labelGroup>(?<label>Name|Description|Stage)\\s*:)\\s*(?<text>.*?)\\s*$`,
|
|
46
|
-
/** Comment Line */
|
|
47
|
-
`^(?<indicator>//)\\s*?${arrayTagPattern}?\\s*(?<text>.*?)\\s*$`,
|
|
48
|
-
];
|
|
49
|
-
export function parseIfMatch(pattern, line, startPosition) {
|
|
50
|
-
const rawMatch = line.match(new RegExp(pattern));
|
|
51
|
-
if (!rawMatch)
|
|
52
|
-
return null;
|
|
53
|
-
const parsedLine = linePartsSchema.parse(rawMatch.groups);
|
|
54
|
-
const result = {
|
|
55
|
-
_: {
|
|
56
|
-
start: startPosition,
|
|
57
|
-
end: { ...startPosition },
|
|
58
|
-
value: line,
|
|
59
|
-
},
|
|
60
|
-
};
|
|
61
|
-
result._.end.character += line.length;
|
|
62
|
-
result._.end.index += line.length;
|
|
63
|
-
for (const [key, value] of Object.entries(parsedLine)) {
|
|
64
|
-
if (typeof value !== 'undefined') {
|
|
65
|
-
// Figure out where this is in the matches so we
|
|
66
|
-
// can get the start and end positions.
|
|
67
|
-
const startChar = line.indexOf(`${value}`);
|
|
68
|
-
const endChar = startChar + `${value}`.length;
|
|
69
|
-
const start = { ...startPosition };
|
|
70
|
-
start.character += startChar;
|
|
71
|
-
start.index += startChar;
|
|
72
|
-
const end = { ...startPosition };
|
|
73
|
-
end.character += endChar;
|
|
74
|
-
end.index += endChar;
|
|
75
|
-
result[key] = {
|
|
76
|
-
start,
|
|
77
|
-
end,
|
|
78
|
-
value: value,
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
return result;
|
|
83
|
-
}
|
|
84
|
-
export function lineIsArrayItem(line) {
|
|
85
|
-
return /^\/\//.test(line);
|
|
86
|
-
}
|
|
87
|
-
//# sourceMappingURL=cl3.storyline.types.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cl3.storyline.types.js","sourceRoot":"","sources":["../src/cl3.storyline.types.ts"],"names":[],"mappings":"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"}
|