intelligent-system-design-language 0.3.27 → 0.3.28
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/_isdlStyles.scss +28 -0
- package/out/cli/components/_isdlStyles.scss +28 -0
- package/out/cli/components/active-effect-sheet-generator.js +6 -2
- package/out/cli/components/active-effect-sheet-generator.js.map +1 -1
- package/out/cli/components/css-generator.js +77 -37
- package/out/cli/components/css-generator.js.map +1 -1
- package/out/cli/components/datamodel-generator.js +31 -13
- package/out/cli/components/datamodel-generator.js.map +1 -1
- package/out/cli/components/init-hook-generator.js +21 -12
- package/out/cli/components/init-hook-generator.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-attribute.js +5 -4
- package/out/cli/components/vue/base-components/vue-attribute.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-boolean.js +3 -2
- package/out/cli/components/vue/base-components/vue-boolean.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-damage-bonuses.js +3 -2
- package/out/cli/components/vue/base-components/vue-damage-bonuses.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-damage-resistances.js +3 -2
- package/out/cli/components/vue/base-components/vue-damage-resistances.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-damage-track.js +2 -1
- package/out/cli/components/vue/base-components/vue-damage-track.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-date-time.js +3 -2
- package/out/cli/components/vue/base-components/vue-date-time.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-dice.js +2 -1
- package/out/cli/components/vue/base-components/vue-dice.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-die.js +2 -1
- package/out/cli/components/vue/base-components/vue-die.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-document-choice.js +2 -1
- package/out/cli/components/vue/base-components/vue-document-choice.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-document-choices.js +2 -1
- package/out/cli/components/vue/base-components/vue-document-choices.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-document-link.js +2 -1
- package/out/cli/components/vue/base-components/vue-document-link.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-extended-choice.js +2 -1
- package/out/cli/components/vue/base-components/vue-extended-choice.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-image.js +89 -0
- package/out/cli/components/vue/base-components/vue-image.js.map +1 -0
- package/out/cli/components/vue/base-components/vue-inventory.js +2 -1
- package/out/cli/components/vue/base-components/vue-inventory.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-macro-choice.js +2 -1
- package/out/cli/components/vue/base-components/vue-macro-choice.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-measured-template.js +3 -2
- package/out/cli/components/vue/base-components/vue-measured-template.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-money.js +4 -3
- package/out/cli/components/vue/base-components/vue-money.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-number.js +3 -2
- package/out/cli/components/vue/base-components/vue-number.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-paperdoll.js +2 -1
- package/out/cli/components/vue/base-components/vue-paperdoll.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-parent-property-reference.js +5 -1
- package/out/cli/components/vue/base-components/vue-parent-property-reference.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-prosemirror.js +3 -2
- package/out/cli/components/vue/base-components/vue-prosemirror.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-resource.js +2 -1
- package/out/cli/components/vue/base-components/vue-resource.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-roll-visualizer.js +2 -1
- package/out/cli/components/vue/base-components/vue-roll-visualizer.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-self-property-reference.js +2 -1
- package/out/cli/components/vue/base-components/vue-self-property-reference.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-string-choice.js +3 -1
- package/out/cli/components/vue/base-components/vue-string-choice.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-string-choices.js +3 -2
- package/out/cli/components/vue/base-components/vue-string-choices.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-string.js +4 -3
- package/out/cli/components/vue/base-components/vue-string.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-text-field.js +4 -3
- package/out/cli/components/vue/base-components/vue-text-field.js.map +1 -1
- package/out/cli/components/vue/base-components/vue-tracker.js +2 -1
- package/out/cli/components/vue/base-components/vue-tracker.js.map +1 -1
- package/out/cli/components/vue/vue-active-effect-sheet-generator.js +2 -2
- package/out/cli/components/vue/vue-base-components-generator.js +2 -0
- package/out/cli/components/vue/vue-base-components-generator.js.map +1 -1
- package/out/cli/components/vue/vue-generator.js +1 -0
- package/out/cli/components/vue/vue-generator.js.map +1 -1
- package/out/cli/components/vue/vue-mixin.js +1 -0
- package/out/cli/components/vue/vue-mixin.js.map +1 -1
- package/out/cli/components/vue/vue-sheet-application-generator.js +73 -25
- package/out/cli/components/vue/vue-sheet-application-generator.js.map +1 -1
- package/out/cli/components/vue/vue-sheet-class-generator.js +89 -2
- package/out/cli/components/vue/vue-sheet-class-generator.js.map +1 -1
- package/out/extension/main.cjs +956 -640
- package/out/extension/main.cjs.map +3 -3
- package/out/extension/package.json +1 -1
- package/out/language/generated/ast.js +67 -7
- package/out/language/generated/ast.js.map +1 -1
- package/out/language/generated/grammar.js +891 -638
- package/out/language/generated/grammar.js.map +1 -1
- package/out/language/intelligent-system-design-language-validator.js +18 -7
- package/out/language/intelligent-system-design-language-validator.js.map +1 -1
- package/out/language/main.cjs +956 -640
- package/out/language/main.cjs.map +3 -3
- package/out/package.json +1 -1
- package/out/test/validating/theme.test.js +10 -10
- package/out/test/validating/theme.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as path from 'node:path';
|
|
2
2
|
import * as fs from 'node:fs';
|
|
3
3
|
import { expandToNode, joinToNode, toString } from 'langium/generate';
|
|
4
|
-
import { isAction, isActor, isAttributeExp, isAttributeFunctionParam, isFunctionDefinition, isHeightParam, isHtmlExp, isWidthParam } from "../../../language/generated/ast.js";
|
|
4
|
+
import { isAction, isActor, isAttributeExp, isAttributeFunctionParam, isAttributeRollParam, isFunctionDefinition, isHeightParam, isHtmlExp, isMethodBlock, isWidthParam } from "../../../language/generated/ast.js";
|
|
5
5
|
import { humanize, titleize } from 'inflection';
|
|
6
6
|
import { getAllOfType, toMachineIdentifier } from '../utils.js';
|
|
7
7
|
import { translateBodyExpressionToJavascript, translateExpression } from '../method-generator.js';
|
|
@@ -29,6 +29,13 @@ export function generateDocumentVueSheet(entry, id, document, destination) {
|
|
|
29
29
|
const attributeFunctions = getAllOfType(document.body, isAttributeExp, false)
|
|
30
30
|
.map(attr => ({ attr, param: attr.params.find(isAttributeFunctionParam) }))
|
|
31
31
|
.filter((x) => { var _a; return ((_a = x.param) === null || _a === void 0 ? void 0 : _a.function.ref) != undefined; });
|
|
32
|
+
// Attributes with a block-style `roll: { ... }` click handler. The block is a method body that can
|
|
33
|
+
// call user functions (self.Foo(...)) and mutate the document (self.X += 1), which require `this`,
|
|
34
|
+
// the six flush objects, and an action-style flush — none of which exist in the sheet's Vue
|
|
35
|
+
// <script setup> scope. So, like `function:`, the block runs as a real sheet method here instead.
|
|
36
|
+
const attributeRolls = getAllOfType(document.body, isAttributeExp, false)
|
|
37
|
+
.map(attr => ({ attr, param: attr.params.find(isAttributeRollParam) }))
|
|
38
|
+
.filter((x) => x.param != undefined && isMethodBlock(x.param.roll));
|
|
32
39
|
function generateFunctionDefinition(functionDef) {
|
|
33
40
|
const functionName = toMachineIdentifier(functionDef.name);
|
|
34
41
|
console.log(`Generating function ${functionName} for ${document.name} Vue sheet.`);
|
|
@@ -226,7 +233,10 @@ export function generateDocumentVueSheet(entry, id, document, destination) {
|
|
|
226
233
|
*/
|
|
227
234
|
static async _onEditImage(event, target) {
|
|
228
235
|
if (!this.isEditable) return false;
|
|
229
|
-
|
|
236
|
+
// Prefer data-edit-path (set by the <i-image> field component, which deliberately
|
|
237
|
+
// avoids data-edit so Foundry's FormDataExtended never serializes the v-img wrapper's
|
|
238
|
+
// innerHTML back into the field). Fall back to data-edit for the legacy drawer portrait.
|
|
239
|
+
const attr = target.dataset.editPath ?? target.dataset.edit;
|
|
230
240
|
const current = foundry.utils.getProperty(this.document, attr);
|
|
231
241
|
const { img } = this.document.constructor.getDefaultArtwork?.(this.document.toObject()) ?? {};
|
|
232
242
|
const fp = new FilePicker({
|
|
@@ -431,6 +441,11 @@ export function generateDocumentVueSheet(entry, id, document, destination) {
|
|
|
431
441
|
|
|
432
442
|
/* -------------------------------------------- */
|
|
433
443
|
|
|
444
|
+
// Attribute click handlers (block-style roll: param)
|
|
445
|
+
${joinToNode(attributeRolls, generateAttributeRollMethod, { appendNewLineIfNotEmpty: true })}
|
|
446
|
+
|
|
447
|
+
/* -------------------------------------------- */
|
|
448
|
+
|
|
434
449
|
// User defined methods
|
|
435
450
|
${joinToNode(functions, generateFunctionDefinition, { appendNewLineIfNotEmpty: true })}
|
|
436
451
|
}
|
|
@@ -564,5 +579,77 @@ export function generateDocumentVueSheet(entry, id, document, destination) {
|
|
|
564
579
|
}
|
|
565
580
|
`;
|
|
566
581
|
}
|
|
582
|
+
// Generates a sheet method that runs an attribute's block-style `roll: { ... }` body with the same
|
|
583
|
+
// update/flush semantics as an action. The block is inlined here (rather than emitted as an arrow in
|
|
584
|
+
// the sheet's Vue <script setup>) because it may call user functions and mutate the document, which
|
|
585
|
+
// need `this`, the six flush objects, and the action-style flush/render tail — none of which exist
|
|
586
|
+
// in <script setup> scope (where `this` is undefined and `update` is never declared). Mirrors
|
|
587
|
+
// _on<Attr>AttributeFunction exactly; only the inlined body differs.
|
|
588
|
+
function generateAttributeRollMethod({ attr, param }) {
|
|
589
|
+
console.log(`Generating attribute roll handler ${attr.name} for ${document.name} Vue sheet.`);
|
|
590
|
+
return expandToNode `
|
|
591
|
+
|
|
592
|
+
/* -------------------------------------------- */
|
|
593
|
+
|
|
594
|
+
async _on${attr.name}AttributeRoll(event) {
|
|
595
|
+
if (event?.preventDefault) event.preventDefault();
|
|
596
|
+
let update = {};
|
|
597
|
+
let embeddedUpdate = {};
|
|
598
|
+
let parentUpdate = {};
|
|
599
|
+
let parentEmbeddedUpdate = {};
|
|
600
|
+
let targetUpdate = {};
|
|
601
|
+
let targetEmbeddedUpdate = {};
|
|
602
|
+
let selfDeleted = false;
|
|
603
|
+
let rerender = false;
|
|
604
|
+
let document = this.document;
|
|
605
|
+
const context = {
|
|
606
|
+
object: this.document,
|
|
607
|
+
target: game.user.getTargetOrNothing()
|
|
608
|
+
};
|
|
609
|
+
// If this is an item, attach the parent
|
|
610
|
+
if (document.documentName === "Item" && document.parent) {
|
|
611
|
+
context.actor = document.parent;
|
|
612
|
+
}
|
|
613
|
+
else {
|
|
614
|
+
context.actor = document;
|
|
615
|
+
}
|
|
616
|
+
// Roll-block translation emits bare 'system' references (e.g. for 'success:'/comparison
|
|
617
|
+
// thresholds like 'self.X'), so provide it in scope -- matching the original inline block
|
|
618
|
+
// and the action handler's 'system' parameter.
|
|
619
|
+
let system = context.object.system;
|
|
620
|
+
${translateExpression(entry, id, param.roll, false, attr)}
|
|
621
|
+
if (!selfDeleted && Object.keys(update).length > 0) {
|
|
622
|
+
await this.document.update(update);
|
|
623
|
+
rerender = true;
|
|
624
|
+
}
|
|
625
|
+
if (!selfDeleted && Object.keys(embeddedUpdate).length > 0) {
|
|
626
|
+
for (let key of Object.keys(embeddedUpdate)) {
|
|
627
|
+
await this.document.updateEmbeddedDocuments("Item", embeddedUpdate[key]);
|
|
628
|
+
}
|
|
629
|
+
rerender = true;
|
|
630
|
+
}
|
|
631
|
+
if (Object.keys(parentUpdate).length > 0) {
|
|
632
|
+
await this.document.parent.update(parentUpdate);
|
|
633
|
+
rerender = true;
|
|
634
|
+
}
|
|
635
|
+
if (Object.keys(parentEmbeddedUpdate).length > 0) {
|
|
636
|
+
for (let key of Object.keys(parentEmbeddedUpdate)) {
|
|
637
|
+
await document.parent.updateEmbeddedDocuments("Item", parentEmbeddedUpdate[key]);
|
|
638
|
+
}
|
|
639
|
+
}
|
|
640
|
+
if (Object.keys(targetUpdate).length > 0) {
|
|
641
|
+
await context.target.update(targetUpdate);
|
|
642
|
+
}
|
|
643
|
+
if (Object.keys(targetEmbeddedUpdate).length > 0) {
|
|
644
|
+
for (let key of Object.keys(targetEmbeddedUpdate)) {
|
|
645
|
+
await context.target.updateEmbeddedDocuments("Item", targetEmbeddedUpdate[key]);
|
|
646
|
+
}
|
|
647
|
+
}
|
|
648
|
+
if (rerender) {
|
|
649
|
+
this.render();
|
|
650
|
+
}
|
|
651
|
+
}
|
|
652
|
+
`;
|
|
653
|
+
}
|
|
567
654
|
}
|
|
568
655
|
//# sourceMappingURL=vue-sheet-class-generator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vue-sheet-class-generator.js","sourceRoot":"","sources":["../../../../src/cli/components/vue/vue-sheet-class-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAA0B,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,
|
|
1
|
+
{"version":3,"file":"vue-sheet-class-generator.js","sourceRoot":"","sources":["../../../../src/cli/components/vue/vue-sheet-class-generator.ts"],"names":[],"mappings":"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"}
|