intelligent-system-design-language 0.3.21 → 0.3.23
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/.claude/agents/langium-language-designer.md +38 -38
- package/.claude/agents/typescript-vscode-expert.md +29 -29
- package/.claude/agents/ui-ux-designer.md +36 -36
- package/.claude/settings.local.json +33 -33
- package/.idea/inspectionProfiles/Project_Default.xml +6 -6
- package/.idea/isdl.iml +13 -13
- package/.idea/modules.xml +8 -8
- package/.idea/vcs.xml +6 -6
- package/.idea/watcherTasks.xml +3 -3
- package/.vscodeignore +18 -18
- package/LICENSE +673 -673
- package/README.md +86 -86
- package/bin/cli.js +4 -4
- package/bin/lsp.js +8 -8
- package/out/_backgrounds.scss +91 -91
- package/out/_handlebars.scss +497 -497
- package/out/_isdlStyles.scss +1444 -1381
- package/out/_vuetifyOverrides.scss +425 -425
- package/out/_vuetifyStyles.scss +31957 -31957
- package/out/cli/components/_backgrounds.scss +91 -91
- package/out/cli/components/_handlebars.scss +497 -497
- package/out/cli/components/_isdlStyles.scss +1444 -1381
- package/out/cli/components/_vuetifyOverrides.scss +425 -425
- package/out/cli/components/_vuetifyStyles.scss +31957 -31957
- package/out/cli/components/active-effect-sheet-generator.js +453 -453
- package/out/cli/components/chat-card-generator.js +654 -651
- package/out/cli/components/chat-card-generator.js.map +1 -1
- package/out/cli/components/css-generator.js +4 -4
- package/out/cli/components/damage-roll-generator.js +160 -160
- package/out/cli/components/datamodel-generator.js +264 -257
- package/out/cli/components/datamodel-generator.js.map +1 -1
- package/out/cli/components/derived-data-generator.js +923 -923
- package/out/cli/components/hotbar-drop-hook-generator.js +82 -82
- package/out/cli/components/init-hook-generator.js +495 -495
- package/out/cli/components/language-generator.js +1 -1
- package/out/cli/components/language-generator.js.map +1 -1
- package/out/cli/components/measured-template-preview.js +221 -221
- package/out/cli/components/method-generator.js +979 -887
- package/out/cli/components/method-generator.js.map +1 -1
- package/out/cli/components/ready-hook-generator.js +404 -404
- package/out/cli/components/token-generator.js +116 -116
- package/out/cli/components/vue/base-components/vue-attribute.js +138 -138
- package/out/cli/components/vue/base-components/vue-boolean.js +64 -64
- package/out/cli/components/vue/base-components/vue-calculator.js +93 -93
- package/out/cli/components/vue/base-components/vue-damage-application.js +356 -356
- package/out/cli/components/vue/base-components/vue-damage-bonuses.js +165 -165
- package/out/cli/components/vue/base-components/vue-damage-resistances.js +196 -196
- package/out/cli/components/vue/base-components/vue-damage-track.js +121 -121
- package/out/cli/components/vue/base-components/vue-date-time.js +42 -42
- package/out/cli/components/vue/base-components/vue-dice.js +98 -98
- package/out/cli/components/vue/base-components/vue-die.js +73 -73
- package/out/cli/components/vue/base-components/vue-document-choice.js +149 -149
- package/out/cli/components/vue/base-components/vue-document-choices.js +179 -179
- package/out/cli/components/vue/base-components/vue-document-link.js +60 -60
- package/out/cli/components/vue/base-components/vue-extended-choice.js +88 -88
- package/out/cli/components/vue/base-components/vue-inventory.js +519 -519
- package/out/cli/components/vue/base-components/vue-macro-choice.js +138 -138
- package/out/cli/components/vue/base-components/vue-measured-template.js +530 -530
- package/out/cli/components/vue/base-components/vue-money.js +483 -483
- package/out/cli/components/vue/base-components/vue-number.js +174 -174
- package/out/cli/components/vue/base-components/vue-paperdoll.js +43 -43
- package/out/cli/components/vue/base-components/vue-parent-property-reference.js +76 -76
- package/out/cli/components/vue/base-components/vue-prosemirror.js +18 -18
- package/out/cli/components/vue/base-components/vue-resource.js +136 -136
- package/out/cli/components/vue/base-components/vue-roll-visualizer.js +286 -109
- 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 +62 -62
- package/out/cli/components/vue/base-components/vue-string-choice.js +98 -98
- package/out/cli/components/vue/base-components/vue-string-choices.js +203 -203
- package/out/cli/components/vue/base-components/vue-string.js +60 -60
- package/out/cli/components/vue/base-components/vue-text-field.js +53 -53
- package/out/cli/components/vue/base-components/vue-tracker.js +431 -431
- package/out/cli/components/vue/vue-action-component-generator.js +64 -64
- package/out/cli/components/vue/vue-active-effect-sheet-generator.js +856 -856
- package/out/cli/components/vue/vue-datatable-sheet-class-generator.js +292 -292
- package/out/cli/components/vue/vue-datatable2-component-generator.js +824 -824
- package/out/cli/components/vue/vue-document-creation-app.js +121 -121
- package/out/cli/components/vue/vue-document-creation-sheet.js +94 -94
- package/out/cli/components/vue/vue-generator.js +40 -40
- package/out/cli/components/vue/vue-mixin.js +296 -296
- package/out/cli/components/vue/vue-pinned-datatable-component-generator.js +260 -260
- package/out/cli/components/vue/vue-prompt-generator.js +91 -76
- package/out/cli/components/vue/vue-prompt-generator.js.map +1 -1
- package/out/cli/components/vue/vue-prompt-sheet-class-generator.js +317 -317
- package/out/cli/components/vue/vue-sheet-application-generator.js +1177 -1167
- package/out/cli/components/vue/vue-sheet-application-generator.js.map +1 -1
- package/out/cli/components/vue/vue-sheet-class-generator.js +510 -510
- package/out/cli/generator.js +438 -433
- package/out/cli/generator.js.map +1 -1
- package/out/extension/github/githubAuthProvider.js +71 -29
- package/out/extension/github/githubAuthProvider.js.map +1 -1
- package/out/extension/github/githubGistManager.js +4 -3
- package/out/extension/github/githubGistManager.js.map +1 -1
- package/out/extension/github/githubManager.js +40 -38
- package/out/extension/github/githubManager.js.map +1 -1
- package/out/extension/github/githubQuickActions.js +120 -120
- package/out/extension/github/system-workflow.yml +47 -47
- package/out/extension/main.cjs +909 -532
- package/out/extension/main.cjs.map +3 -3
- package/out/extension/package.json +419 -419
- package/out/language/generated/ast.js +51 -2
- package/out/language/generated/ast.js.map +1 -1
- package/out/language/generated/grammar.js +14240 -13991
- package/out/language/generated/grammar.js.map +1 -1
- package/out/language/intelligent-system-design-language-validator.js +32 -2
- package/out/language/intelligent-system-design-language-validator.js.map +1 -1
- package/out/language/isdl-scope-provider.js +14 -1
- package/out/language/isdl-scope-provider.js.map +1 -1
- package/out/language/main.cjs +913 -569
- package/out/language/main.cjs.map +3 -3
- package/out/package.json +419 -419
- package/out/progressbar.min.js +6 -6
- package/out/styles.scss +762 -747
- package/out/test/validating/diagnostics.test.js +40 -0
- package/out/test/validating/diagnostics.test.js.map +1 -1
- package/package.json +419 -419
|
@@ -7,94 +7,94 @@ export default function generateExtendedChoiceComponent(destination) {
|
|
|
7
7
|
if (!fs.existsSync(generatedFileDir)) {
|
|
8
8
|
fs.mkdirSync(generatedFileDir, { recursive: true });
|
|
9
9
|
}
|
|
10
|
-
const fileNode = expandToNode `
|
|
11
|
-
<script setup>
|
|
12
|
-
import { ref, inject, computed } from "vue";
|
|
13
|
-
|
|
14
|
-
const props = defineProps({
|
|
15
|
-
label: String,
|
|
16
|
-
systemPath: String,
|
|
17
|
-
context: Object,
|
|
18
|
-
disabled: Boolean,
|
|
19
|
-
primaryColor: String,
|
|
20
|
-
secondaryColor: String,
|
|
21
|
-
icon: String,
|
|
22
|
-
items: Array,
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
const document = inject('rawDocument');
|
|
26
|
-
|
|
27
|
-
const value = ref(foundry.utils.getProperty(document, props.systemPath));
|
|
28
|
-
const onChange = (value) => {
|
|
29
|
-
let update = {};
|
|
30
|
-
// Find the full item based on the value
|
|
31
|
-
const item = props.items.find(item => item.value === value);
|
|
32
|
-
// We need to translate the item into a proper update
|
|
33
|
-
let updateData = {};
|
|
34
|
-
updateData.value = item.value;
|
|
35
|
-
updateData.icon = item.icon;
|
|
36
|
-
updateData.color = item.color;
|
|
37
|
-
|
|
38
|
-
// For each of the customKeys, we need to add them to the update
|
|
39
|
-
if (item.customKeys && item.customKeys.length > 0) {
|
|
40
|
-
for (const custom of item.customKeys) {
|
|
41
|
-
updateData[custom.key.toLowerCase()] = custom.value;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
update[props.systemPath.replace(".value", "")] = updateData;
|
|
46
|
-
document.update(update);
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
const getTooltip = (item) => {
|
|
50
|
-
// The choice item might have additional system properties other than the core value, color, and icon.
|
|
51
|
-
// We want to build a tooltip of these additional values
|
|
52
|
-
const tooltipParts = [];
|
|
53
|
-
if (item.customKeys && item.customKeys.length > 0) {
|
|
54
|
-
for (const custom of item.customKeys) {
|
|
55
|
-
const value = custom.value;
|
|
56
|
-
if (value !== undefined) {
|
|
57
|
-
tooltipParts.push(\`\${custom.label}: \${value}\`);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
return tooltipParts.join('<br>');
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
const getLabel = (label, icon) => {
|
|
65
|
-
const localized = game.i18n.localize(label);
|
|
66
|
-
if (icon) {
|
|
67
|
-
return \`<i class="\${icon}"></i> \${localized}\`;
|
|
68
|
-
}
|
|
69
|
-
return localized;
|
|
70
|
-
};
|
|
71
|
-
|
|
72
|
-
</script>
|
|
73
|
-
<template>
|
|
74
|
-
<v-select
|
|
75
|
-
:name="systemPath"
|
|
76
|
-
v-model="value"
|
|
77
|
-
:items="items"
|
|
78
|
-
item-title="label"
|
|
79
|
-
:disabled="disabled"
|
|
80
|
-
variant="outlined"
|
|
81
|
-
@update:modelValue="onChange"
|
|
82
|
-
density="compact">
|
|
83
|
-
<template #label>
|
|
84
|
-
<span v-html="getLabel(label, icon)" />
|
|
85
|
-
</template>
|
|
86
|
-
<template v-slot:item="{ props: itemProps, item }">
|
|
87
|
-
<v-list-item v-bind="itemProps" :value="item.raw.value" title="">
|
|
88
|
-
<v-list-item-title>
|
|
89
|
-
<v-chip label :color="item.raw.color" variant="elevated" class="text-caption" size="small" :data-tooltip="getTooltip(item.raw)"><span v-html="getLabel(item.raw.label, item.raw.icon)" ></span></v-chip>
|
|
90
|
-
</v-list-item-title>
|
|
91
|
-
</v-list-item>
|
|
92
|
-
</template>
|
|
93
|
-
<template v-slot:selection="{ item, index }">
|
|
94
|
-
<v-chip label :color="item.raw.color" variant="elevated" class="text-caption" size="small" :data-tooltip="getTooltip(item.raw)"><span v-html="getLabel(item.raw.label, item.raw.icon)" ></span></v-chip>
|
|
95
|
-
</template>
|
|
96
|
-
</v-select>
|
|
97
|
-
</template>
|
|
10
|
+
const fileNode = expandToNode `
|
|
11
|
+
<script setup>
|
|
12
|
+
import { ref, inject, computed } from "vue";
|
|
13
|
+
|
|
14
|
+
const props = defineProps({
|
|
15
|
+
label: String,
|
|
16
|
+
systemPath: String,
|
|
17
|
+
context: Object,
|
|
18
|
+
disabled: Boolean,
|
|
19
|
+
primaryColor: String,
|
|
20
|
+
secondaryColor: String,
|
|
21
|
+
icon: String,
|
|
22
|
+
items: Array,
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
const document = inject('rawDocument');
|
|
26
|
+
|
|
27
|
+
const value = ref(foundry.utils.getProperty(document, props.systemPath));
|
|
28
|
+
const onChange = (value) => {
|
|
29
|
+
let update = {};
|
|
30
|
+
// Find the full item based on the value
|
|
31
|
+
const item = props.items.find(item => item.value === value);
|
|
32
|
+
// We need to translate the item into a proper update
|
|
33
|
+
let updateData = {};
|
|
34
|
+
updateData.value = item.value;
|
|
35
|
+
updateData.icon = item.icon;
|
|
36
|
+
updateData.color = item.color;
|
|
37
|
+
|
|
38
|
+
// For each of the customKeys, we need to add them to the update
|
|
39
|
+
if (item.customKeys && item.customKeys.length > 0) {
|
|
40
|
+
for (const custom of item.customKeys) {
|
|
41
|
+
updateData[custom.key.toLowerCase()] = custom.value;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
update[props.systemPath.replace(".value", "")] = updateData;
|
|
46
|
+
document.update(update);
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
const getTooltip = (item) => {
|
|
50
|
+
// The choice item might have additional system properties other than the core value, color, and icon.
|
|
51
|
+
// We want to build a tooltip of these additional values
|
|
52
|
+
const tooltipParts = [];
|
|
53
|
+
if (item.customKeys && item.customKeys.length > 0) {
|
|
54
|
+
for (const custom of item.customKeys) {
|
|
55
|
+
const value = custom.value;
|
|
56
|
+
if (value !== undefined) {
|
|
57
|
+
tooltipParts.push(\`\${custom.label}: \${value}\`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return tooltipParts.join('<br>');
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
const getLabel = (label, icon) => {
|
|
65
|
+
const localized = game.i18n.localize(label);
|
|
66
|
+
if (icon) {
|
|
67
|
+
return \`<i class="\${icon}"></i> \${localized}\`;
|
|
68
|
+
}
|
|
69
|
+
return localized;
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
</script>
|
|
73
|
+
<template>
|
|
74
|
+
<v-select
|
|
75
|
+
:name="systemPath"
|
|
76
|
+
v-model="value"
|
|
77
|
+
:items="items"
|
|
78
|
+
item-title="label"
|
|
79
|
+
:disabled="disabled"
|
|
80
|
+
variant="outlined"
|
|
81
|
+
@update:modelValue="onChange"
|
|
82
|
+
density="compact">
|
|
83
|
+
<template #label>
|
|
84
|
+
<span v-html="getLabel(label, icon)" />
|
|
85
|
+
</template>
|
|
86
|
+
<template v-slot:item="{ props: itemProps, item }">
|
|
87
|
+
<v-list-item v-bind="itemProps" :value="item.raw.value" title="">
|
|
88
|
+
<v-list-item-title>
|
|
89
|
+
<v-chip label :color="item.raw.color" variant="elevated" class="text-caption" size="small" :data-tooltip="getTooltip(item.raw)"><span v-html="getLabel(item.raw.label, item.raw.icon)" ></span></v-chip>
|
|
90
|
+
</v-list-item-title>
|
|
91
|
+
</v-list-item>
|
|
92
|
+
</template>
|
|
93
|
+
<template v-slot:selection="{ item, index }">
|
|
94
|
+
<v-chip label :color="item.raw.color" variant="elevated" class="text-caption" size="small" :data-tooltip="getTooltip(item.raw)"><span v-html="getLabel(item.raw.label, item.raw.icon)" ></span></v-chip>
|
|
95
|
+
</template>
|
|
96
|
+
</v-select>
|
|
97
|
+
</template>
|
|
98
98
|
`.appendNewLine();
|
|
99
99
|
fs.writeFileSync(generatedFilePath, toString(fileNode));
|
|
100
100
|
}
|