intelligent-system-design-language 0.3.20 → 0.3.21
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/out/_handlebars.scss +0 -8
- package/out/_isdlStyles.scss +0 -12
- package/out/cli/components/_handlebars.scss +0 -8
- package/out/cli/components/_isdlStyles.scss +0 -12
- package/out/cli/components/derived-data-generator.js +22 -2
- package/out/cli/components/derived-data-generator.js.map +1 -1
- package/out/cli/components/method-generator.js +11 -3
- package/out/cli/components/method-generator.js.map +1 -1
- package/out/cli/components/utils.js +33 -1
- package/out/cli/components/utils.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-document-choice.js +1 -0
- package/out/cli/components/vue/base-components/vue-document-choice.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-inventory.js +1 -1
- package/out/cli/components/vue/base-components/vue-macro-choice.js +1 -0
- package/out/cli/components/vue/base-components/vue-macro-choice.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-tracker.js +1 -1
- package/out/cli/components/vue/vue-generator.js +0 -7
- package/out/cli/components/vue/vue-generator.js.map +1 -1
- package/out/cli/components/vue/vue-sheet-application-generator.js +6 -6
- package/out/cli/generator.js +0 -25
- package/out/cli/generator.js.map +1 -1
- package/out/extension/main.cjs +86 -1
- package/out/extension/main.cjs.map +3 -3
- package/out/extension/package.json +1 -8
- package/out/language/intelligent-system-design-language-validator.js +28 -3
- package/out/language/intelligent-system-design-language-validator.js.map +1 -1
- package/out/language/main.cjs +86 -1
- package/out/language/main.cjs.map +3 -3
- package/out/package.json +1 -8
- package/out/test/validating/diagnostics.test.js +17 -0
- package/out/test/validating/diagnostics.test.js.map +1 -1
- package/package.json +1 -8
- package/out/cli/components/base-actor-sheet-generator.js +0 -125
- package/out/cli/components/base-actor-sheet-generator.js.map +0 -1
- package/out/cli/components/base-sheet-generator.js +0 -525
- package/out/cli/components/base-sheet-generator.js.map +0 -1
- package/out/cli/components/vue/vue-datatable-component-generator.js +0 -307
- package/out/cli/components/vue/vue-datatable-component-generator.js.map +0 -1
- package/out/datatables.min.css +0 -54
- package/out/datatables.min.js +0 -178
package/out/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"displayName": "ISDL - Intelligent System Design Language",
|
|
4
4
|
"description": "Intelligent System Design Language support for Visual Studio Code",
|
|
5
5
|
"publisher": "IronMooseDevelopment",
|
|
6
|
-
"version": "0.3.
|
|
6
|
+
"version": "0.3.21",
|
|
7
7
|
"author": "Iron Moose Development",
|
|
8
8
|
"repository": {
|
|
9
9
|
"type": "git",
|
|
@@ -42,13 +42,6 @@
|
|
|
42
42
|
"@vitejs/plugin-vue": "^5.0.0",
|
|
43
43
|
"chalk": "~5.3.0",
|
|
44
44
|
"commander": "~11.0.0",
|
|
45
|
-
"datatables.net-buttons": "^3.2.2",
|
|
46
|
-
"datatables.net-buttons-dt": "^3.2.2",
|
|
47
|
-
"datatables.net-colreorder-dt": "^2.0.4",
|
|
48
|
-
"datatables.net-dt": "^2.2.2",
|
|
49
|
-
"datatables.net-responsive-dt": "^3.0.4",
|
|
50
|
-
"datatables.net-rowreorder-dt": "^1.5.0",
|
|
51
|
-
"datatables.net-vue3": "^3.0.4",
|
|
52
45
|
"inflection": "^3.0.0",
|
|
53
46
|
"langium": "~3.0.0",
|
|
54
47
|
"rpg-awesome": "^0.2.0",
|
|
@@ -50,5 +50,22 @@ describe('parser diagnostics', () => {
|
|
|
50
50
|
const diags = await errors(src);
|
|
51
51
|
expect(diags).toHaveLength(0);
|
|
52
52
|
});
|
|
53
|
+
it('allows a pure function call inside a calculated value', async () => {
|
|
54
|
+
const src = `${CONFIG}\n\nactor A {\n function Bonus() returns number {\n return 5\n }\n number Power\n readonly number Total(value: { return self.Power + self.Bonus() })\n}`;
|
|
55
|
+
const diags = await errors(src);
|
|
56
|
+
expect(diags).toHaveLength(0);
|
|
57
|
+
});
|
|
58
|
+
it('rejects an impure (rolling) function call inside a calculated value', async () => {
|
|
59
|
+
const src = `${CONFIG}\n\nactor A {\n function Bonus() returns number {\n fleeting r = roll(d6)\n return r.total\n }\n number Power\n readonly number Total(value: { return self.Power + self.Bonus() })\n}`;
|
|
60
|
+
const diags = await errors(src);
|
|
61
|
+
expect(diags.some(d => /calculated value/.test(d.message))).toBe(true);
|
|
62
|
+
});
|
|
63
|
+
it('rejects a function that mutates self (++/+=) inside a calculated value', async () => {
|
|
64
|
+
// self.X++ is an IncrementDecrementAssignment (a grammar union member) — a document write,
|
|
65
|
+
// not pure. Guard-based detection must catch it, not just literal "Assignment" $type.
|
|
66
|
+
const src = `${CONFIG}\n\nactor A {\n number Counter\n function Bonus() returns number {\n self.Counter++\n return 1\n }\n number Power\n readonly number Total(value: { return self.Power + self.Bonus() })\n}`;
|
|
67
|
+
const diags = await errors(src);
|
|
68
|
+
expect(diags.some(d => /calculated value/.test(d.message))).toBe(true);
|
|
69
|
+
});
|
|
53
70
|
});
|
|
54
71
|
//# sourceMappingURL=diagnostics.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.test.js","sourceRoot":"","sources":["../../../src/test/validating/diagnostics.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"diagnostics.test.js","sourceRoot":"","sources":["../../../src/test/validating/diagnostics.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"displayName": "ISDL - Intelligent System Design Language",
|
|
4
4
|
"description": "Intelligent System Design Language support for Visual Studio Code",
|
|
5
5
|
"publisher": "IronMooseDevelopment",
|
|
6
|
-
"version": "0.3.
|
|
6
|
+
"version": "0.3.21",
|
|
7
7
|
"author": "Iron Moose Development",
|
|
8
8
|
"repository": {
|
|
9
9
|
"type": "git",
|
|
@@ -42,13 +42,6 @@
|
|
|
42
42
|
"@vitejs/plugin-vue": "^5.0.0",
|
|
43
43
|
"chalk": "~5.3.0",
|
|
44
44
|
"commander": "~11.0.0",
|
|
45
|
-
"datatables.net-buttons": "^3.2.2",
|
|
46
|
-
"datatables.net-buttons-dt": "^3.2.2",
|
|
47
|
-
"datatables.net-colreorder-dt": "^2.0.4",
|
|
48
|
-
"datatables.net-dt": "^2.2.2",
|
|
49
|
-
"datatables.net-responsive-dt": "^3.0.4",
|
|
50
|
-
"datatables.net-rowreorder-dt": "^1.5.0",
|
|
51
|
-
"datatables.net-vue3": "^3.0.4",
|
|
52
45
|
"inflection": "^3.0.0",
|
|
53
46
|
"langium": "~3.0.0",
|
|
54
47
|
"rpg-awesome": "^0.2.0",
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import * as fs from 'node:fs';
|
|
2
|
-
import * as path from 'node:path';
|
|
3
|
-
import { expandToNode, toString } from 'langium/generate';
|
|
4
|
-
export function generateBaseActorSheet(entry, id, destination) {
|
|
5
|
-
const generatedFileDir = path.join(destination, "system", "sheets");
|
|
6
|
-
const generatedFilePath = path.join(generatedFileDir, `${id}-actor-sheet.mjs`);
|
|
7
|
-
if (!fs.existsSync(generatedFileDir)) {
|
|
8
|
-
fs.mkdirSync(generatedFileDir, { recursive: true });
|
|
9
|
-
}
|
|
10
|
-
const fileNode = expandToNode `
|
|
11
|
-
import ${entry.config.name}DocumentSheet from "./${id}-sheet.mjs";
|
|
12
|
-
|
|
13
|
-
export default class ${entry.config.name}ActorSheet extends ${entry.config.name}DocumentSheet {
|
|
14
|
-
|
|
15
|
-
/** @override */
|
|
16
|
-
static get defaultOptions() {
|
|
17
|
-
return foundry.utils.mergeObject(super.defaultOptions, {
|
|
18
|
-
secrets: [{parentSelector: ".editor"}],
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
/* -------------------------------------------- */
|
|
23
|
-
|
|
24
|
-
/** @override */
|
|
25
|
-
get title() {
|
|
26
|
-
return this.actor.isToken ? \`[Token] \${this.actor.name}\` : this.actor.name;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
/* -------------------------------------------- */
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* A convenience reference to the Actor document
|
|
33
|
-
* @type {Actor}
|
|
34
|
-
*/
|
|
35
|
-
get actor() {
|
|
36
|
-
return this.object;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
/* -------------------------------------------- */
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* If this Actor Sheet represents a synthetic Token actor, reference the active Token
|
|
43
|
-
* @type {Token|null}
|
|
44
|
-
*/
|
|
45
|
-
get token() {
|
|
46
|
-
return this.object.token || this.options.token || null;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
/* -------------------------------------------- */
|
|
50
|
-
/* Methods */
|
|
51
|
-
/* -------------------------------------------- */
|
|
52
|
-
|
|
53
|
-
/** @inheritdoc */
|
|
54
|
-
async close(options) {
|
|
55
|
-
this.options.token = null;
|
|
56
|
-
return super.close(options);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
/* -------------------------------------------- */
|
|
60
|
-
|
|
61
|
-
/** @inheritdoc */
|
|
62
|
-
async getData(options={}) {
|
|
63
|
-
const context = await super.getData(options);
|
|
64
|
-
context.actor = this.object;
|
|
65
|
-
context.applicableEffects = Array.from(this.object.allApplicableEffects());
|
|
66
|
-
return context;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
/* -------------------------------------------- */
|
|
70
|
-
|
|
71
|
-
/** @inheritdoc */
|
|
72
|
-
_getHeaderButtons() {
|
|
73
|
-
let buttons = super._getHeaderButtons();
|
|
74
|
-
const canConfigure = game.user.isGM || (this.actor.isOwner && game.user.can("TOKEN_CONFIGURE"));
|
|
75
|
-
if ( this.options.editable && canConfigure ) {
|
|
76
|
-
const closeIndex = buttons.findIndex(btn => btn.label === "Close");
|
|
77
|
-
buttons.splice(closeIndex, 0, {
|
|
78
|
-
label: this.token ? "Token" : "TOKEN.TitlePrototype",
|
|
79
|
-
class: "configure-token",
|
|
80
|
-
icon: "fas fa-user-circle",
|
|
81
|
-
onclick: ev => this._onConfigureToken(ev)
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
return buttons;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
/* -------------------------------------------- */
|
|
88
|
-
/* Event Listeners */
|
|
89
|
-
/* -------------------------------------------- */
|
|
90
|
-
|
|
91
|
-
/**
|
|
92
|
-
* Handle requests to configure the Token for the Actor
|
|
93
|
-
* @param {PointerEvent} event The originating click event
|
|
94
|
-
* @private
|
|
95
|
-
*/
|
|
96
|
-
_onConfigureToken(event) {
|
|
97
|
-
event.preventDefault();
|
|
98
|
-
const renderOptions = {
|
|
99
|
-
left: Math.max(this.position.left - 560 - 10, 10),
|
|
100
|
-
top: this.position.top
|
|
101
|
-
};
|
|
102
|
-
if ( this.token ) return this.token.sheet.render(true, renderOptions);
|
|
103
|
-
else new CONFIG.Token.prototypeSheetClass(this.actor.prototypeToken, renderOptions).render(true);
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
/* -------------------------------------------- */
|
|
107
|
-
/* Drag and Drop */
|
|
108
|
-
/* -------------------------------------------- */
|
|
109
|
-
|
|
110
|
-
/** @inheritdoc */
|
|
111
|
-
_canDragStart(selector) {
|
|
112
|
-
return this.isEditable;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
/* -------------------------------------------- */
|
|
116
|
-
|
|
117
|
-
/** @inheritdoc */
|
|
118
|
-
_canDragDrop(selector) {
|
|
119
|
-
return this.isEditable;
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
`.appendNewLineIfNotEmpty();
|
|
123
|
-
fs.writeFileSync(generatedFilePath, toString(fileNode));
|
|
124
|
-
}
|
|
125
|
-
//# sourceMappingURL=base-actor-sheet-generator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"base-actor-sheet-generator.js","sourceRoot":"","sources":["../../../src/cli/components/base-actor-sheet-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE1D,MAAM,UAAU,sBAAsB,CAAC,KAAY,EAAE,EAAU,EAAE,WAAmB;IAChF,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACpE,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;IAE/E,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE;QAClC,EAAE,CAAC,SAAS,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;KACvD;IAED,MAAM,QAAQ,GAAG,YAAY,CAAA;iBAChB,KAAK,CAAC,MAAM,CAAC,IAAI,yBAAyB,EAAE;;+BAE9B,KAAK,CAAC,MAAM,CAAC,IAAI,sBAAsB,KAAK,CAAC,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA6GlF,CAAC,uBAAuB,EAAE,CAAC;IAE5B,EAAE,CAAC,aAAa,CAAC,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC5D,CAAC"}
|