This is an automated email from the ASF dual-hosted git repository.
machristie pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-django-portal.git
from 71f02dbc AIRAVATA-3637 Add support for URI and URI_COLLECTION input
types in experiment editor web component
add b4121b93 AIRAVATA-3632 Remove std input and data is staged options
add aea56819 Upgrade to Django 3.2.14 for security fixes
add 3758d3ce Clarify that Yarn 1 is required to build JS
add 3de3e969 In docs, clarify that Yarn 1 is required to build JS
add 8ce0bb66 AIRAVATA-3562 Mocked up UI for admins to edit extended user
profile fields
add 4e87cde7 AIRAVATA-3563 DB and REST API for extended user profile fields
add afd7a099 AIRAVATA-3569 REST API and DB model for storing extended user
profile values
add e02b4256 AIRAVATA-3565 Switch user profile editor to vuex store
add 493ed1a5 AIRAVATA-3565 WIP: Ext User Profile UI with load/saving text
and single_choice values
add 308744c4 AIRAVATA-3565 Ext User Profile UI with load/saving
multi_choice values
add 9f9760ea AIRAVATA-3565 Ext User Profile UI with load/saving
user_agreement values
add 0999c030 AIRAVATA-3565 Integrated link display for extended user
profile fields
add bdd614dc AIRAVATA-3565 Fix saving updates to extended user profile
fields
add 793b8f39 AIRAVATA-3565 Other field for single and multi choice fields
add 6d761044 AIRAVATA-3565 Add validation to extended user profile editor
add 9a68c808 AIRAVATA-3565 Adding required column to
ExtendedUserProfileField
add 49ebb76c AIRAVATA-3565 Support for optional extended user profile
fields
add 5c2aed33 AIRAVATA-3565 Combining both forms into one
add 71774e3a AIRAVATA-3565 Better handling of extended user profile
validation
add fef0a18f AIRAVATA-3565 Fixes to how other options are validated
add 1759716e AIRAVATA-3565 Fix updating field choice
add 2057fb03 AIRAVATA-3564 Hook up admin UI to store/REST API
add 5b7b9b71 AIRAVATA-3564 Save common extended user profile fields
add ff79032b AIRAVATA-3564 Add new fields and save
add 141421a1 AIRAVATA-3564 Add, remove and reorder choices
add aaf2f2c6 AIRAVATA-3564 Control whether an "Other" option is available
add 7d5bd315 AIRAVATA-3564 Allow adding and removing Links
add 70a657a1 AIRAVATA-3564 UI for reordering and deleting fields
add 0f94300e AIRAVATA-3564 Adding validation to extended user profile
fields
add 64387832 AIRAVATA-3564 Some styling and layout improvements
add 75ccc89c AIRAVATA-3564 Add button to get to extended user profile
editor
add e0aecfa9 AIRAVATA-3566 Display text and user agreement ext. user
profile values in Manage Users
add f3675511 AIRAVATA-3566 Single and multichoice display of ext. user
profile values in Manage Users
add 09582cf3 AIRAVATA-3566 Refactor code, pushing logic into model
add bd823913 AIRAVATA-3567 Add UserProfile.is_ext_user_profile_valid
add feb1d8c3 AIRAVATA-3567 Support saving all ext user profile values in
one REST call
add 87fe6cd6 AIRAVATA-3567 email template for user profile complete admin
email
add 56a8fbc3 AIRAVATA-3568 Redirect to user profile editor and require
completing ext user profile fields
add 8a516305 AIRAVATA-3568 Unit tests for user profile completeness check
add fb5dc00c Merge branch 'AIRAVATA-3562' into develop
add 5dc33fee AIRAVATA-3562 Merge db migrations
add d6bafd09 AIRAVATA-3644 Default showInDashboard to false
add e0c90cce AIRAVATA-3645 web components: Handle case where GRP id is set
to null
add 35a26356 AIRAVATA-3646 Upgrade sdk to 1.4.1 for bug fix
add 19dd2baf AIRAVATA-3648 Show last modified time in user storage views
add 835cefff Merge branch 'AIRAVATA-3637' into develop
add ba4cb026 AIRAVATA-3650 Switch from node-sass to dart-sass
add c41f6549 AIRAVATA-3649 REST API to list and invoke queue settings
calculators
add 2319627d AIRAVATA-3649 DB field and Admin UI for
queueSettingsCalculatorId
add 68e425fe AIRAVATA-3649 Apply queue settings calculator values in
experiment editor
add 2d355f57 AIRAVATA-3649 Only include queueSettingsCalculatorId if it
exists
add c6617c00 AIRAVATA-3649 debounce calls to queue settings calculator
add 6a11894c AIRAVATA-3649 Only re-calculate queue settings when inputs or
compute resource change
add b21eede5 AIRAVATA-3649 Make queue settings readonly when calculator is
configured
add 61d181f8 AIRAVATA-3649 Ignore invalid experiment models
add cf64de70 AIRAVATA-3649 Queue settings calculator docs
add 15c7da95 AIRAVATA-3649 Upgrade SDK to 1.6.0
add 373c21f9 Merge branch 'AIRAVATA-3649' into develop
add 3a67830f AIRAVATA-3654 Parse input value as a float instead of as an
int
add bb197c5a Merge branch 'AIRAVATA-3654' into develop
add 22fa1c22 AIRAVATA-3655 Support "in" comparison type
add 8cd75995 Merge branch 'AIRAVATA-3655' into develop
add d273a786 AIRAVATA-3649 Rerun validation in QueueSettingsEditor
whenever values change
No new revisions were added by this update.
Summary of changes:
README.md | 5 +-
django_airavata/apps/admin/apps.py | 2 +-
.../applications/ApplicationInputFieldEditor.vue | 63 +--
.../applications/ApplicationInterfaceEditor.vue | 51 +-
.../users/ExtendedUserProfileContainer.vue | 120 +++++
.../components/users/ExtendedUserProfilePanel.vue | 82 ++++
.../src/components/users/UserDetailsContainer.vue | 3 +
.../components/users/UserManagementContainer.vue | 5 +
.../ExtendedUserProfileFieldEditor.vue | 366 ++++++++++++++
.../admin/static/django_airavata_admin/src/main.js | 4 +
.../static/django_airavata_admin/src/router.js | 6 +
.../django_airavata_admin/src}/store/index.js | 4 +-
.../src/store/modules/extendedUserProfile.js | 190 +++++++
django_airavata/apps/admin/urls.py | 1 +
django_airavata/apps/admin/views.py | 6 +
...icationsettings_queue_settings_calculator_id.py | 18 +
django_airavata/apps/api/models.py | 1 +
django_airavata/apps/api/serializers.py | 46 +-
.../api/static/django_airavata_api/js/index.js | 15 +
.../js/models/ApplicationInterfaceDefinition.js | 5 +
.../js/models/ExtendedUserProfileField.js | 76 +++
.../js/models/ExtendedUserProfileFieldChoice.js | 24 +
.../js/models/ExtendedUserProfileFieldLink.js | 31 ++
.../js/models/ExtendedUserProfileValue.js | 46 ++
.../js/models/InputDataObjectType.js | 4 +-
.../django_airavata_api/js/models/Notification.js | 6 +-
.../js/models/QueueSettingsCalculator.js | 9 +
.../static/django_airavata_api/js/models/User.js | 3 +-
.../js/models/UserStorageDirectory.js | 1 +
.../js/models/UserStorageFile.js | 1 +
.../dependencies/BooleanExpressionEvaluator.js | 2 +
.../django_airavata_api/js/service_config.js | 38 ++
.../js/services/ServiceFactory.js | 3 +
.../BooleanExpressionEvaluator.test.js | 22 +
django_airavata/apps/api/urls.py | 2 +
django_airavata/apps/api/view_utils.py | 5 +
django_airavata/apps/api/views.py | 31 +-
django_airavata/apps/auth/middleware.py | 10 +-
...ld_extendeduserprofilefieldlink_extendeduser.py | 107 ++++
.../auth/migrations/0015_auto_20220329_1708.py | 72 +++
.../0016_extendeduserprofilefield_required.py | 18 +
.../auth/migrations/0017_auto_20220616_1831.py | 55 +++
...4_auto_20220217_2255_0017_auto_20220616_1831.py | 14 +
django_airavata/apps/auth/models.py | 242 +++++++++
django_airavata/apps/auth/package.json | 3 +-
django_airavata/apps/auth/serializers.py | 271 +++++++++-
.../js/components/ExtendedUserProfileEditor.vue | 57 +++
.../ExtendedUserProfileMultiChoiceValueEditor.vue | 157 ++++++
.../ExtendedUserProfileSingleChoiceValueEditor.vue | 159 ++++++
.../ExtendedUserProfileTextValueEditor.vue | 63 +++
...ExtendedUserProfileUserAgreementValueEditor.vue | 81 +++
.../components/ExtendedUserProfileValueEditor.vue | 47 ++
.../js/components/UserProfileEditor.vue | 104 ++--
.../js/containers/UserProfileContainer.vue | 138 +++---
.../django_airavata_auth/js/entry-user-profile.js | 11 +-
.../static/django_airavata_auth}/js/store/index.js | 6 +-
.../js/store/modules/extendedUserProfile.js | 188 +++++++
.../js/store/modules/userProfile.js | 64 +++
django_airavata/apps/auth/tests/test_middleware.py | 123 +++++
django_airavata/apps/auth/tests/test_models.py | 383 +++++++++++++++
django_airavata/apps/auth/urls.py | 2 +
django_airavata/apps/auth/utils.py | 36 +-
django_airavata/apps/auth/views.py | 70 ++-
django_airavata/apps/auth/yarn.lock | 5 +
django_airavata/apps/workspace/package.json | 2 +-
.../js/components/experiment/ExperimentEditor.vue | 58 ++-
.../components/experiment/QueueSettingsEditor.vue | 81 ++-
.../experiment/input-editors/SliderInputEditor.vue | 2 +-
.../storage/ExperimentStoragePathViewer.vue | 16 +-
.../components/storage/UserStoragePathViewer.vue | 16 +-
.../js/containers/UserStorageContainer.vue | 1 +
.../js/web-components/store.js | 2 +-
.../tests/unit/web-components/store.spec.js | 60 ++-
django_airavata/apps/workspace/vue.config.js | 6 +
django_airavata/apps/workspace/yarn.lock | 544 +++++----------------
.../static/common/js/errors/vuelidateHelpers.js | 14 +
django_airavata/static/common/js/index.js | 2 +
.../static/common/js/mixins/ValidationParent.js | 30 ++
django_airavata/static/common/package.json | 2 +-
django_airavata/static/common/scss/main.scss | 5 +
django_airavata/static/common/yarn.lock | 513 +++++--------------
docs/admin/app_inputs.md | 4 +
docs/dev/developing_frontend.md | 7 +-
docs/dev/queue_settings_calculator.md | 104 ++++
docs/tutorial/custom_ui_tutorial.md | 57 +--
mkdocs.yml | 1 +
requirements.txt | 4 +-
87 files changed, 4231 insertions(+), 1083 deletions(-)
create mode 100644
django_airavata/apps/admin/static/django_airavata_admin/src/components/users/ExtendedUserProfileContainer.vue
create mode 100644
django_airavata/apps/admin/static/django_airavata_admin/src/components/users/ExtendedUserProfilePanel.vue
create mode 100644
django_airavata/apps/admin/static/django_airavata_admin/src/components/users/field-editors/ExtendedUserProfileFieldEditor.vue
copy django_airavata/apps/{workspace/static/django_airavata_workspace/js =>
admin/static/django_airavata_admin/src}/store/index.js (71%)
create mode 100644
django_airavata/apps/admin/static/django_airavata_admin/src/store/modules/extendedUserProfile.js
create mode 100644
django_airavata/apps/api/migrations/0009_applicationsettings_queue_settings_calculator_id.py
create mode 100644
django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileField.js
create mode 100644
django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileFieldChoice.js
create mode 100644
django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileFieldLink.js
create mode 100644
django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileValue.js
create mode 100644
django_airavata/apps/api/static/django_airavata_api/js/models/QueueSettingsCalculator.js
create mode 100644
django_airavata/apps/auth/migrations/0014_extendeduserprofileagreementfield_extendeduserprofilefield_extendeduserprofilefieldlink_extendeduser.py
create mode 100644
django_airavata/apps/auth/migrations/0015_auto_20220329_1708.py
create mode 100644
django_airavata/apps/auth/migrations/0016_extendeduserprofilefield_required.py
create mode 100644
django_airavata/apps/auth/migrations/0017_auto_20220616_1831.py
create mode 100644
django_airavata/apps/auth/migrations/0018_merge_0014_auto_20220217_2255_0017_auto_20220616_1831.py
create mode 100644
django_airavata/apps/auth/static/django_airavata_auth/js/components/ExtendedUserProfileEditor.vue
create mode 100644
django_airavata/apps/auth/static/django_airavata_auth/js/components/ExtendedUserProfileMultiChoiceValueEditor.vue
create mode 100644
django_airavata/apps/auth/static/django_airavata_auth/js/components/ExtendedUserProfileSingleChoiceValueEditor.vue
create mode 100644
django_airavata/apps/auth/static/django_airavata_auth/js/components/ExtendedUserProfileTextValueEditor.vue
create mode 100644
django_airavata/apps/auth/static/django_airavata_auth/js/components/ExtendedUserProfileUserAgreementValueEditor.vue
create mode 100644
django_airavata/apps/auth/static/django_airavata_auth/js/components/ExtendedUserProfileValueEditor.vue
copy django_airavata/apps/{workspace/static/django_airavata_workspace =>
auth/static/django_airavata_auth}/js/store/index.js (58%)
create mode 100644
django_airavata/apps/auth/static/django_airavata_auth/js/store/modules/extendedUserProfile.js
create mode 100644
django_airavata/apps/auth/static/django_airavata_auth/js/store/modules/userProfile.js
create mode 100644 django_airavata/apps/auth/tests/test_middleware.py
create mode 100644 django_airavata/apps/auth/tests/test_models.py
create mode 100644 django_airavata/static/common/js/mixins/ValidationParent.js
create mode 100644 docs/dev/queue_settings_calculator.md