intelligent-system-design-language 0.3.23 → 0.3.25

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 (31) hide show
  1. package/out/cli/components/chat-card-generator.js +2 -2
  2. package/out/cli/components/init-hook-generator.js +47 -2
  3. package/out/cli/components/init-hook-generator.js.map +1 -1
  4. package/out/cli/components/language-generator.js +17 -13
  5. package/out/cli/components/language-generator.js.map +1 -1
  6. package/out/cli/components/method-generator.js +68 -19
  7. package/out/cli/components/method-generator.js.map +1 -1
  8. package/out/cli/components/utils.js +34 -1
  9. package/out/cli/components/utils.js.map +1 -1
  10. package/out/cli/generator.js +70 -0
  11. package/out/cli/generator.js.map +1 -1
  12. package/out/extension/main.cjs +2466 -979
  13. package/out/extension/main.cjs.map +3 -3
  14. package/out/extension/package.json +1 -1
  15. package/out/language/generated/ast.js +262 -3
  16. package/out/language/generated/ast.js.map +1 -1
  17. package/out/language/generated/grammar.js +1906 -787
  18. package/out/language/generated/grammar.js.map +1 -1
  19. package/out/language/intelligent-system-design-language-validator.js +112 -3
  20. package/out/language/intelligent-system-design-language-validator.js.map +1 -1
  21. package/out/language/isdl-scope-provider.js +18 -2
  22. package/out/language/isdl-scope-provider.js.map +1 -1
  23. package/out/language/main.cjs +2466 -979
  24. package/out/language/main.cjs.map +3 -3
  25. package/out/package.json +1 -1
  26. package/out/styles.scss +66 -0
  27. package/out/test/validating/diagnostics.test.js +55 -0
  28. package/out/test/validating/diagnostics.test.js.map +1 -1
  29. package/out/test/validating/settings.test.js +94 -0
  30. package/out/test/validating/settings.test.js.map +1 -0
  31. package/package.json +1 -1
