Skip to content

Commit 9ee157d

Browse files
MaxNumeriquegithub-actions[bot]
authored andcommitted
Apply prepare changes
1 parent d58e508 commit 9ee157d

File tree

1 file changed

+65
-65
lines changed

1 file changed

+65
-65
lines changed

components/ObjectSelector.vue

Lines changed: 65 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -66,77 +66,77 @@
6666
const allowed_objects = ref({})
6767
const toggle_loading = useToggle(loading)
6868
69-
7069
function select_geode_object(object_map) {
71-
const object_keys = Object.keys(object_map)
72-
if (!object_keys.length) {
73-
return null
74-
}
75-
const highest_load_score = Math.max(
76-
...object_keys.map((key) => object_map[key].is_loadable),
77-
)
78-
if (highest_load_score <= 0) {
70+
const object_keys = Object.keys(object_map)
71+
if (!object_keys.length) {
72+
return null
73+
}
74+
const highest_load_score = Math.max(
75+
...object_keys.map((key) => object_map[key].is_loadable),
76+
)
77+
if (highest_load_score <= 0) {
78+
return null
79+
}
80+
const best_score_objects = object_keys.filter(
81+
(key) => object_map[key].is_loadable === highest_load_score,
82+
)
83+
if (best_score_objects.length === 1) {
84+
return best_score_objects[0]
85+
}
86+
const highest_priority = Math.max(
87+
...best_score_objects.map(
88+
(key) => object_map[key].object_priority ?? -Infinity,
89+
),
90+
)
91+
const best_priority_objects = best_score_objects.filter(
92+
(key) => object_map[key].object_priority === highest_priority,
93+
)
94+
if (highest_priority !== -Infinity && best_priority_objects.length === 1) {
95+
return best_priority_objects[0]
96+
}
7997
return null
8098
}
81-
const best_score_objects = object_keys.filter(
82-
(key) => object_map[key].is_loadable === highest_load_score,
83-
)
84-
if (best_score_objects.length === 1) {
85-
return best_score_objects[0]
86-
}
87-
const highest_priority = Math.max(
88-
...best_score_objects.map(
89-
(key) => object_map[key].object_priority ?? -Infinity,
90-
),
91-
)
92-
const best_priority_objects = best_score_objects.filter(
93-
(key) => object_map[key].object_priority === highest_priority,
94-
)
95-
if (highest_priority !== -Infinity && best_priority_objects.length === 1) {
96-
return best_priority_objects[0]
97-
}
98-
return null
99-
}
100-
10199
102-
async function get_allowed_objects() {
103-
toggle_loading()
104-
allowed_objects.value = {}
105-
const promise_array = filenames.map((filename) => {
106-
const params = { filename, supported_feature }
107-
return api_fetch({ schema, params })
108-
})
109-
const responses = await Promise.all(promise_array)
110-
const allowed_objects_list = responses.map(
111-
(response) => response.data.value.allowed_objects,
112-
)
113-
const all_keys = [...new Set(allowed_objects_list.flatMap(Object.keys))]
114-
const common_keys = all_keys.filter((key) =>
115-
allowed_objects_list.every((obj) => key in obj),
116-
)
117-
const final_object = {}
118-
for (const key of common_keys) {
119-
const load_scores = allowed_objects_list.map((obj) => obj[key].is_loadable)
120-
const priorities = allowed_objects_list
121-
.map((obj) => obj[key].object_priority)
122-
.filter((p) => p !== undefined && p !== null)
123-
final_object[key] = { is_loadable: Math.min(...load_scores) }
124-
if (priorities.length) {
125-
final_object[key].object_priority = Math.max(...priorities)
100+
async function get_allowed_objects() {
101+
toggle_loading()
102+
allowed_objects.value = {}
103+
const promise_array = filenames.map((filename) => {
104+
const params = { filename, supported_feature }
105+
return api_fetch({ schema, params })
106+
})
107+
const responses = await Promise.all(promise_array)
108+
const allowed_objects_list = responses.map(
109+
(response) => response.data.value.allowed_objects,
110+
)
111+
const all_keys = [...new Set(allowed_objects_list.flatMap(Object.keys))]
112+
const common_keys = all_keys.filter((key) =>
113+
allowed_objects_list.every((obj) => key in obj),
114+
)
115+
const final_object = {}
116+
for (const key of common_keys) {
117+
const load_scores = allowed_objects_list.map(
118+
(obj) => obj[key].is_loadable,
119+
)
120+
const priorities = allowed_objects_list
121+
.map((obj) => obj[key].object_priority)
122+
.filter((p) => p !== undefined && p !== null)
123+
final_object[key] = { is_loadable: Math.min(...load_scores) }
124+
if (priorities.length) {
125+
final_object[key].object_priority = Math.max(...priorities)
126+
}
126127
}
128+
allowed_objects.value = final_object
129+
let already_selected = false
130+
const selected_object = select_geode_object(final_object)
131+
if (selected_object) {
132+
set_geode_object(selected_object)
133+
already_selected = true
134+
}
135+
if (!already_selected && Object.keys(final_object).length === 1) {
136+
set_geode_object(Object.keys(final_object)[0])
137+
}
138+
toggle_loading()
127139
}
128-
allowed_objects.value = final_object
129-
let already_selected = false
130-
const selected_object = select_geode_object(final_object)
131-
if (selected_object) {
132-
set_geode_object(selected_object)
133-
already_selected = true
134-
}
135-
if (!already_selected && Object.keys(final_object).length === 1) {
136-
set_geode_object(Object.keys(final_object)[0])
137-
}
138-
toggle_loading()
139-
}
140140
141141
function set_geode_object(input_geode_object) {
142142
if (input_geode_object != "") {

0 commit comments

Comments
 (0)