intelligent-system-design-language 0.3.13

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 (209) hide show
  1. package/.claude/agents/langium-language-designer.md +38 -0
  2. package/.claude/agents/typescript-vscode-expert.md +29 -0
  3. package/.claude/agents/ui-ux-designer.md +36 -0
  4. package/.claude/settings.local.json +33 -0
  5. package/.idea/inspectionProfiles/Project_Default.xml +7 -0
  6. package/.idea/isdl.iml +14 -0
  7. package/.idea/modules.xml +9 -0
  8. package/.idea/vcs.xml +7 -0
  9. package/.idea/watcherTasks.xml +4 -0
  10. package/.vscodeignore +18 -0
  11. package/LICENSE +674 -0
  12. package/README.md +86 -0
  13. package/bin/cli.js +4 -0
  14. package/bin/lsp.js +8 -0
  15. package/isdl.png +0 -0
  16. package/out/_backgrounds.scss +91 -0
  17. package/out/_handlebars.scss +505 -0
  18. package/out/_isdlStyles.scss +1357 -0
  19. package/out/_vuetifyOverrides.scss +425 -0
  20. package/out/_vuetifyStyles.scss +31957 -0
  21. package/out/cli/cli-util.js +39 -0
  22. package/out/cli/cli-util.js.map +1 -0
  23. package/out/cli/components/_backgrounds.scss +91 -0
  24. package/out/cli/components/_handlebars.scss +505 -0
  25. package/out/cli/components/_isdlStyles.scss +1357 -0
  26. package/out/cli/components/_vuetifyOverrides.scss +425 -0
  27. package/out/cli/components/_vuetifyStyles.scss +31957 -0
  28. package/out/cli/components/active-effect-sheet-generator.js +643 -0
  29. package/out/cli/components/active-effect-sheet-generator.js.map +1 -0
  30. package/out/cli/components/base-actor-sheet-generator.js +125 -0
  31. package/out/cli/components/base-actor-sheet-generator.js.map +1 -0
  32. package/out/cli/components/base-sheet-generator.js +525 -0
  33. package/out/cli/components/base-sheet-generator.js.map +1 -0
  34. package/out/cli/components/chat-card-generator.js +683 -0
  35. package/out/cli/components/chat-card-generator.js.map +1 -0
  36. package/out/cli/components/css-generator.js +58 -0
  37. package/out/cli/components/css-generator.js.map +1 -0
  38. package/out/cli/components/damage-roll-generator.js +173 -0
  39. package/out/cli/components/damage-roll-generator.js.map +1 -0
  40. package/out/cli/components/datamodel-generator.js +672 -0
  41. package/out/cli/components/datamodel-generator.js.map +1 -0
  42. package/out/cli/components/derived-data-generator.js +1340 -0
  43. package/out/cli/components/derived-data-generator.js.map +1 -0
  44. package/out/cli/components/hotbar-drop-hook-generator.js +95 -0
  45. package/out/cli/components/hotbar-drop-hook-generator.js.map +1 -0
  46. package/out/cli/components/init-hook-generator.js +597 -0
  47. package/out/cli/components/init-hook-generator.js.map +1 -0
  48. package/out/cli/components/keywords-generator.js +220 -0
  49. package/out/cli/components/keywords-generator.js.map +1 -0
  50. package/out/cli/components/language-generator.js +110 -0
  51. package/out/cli/components/language-generator.js.map +1 -0
  52. package/out/cli/components/measured-template-preview.js +234 -0
  53. package/out/cli/components/measured-template-preview.js.map +1 -0
  54. package/out/cli/components/method-generator.js +1812 -0
  55. package/out/cli/components/method-generator.js.map +1 -0
  56. package/out/cli/components/ready-hook-generator.js +448 -0
  57. package/out/cli/components/ready-hook-generator.js.map +1 -0
  58. package/out/cli/components/token-generator.js +138 -0
  59. package/out/cli/components/token-generator.js.map +1 -0
  60. package/out/cli/components/utils.js +176 -0
  61. package/out/cli/components/utils.js.map +1 -0
  62. package/out/cli/components/vue/base-components/vue-attribute.js +148 -0
  63. package/out/cli/components/vue/base-components/vue-attribute.js.map +1 -0
  64. package/out/cli/components/vue/base-components/vue-boolean.js +77 -0
  65. package/out/cli/components/vue/base-components/vue-boolean.js.map +1 -0
  66. package/out/cli/components/vue/base-components/vue-calculator.js +106 -0
  67. package/out/cli/components/vue/base-components/vue-calculator.js.map +1 -0
  68. package/out/cli/components/vue/base-components/vue-damage-application.js +369 -0
  69. package/out/cli/components/vue/base-components/vue-damage-application.js.map +1 -0
  70. package/out/cli/components/vue/base-components/vue-damage-bonuses.js +225 -0
  71. package/out/cli/components/vue/base-components/vue-damage-bonuses.js.map +1 -0
  72. package/out/cli/components/vue/base-components/vue-damage-resistances.js +256 -0
  73. package/out/cli/components/vue/base-components/vue-damage-resistances.js.map +1 -0
  74. package/out/cli/components/vue/base-components/vue-damage-track.js +134 -0
  75. package/out/cli/components/vue/base-components/vue-damage-track.js.map +1 -0
  76. package/out/cli/components/vue/base-components/vue-date-time.js +55 -0
  77. package/out/cli/components/vue/base-components/vue-date-time.js.map +1 -0
  78. package/out/cli/components/vue/base-components/vue-dice.js +111 -0
  79. package/out/cli/components/vue/base-components/vue-dice.js.map +1 -0
  80. package/out/cli/components/vue/base-components/vue-die.js +86 -0
  81. package/out/cli/components/vue/base-components/vue-die.js.map +1 -0
  82. package/out/cli/components/vue/base-components/vue-document-choice.js +172 -0
  83. package/out/cli/components/vue/base-components/vue-document-choice.js.map +1 -0
  84. package/out/cli/components/vue/base-components/vue-document-choices.js +203 -0
  85. package/out/cli/components/vue/base-components/vue-document-choices.js.map +1 -0
  86. package/out/cli/components/vue/base-components/vue-document-link.js +73 -0
  87. package/out/cli/components/vue/base-components/vue-document-link.js.map +1 -0
  88. package/out/cli/components/vue/base-components/vue-extended-choice.js +101 -0
  89. package/out/cli/components/vue/base-components/vue-extended-choice.js.map +1 -0
  90. package/out/cli/components/vue/base-components/vue-inventory.js +532 -0
  91. package/out/cli/components/vue/base-components/vue-inventory.js.map +1 -0
  92. package/out/cli/components/vue/base-components/vue-macro-choice.js +150 -0
  93. package/out/cli/components/vue/base-components/vue-macro-choice.js.map +1 -0
  94. package/out/cli/components/vue/base-components/vue-measured-template.js +543 -0
  95. package/out/cli/components/vue/base-components/vue-measured-template.js.map +1 -0
  96. package/out/cli/components/vue/base-components/vue-money.js +496 -0
  97. package/out/cli/components/vue/base-components/vue-money.js.map +1 -0
  98. package/out/cli/components/vue/base-components/vue-number.js +184 -0
  99. package/out/cli/components/vue/base-components/vue-number.js.map +1 -0
  100. package/out/cli/components/vue/base-components/vue-paperdoll.js +56 -0
  101. package/out/cli/components/vue/base-components/vue-paperdoll.js.map +1 -0
  102. package/out/cli/components/vue/base-components/vue-parent-property-reference.js +89 -0
  103. package/out/cli/components/vue/base-components/vue-parent-property-reference.js.map +1 -0
  104. package/out/cli/components/vue/base-components/vue-prosemirror.js +31 -0
  105. package/out/cli/components/vue/base-components/vue-prosemirror.js.map +1 -0
  106. package/out/cli/components/vue/base-components/vue-resource.js +149 -0
  107. package/out/cli/components/vue/base-components/vue-resource.js.map +1 -0
  108. package/out/cli/components/vue/base-components/vue-roll-visualizer.js +121 -0
  109. package/out/cli/components/vue/base-components/vue-roll-visualizer.js.map +1 -0
  110. package/out/cli/components/vue/base-components/vue-self-property-reference.js +75 -0
  111. package/out/cli/components/vue/base-components/vue-self-property-reference.js.map +1 -0
  112. package/out/cli/components/vue/base-components/vue-string-choice.js +111 -0
  113. package/out/cli/components/vue/base-components/vue-string-choice.js.map +1 -0
  114. package/out/cli/components/vue/base-components/vue-string-choices.js +216 -0
  115. package/out/cli/components/vue/base-components/vue-string-choices.js.map +1 -0
  116. package/out/cli/components/vue/base-components/vue-string.js +73 -0
  117. package/out/cli/components/vue/base-components/vue-string.js.map +1 -0
  118. package/out/cli/components/vue/base-components/vue-text-field.js +66 -0
  119. package/out/cli/components/vue/base-components/vue-text-field.js.map +1 -0
  120. package/out/cli/components/vue/base-components/vue-tracker.js +444 -0
  121. package/out/cli/components/vue/base-components/vue-tracker.js.map +1 -0
  122. package/out/cli/components/vue/vue-action-component-generator.js +88 -0
  123. package/out/cli/components/vue/vue-action-component-generator.js.map +1 -0
  124. package/out/cli/components/vue/vue-active-effect-sheet-generator.js +1016 -0
  125. package/out/cli/components/vue/vue-active-effect-sheet-generator.js.map +1 -0
  126. package/out/cli/components/vue/vue-base-components-generator.js +59 -0
  127. package/out/cli/components/vue/vue-base-components-generator.js.map +1 -0
  128. package/out/cli/components/vue/vue-datatable-component-generator.js +307 -0
  129. package/out/cli/components/vue/vue-datatable-component-generator.js.map +1 -0
  130. package/out/cli/components/vue/vue-datatable-sheet-class-generator.js +342 -0
  131. package/out/cli/components/vue/vue-datatable-sheet-class-generator.js.map +1 -0
  132. package/out/cli/components/vue/vue-datatable2-component-generator.js +939 -0
  133. package/out/cli/components/vue/vue-datatable2-component-generator.js.map +1 -0
  134. package/out/cli/components/vue/vue-document-creation-app.js +140 -0
  135. package/out/cli/components/vue/vue-document-creation-app.js.map +1 -0
  136. package/out/cli/components/vue/vue-document-creation-sheet.js +105 -0
  137. package/out/cli/components/vue/vue-document-creation-sheet.js.map +1 -0
  138. package/out/cli/components/vue/vue-generator.js +240 -0
  139. package/out/cli/components/vue/vue-generator.js.map +1 -0
  140. package/out/cli/components/vue/vue-mixin.js +338 -0
  141. package/out/cli/components/vue/vue-mixin.js.map +1 -0
  142. package/out/cli/components/vue/vue-pinned-datatable-component-generator.js +306 -0
  143. package/out/cli/components/vue/vue-pinned-datatable-component-generator.js.map +1 -0
  144. package/out/cli/components/vue/vue-prompt-generator.js +201 -0
  145. package/out/cli/components/vue/vue-prompt-generator.js.map +1 -0
  146. package/out/cli/components/vue/vue-prompt-sheet-class-generator.js +252 -0
  147. package/out/cli/components/vue/vue-prompt-sheet-class-generator.js.map +1 -0
  148. package/out/cli/components/vue/vue-sheet-application-generator.js +2008 -0
  149. package/out/cli/components/vue/vue-sheet-application-generator.js.map +1 -0
  150. package/out/cli/components/vue/vue-sheet-class-generator.js +484 -0
  151. package/out/cli/components/vue/vue-sheet-class-generator.js.map +1 -0
  152. package/out/cli/generator.js +659 -0
  153. package/out/cli/generator.js.map +1 -0
  154. package/out/cli/main.js +43 -0
  155. package/out/cli/main.js.map +1 -0
  156. package/out/datatables.min.css +54 -0
  157. package/out/datatables.min.js +178 -0
  158. package/out/extension/github/githubAuthProvider.js +345 -0
  159. package/out/extension/github/githubAuthProvider.js.map +1 -0
  160. package/out/extension/github/githubConfig.js +132 -0
  161. package/out/extension/github/githubConfig.js.map +1 -0
  162. package/out/extension/github/githubGistActions.js +251 -0
  163. package/out/extension/github/githubGistActions.js.map +1 -0
  164. package/out/extension/github/githubGistManager.js +255 -0
  165. package/out/extension/github/githubGistManager.js.map +1 -0
  166. package/out/extension/github/githubManager.js +1735 -0
  167. package/out/extension/github/githubManager.js.map +1 -0
  168. package/out/extension/github/githubQuickActions.js +659 -0
  169. package/out/extension/github/githubQuickActions.js.map +1 -0
  170. package/out/extension/github/githubTreeProvider.js +181 -0
  171. package/out/extension/github/githubTreeProvider.js.map +1 -0
  172. package/out/extension/github/system-workflow.yml +48 -0
  173. package/out/extension/main.cjs +70315 -0
  174. package/out/extension/main.cjs.map +7 -0
  175. package/out/extension/main.js +237 -0
  176. package/out/extension/main.js.map +1 -0
  177. package/out/extension/package.json +426 -0
  178. package/out/isdl.png +0 -0
  179. package/out/language/generated/ast.js +2992 -0
  180. package/out/language/generated/ast.js.map +1 -0
  181. package/out/language/generated/grammar.js +13970 -0
  182. package/out/language/generated/grammar.js.map +1 -0
  183. package/out/language/generated/module.js +20 -0
  184. package/out/language/generated/module.js.map +1 -0
  185. package/out/language/intelligent-system-design-language-formatter.js +85 -0
  186. package/out/language/intelligent-system-design-language-formatter.js.map +1 -0
  187. package/out/language/intelligent-system-design-language-module.js +69 -0
  188. package/out/language/intelligent-system-design-language-module.js.map +1 -0
  189. package/out/language/intelligent-system-design-language-quickfixes.js +37 -0
  190. package/out/language/intelligent-system-design-language-quickfixes.js.map +1 -0
  191. package/out/language/intelligent-system-design-language-validator.js +515 -0
  192. package/out/language/intelligent-system-design-language-validator.js.map +1 -0
  193. package/out/language/isdl-hover-provider.js +77 -0
  194. package/out/language/isdl-hover-provider.js.map +1 -0
  195. package/out/language/isdl-scope-provider.js +149 -0
  196. package/out/language/isdl-scope-provider.js.map +1 -0
  197. package/out/language/main.cjs +47655 -0
  198. package/out/language/main.cjs.map +7 -0
  199. package/out/language/main.js +11 -0
  200. package/out/language/main.js.map +1 -0
  201. package/out/missing-character.png +0 -0
  202. package/out/package.json +426 -0
  203. package/out/paperdoll_default.png +0 -0
  204. package/out/progressbar.min.js +7 -0
  205. package/out/styles.scss +722 -0
  206. package/out/test/formatting/formatter.test.js +46 -0
  207. package/out/test/formatting/formatter.test.js.map +1 -0
  208. package/out/vuetify.esm.js +30279 -0
  209. package/package.json +426 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"method-generator.js","sourceRoot":"","sources":["../../../src/cli/components/method-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,448 @@
1
+ import { isConfigExpression } from "../../language/generated/ast.js";
2
+ import path from "node:path";
3
+ import fs from "node:fs";
4
+ import { expandToNode, toString } from "langium/generate";
5
+ import { collectAllStatusEffects } from "./keywords-generator.js";
6
+ export function generateReadyHookMjs(entry, id, destination) {
7
+ var _a, _b;
8
+ const generatedFileDir = path.join(destination, "system", "hooks");
9
+ const generatedFilePath = path.join(generatedFileDir, `ready.mjs`);
10
+ // Extract system label for journal naming
11
+ const systemLabel = ((_b = (_a = entry.config.body.find(x => isConfigExpression(x) && x.type === "label")) === null || _a === void 0 ? void 0 : _a.value) === null || _b === void 0 ? void 0 : _b.replace(/['"]/g, '')) || id;
12
+ // Collect status effects with conditions at build time
13
+ const statusEffectsMap = collectAllStatusEffects(entry);
14
+ const statusEffectsData = Object.fromEntries(statusEffectsMap);
15
+ if (!fs.existsSync(generatedFileDir)) {
16
+ fs.mkdirSync(generatedFileDir, { recursive: true });
17
+ }
18
+ const fileNode = expandToNode `
19
+ export async function ready() {
20
+ console.log('${id} | Ready');
21
+
22
+ registerSockets();
23
+ //moveVuetifyStyles();
24
+ reopenLastState();
25
+ indexPacks();
26
+ await createKeywordJournals();
27
+
28
+ function getTargetOrNothing() {
29
+ if (game.user.targets.size > 0) {
30
+ const firstTarget = game.user.targets.first();
31
+ return firstTarget.actor;
32
+ }
33
+ return null;
34
+ }
35
+ // Attach to game.user
36
+ game.user.getTargetOrNothing = getTargetOrNothing;
37
+ }
38
+
39
+ /* -------------------------------------------- */
40
+
41
+ function registerSockets() {
42
+ game.socket.on("system.${id}", (data) => {
43
+ console.log("Socket Data", data);
44
+
45
+ if (data.type === "prompt") {
46
+ _handlePrompt(data);
47
+ }
48
+ else if (data.type === "combat") {
49
+ _handleCombat(data);
50
+ }
51
+ });
52
+ }
53
+
54
+ /* -------------------------------------------- */
55
+
56
+ async function _handlePrompt(message) {
57
+ await new Promise(async (resolve, reject) => {
58
+ if (message.timeLimit && message.timeLimit > 0) {
59
+ setTimeout(() => {
60
+ console.warn("Prompt timed out:", message.uuid);
61
+ // Find the window from ui.windows with the uuid
62
+ const dialog = Object.values(ui.windows).find(w => w.options.classes.includes("dialog") && w.options.classes.includes("prompt") && w.options.classes.includes(message.uuid));
63
+ if (dialog) {
64
+ dialog.close();
65
+ }
66
+ game.socket.emit("system.${id}", {
67
+ type: "promptResponse",
68
+ uuid: message.uuid,
69
+ data: {}
70
+ }, { recipients: [message.userId] });
71
+ resolve();
72
+ }, message.timeLimit);
73
+ }
74
+ Dialog.prompt({
75
+ title: message.title,
76
+ content: message.content,
77
+ callback: (html, event) => {
78
+ // Grab the form data
79
+ const formData = new FormDataExtended(html[0].querySelector("form"));
80
+ const data = { system: {} };
81
+ for (const [key, value] of formData.entries()) {
82
+ // Translate values to more helpful ones, such as booleans and numbers
83
+ if (value === "true") {
84
+ data[key] = true;
85
+ data.system[key] = true;
86
+ }
87
+ else if (value === "false") {
88
+ data[key] = false;
89
+ data.system[key] = false;
90
+ }
91
+ else if (!isNaN(value)) {
92
+ data[key] = parseInt(value);
93
+ data.system[key] = parseInt(value);
94
+ }
95
+ else if (value === "null") {
96
+ data[key] = null;
97
+ data.system[key] = null;
98
+ }
99
+ else {
100
+ data[key] = value;
101
+ data.system[key] = value;
102
+ }
103
+ }
104
+
105
+ game.socket.emit("system.${id}", {
106
+ type: "promptResponse",
107
+ uuid: message.uuid,
108
+ data: data
109
+ }, { recipients: [message.userId] });
110
+
111
+ resolve();
112
+ return data;
113
+ },
114
+ options: {
115
+ classes: ["${id}", "dialog", "prompt", message.uuid],
116
+ width: message.width,
117
+ height: message.height,
118
+ left: message.left,
119
+ top: message.top,
120
+ }
121
+ });
122
+ });
123
+ }
124
+
125
+ /* -------------------------------------------- */
126
+
127
+ async function _handleCombat(message) {
128
+ switch(message.method) {
129
+ case "nextTurn": game.combat.nextTurn(); break;
130
+ case "endCombat": game.combat.endCombat(); break;
131
+ }
132
+ }
133
+
134
+ /* -------------------------------------------- */
135
+
136
+ function moveVuetifyStyles() {
137
+
138
+ const observer = new MutationObserver((mutationsList) => {
139
+ for (const mutation of mutationsList) {
140
+ if (mutation.type === "childList") {
141
+ const themeStylesheet = document.getElementById("vuetify-theme-stylesheet");
142
+ if (themeStylesheet) {
143
+ console.log("Vuetify theme stylesheet loaded:", themeStylesheet);
144
+
145
+ // Create a new style node
146
+ const vuetifyThemeOverrides = document.createElement("style");
147
+ vuetifyThemeOverrides.id = "vuetify-theme-overrides";
148
+ vuetifyThemeOverrides.innerHTML = \`
149
+ .v-theme--light {
150
+ --v-disabled-opacity: 0.7;
151
+ }
152
+ \`;
153
+
154
+ document.head.insertAdjacentElement('beforeEnd', vuetifyThemeOverrides);
155
+
156
+ // Perform any modifications or actions here
157
+ observer.disconnect(); // Stop observing once found
158
+ }
159
+ }
160
+ }
161
+ });
162
+
163
+ // Observe the <head> for new styles being added
164
+ observer.observe(document.head, { childList: true, subtree: true });
165
+ }
166
+
167
+ /* -------------------------------------------- */
168
+
169
+ function reopenLastState() {
170
+ const lastState = game.settings.get("${id}", "hotReloadLastState");
171
+ if (lastState.openWindows.length > 0) {
172
+ for (const window of lastState.openWindows) {
173
+ const document = fromUuidSync(window.uuid);
174
+ const app = document.sheet;
175
+ if (app) {
176
+ try {
177
+ app.render(true).setPosition(window.position);
178
+ }
179
+ catch (e) {}
180
+ }
181
+ }
182
+ }
183
+ game.settings.set("${id}", "hotReloadLastState", { openWindows: [] });
184
+ }
185
+
186
+ /* -------------------------------------------- */
187
+
188
+ function indexPacks() {
189
+ for (const pack of game.packs) {
190
+ pack.getIndex({ fields: ['system.description', 'system'] });
191
+ }
192
+ }
193
+
194
+ /* -------------------------------------------- */
195
+
196
+ async function createKeywordJournals() {
197
+ if (!game.user.isGM || (!game.system.keywords && !game.system.statusEffects)) return;
198
+ if (!game.settings.get("${id}", "createSystemJournal")) return;
199
+
200
+ // Create System folder if it doesn't exist
201
+ let keywordsFolder = game.folders.find(f => f.name === game.i18n.localize("JOURNAL.System") && f.type === "JournalEntry");
202
+ if (!keywordsFolder) {
203
+ keywordsFolder = await Folder.create({
204
+ name: game.i18n.localize("JOURNAL.System"),
205
+ type: "JournalEntry",
206
+ color: "#42a5f5",
207
+ parent: null,
208
+ sort: 0
209
+ });
210
+ }
211
+
212
+ // Find or create the system documentation journal
213
+ let keywordsJournal = game.journal.find(j => j.getFlag('${id}', 'systemJournal') === true);
214
+
215
+ if (!keywordsJournal) {
216
+ // Create the main system documentation journal
217
+ const journalData = {
218
+ name: "${systemLabel}",
219
+ folder: keywordsFolder.id,
220
+ flags: {
221
+ core: {
222
+ keywordsJournal: true // Legacy compatibility
223
+ },
224
+ '${id}': {
225
+ systemJournal: true,
226
+ version: game.system.version
227
+ }
228
+ }
229
+ };
230
+
231
+ keywordsJournal = await JournalEntry.create(journalData);
232
+ }
233
+
234
+ // Separate keywords by type
235
+ const regularKeywords = {};
236
+ const damageTypes = {};
237
+
238
+ if (game.system.keywords) {
239
+ for (const [keywordKey, keywordData] of Object.entries(game.system.keywords)) {
240
+ if (keywordData.type === 'damage-type') {
241
+ damageTypes[keywordKey] = keywordData;
242
+ } else {
243
+ regularKeywords[keywordKey] = keywordData;
244
+ }
245
+ }
246
+ }
247
+
248
+ // Use pre-collected status effects data with conditions
249
+ const statusEffects = ${JSON.stringify(statusEffectsData, null, 12).split('\n').join('\n ')};
250
+
251
+ // Check and create/update Keywords page
252
+ let keywordsPage = keywordsJournal.pages.find(p => p.getFlag('core', 'pageType') === 'keywords');
253
+ if (Object.keys(regularKeywords).length > 0) {
254
+ const keywordsContent = generateKeywordsPageContent(regularKeywords);
255
+
256
+ if (!keywordsPage) {
257
+ // Create new page
258
+ const keywordsPageData = {
259
+ name: game.i18n.localize("JOURNAL.Keywords"),
260
+ type: "text",
261
+ title: {
262
+ show: true,
263
+ level: 1
264
+ },
265
+ text: {
266
+ content: keywordsContent,
267
+ format: 1 // HTML format
268
+ },
269
+ flags: {
270
+ core: {
271
+ pageType: 'keywords'
272
+ }
273
+ }
274
+ };
275
+
276
+ await keywordsJournal.createEmbeddedDocuments("JournalEntryPage", [keywordsPageData]);
277
+ } else {
278
+ // Update existing page content
279
+ await keywordsPage.update({
280
+ "text.content": keywordsContent
281
+ });
282
+ }
283
+ }
284
+
285
+ // Check and create/update Damage Types page
286
+ let damageTypesPage = keywordsJournal.pages.find(p => p.getFlag('core', 'pageType') === 'damage-types');
287
+ if (Object.keys(damageTypes).length > 0) {
288
+ const damageTypesContent = generateDamageTypesPageContent(damageTypes);
289
+
290
+ if (!damageTypesPage) {
291
+ // Create new page
292
+ const damageTypesPageData = {
293
+ name: game.i18n.localize("JOURNAL.DamageTypes"),
294
+ type: "text",
295
+ title: {
296
+ show: true,
297
+ level: 1
298
+ },
299
+ text: {
300
+ content: damageTypesContent,
301
+ format: 1 // HTML format
302
+ },
303
+ flags: {
304
+ core: {
305
+ pageType: 'damage-types'
306
+ }
307
+ }
308
+ };
309
+
310
+ await keywordsJournal.createEmbeddedDocuments("JournalEntryPage", [damageTypesPageData]);
311
+ } else {
312
+ // Update existing page content
313
+ await damageTypesPage.update({
314
+ "text.content": damageTypesContent
315
+ });
316
+ }
317
+ }
318
+
319
+ // Check and create/update Status Effects page
320
+ let statusEffectsPage = keywordsJournal.pages.find(p => p.getFlag('core', 'pageType') === 'status-effects');
321
+ if (Object.keys(statusEffects).length > 0) {
322
+ const statusEffectsContent = generateStatusEffectsPageContent(statusEffects);
323
+
324
+ if (!statusEffectsPage) {
325
+ // Create new page
326
+ const statusEffectsPageData = {
327
+ name: game.i18n.localize("JOURNAL.StatusEffects"),
328
+ type: "text",
329
+ title: {
330
+ show: true,
331
+ level: 1
332
+ },
333
+ text: {
334
+ content: statusEffectsContent,
335
+ format: 1 // HTML format
336
+ },
337
+ flags: {
338
+ core: {
339
+ pageType: 'status-effects'
340
+ }
341
+ }
342
+ };
343
+
344
+ await keywordsJournal.createEmbeddedDocuments("JournalEntryPage", [statusEffectsPageData]);
345
+ } else {
346
+ // Update existing page content
347
+ await statusEffectsPage.update({
348
+ "text.content": statusEffectsContent
349
+ });
350
+ }
351
+ }
352
+ }
353
+
354
+ function generateKeywordsPageContent(keywords) {
355
+ let content = \`<div class="isdl-journal-section">
356
+ <div class="isdl-journal-info-box">
357
+ <div class="isdl-journal-info-title">\${game.i18n.localize("JOURNAL.KeywordsUsageTitle")}</div>
358
+ <ul class="isdl-journal-info-list">
359
+ <li>\${game.i18n.localize("JOURNAL.KeywordsUsageList.GameMechanics")}</li>
360
+ <li>\${game.i18n.localize("JOURNAL.KeywordsUsageList.References")}</li>
361
+ <li>\${game.i18n.localize("JOURNAL.KeywordsUsageList.Documentation")}</li>
362
+ </ul>
363
+ </div>
364
+ </div>\`;
365
+
366
+ for (const [keywordKey, keyword] of Object.entries(keywords)) {
367
+ content += \`<div class="isdl-keyword-entry" id="\${keywordKey}" style="border-left-color: \${keyword.color};">
368
+ <div class="isdl-journal-header">
369
+ \${keyword.icon ? \`<i class="\${keyword.icon} isdl-journal-icon" style="color: \${keyword.color};"></i>\` : ''}
370
+ <h3 class="isdl-journal-title">\${keyword.name}</h3>
371
+ <span class="isdl-journal-badge" style="background: \${keyword.color}20;">\${game.i18n.localize("JOURNAL.KeywordBadge")}</span>
372
+ </div>
373
+ \${keyword.description ? \`<div class="isdl-journal-description"><p>\${keyword.description}</p></div>\` : ''}
374
+ </div>\`;
375
+ }
376
+
377
+ return content;
378
+ }
379
+
380
+ function generateDamageTypesPageContent(damageTypes) {
381
+ let content = \`<div class="isdl-journal-section">
382
+ <div class="isdl-journal-info-box">
383
+ <div class="isdl-journal-info-title">\${game.i18n.localize("JOURNAL.DamageTypeEffectsTitle")}</div>
384
+ <ul class="isdl-journal-info-list">
385
+ <li>\${game.i18n.localize("JOURNAL.DamageTypeEffectsList.Usage")}</li>
386
+ <li>\${game.i18n.localize("JOURNAL.DamageTypeEffectsList.Resistances")}</li>
387
+ <li>\${game.i18n.localize("JOURNAL.DamageTypeEffectsList.ChoiceFields")}</li>
388
+ </ul>
389
+ </div>
390
+ </div>\`;
391
+
392
+ for (const [keywordKey, keyword] of Object.entries(damageTypes)) {
393
+ content += \`<div class="isdl-damage-type-entry" id="\${keywordKey}" style="border-left-color: \${keyword.color};">
394
+ <div class="isdl-journal-header">
395
+ \${keyword.icon ? \`<i class="\${keyword.icon} isdl-journal-icon" style="color: \${keyword.color};"></i>\` : ''}
396
+ <h3 class="isdl-journal-title" style="color: \${keyword.color};">\${keyword.name}</h3>
397
+ <span class="isdl-journal-badge" style="background: \${keyword.color}20;">\${game.i18n.localize("JOURNAL.DamageTypeBadge")}</span>
398
+ </div>
399
+ \${keyword.description ? \`<div class="isdl-journal-description"><p>\${keyword.description}</p></div>\` : ''}
400
+ </div>\`;
401
+ }
402
+
403
+ return content;
404
+ }
405
+
406
+ function localizeConditionText(conditionText) {
407
+ if (!conditionText) return conditionText;
408
+
409
+ // Replace localization key patterns {{KEY}} with actual translations
410
+ return conditionText.replace(/\{\{([^}]+)\}\}/g, (match, key) => {
411
+ return game.i18n.localize(key);
412
+ });
413
+ }
414
+
415
+ function generateStatusEffectsPageContent(statusEffects) {
416
+ let content = \`<div class="isdl-journal-section">
417
+ <div class="isdl-journal-info-box">
418
+ <div class="isdl-journal-info-title">\${game.i18n.localize("JOURNAL.StatusEffectUsageTitle")}</div>
419
+ <ul class="isdl-journal-info-list">
420
+ <li>\${game.i18n.localize("JOURNAL.StatusEffectUsageList.TokenApplication")}</li>
421
+ <li>\${game.i18n.localize("JOURNAL.StatusEffectUsageList.MenuAppearance")}</li>
422
+ <li>\${game.i18n.localize("JOURNAL.StatusEffectUsageList.VisualIndicators")}</li>
423
+ </ul>
424
+ </div>
425
+ </div>\`;
426
+ for (const [statusId, statusEffect] of Object.entries(statusEffects)) {
427
+ const isDeathEffect = statusEffect.isDeath || statusId.toLowerCase().includes('dead');
428
+ const effectColor = isDeathEffect ? '#dc2626' : '#4f46e5';
429
+ const effectBadge = isDeathEffect ? game.i18n.localize("JOURNAL.DeathEffectBadge") : game.i18n.localize("JOURNAL.StatusEffectBadge");
430
+
431
+ content += \`<div class="isdl-status-effect-entry" id="\${statusId}" style="border-left-color: \${effectColor};">
432
+ <div class="isdl-journal-header">
433
+ \${statusEffect.img ? \`<img src="\${statusEffect.img}" alt="\${statusEffect.name}" class="isdl-status-effect-image" />\` : ''}
434
+ <h3 class="isdl-journal-title" style="color: \${effectColor};">\${statusEffect.name}</h3>
435
+ <span class="isdl-journal-badge" style="background: \${effectColor}20; color: \${effectColor};">\${effectBadge}</span>
436
+ </div>
437
+ \${statusEffect.condition ? \`<div class="isdl-journal-condition">
438
+ <p><span class="isdl-journal-condition-label">\${game.i18n.localize("JOURNAL.AppliedWhen")}</span> \${localizeConditionText(statusEffect.condition)}</p>
439
+ </div>\` : ''}
440
+ </div>\`;
441
+ }
442
+
443
+ return content;
444
+ }
445
+ `.appendNewLineIfNotEmpty();
446
+ fs.writeFileSync(generatedFilePath, toString(fileNode));
447
+ }
448
+ //# sourceMappingURL=ready-hook-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ready-hook-generator.js","sourceRoot":"","sources":["../../../src/cli/components/ready-hook-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAC1E,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAC,YAAY,EAAE,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,uBAAuB,EAAC,MAAM,yBAAyB,CAAC;AAEhE,MAAM,UAAU,oBAAoB,CAAC,KAAY,EAAE,EAAU,EAAE,WAAmB;;IAC9E,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnE,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;IAEnE,0CAA0C;IAC1C,MAAM,WAAW,GAAG,CAAA,MAAA,MAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,CAAS,0CAAE,KAAK,0CAAE,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,KAAI,EAAE,CAAC;IAEzI,uDAAuD;IACvD,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAE/D,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;;2BAEN,EAAE;;;;;;;;;;;;;;;;;;;;;;qCAsBQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;mDAwBY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mDAuCF,EAAE;;;;;;;;;;qCAUhB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mDAuDY,EAAE;;;;;;;;;;;;;iCAapB,EAAE;;;;;;;;;;;;;;;sCAeG,EAAE;;;;;;;;;;;;;;;sEAe8B,EAAE;;;;;6BAK3C,WAAW;;;;;;2BAMb,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;oCAyBO,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAoM7G,CAAC,uBAAuB,EAAE,CAAC;IAE5B,EAAE,CAAC,aAAa,CAAC,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC5D,CAAC"}