This is an automated email from the ASF dual-hosted git repository.
yasithdev pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airavata-portals.git
The following commit(s) were added to refs/heads/main by this push:
new 4e3745df1 fix(admin): confine editor action bars, fix list field
editors, drop no-op stats tab (#233)
4e3745df1 is described below
commit 4e3745df17e87094d8f10e5d2fb176d88a15b587
Author: Yasith Jayawardana <[email protected]>
AuthorDate: Mon Jun 15 11:22:59 2026 -0400
fix(admin): confine editor action bars, fix list field editors, drop no-op
stats tab (#233)
- Bottom action bars (Save/Delete/Cancel/Add) in the application,
compute-preference,
group-compute-preference, and extended-user-profile editors used
'fixed inset-x-0 bottom-0', spanning the full viewport and overlapping
the w-64
sidebar. Confine them to the content area ('left-64 right-0') and
right-align the
buttons (justify-end).
- The application input/output field editors (and the
compute-resource-reservation and
storage-preference list editors) rendered empty: the parents bound the
VModelMixin
child editors with the Vue 2 ':value'/'@input' pair, so 'modelValue' was
undefined and
the working copy never initialized (throwing on data.name/data.key).
Switch the list
bindings to ':model-value'/'@update:model-value'.
- Remove the lone no-op 'Statistics' tab on the Experiment Statistics page;
show the tab
bar only once experiment-detail tabs are open.
---
.../admin/group_resource_preferences/ComputePreference.vue | 2 +-
.../group_resource_preferences/ComputeResourceReservationList.vue | 4 ++--
.../group_resource_preferences/GroupComputeResourcePreference.vue | 2 +-
.../src/components/applications/ApplicationEditorContainer.vue | 2 +-
.../src/components/applications/ApplicationInterfaceEditor.vue | 8 ++++----
.../src/components/gatewayprofile/StoragePreferenceList.vue | 4 ++--
.../src/components/statistics/ExperimentStatisticsContainer.vue | 5 +++--
.../src/components/users/ExtendedUserProfileContainer.vue | 4 ++--
8 files changed, 16 insertions(+), 15 deletions(-)
diff --git
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/admin/group_resource_preferences/ComputePreference.vue
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/admin/group_resource_preferences/ComputePreference.vue
index b4ff34554..d75e495d1 100644
---
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/admin/group_resource_preferences/ComputePreference.vue
+++
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/admin/group_resource_preferences/ComputePreference.vue
@@ -186,7 +186,7 @@
</CardContent>
</Card>
<div
- class="bg-background fixed inset-x-0 bottom-0 flex gap-2 border-t p-4
shadow-md"
+ class="bg-background fixed bottom-0 left-64 right-0 flex justify-end
gap-2 border-t p-4 shadow-md"
>
<Button
variant="default"
diff --git
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/admin/group_resource_preferences/ComputeResourceReservationList.vue
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/admin/group_resource_preferences/ComputeResourceReservationList.vue
index f6bb476e9..1a56e7025 100644
---
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/admin/group_resource_preferences/ComputeResourceReservationList.vue
+++
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/admin/group_resource_preferences/ComputeResourceReservationList.vue
@@ -112,8 +112,8 @@
<Card>
<CardContent>
<compute-resource-reservation-editor
- :value="item"
- @input="updatedReservation"
+ :model-value="item"
+ @update:model-value="updatedReservation"
:queues="queues"
@valid="removeInvalidReservation(item.key)"
@invalid="recordInvalidReservation(item.key)"
diff --git
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/admin/group_resource_preferences/GroupComputeResourcePreference.vue
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/admin/group_resource_preferences/GroupComputeResourcePreference.vue
index b2b1e0cae..a53d200fa 100644
---
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/admin/group_resource_preferences/GroupComputeResourcePreference.vue
+++
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/admin/group_resource_preferences/GroupComputeResourcePreference.vue
@@ -148,7 +148,7 @@
</template>
</list-layout>
<div
- class="bg-background fixed inset-x-0 bottom-0 flex gap-2 border-t p-4
shadow-md"
+ class="bg-background fixed bottom-0 left-64 right-0 flex justify-end
gap-2 border-t p-4 shadow-md"
>
<Button
variant="default"
diff --git
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/applications/ApplicationEditorContainer.vue
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/applications/ApplicationEditorContainer.vue
index 8a16cb8c4..f1c150131 100644
---
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/applications/ApplicationEditorContainer.vue
+++
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/applications/ApplicationEditorContainer.vue
@@ -80,7 +80,7 @@
/>
</div>
<div
- class="bg-background fixed inset-x-0 bottom-0 flex gap-2 border-t p-4
shadow-md"
+ class="bg-background fixed bottom-0 left-64 right-0 flex justify-end
gap-2 border-t p-4 shadow-md"
>
<Button
variant="default"
diff --git
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/applications/ApplicationInterfaceEditor.vue
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/applications/ApplicationInterfaceEditor.vue
index 405f08da2..61e8ae419 100644
---
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/applications/ApplicationInterfaceEditor.vue
+++
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/applications/ApplicationInterfaceEditor.vue
@@ -103,10 +103,10 @@
>
<template #item="{ element: input }">
<application-input-field-editor
- :value="input"
+ :model-value="input"
:focus="input.key === focusApplicationInputKey"
:collapse="collapseApplicationInputs"
- @input="updatedInput"
+ @update:model-value="updatedInput"
@delete="deleteInput(input)"
:readonly="readonly"
/>
@@ -126,10 +126,10 @@
<h2 class="mb-4 text-lg font-semibold">Output Fields</h2>
<application-output-field-editor
v-for="output in data.application_outputs"
- :value="output"
+ :model-value="output"
:key="output.key"
:focus="output.key === focusApplicationOutputKey"
- @input="updatedOutput"
+ @update:model-value="updatedOutput"
@delete="deleteOutput(output)"
:readonly="readonly"
/>
diff --git
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/gatewayprofile/StoragePreferenceList.vue
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/gatewayprofile/StoragePreferenceList.vue
index ef3f5998d..90ace7e90 100644
---
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/gatewayprofile/StoragePreferenceList.vue
+++
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/gatewayprofile/StoragePreferenceList.vue
@@ -105,8 +105,8 @@
<Card>
<CardContent>
<storage-preference-editor
- :value="item"
- @input="updatedStoragePreference"
+ :model-value="item"
+ @update:model-value="updatedStoragePreference"
:default-credential-store-token="
defaultCredentialStoreToken
"
diff --git
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/statistics/ExperimentStatisticsContainer.vue
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/statistics/ExperimentStatisticsContainer.vue
index c5751ce33..75bf4b91c 100644
---
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/statistics/ExperimentStatisticsContainer.vue
+++
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/statistics/ExperimentStatisticsContainer.vue
@@ -4,8 +4,9 @@
subtitle="Gateway experiment activity over time."
>
<Tabs v-model="activeTab" ref="tabs" class="space-y-4">
- <TabsList>
- <TabsTrigger value="statistics">Statistics</TabsTrigger>
+ <!-- Only show the tab bar once experiment-detail tabs are open; the lone
+ "Statistics" pill was a no-op (the statistics view is the default).
-->
+ <TabsList v-if="experimentDetailTabs.length > 0">
<TabsTrigger
v-for="experimentTab in experimentDetailTabs"
:key="experimentTab.experiment.experiment_id"
diff --git
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/users/ExtendedUserProfileContainer.vue
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/users/ExtendedUserProfileContainer.vue
index 7a4d2e1fa..d4e645389 100644
---
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/users/ExtendedUserProfileContainer.vue
+++
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/users/ExtendedUserProfileContainer.vue
@@ -21,8 +21,8 @@
</transition-group>
<div ref="bottom" />
</div>
- <div class="bg-background fixed inset-x-0 bottom-0 border-t p-4 shadow-md">
- <div class="flex">
+ <div class="bg-background fixed bottom-0 left-64 right-0 border-t p-4
shadow-md">
+ <div class="flex justify-end gap-2">
<DropdownMenu>
<DropdownMenuTrigger as-child>
<Button variant="outline" :disabled="!isGatewayAdmin"