feat: New runner UI
This commit is contained in:
+16
-3
@@ -1,10 +1,19 @@
|
||||
import {ruleBookApi, ruleScriptApi} from "@/mammon";
|
||||
import {RuleBookResponse, UpdateRuleBookRequest} from "@/generated/mammon";
|
||||
import {RuleBookResponse, RuleScopeRequest, RuleScriptRequest, RuleScriptResponse, UpdateRuleBookRequest} from "@/generated/mammon";
|
||||
import {isAxiosError} from "axios";
|
||||
import {defineStore} from "pinia";
|
||||
import {ref} from "vue";
|
||||
|
||||
export type RuleBook = RuleBookResponse;
|
||||
export type RuleScript = RuleScriptResponse;
|
||||
export type RuleScope = RuleScriptResponse['scope'];
|
||||
|
||||
export const emptyScope = (): RuleScopeRequest => ({
|
||||
ledgers: {},
|
||||
characters: {},
|
||||
corporations: {},
|
||||
walletDivisions: {},
|
||||
});
|
||||
|
||||
export const useRuleBookStore = defineStore('rule-book', () => {
|
||||
const ruleBook = ref<RuleBook | null>(null);
|
||||
@@ -19,7 +28,7 @@ export const useRuleBookStore = defineStore('rule-book', () => {
|
||||
throw error;
|
||||
});
|
||||
|
||||
const update = (request: UpdateRuleBookRequest) => ruleBookApi.updateRuleBook(request)
|
||||
const update = (scripts: RuleScriptRequest[]) => ruleBookApi.updateRuleBook({scripts} satisfies UpdateRuleBookRequest)
|
||||
.then(response => ruleBook.value = response.data);
|
||||
|
||||
refresh();
|
||||
@@ -28,4 +37,8 @@ export const useRuleBookStore = defineStore('rule-book', () => {
|
||||
})
|
||||
|
||||
export const fetchScriptDefinitions = (): Promise<string> =>
|
||||
ruleScriptApi.getScriptDefinitions({responseType: 'text'}).then(response => response.data);
|
||||
ruleScriptApi.listScriptDefinitions()
|
||||
.then(response => Promise.all(
|
||||
response.data.map(name => ruleScriptApi.getScriptDefinition(name, {responseType: 'text'}).then(r => r.data))
|
||||
))
|
||||
.then(definitions => definitions.join('\n'));
|
||||
|
||||
Reference in New Issue
Block a user