@@ -621,9 +621,9 @@ export function generateStandardChatCardTemplate(destination) {
621
621
  </div>
622
622
  </div>
623
623
  {{else}}
624
- <div class="dice-roll wide">
624
+ <div class="dice-roll wide{{#if this.value.crit}} roll--crit{{/if}}{{#if this.value.fumble}} roll--fumble{{/if}}">
625
625
  <div class="dice-result">
626
- <h4 class="dice-total"><i class="fa-solid fa-dice-d20"></i> <span class="dice-info" data-tooltip="{{this.value.cleanFormula}}"><span class="label">{{this.label}}:</span> <span class="formula">{{#if this.value._displayFormula}}{{this.value._displayFormula}}{{else}}{{this.value.cleanFormula}}{{/if}}</span></span> <span class="result">{{this.value._total}}</span></h4>
626
+ <h4 class="dice-total">{{#if this.value.crit}}{{#if this.value.fumble}}<i class="fa-solid fa-yin-yang roll-flag-icon roll-flag-crit-fumble" data-tooltip="{{localize 'ROLL.CritFumble'}}"></i> {{else}}<i class="fa-solid fa-trophy roll-flag-icon roll-flag-crit" data-tooltip="{{localize 'ROLL.Critical'}}"></i> {{/if}}{{else if this.value.fumble}}<i class="fa-solid fa-skull roll-flag-icon roll-flag-fumble" data-tooltip="{{localize 'ROLL.Fumble'}}"></i> {{else}}<i class="fa-solid fa-dice-d20"></i>{{/if}} <span class="dice-info" data-tooltip="{{this.value.cleanFormula}}"><span class="label">{{this.label}}:</span> <span class="formula">{{#if this.value._displayFormula}}{{this.value._displayFormula}}{{else}}{{this.value.cleanFormula}}{{/if}}</span></span> <span class="result">{{this.value._total}}</span></h4>
627
627
  {{{this.tooltip}}}
628
628
  </div>
629
629
  </div>
@@ -1,8 +1,8 @@
1
- import { isAction, isActor, isDocumentCreatableParam, isDocumentDefaultParam, isDocumentDescriptionParam, isDocumentSvgParam, isIconParam, isItem, isPrompt, isResourceExp, isStatusParamWhen, isStatusProperty, isVariableExpression } from "../../language/generated/ast.js";
1
+ import { isAction, isActor, isDocumentCreatableParam, isDocumentDefaultParam, isDocumentDescriptionParam, isDocumentSvgParam, isIconParam, isItem, isPrompt, isResourceExp, isStatusParamWhen, isStatusProperty, isVariableExpression, isBooleanSetting, isNumberSetting, isSettingInitial, isSettingChoices, isSettingHint, } from "../../language/generated/ast.js";
2
2
  import path from "node:path";
3
3
  import fs from "node:fs";
4
4
  import { expandToNode, joinToNode, toString } from "langium/generate";
5
- import { getAllOfType, getPromptIdentity } from "./utils.js";
5
+ import { getAllOfType, getAllSettings, getSettingScope, settingChoiceKey, getPromptIdentity } from "./utils.js";
6
6
  import { collectAllKeywords } from "./keywords-generator.js";
7
7
  export function generateInitHookMjs(entry, id, destination) {
8
8
  var _a, _b, _c, _d, _e, _f;
@@ -55,6 +55,48 @@ export function generateInitHookMjs(entry, id, destination) {
55
55
  label: "${data.label}"` : ''}
56
56
  }`, { separator: ',\n ' }) || expandToNode ``;
57
57
  }
58
+ function generateCustomSettings() {
59
+ const settings = getAllSettings(entry);
60
+ if (settings.length === 0)
61
+ return expandToNode ``;
62
+ function settingType(setting) {
63
+ if (isBooleanSetting(setting))
64
+ return 'Boolean';
65
+ if (isNumberSetting(setting))
66
+ return 'Number';
67
+ return 'String';
68
+ }
69
+ function settingDefault(setting) {
70
+ const initial = setting.params.find(p => isSettingInitial(p));
71
+ if (isBooleanSetting(setting))
72
+ return initial ? `${initial.value}` : 'false';
73
+ if (isNumberSetting(setting))
74
+ return initial ? `${initial.value}` : '0';
75
+ return initial ? `"${initial.value}"` : '""';
76
+ }
77
+ return joinToNode(settings, setting => {
78
+ const name = setting.name.toLowerCase();
79
+ const scope = getSettingScope(setting);
80
+ const hintLine = setting.params.some(p => isSettingHint(p))
81
+ ? `\n hint: game.i18n.localize("SETTINGS.${setting.name}Hint"),`
82
+ : '';
83
+ const choicesParam = setting.params.find(p => isSettingChoices(p));
84
+ const choicesBlock = choicesParam
85
+ ? `,\n choices: {\n`
86
+ + choicesParam.choices.map(c => ` "${c}": game.i18n.localize("${settingChoiceKey(setting, c)}")`).join(',\n')
87
+ + `\n }`
88
+ : '';
89
+ return expandToNode `
90
+ game.settings.register('${id}', '${name}', {
91
+ name: game.i18n.localize("SETTINGS.${setting.name}Name"),${hintLine}
92
+ scope: '${scope}',
93
+ config: true,
94
+ default: ${settingDefault(setting)},
95
+ type: ${settingType(setting)}${choicesBlock}
96
+ });
97
+ `;
98
+ }, { appendNewLineIfNotEmpty: true }) || expandToNode ``;
99
+ }
58
100
  function generateMacroActionConfig(entry) {
59
101
  var _a, _b;
60
102
  const macroEntries = [];
@@ -252,6 +294,9 @@ export function generateInitHookMjs(entry, id, destination) {
252
294
  default: {},
253
295
  type: Object
254
296
  });
297
+
298
+ // Author-declared settings (config { settings { ... } })
299
+ ${generateCustomSettings()}
255
300
  }
256
301
 
257
302
  /* -------------------------------------------- */
@@ -1 +1 @@
1
- {"version":3,"file":"init-hook-generator.js","sourceRoot":"","sources":["../../../src/cli/components/init-hook-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAII,QAAQ,EAAE,OAAO,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,0BAA0B,EACtG,kBAAkB,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EACjD,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,oBAAoB,EAG3E,MAAM,iCAAiC,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAyB,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC5F,OAAO,EAAC,YAAY,EAAE,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAC,kBAAkB,EAAC,MAAM,yBAAyB,CAAC;AAE3D,MAAM,UAAU,mBAAmB,CAAC,KAAY,EAAE,EAAU,EAAE,WAAmB;;IAC7E,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnE,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;IAElE,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,SAAS,6BAA6B,CAAC,QAAkB;QACrD,IAAI,YAAY,GAAG,YAAY,CAAc,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QAC3E,OAAO,YAAY,CAAA;eACZ,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE;0BAChB,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;;;SAG/F,CAAC;IACN,CAAC;IAED,SAAS,oBAAoB,CAAC,QAAwB;;QAClD,IAAI,GAAG,GAAG,MAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAsB,0CAAE,KAAK,CAAC;QACxF,IAAI,CAAC,GAAG,EAAE;YACN,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,MAAM;gBAAE,GAAG,GAAG,qBAAqB,CAAC;;gBACnE,GAAG,GAAG,uBAAuB,CAAC;SACtC;QACD,IAAI,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAChF,OAAO,YAAY,CAAA;;uBAEJ,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE;yBACzB,QAAQ,CAAC,IAAI;0BACZ,QAAQ,CAAC,IAAI;yBACd,GAAG;wBACJ,GAAG;8BACG,UAAU;;SAE/B,CAAC;IACN,CAAC;IAED,SAAS,qBAAqB,CAAC,KAAY;QACvC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAE3C,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC,EAAE;YACrB,OAAO,YAAY,CAAA,EAAE,CAAC;SACzB;QAED,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAC9D,GAAG,GAAG;yBACO,IAAI,CAAC,IAAI;gCACF,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;0BAC3C,IAAI,CAAC,KAAK;yBACX,IAAI,CAAC,IAAI;yBACT,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;0BACzB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE;cAC9B,EACF,EAAE,SAAS,EAAE,aAAa,EAAE,CAC/B,IAAI,YAAY,CAAA,EAAE,CAAC;IACxB,CAAC;IAED,SAAS,yBAAyB,CAAC,KAAY;;QAC3C,MAAM,YAAY,GAAa,EAAE,CAAC;QAElC,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,SAAS,EAAE;YACpC,MAAM,OAAO,GAAG,YAAY,CAAS,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;YACrE,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAEjD,IAAI,WAAW,EAAE;gBACb,MAAM,IAAI,GAAG,MAAA,MAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAe,0CAAE,KAAK,mCAAI,kBAAkB,CAAC;gBACtG,YAAY,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,WAAW,CAAC,IAAI,aAAa,IAAI,KAAK,CAAC,CAAC;aACxJ;SACJ;QAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3B,OAAO,YAAY,CAAA,EAAE,CAAC;SACzB;QAED,OAAO,YAAY,CAAA,GAAG,YAAY,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC;IACrE,CAAC;IAED,SAAS,6BAA6B;QAClC,IAAI,aAAa,GAAG,YAAY,CAAiB,KAAK,CAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;QAC3F,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,YAAY,CAAA;;;;SAIlD,CAAC;QAEF,IAAI,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC;QAEvE,OAAO,YAAY,CAAA;;;kBAGT,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,uEAAuE;;;kBAGtF,UAAU,CAAC,aAAa,EAAE,oBAAoB,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;;;;;;SAM3G,CAAC,aAAa,EAAE,CAAC;IACtB,CAAC;IAGD,IAAI,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAU,CAAC,CAAC;IAC7E,IAAI,gBAAgB,GAAG,MAAA,MAAA,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,0CAAE,IAAI,CAAC,WAAW,EAAE,mCAAI,MAAA,SAAS,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAC,WAAW,EAAE,CAAC;IAC7J,IAAI,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrF,IAAI,iBAAiB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjG,IAAI,eAAe,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7F,IAAI,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAS,CAAC,CAAC;IAC1E,IAAI,eAAe,GAAG,MAAA,MAAA,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,0CAAE,IAAI,CAAC,WAAW,EAAE,mCAAI,MAAA,QAAQ,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAC,WAAW,EAAE,CAAC;IAC1J,IAAI,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnF,IAAI,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/F,IAAI,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3F,SAAS,6BAA6B,CAAC,QAAkB;QACrD,MAAM,OAAO,GAAG,YAAY,CAAS,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QACrE,OAAO,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAA2B,CAAC,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAC;IAClL,CAAC;IAED,SAAS,qBAAqB,CAAC,MAAc,EAAE,QAAkB;QAC7D,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;QAClD,MAAM,eAAe,GAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAEzI,OAAO,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACtC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC9C,OAAO,UAAU,QAAQ,CAAC,IAAI,GAAG,QAAQ,iCAAiC,IAAI,YAAY,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,QAAQ,mBAAmB,CAAC;QACzJ,CAAC,CAAC,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,SAAS,gCAAgC,CAAC,QAAkB;QACxD,MAAM,OAAO,GAAG,YAAY,CAAS,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QACrE,OAAO,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAA2B,CAAC,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;IACtM,CAAC;IAED,SAAS,yBAAyB,CAAC,MAAc,EAAE,QAAkB;QACjE,MAAM,eAAe,GAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAEzI,OAAO,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACtC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC9C,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,QAAQ,KAAK,QAAQ,CAAC,IAAI,GAAG,QAAQ,WAAW,CAAC;QAC7F,CAAC,CAAC,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,QAAQ,GAAG,YAAY,CAAA;UACvB,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC,UAAU,QAAQ,CAAC,IAAI,qCAAqC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC;UAClN,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC,UAAU,QAAQ,CAAC,IAAI,gCAAgC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC;;UAEnN,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,6BAA6B,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC;iBACtF,KAAK,CAAC,MAAM,CAAC,IAAI;iBACjB,KAAK,CAAC,MAAM,CAAC,IAAI;iBACjB,KAAK,CAAC,MAAM,CAAC,IAAI;iBACjB,KAAK,CAAC,MAAM,CAAC,IAAI;iBACjB,KAAK,CAAC,MAAM,CAAC,IAAI;iBACjB,KAAK,CAAC,MAAM,CAAC,IAAI;iBACjB,KAAK,CAAC,MAAM,CAAC,IAAI;iBACjB,KAAK,CAAC,MAAM,CAAC,IAAI;;;;;2BAKP,EAAE;;;;;;;;;;;;;;;;;;;;;;sCAsBS,KAAK,CAAC,MAAM,CAAC,IAAI;4CACX,KAAK,CAAC,MAAM,CAAC,IAAI;qCACxB,KAAK,CAAC,MAAM,CAAC,IAAI;qCACjB,KAAK,CAAC,MAAM,CAAC,IAAI;;;;;;;sCAOhB,EAAE;;;;;;;;;sCASF,EAAE;;;;;;;;;sCASF,EAAE;;;;;;;;;;sCAUF,EAAE;;;;;;;sCAOF,EAAE;;;;;;;;;;;;;;sCAcF,EAAE;;;;;;;sCAOF,EAAE;;;;;;;sCAOF,EAAE;;;;;;;sCAOF,EAAE;;;;;;;;;;;;kBAYtB,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC,IAAI,eAAe,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;;;;kBAInL,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC,IAAI,eAAe,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;;;;;;;;;;;cAWtL,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,yBAAyB,EAAE,MAAM,QAAQ,CAAC,IAAI,uBAAuB,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,0BAA0B,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC;;;cAG9N,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,wBAAwB,EAAE,MAAM,QAAQ,CAAC,IAAI,uBAAuB,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,0BAA0B,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC;;;+DAG3K,EAAE,MAAM,KAAK,CAAC,MAAM,CAAC,IAAI;;;;;;2CAM7C,KAAK,CAAC,MAAM,CAAC,IAAI;0CAClB,KAAK,CAAC,MAAM,CAAC,IAAI;+CACZ,KAAK,CAAC,MAAM,CAAC,IAAI;2CACrB,KAAK,CAAC,MAAM,CAAC,IAAI;;;;;;;;;kBAS1C,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC,gCAAgC,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;;;;;;;;yCAQlF,KAAK,CAAC,MAAM,CAAC,IAAI;;;;;;0CAMhB,gBAAgB;yCACjB,eAAe;;;kBAGtC,UAAU,CAAC,aAAa,EAAE,QAAQ,CAAC,EAAE;;QACnC,MAAM,IAAI,GAAG,MAAA,MAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAsB,0CAAE,KAAK,mCAAI,EAAE,CAAC;QACjG,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC;QAC7E,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,QAAQ,GAAG,CAAC;IAC7D,CAAC,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;;;;kBAInD,UAAU,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE;;QAClC,MAAM,IAAI,GAAG,MAAA,MAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAsB,0CAAE,KAAK,mCAAI,EAAE,CAAC;QACjG,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC;QAC7E,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,QAAQ,GAAG,CAAC;IAC7D,CAAC,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;;;;kBAInD,UAAU,CAAC,iBAAiB,EAAE,QAAQ,CAAC,EAAE,WAAC,OAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,MAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAA8B,0CAAE,KAAK,GAAG,CAAA,EAAA,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;;;kBAGpO,UAAU,CAAC,gBAAgB,EAAE,QAAQ,CAAC,EAAE,WAAC,OAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,MAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAA8B,0CAAE,KAAK,GAAG,CAAA,EAAA,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;;;;kBAInO,UAAU,CAAC,eAAe,EAAE,QAAQ,CAAC,EAAE,WAAC,OAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,MAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAA4B,0CAAE,KAAK,EAAE,CAAA,EAAA,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;;;kBAG5N,UAAU,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE,WAAC,OAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,MAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAA4B,0CAAE,KAAK,EAAE,CAAA,EAAA,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAwC3N,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,6BAA6B,CAAC,QAAQ,CAAC,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;;;;;;UAMnK,6BAA6B,EAAE;;;;;;kBAMvB,yBAAyB,CAAC,KAAK,CAAC;;;;;;;;kBAQhC,qBAAqB,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;gFAkBkC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qEAqKb,EAAE;;;;;;;;;KASlE,CAAC,uBAAuB,EAAE,CAAC;IAE5B,EAAE,CAAC,aAAa,CAAC,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC5D,CAAC"}
1
+ {"version":3,"file":"init-hook-generator.js","sourceRoot":"","sources":["../../../src/cli/components/init-hook-generator.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { isStatusProperty, } from '../../language/generated/ast.js';
2
- import { isSection, isAction, isProperty, isPage, isStringParamChoices, isActor, isItem, isHookHandler, isLabelParam, isLayout, isChoiceStringValue, isStringExtendedChoice, isStringChoiceField, isDamageTypeChoiceField, isStringChoicesField, isVariableExpression, isPrompt, } from "../../language/generated/ast.js";
2
+ import { isSection, isAction, isProperty, isPage, isStringParamChoices, isActor, isItem, isHookHandler, isLabelParam, isLayout, isChoiceStringValue, isStringExtendedChoice, isStringChoiceField, isDamageTypeChoiceField, isStringChoicesField, isVariableExpression, isPrompt, isSettingHint, isSettingChoices, } from "../../language/generated/ast.js";
3
3
  import * as fs from 'node:fs';
4
4
  import * as path from 'node:path';
5
- import { toMachineIdentifier } from "./utils.js";
5
+ import { toMachineIdentifier, getAllSettings, settingChoiceKeySegment } from "./utils.js";
6
6
  export function generateLanguageJson(entry, id, destination) {
7
7
  const generatedFileDir = path.join(destination, `lang`);
8
8
  const generatedFilePath = path.join(generatedFileDir, `en.json`);
@@ -83,19 +83,23 @@ export function generateLanguageJson(entry, id, destination) {
83
83
  [document.name]: Object.assign({ [document.name]: humanize(document.name) }, bodyEntries)
84
84
  };
85
85
  }
86
+ // Author-declared settings: Name + (optional) Hint, plus a nested label map
87
+ // for choice<string> settings. Keys mirror those referenced by the init hook.
88
+ const customSettingEntries = {};
89
+ for (const setting of getAllSettings(entry)) {
90
+ const labelParam = setting.params.find(x => isLabelParam(x));
91
+ customSettingEntries[`${setting.name}Name`] = labelParam ? labelParam.value : humanize(setting.name);
92
+ const hintParam = setting.params.find(x => isSettingHint(x));
93
+ if (hintParam)
94
+ customSettingEntries[`${setting.name}Hint`] = hintParam.value;
95
+ const choicesParam = setting.params.find(x => isSettingChoices(x));
96
+ if (choicesParam) {
97
+ customSettingEntries[setting.name] = Object.fromEntries(choicesParam.choices.map(c => [settingChoiceKeySegment(c), c]));
98
+ }
99
+ }
86
100
  const actors = entry.documents.filter(d => isActor(d));
87
101
  const items = entry.documents.filter(d => isItem(d));
88
- const localization = Object.assign({ NoSingleDocument: 'No Linked Document', EditModeWarning: 'Active Effects are not applied while in Edit mode. Base values are displayed and used for all rolls, calculations and actions.', SendToChat: 'Send to Chat', SETTINGS: {
89
- CreateSystemJournalName: 'Create System Journal',
90
- CreateSystemJournalHint: 'If disabled, the System Journal will not be automatically created on load.',
91
- RoundUpDamageApplicationName: 'Round Up Damage',
92
- RoundUpDamageApplicationHint: 'When enabled, damage is rounded up to the nearest whole number. When disabled, damage is rounded down.',
93
- AllowTargetDamageApplicationName: 'Allow Target Damage Application',
94
- AllowTargetDamageApplicationHint: 'Whether or not to allow damage and healing on chat messages to be applied to targeted tokens in addition to selected tokens. Targeting does not require permissions, so this can allow players and GMs to apply damage to ANY token they can see.',
95
- DamageApplicationChatCardName: 'Damage Application Summary',
96
- DamageApplicationChatCardHint: 'Controls when to send chat cards summarizing damage/healing applications with revert functionality.',
97
- DamageApplicationChatCard: { None: "Don't send", Public: 'Send to All (public message)', GM: 'Send to GM (GM-only message)' }
98
- }, ROLLVISUALIZER: { Min: 'Min', Max: 'Max', Average: 'Average', Simulations: 'simulations', NoFormula: 'No roll to visualize' }, CONTEXT: { ApplyChanges: 'Apply', ApplyDamage: 'As Damage', ApplyHealing: 'As Healing', ApplyTemp: 'As Temporary' }, NOTIFICATIONS: { NoTokenSelected: 'No Token is currently selected', NoTokenTargeted: 'No Token is currently targeted' }, TYPES: {
102
+ const localization = Object.assign({ NoSingleDocument: 'No Linked Document', EditModeWarning: 'Active Effects are not applied while in Edit mode. Base values are displayed and used for all rolls, calculations and actions.', SendToChat: 'Send to Chat', SETTINGS: Object.assign({ CreateSystemJournalName: 'Create System Journal', CreateSystemJournalHint: 'If disabled, the System Journal will not be automatically created on load.', RoundUpDamageApplicationName: 'Round Up Damage', RoundUpDamageApplicationHint: 'When enabled, damage is rounded up to the nearest whole number. When disabled, damage is rounded down.', AllowTargetDamageApplicationName: 'Allow Target Damage Application', AllowTargetDamageApplicationHint: 'Whether or not to allow damage and healing on chat messages to be applied to targeted tokens in addition to selected tokens. Targeting does not require permissions, so this can allow players and GMs to apply damage to ANY token they can see.', DamageApplicationChatCardName: 'Damage Application Summary', DamageApplicationChatCardHint: 'Controls when to send chat cards summarizing damage/healing applications with revert functionality.', DamageApplicationChatCard: { None: "Don't send", Public: 'Send to All (public message)', GM: 'Send to GM (GM-only message)' } }, customSettingEntries), ROLLVISUALIZER: { Min: 'Min', Max: 'Max', Average: 'Average', Simulations: 'simulations', NoFormula: 'No roll to visualize' }, ROLL: { Critical: 'Critical!', Fumble: 'Fumble!', CritFumble: 'Critical Fumble!' }, CONTEXT: { ApplyChanges: 'Apply', ApplyDamage: 'As Damage', ApplyHealing: 'As Healing', ApplyTemp: 'As Temporary' }, NOTIFICATIONS: { NoTokenSelected: 'No Token is currently selected', NoTokenTargeted: 'No Token is currently targeted' }, TYPES: {
99
103
  Actor: Object.assign({ actor: 'Actor' }, Object.fromEntries(actors.map(a => [a.name.toLowerCase(), humanize(a.name)]))),
100
104
  Item: Object.assign({ item: 'Item' }, Object.fromEntries(items.map(i => [i.name.toLowerCase(), humanize(i.name)])))
101
105
  }, EFFECTS: { AddOnce: 'Add Once', TabEffects: 'Effects' }, JOURNAL: {
@@ -1 +1 @@
1
- {"version":3,"file":"language-generator.js","sourceRoot":"","sources":["../../../src/cli/components/language-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"language-generator.js","sourceRoot":"","sources":["../../../src/cli/components/language-generator.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { isRollParam, isTypeParam, } from '../../language/generated/ast.js';
2
- import { isReturnExpression, isAssignment, isBinaryExpression, isGroup, isVariableExpression, isLiteral, isRef, isNegExpression, isAccess, isMethodBlock, isIfStatement, isJS, isChatCard, isFleetingAccess, isHtmlExp, isRoll, isDamageRoll, isParentAccess, isParentAssignment, isVariableAssignment, isWhenExpressions, isShorthandComparisonExpression, isItemAccess, isExpression, isResourceExp, isBooleanExp, isSelfMethod, isAttributeExp, isArrayExpression, isEach, isParameter, isPrompt, isLabelParam, isTargetParam, IntelligentSystemDesignLanguageTerminals, isMathExpression, isMathEmptyExpression, isMathSingleExpression, isMathParamExpression, isInitiativeProperty, isStatusProperty, isUpdate, isUpdateParent, isUpdateSelf, isParentTypeCheckExpression, isParentPropertyRefExp, isSelfPropertyRefExp, isLogExpression, isTrackerExp, isVisibilityValue, isFunctionCall, isAction, isDocument, isIncrementDecrementAssignment, isQuickModifyAssignment, isVariableIncrementDecrementAssignment, isVariableQuickModifyAssignment, isParentIncrementDecrementAssignment, isParentQuickModifyAssignment, isLocationParam, isWidthParam, isHeightParam, isNumberRange, isTargetTypeCheckExpression, isTargetAccess, isTargetIncrementDecrementAssignment, isTargetQuickModifyAssignment, isTargetAssignment, isWait, isPlayAudio, isPlayAudioFile, isPlayAudioVolume, isDieField, isTimeLimitParam, isCombatMethods, isCombatProperty, isUserProperty, isMacroExecute, isMeasuredTemplateField, isStringChoiceField, isDamageTypeChoiceField, isDiceField, isDieChoicesParam, isDocumentChoicesExp, isDocumentChoiceExp, isTableField, isInventoryField, isProperty, isRollVisualizerValueParam, isPromptInputAccess } from "../../language/generated/ast.js";
2
+ import { isReturnExpression, isAssignment, isBinaryExpression, isGroup, isVariableExpression, isLiteral, isRef, isNegExpression, isAccess, isMethodBlock, isIfStatement, isJS, isChatCard, isFleetingAccess, isHtmlExp, isRoll, isDamageRoll, isParentAccess, isParentAssignment, isVariableAssignment, isWhenExpressions, isShorthandComparisonExpression, isItemAccess, isExpression, isResourceExp, isBooleanExp, isSelfMethod, isAttributeExp, isArrayExpression, isEach, isParameter, isPrompt, isLabelParam, isTargetParam, IntelligentSystemDesignLanguageTerminals, isMathExpression, isMathEmptyExpression, isMathSingleExpression, isMathParamExpression, isInitiativeProperty, isStatusProperty, isUpdate, isUpdateParent, isUpdateSelf, isParentTypeCheckExpression, isParentPropertyRefExp, isSelfPropertyRefExp, isLogExpression, isTrackerExp, isVisibilityValue, isFunctionCall, isAction, isDocument, isIncrementDecrementAssignment, isQuickModifyAssignment, isVariableIncrementDecrementAssignment, isVariableQuickModifyAssignment, isParentIncrementDecrementAssignment, isParentQuickModifyAssignment, isLocationParam, isWidthParam, isHeightParam, isNumberRange, isTargetTypeCheckExpression, isTargetAccess, isTargetIncrementDecrementAssignment, isTargetQuickModifyAssignment, isTargetAssignment, isWait, isPlayAudio, isPlayAudioFile, isPlayAudioVolume, isDieField, isTimeLimitParam, isCombatMethods, isCombatProperty, isUserProperty, isSystemSettingAccess, isSystemSettingAssignment, isMacroExecute, isMeasuredTemplateField, isStringChoiceField, isDamageTypeChoiceField, isDiceField, isDieChoicesParam, isDocumentChoicesExp, isDocumentChoiceExp, isTableField, isInventoryField, isProperty, isRollVisualizerValueParam, isPromptInputAccess, isRollResultAccess, isCritParam, isFumbleParam, isSuccessParam, isFailureParam, } from "../../language/generated/ast.js";
3
3
  import { expandToNode, joinToNode } from 'langium/generate';
4
4
  import { getParentDocument, getPromptRegistryKey, getPromptVariable, getSystemPath, getTargetDocument, toMachineIdentifier } from './utils.js';
5
5
  import { AstUtils } from 'langium';
@@ -491,7 +491,7 @@ export function translateDiceData(expression, entry, id, preDerived, generatingP
491
491
  return undefined;
492
492
  }
493
493
  export function translateExpression(entry, id, expression, preDerived = false, generatingProperty = undefined) {
494
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2;
494
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5;
495
495
  function humanize(string) {
496
496
  if (string == undefined) {
497
497
  return "";
@@ -830,12 +830,18 @@ export function translateExpression(entry, id, expression, preDerived = false, g
830
830
  accessPath = `${accessPath}.system`;
831
831
  }
832
832
  }
833
+ const refTargetIsRoll = isVariableExpression(expression.val.ref) && isRoll(expression.val.ref.value);
833
834
  for (const subProperty of (_c = expression.subProperties) !== null && _c !== void 0 ? _c : []) {
834
- if (subProperty.toLowerCase() == "name") {
835
+ const lowerSub = subProperty.toLowerCase();
836
+ if (lowerSub == "name") {
835
837
  accessPath = `${(_d = expression.val.ref) === null || _d === void 0 ? void 0 : _d.name}.name`;
836
838
  }
839
+ else if (refTargetIsRoll && lowerSub == "dice") {
840
+ // Foundry's Roll#dice returns DiceTerms; the face-value array lives on diceFaces.
841
+ accessPath = `${accessPath}.diceFaces`;
842
+ }
837
843
  else {
838
- accessPath = `${accessPath}.${subProperty.toLowerCase()}`;
844
+ accessPath = `${accessPath}.${lowerSub}`;
839
845
  }
840
846
  }
841
847
  // A bare reference to a roll variable (e.g. `fleeting r = roll(d20 + 1)`
@@ -1186,15 +1192,29 @@ export function translateExpression(entry, id, expression, preDerived = false, g
1186
1192
  if (isWhenExpressions(expression)) {
1187
1193
  return translateComparisonExpression(expression);
1188
1194
  }
1195
+ if (isRollResultAccess(expression)) {
1196
+ const target = (_h = expression.variable.ref) === null || _h === void 0 ? void 0 : _h.name;
1197
+ const jsMethod = expression.method === "count" ? "countDice"
1198
+ : expression.method === "contains" ? "containsDie"
1199
+ : expression.method;
1200
+ const arg = expression.arg;
1201
+ const argJs = arg.param != undefined
1202
+ ? expandToNode `(${arg.param.name}) => ${translateExpression(entry, id, arg.body, preDerived, generatingProperty)}`
1203
+ : translateExpression(entry, id, arg.value, preDerived, generatingProperty);
1204
+ return expandToNode `${target}.${jsMethod}(${argJs})`;
1205
+ }
1189
1206
  if (isFleetingAccess(expression)) {
1190
- let accessPath = (_h = expression.variable.ref) === null || _h === void 0 ? void 0 : _h.name;
1207
+ let accessPath = (_j = expression.variable.ref) === null || _j === void 0 ? void 0 : _j.name;
1191
1208
  if (expression.subProperty != undefined) {
1192
- accessPath = `${accessPath}.${fleetingSubProperty(expression)}`;
1209
+ // Foundry's Roll#dice returns DiceTerms; remap r.dice to the face-value getter.
1210
+ const isRollDice = (isRoll((_k = expression.variable.ref) === null || _k === void 0 ? void 0 : _k.value) || isDamageRoll((_l = expression.variable.ref) === null || _l === void 0 ? void 0 : _l.value))
1211
+ && expression.subProperty.toLowerCase() === "dice";
1212
+ accessPath = `${accessPath}.${isRollDice ? "diceFaces" : fleetingSubProperty(expression)}`;
1193
1213
  }
1194
1214
  else if (expression.arrayAccess != undefined) {
1195
1215
  accessPath = `${accessPath}[${translateExpression(entry, id, expression.arrayAccess, preDerived, generatingProperty)}]`;
1196
1216
  }
1197
- else if (isRoll((_j = expression.variable.ref) === null || _j === void 0 ? void 0 : _j.value) || isDamageRoll((_k = expression.variable.ref) === null || _k === void 0 ? void 0 : _k.value)) {
1217
+ else if (isRoll((_m = expression.variable.ref) === null || _m === void 0 ? void 0 : _m.value) || isDamageRoll((_o = expression.variable.ref) === null || _o === void 0 ? void 0 : _o.value)) {
1198
1218
  // A bare reference to a roll variable used in a general expression
1199
1219
  // (comparison, arithmetic, assignment, return, function arg) should
1200
1220
  // use the roll's numeric total rather than the Roll object itself.
@@ -1387,11 +1407,11 @@ export function translateExpression(entry, id, expression, preDerived = false, g
1387
1407
  const typeParam = expression.params.find(isTypeParam);
1388
1408
  let damageTypeDataAccess = '';
1389
1409
  if (isAccess(typeParam.value)) {
1390
- damageTypeDataAccess = `context.object.system.${(_o = (_m = (_l = typeParam.value) === null || _l === void 0 ? void 0 : _l.property) === null || _m === void 0 ? void 0 : _m.ref) === null || _o === void 0 ? void 0 : _o.name.toLowerCase()}`;
1410
+ damageTypeDataAccess = `context.object.system.${(_r = (_q = (_p = typeParam.value) === null || _p === void 0 ? void 0 : _p.property) === null || _q === void 0 ? void 0 : _q.ref) === null || _r === void 0 ? void 0 : _r.name.toLowerCase()}`;
1391
1411
  }
1392
1412
  else if (isParentAccess(typeParam.value)) {
1393
1413
  // Handle parent.SomeDamageType
1394
- const parentPath = (_s = (_r = (_q = (_p = typeParam.value.property) === null || _p === void 0 ? void 0 : _p.ref) === null || _q === void 0 ? void 0 : _q.name) === null || _r === void 0 ? void 0 : _r.toLowerCase()) !== null && _s !== void 0 ? _s : '';
1414
+ const parentPath = (_v = (_u = (_t = (_s = typeParam.value.property) === null || _s === void 0 ? void 0 : _s.ref) === null || _t === void 0 ? void 0 : _t.name) === null || _u === void 0 ? void 0 : _u.toLowerCase()) !== null && _v !== void 0 ? _v : '';
1395
1415
  damageTypeDataAccess = `context.object.parent?.system.${parentPath}`;
1396
1416
  }
1397
1417
  return expandToNode `
@@ -1408,12 +1428,31 @@ export function translateExpression(entry, id, expression, preDerived = false, g
1408
1428
  const displayFormula = displayFormulaParts.every(p => p != null)
1409
1429
  ? displayFormulaParts.join("")
1410
1430
  : undefined;
1431
+ // Build the detection-config options (crit/fumble/success/failure) passed as the
1432
+ // Roll constructor's 3rd arg, so getters can read them off this.options after .roll().
1433
+ const critParam = expression.params.find(isCritParam);
1434
+ const fumbleParam = expression.params.find(isFumbleParam);
1435
+ const successParam = expression.params.find(isSuccessParam);
1436
+ const failureParam = expression.params.find(isFailureParam);
1437
+ const optionEntries = [];
1438
+ const thresholdEntry = (key, p) => { var _a; return expandToNode `${key}: { op: "${(_a = p.op) !== null && _a !== void 0 ? _a : '=='}", value: ${translateExpression(entry, id, p.value, preDerived, generatingProperty)} }`; };
1439
+ if (critParam)
1440
+ optionEntries.push(thresholdEntry("crit", critParam));
1441
+ if (fumbleParam)
1442
+ optionEntries.push(thresholdEntry("fumble", fumbleParam));
1443
+ if (successParam)
1444
+ optionEntries.push(thresholdEntry("success", successParam));
1445
+ if (failureParam)
1446
+ optionEntries.push(thresholdEntry("failure", failureParam));
1447
+ const rollOptions = optionEntries.length > 0
1448
+ ? expandToNode `, { ${joinToNode(optionEntries, e => e, { separator: ", " })} }`
1449
+ : undefined;
1411
1450
  return expandToNode `
1412
1451
  Object.assign(await new ${entry.config.name}Roll(${joinToNode(rollParts, (e, idx) => {
1413
1452
  const nextPart = rollParts[idx + 1];
1414
1453
  const nextIsDice = nextPart != null && isLiteral(nextPart) && typeof nextPart.val === 'string' && IntelligentSystemDesignLanguageTerminals.DICE.test(nextPart.val);
1415
1454
  return translateDiceParts(e, nextIsDice);
1416
- }, { separator: " + " })}, {${joinToNode(rollParts, e => translateDiceData(e, entry, id, preDerived, generatingProperty), { separator: ", " })}}).roll(), ${displayFormula != null ? `{_displayFormula: "${displayFormula}"}` : '{}'})
1455
+ }, { separator: " + " })}, {${joinToNode(rollParts, e => translateDiceData(e, entry, id, preDerived, generatingProperty), { separator: ", " })}}${rollOptions !== null && rollOptions !== void 0 ? rollOptions : ''}).roll(), ${displayFormula != null ? `{_displayFormula: "${displayFormula}"}` : '{}'})
1417
1456
  `;
1418
1457
  }
1419
1458
  if (isSelfMethod(expression)) {
@@ -1464,12 +1503,12 @@ export function translateExpression(entry, id, expression, preDerived = false, g
1464
1503
  })) {
1465
1504
  if (isParentAccess(expression.collection)) {
1466
1505
  updateExpression = expandToNode `
1467
- parentEmbeddedUpdate["${getSystemPath((_t = expression.collection.property) === null || _t === void 0 ? void 0 : _t.ref, [], undefined, false)}"] = ${collection};
1506
+ parentEmbeddedUpdate["${getSystemPath((_w = expression.collection.property) === null || _w === void 0 ? void 0 : _w.ref, [], undefined, false)}"] = ${collection};
1468
1507
  `;
1469
1508
  }
1470
1509
  else if (isTargetAccess(expression.collection)) {
1471
1510
  updateExpression = expandToNode `
1472
- targetEmbeddedUpdate["${getSystemPath((_u = expression.collection.property) === null || _u === void 0 ? void 0 : _u.ref, [], undefined, false)}"] = ${collection};
1511
+ targetEmbeddedUpdate["${getSystemPath((_x = expression.collection.property) === null || _x === void 0 ? void 0 : _x.ref, [], undefined, false)}"] = ${collection};
1473
1512
  `;
1474
1513
  }
1475
1514
  else {
@@ -1487,9 +1526,9 @@ export function translateExpression(entry, id, expression, preDerived = false, g
1487
1526
  }
1488
1527
  if (isPrompt(expression)) {
1489
1528
  const labelParam = expression.params.find(x => isLabelParam(x));
1490
- const title = (_v = labelParam === null || labelParam === void 0 ? void 0 : labelParam.value) !== null && _v !== void 0 ? _v : "Prompt";
1529
+ const title = (_y = labelParam === null || labelParam === void 0 ? void 0 : labelParam.value) !== null && _y !== void 0 ? _y : "Prompt";
1491
1530
  const targetParam = expression.params.find(x => isTargetParam(x));
1492
- const target = (_w = targetParam === null || targetParam === void 0 ? void 0 : targetParam.value) !== null && _w !== void 0 ? _w : "self";
1531
+ const target = (_z = targetParam === null || targetParam === void 0 ? void 0 : targetParam.value) !== null && _z !== void 0 ? _z : "self";
1493
1532
  // Registry key for the generated Vue prompt app (game.system.prompts.<doc><action><variable>).
1494
1533
  const promptAction = AstUtils.getContainerOfType(expression, isAction);
1495
1534
  const promptDocument = AstUtils.getContainerOfType(expression, isDocument);
@@ -1507,7 +1546,7 @@ export function translateExpression(entry, id, expression, preDerived = false, g
1507
1546
  if (timeLimitParam != undefined) {
1508
1547
  let durationMod = "";
1509
1548
  const duration = translateExpression(entry, id, timeLimitParam.value, preDerived, generatingProperty);
1510
- let units = (_x = timeLimitParam.unit) !== null && _x !== void 0 ? _x : "ms";
1549
+ let units = (_0 = timeLimitParam.unit) !== null && _0 !== void 0 ? _0 : "ms";
1511
1550
  if (units === "seconds") {
1512
1551
  durationMod = ` * 1000`;
1513
1552
  }
@@ -1677,7 +1716,7 @@ export function translateExpression(entry, id, expression, preDerived = false, g
1677
1716
  }
1678
1717
  if (isUpdate(expression)) {
1679
1718
  console.log("Translating Update Expression:");
1680
- let systemPath = getSystemPath((_y = expression.property) === null || _y === void 0 ? void 0 : _y.ref, expression.subProperties, (_z = expression.propertyLookup) === null || _z === void 0 ? void 0 : _z.ref, false);
1719
+ let systemPath = getSystemPath((_1 = expression.property) === null || _1 === void 0 ? void 0 : _1.ref, expression.subProperties, (_2 = expression.propertyLookup) === null || _2 === void 0 ? void 0 : _2.ref, false);
1681
1720
  if (isUpdateParent(expression)) {
1682
1721
  return expandToNode `
1683
1722
  parentUpdate["${systemPath}"] = foundry.utils.getProperty(context.object.parent, "system.${systemPath}");
@@ -1707,7 +1746,7 @@ export function translateExpression(entry, id, expression, preDerived = false, g
1707
1746
  // in-scope `system` and no update/await — derived values run synchronously and must be pure.
1708
1747
  if (preDerived) {
1709
1748
  return expandToNode `
1710
- function_${(_0 = expression.method.ref) === null || _0 === void 0 ? void 0 : _0.name}(system${expression.params.length ? ", " : ""}${args})
1749
+ function_${(_3 = expression.method.ref) === null || _3 === void 0 ? void 0 : _3.name}(system${expression.params.length ? ", " : ""}${args})
1711
1750
  `;
1712
1751
  }
1713
1752
  let accessPath = "this";
@@ -1715,7 +1754,7 @@ export function translateExpression(entry, id, expression, preDerived = false, g
1715
1754
  accessPath = "document.sheet";
1716
1755
  }
1717
1756
  return expandToNode `
1718
- await ${accessPath}.function_${(_1 = expression.method.ref) === null || _1 === void 0 ? void 0 : _1.name}(context, update, embeddedUpdate, parentUpdate, parentEmbeddedUpdate, targetUpdate, targetEmbeddedUpdate, ${args})
1757
+ await ${accessPath}.function_${(_4 = expression.method.ref) === null || _4 === void 0 ? void 0 : _4.name}(context, update, embeddedUpdate, parentUpdate, parentEmbeddedUpdate, targetUpdate, targetEmbeddedUpdate, ${args})
1719
1758
  `;
1720
1759
  }
1721
1760
  if (isNumberRange(expression)) {
@@ -1747,7 +1786,7 @@ export function translateExpression(entry, id, expression, preDerived = false, g
1747
1786
  if (!fileParam)
1748
1787
  return undefined;
1749
1788
  const volumeParam = expression.params.find(x => isPlayAudioVolume(x));
1750
- const volume = (_2 = volumeParam === null || volumeParam === void 0 ? void 0 : volumeParam.value) !== null && _2 !== void 0 ? _2 : 0.5;
1789
+ const volume = (_5 = volumeParam === null || volumeParam === void 0 ? void 0 : volumeParam.value) !== null && _5 !== void 0 ? _5 : 0.5;
1751
1790
  return expandToNode `
1752
1791
  await game.system.utils.playSfx(${translateExpression(entry, id, fileParam.value, false, generatingProperty)}, ${translateExpression(entry, id, volume, false, generatingProperty)});
1753
1792
  `;
@@ -1806,6 +1845,16 @@ export function translateExpression(entry, id, expression, preDerived = false, g
1806
1845
  return expandToNode `game.user.name`;
1807
1846
  }
1808
1847
  }
1848
+ if (isSystemSettingAccess(expression)) {
1849
+ const setting = expression.setting.ref;
1850
+ return expandToNode `game.settings.get('${id}', '${setting === null || setting === void 0 ? void 0 : setting.name.toLowerCase()}')`;
1851
+ }
1852
+ if (isSystemSettingAssignment(expression)) {
1853
+ const assignment = expression;
1854
+ const setting = assignment.setting.ref;
1855
+ const value = translateExpression(entry, id, assignment.exp, preDerived, generatingProperty);
1856
+ return expandToNode `await game.settings.set('${id}', '${setting === null || setting === void 0 ? void 0 : setting.name.toLowerCase()}', ${value})`;
1857
+ }
1809
1858
  if (isMacroExecute(expression)) {
1810
1859
  const systemPath = getSystemPath(expression.macro.ref, [], undefined, false);
1811
1860
  return expandToNode `