<?xml version="1.0" encoding="UTF-8"?>
    
    <rss version="2.0"><channel><title>UstadMobile-primary2 Git changes</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/changes</link><description>UstadMobile-primary2 Git changes</description><item><title>#821 removed ${TESTCOURSENAME} and added course name "Test Course Block" (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/821/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/821/changes#detail0</guid><pubDate>Wed, 6 Aug 2025 10:34:36 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/002_001_admin_add_new_course_and_teacher.yaml
test-end-to-end/android-maestro/e2e-tests/004_003_multiple_submission_possible_for_student.yaml
test-end-to-end/android-maestro/e2e-tests/003_005_course_view_and_modules_can_expand_collapse.yaml
test-end-to-end/android-maestro/e2e-tests/003_006_all_user_able_to_open_text_block.yaml
</description></item><item><title>#820 Update compile sdk and target sdk to 35 (Android 15) (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/820/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/820/changes#detail0</guid><pubDate>Mon, 28 Jul 2025 11:47:58 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-cache/build.gradle.kts
lib-xxhashkmp-commonjvmimpl/build.gradle.kts
app-android-baselineprofile/build.gradle.kts
lib-ihttp-nanohttpd/build.gradle.kts
lib-centralappconfigdb-common/build.gradle.kts
lib-ihttp-okhttp/build.gradle.kts
core/build.gradle
lib-ui-compose/build.gradle.kts
sharedse/build.gradle
lib-centralappconfigdb-sqldelight/build.gradle.kts
lib-xxhashkmp/build.gradle.kts
build.gradle
lib-database/build.gradle
lib-xxhashkmp-core/build.gradle.kts
lib-util/build.gradle
lib-ihttp-core/build.gradle.kts
lib-ihttp-iostreams/build.gradle.kts
</description></item><item><title>#819 Fix error in AbstractAppActivity: downloads would be shown when any extra arguments were passed with the intent (even if showDownloads is not set or false). (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/819/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/819/changes#detail0</guid><pubDate>Wed, 2 Jul 2025 16:21:56 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
</description></item><item><title>#818 fixes for the issues (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/818/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/818/changes#detail0</guid><pubDate>Fri, 27 Jun 2025 15:31:45 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/GetCredentialUseCase.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/GetCredentialUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/manageaccount/ManageAccountViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/OtherSignUpOptionSelectionScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/account/addaccountselectneworexisting/AddAccountSelectNewOrExistingViewModel.kt
</description></item><item><title>#818 code cleanup (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/818/changes#detail1</link><guid isPermaLink="false">job/UstadMobile-primary2/818/changes#detail1</guid><pubDate>Fri, 27 Jun 2025 15:31:45 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/manageaccount/ManageAccountViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/manageaccount/ManageAccountScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/manageaccount/ManageAccountScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/account/addaccountselectneworexisting/AddAccountSelectNewOrExistingViewModel.kt
</description></item><item><title>#818 clean up (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/818/changes#detail2</link><guid isPermaLink="false">job/UstadMobile-primary2/818/changes#detail2</guid><pubDate>Fri, 27 Jun 2025 15:31:45 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
</description></item><item><title>#818 Minor space tidyup and variable renaming. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/818/changes#detail3</link><guid isPermaLink="false">job/UstadMobile-primary2/818/changes#detail3</guid><pubDate>Fri, 27 Jun 2025 15:31:45 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/manageaccount/ManageAccountViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/CreatePasskeyUseCaseImpl.kt
</description></item><item><title>#817 error message showing now if registration allowed without adding terms (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/817/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/817/changes#detail0</guid><pubDate>Thu, 26 Jun 2025 11:48:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/view/site/edit/SiteEditScreen.kt
</description></item><item><title>#817 e2e_cypress test (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/817/changes#detail1</link><guid isPermaLink="false">job/UstadMobile-primary2/817/changes#detail1</guid><pubDate>Thu, 26 Jun 2025 11:48:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/support/commands.js
</description></item><item><title>#817 test update - cypress (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/817/changes#detail2</link><guid isPermaLink="false">job/UstadMobile-primary2/817/changes#detail2</guid><pubDate>Thu, 26 Jun 2025 11:48:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/support/commands.js
</description></item><item><title>#817 test update - maestro (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/817/changes#detail3</link><guid isPermaLink="false">job/UstadMobile-primary2/817/changes#detail3</guid><pubDate>Thu, 26 Jun 2025 11:48:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/common/enable_user_registration.yaml
test-end-to-end/webapp-cypress/cypress/support/commands.js
</description></item><item><title>#817 when registration allowed toggle is off then error message was till showing so that is fixed in this commit (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/817/changes#detail4</link><guid isPermaLink="false">job/UstadMobile-primary2/817/changes#detail4</guid><pubDate>Thu, 26 Jun 2025 11:48:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/site/edit/SiteEditViewModel.kt
</description></item><item><title>#817 Modified test flow on cypress (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/817/changes#detail5</link><guid isPermaLink="false">job/UstadMobile-primary2/817/changes#detail5</guid><pubDate>Thu, 26 Jun 2025 11:48:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/support/commands.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_001_admin_enable_or_disable_user_registration.cy.js
</description></item><item><title>#817 Modified test description (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/817/changes#detail6</link><guid isPermaLink="false">job/UstadMobile-primary2/817/changes#detail6</guid><pubDate>Thu, 26 Jun 2025 11:48:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_001_admin_enable_or_disable_user_registration_test_description.md
</description></item><item><title>#817 Modified maestro test (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/817/changes#detail7</link><guid isPermaLink="false">job/UstadMobile-primary2/817/changes#detail7</guid><pubDate>Thu, 26 Jun 2025 11:48:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/common/enable_user_registration.yaml
test-end-to-end/android-maestro/e2e-tests/007_001_admin_enable_or_disable_user_registration.yaml
</description></item><item><title>#817 test update - cypress - added wait to give time to load the switch (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/817/changes#detail8</link><guid isPermaLink="false">job/UstadMobile-primary2/817/changes#detail8</guid><pubDate>Thu, 26 Jun 2025 11:48:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/support/commands.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_001_admin_enable_or_disable_user_registration.cy.js
</description></item><item><title>#817 #comment time to load the switch (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/817/changes#detail9</link><guid isPermaLink="false">job/UstadMobile-primary2/817/changes#detail9</guid><pubDate>Thu, 26 Jun 2025 11:48:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_001_admin_enable_or_disable_user_registration.cy.js
</description></item><item><title>#817 removed wait and force:true from cypress test (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/817/changes#detail10</link><guid isPermaLink="false">job/UstadMobile-primary2/817/changes#detail10</guid><pubDate>Thu, 26 Jun 2025 11:48:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/support/commands.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_001_admin_enable_or_disable_user_registration.cy.js
</description></item><item><title>#817 updated SiteEditScreen (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/817/changes#detail11</link><guid isPermaLink="false">job/UstadMobile-primary2/817/changes#detail11</guid><pubDate>Thu, 26 Jun 2025 11:48:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/view/site/edit/SiteEditScreen.kt
</description></item><item><title>#816 Update Android Gradle Plugin version to 8.11.0 (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/816/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/816/changes#detail0</guid><pubDate>Wed, 25 Jun 2025 19:42:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>gradle/wrapper/gradle-wrapper.properties
build.gradle
</description></item><item><title>#815 Bump version (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/815/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/815/changes#detail0</guid><pubDate>Wed, 4 Jun 2025 13:50:05 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>build.gradle
</description></item><item><title>#814 cypress test - conflict fixes (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/814/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/814/changes#detail0</guid><pubDate>Wed, 4 Jun 2025 10:39:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_006_admin_enable_or_disable_guest_login.cy.js
app-ktor-server/src/main/resources/application.conf
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_005_student_registered_by_admin_or_teacher_dont_need_parentConsent.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_004_002_users_add_course_comments.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_004_005_assignment_grace_period_finished.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_001_admin_enable_or_disable_user_registration.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_004_006_user_enter_assignment_page_before_graceperiod_but_submission_after_grace_Period.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_004_009_group_users_multiple_assignment_submission_allowed.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_004_003_multiple_submission_possible_for_student.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_004_010_peer_marking_for_individual_assignment.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_007b_admin_send_group_invitation_to_join_course_via_email.cy.js
test-end-to-end/webapp-cypress/cypress/support/commands.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_002b_user_registration_above_age_13_join_learning_space_username_password.cy.js
</description></item><item><title>#814 removed useMockEmail change (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/814/changes#detail1</link><guid isPermaLink="false">job/UstadMobile-primary2/814/changes#detail1</guid><pubDate>Wed, 4 Jun 2025 10:39:24 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/resources/application.conf
</description></item><item><title>#813 Attempt fix for copy course app crash (since merging dev-simplified-onboarding). (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/813/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/813/changes#detail0</guid><pubDate>Tue, 3 Jun 2025 18:39:41 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#812 AddnewPerson usecase binding issue fix (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/812/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/812/changes#detail0</guid><pubDate>Mon, 2 Jun 2025 12:42:55 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#811 checklist 4 -5 (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail0</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/007_005_student_registered_by_admin_or_teacher_dont_need_parentConsent.yaml
test-end-to-end/android-maestro/e2e-tests/007_004_user_registration_dob_field_is_mandatory.yaml
test-end-to-end/android-maestro/e2e-tests/007_002_user_registration_above_age_13.yaml
test-end-to-end/android-maestro/common/new-student-registration-details.yaml
test-end-to-end/android-maestro/e2e-tests/007_009_user_registration_email_field_verification.yaml
test-end-to-end/android-maestro/e2e-tests/007_010_user_registration_phone_field_verification.yaml
test-end-to-end/android-maestro/e2e-tests/007_001_admin_enable_or_disable_user_registration.yaml
test-end-to-end/android-maestro/e2e-tests/007_003_user_registration_below_age_13.yaml
test-end-to-end/android-maestro/e2e-tests/007_006_admin_enable_or_disable_guest_login.yaml
test-end-to-end/android-maestro/e2e-tests/007_008_user_registration_mandatory_fields_test.yaml
test-end-to-end/android-maestro/common/enable_user_registration.yaml
</description></item><item><title>#811 .......... (prashant)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail1</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail1</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppBar.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/onboarding/OnboardingScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/App.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/appstate/AppUiState.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/OnBoardingViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
core/src/commonMain/resources/MR/base/strings.xml
core/src/commonMain/kotlin/com/ustadmobile/core/account/Endpoint.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
</description></item><item><title>#811 Added 3 button in onboarding screen, created individual login feature (prashant)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail2</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail2</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/individual/IndividualLearnerScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/individual/IndividualLearnerViewModel.kt
lib-ui-compose/src/desktopMain/resources/img/icn_google.png
lib-ui-compose/src/androidMain/res/drawable/icn_google.png
core/src/androidMain/kotlin/com/ustadmobile/core/util/AndroidDispatcher.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/util/CommonDispatcher.jvm.kt
core/src/jsMain/kotlin/com/ustadmobile/core/MR.js.kt
core/src/jsMain/kotlin/com/ustadmobile/core/util/CommonDispatcher.js.kt
img/icn_google.png
core/src/commonMain/kotlin/com/ustadmobile/core/util/CommonDispatcher.kt
</description></item><item><title>#811 1) Add createLocalAccount() function in UstadAccountManager.kt (prashant.deshmukh)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail3</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail3</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/individual/IndividualLearnerViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/individual/IndividualLearnerScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/App.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/OnBoardingViewModel.kt
core/src/commonMain/resources/MR/base/strings.xml
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/components/UstadHorizontalDivider.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/components/UstadTitleDescriptionButton.kt
</description></item><item><title>#811 1) Add createLocalAccount() function in UstadAccountManager.kt (prashant.deshmukh)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail4</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail4</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/individual/IndividualLearnerScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/App.kt
core/src/androidMain/kotlin/com/ustadmobile/core/util/AndroidDispatcher.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/util/CommonDispatcher.jvm.kt
core/src/jsMain/kotlin/com/ustadmobile/core/util/CommonDispatcher.js.kt
core/src/commonMain/resources/MR/base/strings.xml
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/components/UstadTitleDescriptionButton.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/CommonDispatcher.kt
</description></item><item><title>#811 1) Add createLocalAccount() function in UstadAccountManager.kt (prashant.deshmukh)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail5</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail5</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/individual/IndividualLearnerViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/individual/IndividualLearnerScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/App.kt
lib-ui-compose/src/androidMain/res/drawable/icn_google.png
core/src/commonMain/kotlin/com/ustadmobile/core/impl/appstate/AppUiState.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/OnBoardingViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/components/UstadHorizontalDivider.kt
img/icn_google.png
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/onboarding/OnboardingScreen.kt
lib-ui-compose/src/desktopMain/resources/img/icn_google.png
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
core/src/commonMain/resources/MR/base/strings.xml
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
</description></item><item><title>#811 invite via contact ui created for android/desktop (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail6</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail6</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/jvmTest/kotlin/com/ustadmobile/core/domain/invite/ParseInviteUseCaseTest.kt
app-android/build.gradle
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/list/PersonListViewModel.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/components/UstadContactPickButton.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/clazzmemberlist/ClazzMemberListViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/list/PersonListScreen.kt
gradle/libs.versions.toml
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/components/UstadContactPickButton.kt
lib-ui-compose/build.gradle.kts
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/components/UstadContactPickButton.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ParseInviteUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/InviteViaContactViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteViaContact/InviteViaContactScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteViaContact/InviteViaContactScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/list/PersonListScreen.kt
core/src/commonMain/resources/MR/base/strings.xml
</description></item><item><title>#811 chip text field changes (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail7</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail7</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/components/UstadContactPickButton.kt
kotlin-js-store/yarn.lock
app-react/src/jsMain/kotlin/com/ustadmobile/entities/UstadScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/wrappers/reactchipsflield/ChipTextField.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/components/UstadContactPickButton.kt
app-react/build.gradle
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/components/UstadContactPickButton.kt
lib-ui-compose/build.gradle.kts
build.gradle
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/InviteViaContactViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ParseInviteUseCase.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteViaContact/InviteViaContactScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteViaContact/InviteViaContactScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#811 1) Removed carousel, List Item added. (prashant.deshmukh)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail8</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail8</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/individual/IndividualLearnerViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/individual/IndividualLearnerScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/onboarding/OnboardingScreen.kt
core/src/commonMain/resources/MR/base/strings.xml
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/App.kt
</description></item><item><title>#811 - Added Zip and Unzip use cases in commonMain and androidMain. (prashant.deshmukh)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail9</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail9</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonJvmMain/kotlin/com/ustadmobile/core/impl/di/CommonJvmDiModule.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/settings/SettingsScreenPreview.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/backup/ZipFileUseCase.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/backup/JvmUnzipFileUseCase.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/backup/AndroidZipFileUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/model/FileToZip.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ZipProgress.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/backup/ZipFileUseCase.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/backup/UnzipFileUseCase.js.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/settings/SettingsViewModel.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/backup/JvmZipFileUseCase.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/backup/AndroidUnzipFileUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/FolderSelector.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/settings/SettingsScreen.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/util/JvmFolderSelector.kt
core/src/jsMain/kotlin/com/ustadmobile/core/util/FolderSelector.js.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/backup/UnzipFileUseCase.kt
core/src/androidMain/kotlin/com/ustadmobile/core/util/AndroidFolderSelector.kt
</description></item><item><title>#811 -Modifications in rememberUstadFilePickLauncher for folder picking, and updates to other classes accordingly. (prashant.deshmukh)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail10</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail10</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/androidMain/kotlin/com/ustadmobile/core/domain/backup/AndroidZipFileUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/model/FileToZip.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/components/UstadPickFileLauncherCommon.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/backup/CommonJvmUnzipFileUseCase.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/backup/UnzipFileUseCase.js.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/settings/SettingsViewModel.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/backup/AndroidUnzipFileUseCase.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/settings/SettingsScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/components/UstadPickFileLauncher.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/bulkaddselectfile/BulkAddPersonSelectFileScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazzassignment/detailoverview/ClazzAssignmentDetailOverviewScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/backup/UnzipFileUseCase.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/backup/JvmUnzipFileUseCase.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/components/UstadPickFileLauncher.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/individual/IndividualLearnerViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/individual/IndividualLearnerScreen.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/impl/di/CommonJvmDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/backup/ZipFileUseCase.kt
app-android/src/main/AndroidManifest.xml
app-android/src/main/res/values/strings.xml
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/components/UstadPickFileLauncher.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/backup/ZipFileUseCase.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/backup/CommonJvmZipFileUseCase.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/backup/JvmZipFileUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/FolderSelector.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/util/JvmFolderSelector.kt
core/src/commonMain/resources/MR/base/strings.xml
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/contententry/list/ContentEntryListScreen.kt
core/src/androidMain/kotlin/com/ustadmobile/core/util/AndroidFolderSelector.kt
</description></item><item><title>#811 Incomplete tests (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail11</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail11</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/007_005_student_registered_by_admin_or_teacher_dont_need_parentConsent.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_009_user_registration_email_field_verification.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_010_user_registration_phone_field_verification.yaml
test-end-to-end/android-maestro/e2e-tests/007_004_user_registration_dob_field_is_mandatory.yaml
test-end-to-end/android-maestro/e2e-tests/007_009_user_registration_email_field_verification.yaml
test-end-to-end/android-maestro/e2e-tests/007_010_user_registration_phone_field_verification.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_006_admin_enable_or_disable_guest_login.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_004_user_registration_dob_field_is_mandatory.yaml
test-end-to-end/android-maestro/e2e-tests/007_006_admin_enable_or_disable_guest_login.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_005_student_registered_by_admin_or_teacher_dont_need_parentConsent.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_008_user_registration_mandatory_fields_test.yaml
test-end-to-end/android-maestro/e2e-tests/007_008_user_registration_mandatory_fields_test.yaml
</description></item><item><title>#811 clazzinvite added to dp, processinviteUsecase class create to send invite (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail12</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail12</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/jvmTest/kotlin/com/ustadmobile/core/domain/invite/ParseInviteUseCaseTest.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/173.json
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzInviteDao.kt
app-ktor-server/build.gradle
gradle/libs.versions.toml
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/redeem/ClazzInviteRedeem.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/email/SendEmailUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/ClazzInvite.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/redeem/ClazzInviteViewModel.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/message/SendMessageUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/sms/SendSmsUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/InviteViaContactViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ParseInviteUseCase.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/172.json
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/UmAppDatabase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/invite/ProcessInviteUseCaseTest.kt
</description></item><item><title>#811 route created for clazzinviteviacontact (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail13</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail13</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/email/SendEmailUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/list/PersonListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/CheckContactTypeUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ContactToServerUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/InviteViaContactViewModel.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteRoute.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/clazzmemberlist/ClazzMemberListViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteViaContact/InviteViaContactScreen.kt
</description></item><item><title>#811 Added a "share app" option setting screen, changes in IndividualLearnerViewModel while navigating local user to ContentEntryListViewModel added some args to visible import content option in library screen. (prashant.deshmukh)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail14</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail14</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/androidMain/kotlin/com/ustadmobile/core/domain/share/SendAppFileUseCaseAndroid.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/individual/IndividualLearnerViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/settings/SettingsScreen.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/settings/SettingsScreenPreview.kt
app-android/src/main/AndroidManifest.xml
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
app-android/src/main/res/xml/file_provider_path.xml
app-android/src/main/java/com/ustadmobile/port/android/view/AppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/settings/SettingsViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/share/SendAppFileUseCase.kt
</description></item><item><title>#811 ContactToServerUseCase created (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail15</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail15</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ContactToServerUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/InviteViaContactViewModel.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteRoute.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
</description></item><item><title>#811 Change icon to given illustration, fix IndividualLearner library screen content button visibility. (prashant.deshmukh)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail16</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail16</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/individual/IndividualLearnerScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/individual/IndividualLearnerViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
lib-ui-compose/src/androidMain/res/drawable/onboarding_existing.webp
img/onboarding_individual.svg
lib-ui-compose/src/androidMain/res/drawable/onboarding_add_org.webp
lib-ui-compose/src/desktopMain/resources/img/individual_create.svg
img/onboarding_existing.svg
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
img/onboarding_add_org.svg
lib-ui-compose/src/desktopMain/resources/img/individual_restore.svg
lib-ui-compose/src/desktopMain/resources/img/onboarding_existing.svg
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/onboarding/OnboardingScreen.kt
lib-ui-compose/src/androidMain/res/drawable/individual_restore.webp
img/individual_restore.svg
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
img/individual_create.svg
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/DefaultCourseImagePainter.kt
lib-ui-compose/src/androidMain/res/drawable/individual_create.webp
lib-ui-compose/src/desktopMain/resources/img/onboarding_individual.svg
lib-ui-compose/src/desktopMain/resources/img/onboarding_add_org.svg
lib-ui-compose/src/androidMain/res/drawable/onboarding_individual.webp
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
</description></item><item><title>#811 Change icon to given illustration, fix IndividualLearner library screen content button visibility. (prashant.deshmukh)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail17</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail17</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>docs/source/images/sharing3.jpg
docs/source/images/installation4.jpg
docs/source/images/sharing2.jpg
docs/source/installation.rst
docs/source/images/sharing1.jpg
docs/source/images/installation3.jpg
docs/source/images/installation1.jpg
docs/source/images/installation2.jpg
</description></item><item><title>#811 Change icon to given illustration, fix IndividualLearner library screen content button visibility. (prashant.deshmukh)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail18</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail18</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/androidMain/kotlin/com/ustadmobile/core/util/ZipUnzipWorker.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
</description></item><item><title>#811 api response getting, (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail19</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail19</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/ClazzInvite.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ContactToServerUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/InviteViaContactViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ContactUploadRequest.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteRoute.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzInviteDao.kt
core/src/commonMain/resources/MR/base/strings.xml
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteViaContact/InviteViaContactScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#811 Change icon to given illustration, fix IndividualLearner library screen content button visibility. (prashant.deshmukh)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail20</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail20</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>docs/source/index.rst
</description></item><item><title>#811 Guest login test (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail21</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail21</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/common/enable_guest_login.yaml
test-end-to-end/android-maestro/common/guest_login.yaml
test-end-to-end/android-maestro/e2e-tests/007_006_admin_enable_or_disable_guest_login.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_006_admin_enable_or_disable_guest_login.yaml
</description></item><item><title>#811 twilio added for sms (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail22</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail22</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/sms/twilio/TwilioHttpClient.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
app-ktor-server/src/main/resources/application.conf
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/sms/SmsProperties.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/sms/SendSmsUseCaseHttp.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/sms/SendSmsUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/message/SendMessageUseCase.kt
app-ktor-server/build.gradle
gradle/libs.versions.toml
</description></item><item><title>#811 assetlink json created (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail23</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail23</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/redeem/ClazzInviteRedeem.kt
app-ktor-server/src/main/resources/.well-known/assetlinks.json
app-android/src/main/java/com/ustadmobile/port/android/view/AppActivity.kt
app-android/src/main/AndroidManifest.xml
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteViaContact/InviteViaContactScreen.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
</description></item><item><title>#811 data base version changes (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail24</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail24</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/well-known/assetlinks.json
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/message/SendMessageUseCase.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/UmAppDatabase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
</description></item><item><title>#811 Remove hard coded assetlinks.json (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail25</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail25</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/well-known/assetlinks.json
</description></item><item><title>#811 Add well-known to gitignore (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail26</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail26</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/.gitignore
</description></item><item><title>#811 Export functionality with JVM Test cases . (prashant.deshmukh)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail27</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail27</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/androidMain/kotlin/com/ustadmobile/core/domain/export/AndroidExportContentEntryUstadZipUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/list/ContentEntryListViewModel.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/export/DesktopExportContentEntryUstadZipUseCaseTest.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ContentEntryDao.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/export/DesktopExportContentEntryUstadZipUseCase.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/export/ExportContentEntryUstadZipUseCase.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/export/ExportContentEntryUstadZipUseCase.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/contententry/list/ContentEntryListScreen.kt
</description></item><item><title>#811 Export functionality with JVM Test cases . (prashant)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail28</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail28</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/export/ExportContentEntryUstadZipUseCase.kt
</description></item><item><title>#811 link json verified (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail29</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail29</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/redeem/ClazzInviteRedeem.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/195.json
app-android/src/main/AndroidManifest.xml
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/redeem/ClazzInviteViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/redeem/ClazzRedeemUseCase.kt
core/src/commonMain/resources/MR/base/strings.xml
</description></item><item><title>#811 invite accept flow completed (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail30</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail30</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/ClazzEnrolment.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzInviteDao.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/redeem/ClazzRedeemUseCase.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzEnrolmentDao.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/redeem/ClazzInviteRedeem.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/195.json
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ClazzRedeemUseCase.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/ClazzInviteWithTimeZone.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/redeem/ClazzInviteViewModel.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/UmAppDatabase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#811 import export code. (prashant)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail31</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail31</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/jvmMain/kotlin/com/ustadmobile/core/domain/import/DesktopImportContentEntryUstadZipUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/import/ImportContentEntryUstadZipUseCase.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ContentEntryDao.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/import/AndroidImportContentEntryUstadZipUseCase.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/export/ExportContentEntryUstadZipUseCase.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/import/CommonJvmImportContentEntryUstadZipUseCase.kt
README.md
</description></item><item><title>#811 import export code. (prashant)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail32</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail32</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>README.md
</description></item><item><title>#811 in web ui chip text fields connected with viewmodel (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail33</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail33</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/entities/UstadScreen.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzInviteDao.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/redeem/ClazzInviteRedeem.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/195.json
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteViaContact/ClazzInviteRedeem.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ClazzRedeemUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/ClazzInvite.kt
core/src/jsMain/kotlin/com/ustadmobile/core/impl/di/DomainDiModuleJs.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/redeem/ClazzInviteViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/InviteViaContactViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteViaContact/InviteViaContactScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#811 Remove offline sharing and import export part.this branch only have individual functionality (prashant.deshmukh)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail34</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail34</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/androidMain/kotlin/com/ustadmobile/core/domain/share/SendAppFileUseCaseAndroid.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/export/AndroidExportContentEntryUstadZipUseCase.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/import/DesktopImportContentEntryUstadZipUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/list/ContentEntryListViewModel.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/import/AndroidImportContentEntryUstadZipUseCase.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/settings/SettingsViewModel.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/import/CommonJvmImportContentEntryUstadZipUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/share/SendAppFileUseCase.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/settings/SettingsScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/import/ImportContentEntryUstadZipUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/export/DesktopExportContentEntryUstadZipUseCaseTest.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ContentEntryDao.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/export/DesktopExportContentEntryUstadZipUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/export/ExportContentEntryUstadZipUseCase.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/export/ExportContentEntryUstadZipUseCase.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/contententry/list/ContentEntryListScreen.kt
</description></item><item><title>#811 withDoorTransactionAsync added in ProcessInviteUseCase (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail35</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail35</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzInviteDao.kt
</description></item><item><title>#811 settings issue resolved (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail36</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail36</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/common/enable_guest_login.yaml
test-end-to-end/android-maestro/common/enable_user_registration.yaml
</description></item><item><title>#811 changes in user accounts (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail37</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail37</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests.disabled/007_002_user_registration_above_age_13.yaml
test-end-to-end/android-maestro/e2e-tests/007_005_student_registered_by_admin_or_teacher_dont_need_parentConsent.yaml
test-end-to-end/android-maestro/e2e-tests/007_002_user_registration_above_age_13.yaml
test-end-to-end/android-maestro/common/new-student-registration-details.yaml
test-end-to-end/android-maestro/e2e-tests/007_003_user_registration_below_age_13.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_005_student_registered_by_admin_or_teacher_dont_need_parentConsent.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_003_user_registration_below_age_13.yaml
</description></item><item><title>#811 changes in user accounts (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail38</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail38</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests.disabled/007_004_user_registration_dob_field_is_mandatory.yaml
test-end-to-end/android-maestro/e2e-tests/007_004_user_registration_dob_field_is_mandatory.yaml
</description></item><item><title>#811 passkey sign in and sign up (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail39</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail39</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/SignUpScreen.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/PersonPasskey.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/PersonPasskeyDao.kt
gradle/libs.versions.toml
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/SignInWithPasskey.android.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/login/LoginScreen.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/195.json
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/util/passkey/SignInWithPasskey.kt
app-ktor-server/src/test/kotlin/com/ustadmobile/lib/rest/VerifySignInWithPasskeyText.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/util/passkey/PasskeyUtil.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/util/passkey/SignInWithPasskey.desktop.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyPrompt.android.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/194.json
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyPrompt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/PassKeySignInData.kt
app-ktor-server/build.gradle
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/passkey/verify/VerifySignInWithPasskeyRoute.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/UserPasskeyChallenge.kt
app-android/proguard-rules.pro
lib-ui-compose/build.gradle.kts
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/PasskeyData.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/PasskeyPromptData.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/SavePersonPasskeyUseCase.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyPrompt.desktop.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/UmAppDatabase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/passkey/verify/VerifySignInWithPasskeyUseCase.kt
core/src/commonMain/resources/MR/base/strings.xml
</description></item><item><title>#811 migration fixed (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail40</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail40</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/PersonPasskey.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/195.json
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/PersonPasskeyDao.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/SavePersonPasskeyUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/passkey/verify/VerifySignInWithPasskeyUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#811 CreatePasskeyusecase added (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail41</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail41</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/PersonPasskey.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/SignUpScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/CreatePasskeyUseCase.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/PersonPasskeyDao.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyPrompt.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/PasskeyResult.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/CreatePasskeyParams.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/passkey/verify/VerifySignInWithPasskeyRoute.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/login/LoginScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/PasskeyData.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/SavePersonPasskeyUseCase.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/util/passkey/PasskeyUtil.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyPrompt.desktop.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/passkey/verify/VerifySignInWithPasskeyUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyPrompt.android.kt
</description></item><item><title>#811 added passkeyverifyresult and handling response after verification on server (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail42</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail42</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/util/passkey/PasskeyRequestJsonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/PasskeyVerifyResult.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/util/passkey/PasskeyUtil.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/passkey/verify/VerifySignInWithPasskeyUseCase.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/SignInWithPasskey.android.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyPrompt.android.kt
</description></item><item><title>#811 Initial refactoring to make repository nullable when used with a local only account. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail43</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail43</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/detail/submissionstab/ClazzAssignmentDetailSubmissionsTabViewModel.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/settings/SettingsScreenPreview.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/detailoverview/ClazzAssignmentDetailOverviewViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/list/PersonListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/detailoverviewtab/ContentEntryDetailOverviewViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/CoursePermissionExt.kt
core/src/jsMain/kotlin/com/ustadmobile/core/MR.js.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/detail/PersonDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/edit/ClazzEnrolmentEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/settings/SettingsViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/parentalconsentmanagement/ParentalConsentManagementViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/permissionlist/CoursePermissionListViewModel.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/UmAppDatabaseHolder.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/discussionpost/edit/DiscussionPostEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/courseblock/textblockdetail/TextBlockDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/coursegroupset/edit/CourseGroupSetEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzlog/editattendance/ClazzLogEditAttendanceViewModel.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/gradebook/ClazzGradebookViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/pdfcontent/PdfContentViewModel.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/test/viewmodeltest/ViewModelTestBuilder.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/site/detail/SiteDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/site/edit/SiteEditViewModel.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazz/list/ClazzListViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/contententry/launchcontent/xapi/ResolveXapiLaunchHrefUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/message/messagelist/MessageListViewModel.kt
core/src/jsMain/kotlin/com/ustadmobile/core/util/FolderSelector.js.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/site/termsdetail/SiteTermsDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/systempermission/detail/SystemPermissionDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzlog/attendancelist/ClazzLogListAttendanceViewModel.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/edit/PersonEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/accountedit/PersonAccountEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/epubcontent/EpubContentViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/discussionpost/courediscussiondetail/CourseDiscussionDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/deleteditem/DeletedItemListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/permissionedit/CoursePermissionEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/discussionpost/detail/DiscussionPostDetailViewModel.kt
core/src/jsMain/kotlin/com/ustadmobile/core/impl/di/DomainDiModuleJs.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/systempermission/edit/SystemPermissionEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/videocontent/VideoContentViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/list/ClazzListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/courseblock/edit/CourseBlockEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/message/conversationlist/ConversationListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/ClazzDetailOverviewViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/UstadViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/submissiondetail/CourseAssignmentSubmissionDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/coursegroupset/detail/CourseGroupSetDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/list/ContentEntryListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/submitterdetail/ClazzAssignmentSubmitterDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/courseterminology/edit/CourseTerminologyEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/permissiondetail/CoursePermissionDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/detail/ClazzAssignmentDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/clazzmemberlist/ClazzMemberListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/list/ClazzEnrolmentListViewModel.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/xapicontent/XapiContentViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/coursegroupset/list/CourseGroupSetListViewModel.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/courseterminology/list/CourseTerminologyListViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/courseterminology/list/CourseTerminologyListViewModel.kt
</description></item><item><title>#811 Update unit testing to use UmAppDatalayer and nullable repository. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail44</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail44</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/site/termsdetail/SiteTermsDetailViewModel.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/UmAppDataLayer.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/util/UstadTestRule.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/edit/ClazzEnrolmentEditViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/schedule/ClazzLogCreator.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/test/clientservertest/ClientServerTestClient.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/impl/UstadAccountManagerTest.kt
core/src/jsMain/kotlin/com/ustadmobile/core/impl/di/DomainDiModuleJs.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/UmAppDatabaseHolder.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/ClazzTitleExt.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/UstadViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/blob/savepicture/SavePictureUseCase.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/schedule/ClazzLogCreatorManagerJvm.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
core/src/androidMain/kotlin/com/ustadmobile/core/schedule/ClazzLogScheduleWorker.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/test/viewmodeltest/ViewModelTestBuilder.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/schedule/ClazzLogScheduleJob.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/AuthManager.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/Endpoint.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/schedule/TestClazzLogCreator.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/clazzenrolment/pendingenrolment/ApproveOrDeclinePendingEnrolmentUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/xapicontent/XapiContentViewModelTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModelTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/test/clientservertest/ClientServerIntegrationTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/account/AuthManagerTest.kt
core/src/androidMain/kotlin/com/ustadmobile/core/schedule/ClazzLogCreatorManagerAndroidImpl.kt
</description></item><item><title>#811 Fix app-ktor-server di module. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail45</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail45</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/test/kotlin/com/ustadmobile/lib/rest/CommonKtorTestDiModule.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/dimodules/JvmBackendDiModule.kt
</description></item><item><title>#811 Remove Gson from CommonKtorTestDiModule (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail46</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail46</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/test/kotlin/com/ustadmobile/lib/rest/CommonKtorTestDiModule.kt
</description></item><item><title>#811 Update implementation of new local account creation. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail47</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail47</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppBar.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/individual/IndividualLearnerScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/individual/IndividualLearnerViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/StringExt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/account/CreateNewLocalAccountUseCase.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/Endpoint.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/SiteDao.kt
</description></item><item><title>#811 Update handling of new local account creation. Ensure AddNewPersonUseCase is created in UstadApp. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail48</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail48</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/jsMain/kotlin/com/ustadmobile/core/impl/di/DomainDiModuleJs.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#811 Refactor: Endpoint is now LearningSpace. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail49</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail49</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/contententry/edit/ContentEntryEditViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/UserSessionAndPersonExt.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/contentformats/pdf/AbstractPdfContentImportCommonJvm.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/account/CreateNewLocalAccountUseCase.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/blob/upload/BlobUploadClientUseCaseJvm.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/blob/download/AbstractEnqueueContentManifestDownloadUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/util/ext/NavControllerExtTest.kt
lib-centraldb/README.md
core/src/androidMain/kotlin/com/ustadmobile/core/contentformats/pdf/PdfContentImporterAndroid.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/contententry/getmetadata/ContentEntryGetMetadataViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/coursegroup/CreateXapiGroupForCourseGroupUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/blob/xfertestnode/XferTestServer.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/interop/oneroster/OneRosterEndpointTest.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/blob/upload/BlobUploadClientUseCase.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/clazzmemberlist/ClazzMemberListViewModelTest.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ext/UmAppDatabaseKtorExt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/LearningSpaceScope.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/contententry/importcontent/ImportContentEntryJob.kt
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/entities/LearningSpaceInfo.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/util/UstadUrlComponentsTest.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AppActivity.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/blob/download/EnqueueBlobDownloadClientUseCaseAndroid.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/RegisterRequest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/http/XapiHttpServerUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xapi/noninteractivecontentusagestatementrecorder/NonInteractiveContentXapiStatementRecorderTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/LeavingReasonEditViewModelTest.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/blob/upload/AbstractEnqueueBlobUploadClientUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/interop/externalapppermissionrequest/ExternalAppPermissionRequestViewModel.kt
lib-centraldb/build.gradle.kts
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazzlog/attendancelist/ClazzLogListAttendanceViewModelTest.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/io/ext/FileCommonJvmExt.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/site/termsdetail/SiteTermsDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/savestatementonclear/SaveStatementOnClearUseCase.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/blob/upload/EnqueueBlobUploadClientUseCaseAndroid.kt
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/entities/ServerConfig.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/blob/download/BlobDownloadClientWorker.kt
app-react/src/jsMain/kotlin/com/ustadmobile/mui/components/Header.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/xapi/savestatementonclear/SaveStatementOnClearWorker.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/interop/oneroster/model/Result.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/blob/download/CancelDownloadUseCaseJvm.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/UstadUrlComponents.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/videocontent/VideoContentViewModel.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/blob/xfertestnode/XferTestNode.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/state/StoreXapiStateUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/interop/oneroster/OneRosterEndpoint.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/contententry/importcontent/DismissRemoteContentEntryImportErrorUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/xapicontent/XapiContentViewModelTest.kt
core/src/jsMain/kotlin/com/ustadmobile/core/account/AuthManagerEncryptExt.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/contententry/importlink/ContentEntryImportLinkViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/contentformats/ContentImporter.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/account/AuthManagerTest.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/dimodules/JvmBackendDiModule.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/blob/savepicture/EnqueueSavePictureUseCaseJvm.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/blob/download/EnqueueContentManifestDownloadUseCaseJvm.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/pdfcontent/PdfContentScreen.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/contentformats/pdf/PdfContentImporterJvm.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/PersonExt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/noninteractivecontentusagestatementrecorder/NonInteractiveContentXapiStatementRecorderFactory.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/detailoverviewtab/ContentEntryDetailOverviewViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/LearningSpace.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/accountlist/AccountListScreenPreview.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/contentformats/epub/EpubContentImporterCommonJvmTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/submissionstab/ClazzAssignmentDetailSubmissionsTabViewModelTest.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/blob/download/CancelDownloadUseCaseAndroid.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/blob/upload/CancelBlobUploadClientUseCaseAndroid.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/person/bulkadd/EnqueueBulkAddPersonUseCase.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/blob/upload/CancelBlobUploadClientUseCaseJvm.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xapi/XapiStatementResourceTest.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/contentformats/video/VideoContentImporterCommonJvm.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/contententry/getmetadatafromuri/ContentEntryGetMetaDataFromUriUseCaseCommonJvm.kt
app-ktor-server/build.gradle
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/importlink/ContentEntryImportLinkViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/model/XapiStatement.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/model/XapiStatementObject.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/passwordreset/PasswordReset.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazz/list/ClazzListViewModelTest.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/PersonAuthRegisterRoute.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/App.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/blob/upload/BlobUploadServerUseCaseTest.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/contentformats/h5p/H5PContentImporter.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/person/bulkadd/BulkAddPersonsFromLocalUriUseCaseJs.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/impl/UstadAccountManagerTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/contentformats/media/VideoContentImporterJvmTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/contentformats/xapi/XapiZipContentImporterTest.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/blob/savelocaluris/SaveLocalUrisAsBlobUseCaseJs.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/blob/download/BlobDownloadJob.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/contentformats/ContentImportersDiModuleJvm.kt
app-ktor-server/src/test/kotlin/com/ustadmobile/lib/rest/CommonKtorTestDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/blob/savepicture/EnqueueSavePictureUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/ext/XapiSessionEntityExt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/UstadViewModel.kt
app-ktor-server/src/test/kotlin/com/ustadmobile/lib/rest/TestSiteRoute.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/contententry/launchcontent/epub/LaunchEpubUseCaseJvm.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ext/ApplicationCallExt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/submissiondetail/CourseAssignmentSubmissionDetailViewModel.kt
settings.gradle
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/xapi/savestatementonclear/SaveStatementOnClearJob.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/blob/xfertestnode/XferTestClient.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/contentformats/xapi/XapiZipContentImporter.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/account/AuthManagerEncryptExt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/bulkaddselectfile/BulkAddPersonSelectFileViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/clazzmemberlist/ClazzMemberListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/AuthManager.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/Endpoint.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/accountlist/AccountListViewModel.kt
lib-ihttp-core/build.gradle.kts
app-react/src/jsMain/kotlin/com/ustadmobile/view/accountlist/AccountListScreen.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/detailoverview/ClazzAssignmentDetailOverviewViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/contententry/getmetadatafromuri/ContentEntryGetMetaDataFromUriUseCase.kt
ARCHITECTURE.md
core/src/androidMain/kotlin/com/ustadmobile/core/domain/contententry/importcontent/ImportContentEntryWorker.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/DIExt.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/contententry/getmetadatafromuri/ContentEntryGetMetaDataFromUriUseCaseJs.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/blob/saveandmanifest/SaveLocalUriAsBlobAndManifestUseCaseJvmTest.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/blob/download/AbstractEnqueueBlobDownloadClientUseCase.kt
lib-centraldb/.gitignore
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/person/edit/PersonEditViewModelTest.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/dbexport/DbExportScreen.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/contententry/importcontent/EnqueueImportContentEntryUseCaseAndroid.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/contententry/importcontent/EnqueueImportContentEntryUseCaseJvm.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/ClazzDetailOverviewViewModelTest.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/blob/download/ContentManifestDownloadWorker.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xapi/coursegroup/CreateXapiGroupForCourseGroupUseCaseTest.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/blob/download/ContentManifestDownloadJob.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/interop/externalapppermission/GrantExternalAppPermissionUseCaseAndroid.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/noninteractivecontentusagestatementrecorder/NonInteractiveContentXapiStatementRecorder.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/blob/upload/BlobUploadClientJob.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/getapiurl/GetApiUrlUseCaseDirect.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/test/viewmodeltest/ViewModelTestBuilder.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/embeddedhttp/EmbeddedHttpServer.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/blob/savelocaluris/AbstractSaveLocalUrisIntegrationTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/contententry/importcontent/CancelRemoteContentEntryImportUseCase.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/blob/upload/BlobUploadClientWorker.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/contententry/launchcontent/xapi/ResolveXapiLaunchHrefUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/contentformats/h5p/H5PContentImporterTest.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/xapi/savestatementonclear/SaveStatementOnClearUseCaseAndroid.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/interop/oneroster/model/LineItem.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/blob/upload/BlobUploadClientUseCaseJvmTest.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/edit/ClazzEnrolmentEditViewModelTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/contentformats/pdf/PdfContentImporterJvmTest.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/blob/upload/EnqueueBlobUploadClientUseCaseJvm.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/blob/saveandmanifest/SaveLocalUriAndManifestUploadIntegrationTest.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/blob/download/EnqueueContentManifestDownloadJobUseCaseAndroid.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/contententry/importcontent/EnqueueContentEntryImportUseCase.kt
app-ktor-server/src/test/kotlin/com/ustadmobile/lib/rest/PersonAuthRegisterRouteTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/makelink/MakeLinkUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/person/detail/PersonDetailViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/submitterdetail/ClazzAssignmentSubmitterDetailViewModel.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/coursegroupset/list/CourseGroupSetListViewModelTest.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/blob/savelocaluris/SaveLocalUrisAsBlobsUseCaseJvm.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/blob/savepicture/EnqueueSavePictureUseCaseAndroid.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/blob/savepicture/SavePictureWorker.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/cachelock/CreateCacheLocksForActiveContentEntryVersionUseCase.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/contentformats/epub/EpubContentImporterCommonJvm.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/NavControllerExt.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/account/SetPasswordUseCaseJs.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/EndpointScope.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/person/bulkadd/BulkAddPersonJob.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/util/UstadTestRule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/interop/UstadHttpOverIpcServer.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/coursegroupset/edit/CourseGroupSetEditViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/usersession/StartUserSessionUseCase.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/blob/savepicture/SavePictureJob.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/test/clientservertest/ClientServerTestClient.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/contententry/importcontent/CancelImportContentEntryUseCaseJvm.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/parentalconsentmanagement/ParentalConsentManagementViewModel.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/App.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/getmetadata/ContentEntryGetMetadataViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/coursegroupset/detail/CourseGroupSetDetailViewModelTest.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/contententry/importcontent/CancelImportContentEntryUseCaseAndroid.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/contententry/importcontent/EnqueueImportContentEntryUseCaseRemote.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModelTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/peerreviewerallocationedit/PeerReviewerAllocationEditViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/assignment/submitmark/SubmitMarkUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/parentalconsentmanagement/ParentalConsentManagementViewModelTest.kt
app-android/src/main/java/com/ustadmobile/port/android/authenticator/AuthenticatorActivity.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/xapi/savestatementonclear/SaveStatementOnUnloadUseCaseJs.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UserSessionWithPersonAndLearningSpace.kt
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/entities/LearningSpaceConfig.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazz/detail/ClazzDetailViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/edit/PersonEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/accountedit/PersonAccountEditViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/accountlist/AccountListScreen.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/videocontent/VideoContentViewModelTest.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/blob/download/EnqueueBlobDownloadClientUseCaseJvm.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/contentformats/AbstractContentImporterTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/contententry/importcontent/CancelImportContentEntryServerUseCase.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/xapi/session/ResumeOrStartXapiSessionUseCaseJs.kt
core/src/jsMain/kotlin/com/ustadmobile/core/impl/di/DomainDiModuleJs.kt
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/CentralDb.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/videocontent/VideoContentScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/StringExt.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/blob/savelocaluris/SaveLocalUrisAsBlobsUseCaseJvmIntegrationTest.kt
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/daos/LearningSpaceDao.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/state/DeleteXapiStateUseCase.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/xapi/savestatementonclear/SaveStatementOnClearUseCaseJvm.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xapi/state/XapiStateUseCaseIntegrationTest.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/getapiurl/GetApiUrlUseCaseEmbeddedServer.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazzlog/edit/ClazzLogEditAttendanceViewModelTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/test/clientservertest/ClientServerIntegrationTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UserSessionWithPersonAndEndpoint.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/XapiStatementResource.kt
</description></item><item><title>#811 Refactor: Endpoint is now LearningSpace. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail50</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail50</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/hooks/useActiveDatabase.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/impl/di/DomainJvmDiModule.kt
</description></item><item><title>#811 commit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail51</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail51</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/SignUpScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/chlid/EditChildProfileScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/EditChildProfileViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/AddChildProfileViewModel.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/PasskeyVerifyResult.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/200.json
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/chlid/AddChildProfileScreen.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/199.json
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/PersonParentJoin.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/commonMain/resources/MR/base/strings.xml
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/UmAppDatabase.kt
</description></item><item><title>#811 Refactor: Endpoint is now LearningSpace. Remove Klock dependency. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail52</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail52</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ext/ApplicationCallExt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/schedule/ClazzLogCreatorManager.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceRoute.kt
lib-test-common/build.gradle
app-android/build.gradle
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/daos/LearningSpaceDao.kt
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/entities/LearningSpaceConfig.kt
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/daos/LearningSpaceConfigDao.kt
gradle/libs.versions.toml
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/daos/LearningSpaceInfoDao.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/person/edit/PersonEditViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
core/build.gradle
app-react/src/jsMain/kotlin/UstadJsDi.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/create/CreateLearningSpaceUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModelTest.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/passwordreset/PasswordReset.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/CentralDb.kt
core/src/jsMain/kotlin/com/ustadmobile/core/schedule/ClazzLogCreatorManagerJs.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/servermanager/ServerManager.kt
</description></item><item><title>#811 Add SystemDb (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail53</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail53</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/entities/ServerConfig.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/SystemConfigDao.kt
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/entities/LearningSpaceConfig.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/SystemConfig.kt
lib-centraldb/README.md
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/daos/LearningSpaceConfigDao.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/LearningSpaceInfoDao.kt
lib-centraldb/.gitignore
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/SystemDb.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/LearningSpaceConfigDao.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
buildconfig.default.properties
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/CentralDb.kt
lib-systemdb/.gitignore
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/servermanager/ServerManager.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/LearningSpaceInfo.kt
settings.gradle
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceRoute.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/appconfig/AppConfigCLI.kt
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/entities/LearningSpaceInfo.kt
app-ktor-server/build.gradle
lib-centraldb/src/commonMain/kotlin/com/ustadmobile/centraldb/daos/LearningSpaceInfoDao.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/LearningSpaceConfig.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/create/CreateLearningSpaceUseCase.kt
lib-centraldb/build.gradle.kts
lib-systemdb/build.gradle.kts
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/dimodules/JvmBackendDiModule.kt
lib-ihttp-core/build.gradle.kts
lib-systemdb/README.md
INSTALL.md
ARCHITECTURE.md
</description></item><item><title>#811 Refactor ApiUrlConfig into SystemUrlConfig. Update documentation. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail54</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail54</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/impl/config/AppConfigMap.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/openlink/OnClickLinkUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/interop/externalapppermissionrequestredirect/GrantExternalAppPermissionRedirectViewModel.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/SystemConfigDao.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/util/NavControllerUriHandler.kt
app-android/build.gradle
core/src/jvmTest/kotlin/com/ustadmobile/core/util/UstadTestRule.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/impl/config/ManifestAppConfig.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/config/BuildConfigMap.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/SystemConfig.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/edit/PersonEditViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/mui/components/UstadScreens.kt
app-react/build.gradle
app-react/src/jsMain/kotlin/UstadJsDi.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/config/GenderConfig.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/impl/UstadAccountManagerTest.kt
core/src/androidMain/kotlin/com/ustadmobile/core/impl/config/BundleBuildConfig.kt
buildconfig.default.properties
app-react/src/jsMain/resources/ustad-config.json
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/UstadViewModel.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
app-android/src/main/AndroidManifest.xml
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/config/SystemUrlConfig.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/test/viewmodeltest/ViewModelTestBuilder.kt
README.md
core/src/androidMain/kotlin/com/ustadmobile/core/impl/config/BundleAppConfig.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/config/ApiUrlConfig.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/config/UstadBuildConfig.kt
app-desktop/build.gradle.kts
core/src/jvmTest/kotlin/com/ustadmobile/core/test/clientservertest/ClientServerIntegrationTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/accountlist/AccountListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/config/AppConfig.kt
lib-systemdb/README.md
INSTALL.md
</description></item><item><title>#811 add child profile done (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail55</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail55</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountExistingUserViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AddAccountExistingUserScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AddAccountSelectNewOrExistingScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/person/AddNewPersonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/AddChildProfileViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/onboarding/OnboardingScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewUserTypeViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/registerageredirect/RegisterAgeRedirectViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/chlid/AddChildProfileScreen.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/200.json
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/PersonDao.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/OnBoardingViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/registerageredirect/RegisterAgeRedirectScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/EditChildProfileViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/commonMain/resources/MR/base/strings.xml
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/newuser/AddAccountSelectNewUserTypeScreen.kt
</description></item><item><title>#811 add profile will be visible if newPersonalAccountsLearningSpaceUrl not null (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail56</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail56</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewUserTypeViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/newuser/AddAccountSelectNewUserTypeScreen.kt
</description></item><item><title>#811 Work in progress - implement password protected system config API REST server endpoint. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail57</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail57</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceRoute.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/appconfig/AppConfigCLI.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/systemconfig/verifyauth/VerifySystemConfigAuthUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/SystemConfigAuth.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/systemconfig/sysconfiginit/GenerateSystemConfigAuthCallback.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/SystemDb.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/pbkdf2/Pbkdf2EncryptUseCase.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/pbkdf2/Pbkdf2AuthenticateUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceApiRoute.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/dimodules/JvmBackendDiModule.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/SystemConfigAuthDao.kt
</description></item><item><title>#811 Fix umRestApplication compilation (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail58</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail58</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
</description></item><item><title>#811 app icon added (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail59</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail59</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AppIcon.desktop.kt
lib-ui-compose/src/desktopMain/resources/img/ic_launcher_icon.svg
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AppIcon.android.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AddAccountSelectNewOrExistingScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/images/UstadImagePainter.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AddAccountExistingUserScreen.kt
lib-ui-compose/src/androidMain/res/drawable/ic_launcher_icon.xml
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/newuser/AddAccountSelectNewUserTypeScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AppIcon.kt
</description></item><item><title>#811 Update NavControllerExt for new flow. Add comments on AddAccountSelectNewOrExistingViewModel . (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail60</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail60</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/site/termsdetail/SiteTermsDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/util/ext/NavControllerExtTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/edit/PersonEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/view/UstadView.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/NavControllerExt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/siteenterlink/SiteEnterLinkViewModel.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/person/edit/PersonEditViewModelTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModelTest.kt
</description></item><item><title>#811 Implement using the configuration from SystemDb to get the database url, username, and password for the learning space db. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail61</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail61</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/LearningSpaceInfo.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ext/ApplicationCallExt.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/appconfig/AppConfigCLI.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/StringExt.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ext/UmAppDatabaseKtorExt.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceServerRepo.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/composites/LearningSpaceConfigAndInfo.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/LearningSpaceInfoDao.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/CheckHostRoute.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/create/CreateLearningSpaceUseCase.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/Site.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/LearningSpaceConfigDao.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/dimodules/JvmBackendDiModule.kt
</description></item><item><title>#811 OtherSignUpOptionSelectionScreen added (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail62</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail62</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/SignUpScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/PersonParentJoinDao.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/OtherSignUpOptionSelectionScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UserSessionWithPersonAndLearningSpace.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/ParentAndChildrenProfileSelectionDialog.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/EditChildProfileViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/AddChildProfileViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/registerageredirect/RegisterAgeRedirectViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewUserTypeViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/chlid/AddChildProfileScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/AddOrUpdatedChildprofileuseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/commonMain/resources/MR/base/strings.xml
</description></item><item><title>#811 GetLocalAccountsSupportedUseCase added (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail63</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail63</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/site/termsdetail/SiteTermsDetailViewModel.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/OtherSignUpOptionSelectionScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AddAccountSelectNewOrExistingScreen.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/AddChildProfileViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/localaccount/GetLocalAccountsSupportedUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewUserTypeViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/registerageredirect/RegisterAgeRedirectViewModel.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/newuser/AddAccountSelectNewUserTypeScreen.kt
</description></item><item><title>#811 LearningSpaceListScreen added (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail64</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail64</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/SignUpScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountExistingUserViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/siteenterlink/LearningSpaceEnterLinkViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/chlid/AddChildProfilesScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
app-react/src/jsMain/kotlin/com/ustadmobile/entities/UstadScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/siteenterlink/SiteEnterLinkViewModel.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/siteenterlink/LearningSpaceEnterLinkViewModelTest.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/siteenterlink/SiteEnterLinkScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/ValidateUsername/ValidateUsernameUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/siteenterlink/SiteEnterLinkViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/AddChildProfileViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/login/LoginScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewUserTypeViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/chlid/AddChildProfileScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/learningspacelist/LearningSpaceListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/AddChildProfilesViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/chlid/EditChildProfileScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/siteenterlink/SiteEnterLinkScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/siteenterlink/LearningSpaceEnterLinkScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/EditChildProfileViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/siteenterlink/SiteEnterLinkPreview.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/PasskeyVerifyResult.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/accountlist/AccountListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/AddOrUpdatedChildprofileuseCase.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/learningspacelist/LearningSpaceListScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/chlid/EditChildProfilesScreen.kt
core/src/commonMain/resources/MR/base/strings.xml
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
</description></item><item><title>#811 login flow update (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail65</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail65</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/common/clear_login_and_add_content.yaml
</description></item><item><title>#811 login flow update (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail66</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail66</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/common/clear_state_and_get_started.yaml
</description></item><item><title>#811 commit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail67</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail67</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
</description></item><item><title>#811 commit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail68</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail68</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/UstadJsDi.kt
</description></item><item><title>#811 textcase error fixed (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail69</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail69</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/jvmTest/kotlin/com/ustadmobile/core/util/ext/NavControllerExtTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/bulkaddusers/BulkAddUsersUseCaseJvmTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/parentalconsentmanagement/ParentalConsentManagementViewModelTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xapi/state/XapiStateUseCaseIntegrationTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/person/registerageredirect/RegisterAgeRedirectViewModelTest.kt
</description></item><item><title>#811 comit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail70</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail70</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/resources/.well-known/assetlinks.json
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
</description></item><item><title>#811 commit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail71</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail71</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/resources/application.conf
app-ktor-server/src/dist/ustad-server.conf
</description></item><item><title>#811 commit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail72</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail72</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/App.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UserSessionWithPersonAndLearningSpace.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/CreatePasskeyParams.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/202.json
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/SignInWithPasskey.android.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/LoginWithPasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/LoginWithPasskeyUseCase.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/login/LoginScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/util/passkey/SignInWithPasskey.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewUserTypeViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/util/passkey/PasskeyRequestJsonUseCase.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/util/passkey/SignInWithPasskey.desktop.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/Person.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/UmAppDatabase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyPrompt.android.kt
</description></item><item><title>#811 commit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail73</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail73</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/util/passkey/PasskeyRequestJsonUseCase.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
</description></item><item><title>#811 commit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail74</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail74</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/siteenterlink/LearningSpaceEnterLinkViewModel.kt
</description></item><item><title>#811 remove create account in LoginScreen.kt (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail75</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail75</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/login/LoginScreen.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModelTest.kt
</description></item><item><title>#811 remove create account from web (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail76</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail76</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/view/login/LoginScreen.kt
</description></item><item><title>#811 login flow update (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail77</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail77</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/run-maestro-test.sh
</description></item><item><title>#811 migration issue (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail78</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail78</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
</description></item><item><title>#811 migration issue (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail79</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail79</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
</description></item><item><title>#811 applicationContext changed to this@AbstractAppActivity) (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail80</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail80</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
</description></item><item><title>#811 site and term issue fixed (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail81</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail81</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AddAccountExistingUserScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/site/termsdetail/SiteTermsDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewUserTypeViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/newuser/AddAccountSelectNewUserTypeScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
</description></item><item><title>#811 site and term issue fixed (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail82</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail82</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/ClazzDetailOverviewViewModel.kt
</description></item><item><title>#811 User flow change (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail83</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail83</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_002_user_registration_above_age_13_test_description.md
test-end-to-end/test-descriptions/007_004_user_registration_dob_field_is_mandatory_test_description.md
test-end-to-end/test-descriptions/007_006_admin_enable_or_disable_guest_login_test_description.md
test-end-to-end/test-descriptions/007_005_student_registered_by_admin_or_teacher_dont_need_parentConsent_test_description.md
test-end-to-end/test-descriptions/007_003_users_under_13_can_register_using_parental_approval_link_test_description.md
test-end-to-end/test-descriptions/007_001_admin_enable_or_disable_user_registration_test_description.md
</description></item><item><title>#811 commit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail84</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail84</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/UmAccount.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/AddChildProfilesViewModel.kt
</description></item><item><title>#811 User flow change (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail85</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail85</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_003_users_under_13_can_register_using_parental_approval_link_test_description.md
test-end-to-end/test-descriptions/007_001_admin_enable_or_disable_user_registration_test_description.md
</description></item><item><title>#811 User flow change (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail86</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail86</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_003_users_under_13_can_register_using_parental_approval_link_test_description.md
</description></item><item><title>#811 personal account  library screen issue (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail87</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail87</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/accountlist/AccountListViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AddAccountExistingUserScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountExistingUserViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/EditChildProfileViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/AddChildProfilesViewModel.kt
</description></item><item><title>#811 commit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail88</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail88</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/SignUpScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/login/LoginScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewUserTypeViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
</description></item><item><title>#811 Update and rename 007_002_user_registration_above_age_13_test_description.md to 007_002a_user_registration_above_age_13_test_description.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail89</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail89</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_002a_user_registration_above_age_13_test_description.md
test-end-to-end/test-descriptions/007_002_user_registration_above_age_13_test_description.md
</description></item><item><title>#811 Update README.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail90</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail90</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/README.md
</description></item><item><title>#811 Update README.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail91</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail91</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/README.md
</description></item><item><title>#811 Update 007_002a_user_registration_above_age_13_test_description.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail92</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail92</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_002a_user_registration_above_age_13_test_description.md
</description></item><item><title>#811 Update README.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail93</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail93</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/README.md
</description></item><item><title>#811 Create 007_002b_user_registration_above_age_13_test_description.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail94</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail94</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_002b_user_registration_above_age_13_test_description.md
</description></item><item><title>#811 Update README.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail95</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail95</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/README.md
</description></item><item><title>#811 Update README.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail96</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail96</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/README.md
</description></item><item><title>#811 Create 007_002c_user_registration_above_age_13_test_description.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail97</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail97</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_002c_user_registration_above_age_13_test_description.md
</description></item><item><title>#811 Create 007_002d_user_registration_above_age_13_test_description.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail98</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail98</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_002d_user_registration_above_age_13_test_description.md
</description></item><item><title>#811 Create 007_002e_user_registration_personalal_account_can_add_child_profiles (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail99</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail99</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_002e_user_registration_personalal_account_can_add_child_profiles
</description></item><item><title>#811 Update README.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail100</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail100</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/README.md
</description></item><item><title>#811 Update 007_002a_user_registration_above_age_13_test_description.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail101</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail101</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_002a_user_registration_above_age_13_test_description.md
</description></item><item><title>#811 Update 007_002b_user_registration_above_age_13_test_description.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail102</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail102</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_002b_user_registration_above_age_13_test_description.md
</description></item><item><title>#811 Update 007_002c_user_registration_above_age_13_test_description.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail103</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail103</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_002c_user_registration_above_age_13_test_description.md
</description></item><item><title>#811 Update 007_002d_user_registration_above_age_13_test_description.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail104</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail104</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_002d_user_registration_above_age_13_test_description.md
</description></item><item><title>#811 Update and rename 007_002e_user_registration_personalal_account_can_add_child_profiles to 007_002e_user_registration_personalal_account_can_add_child_profiles.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail105</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail105</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_002e_user_registration_personalal_account_can_add_child_profiles
test-end-to-end/test-descriptions/007_002e_user_registration_personalal_account_can_add_child_profiles.md
</description></item><item><title>#811 SignUpEnterUsernamePasswordScreen added (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail106</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail106</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/SignUpScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/SignUpEnterUsernamePasswordScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignupEnterUsernamePasswordViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/newuser/AddAccountSelectNewUserTypeScreen.kt
</description></item><item><title>#811 Admin can enable/disable registration for users (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail107</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail107</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/resources/MR/base/strings.xml
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/siteenterlink/LearningSpaceEnterLinkViewModel.kt
</description></item><item><title>#811 Update 007_002a_user_registration_above_age_13_test_description.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail108</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail108</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/007_002a_user_registration_above_age_13_test_description.md
</description></item><item><title>#811 child session issue (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail109</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail109</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/AddChildProfilesViewModel.kt
</description></item><item><title>#811 changes in simplified on boarding (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail110</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail110</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/common/clear_login_and_add_content.yaml
test-end-to-end/android-maestro/common/clear_state_and_get_started.yaml
</description></item><item><title>#811 changes in simplified on boarding (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail111</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail111</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests.disabled/004_008_group_users_add_assignment_and_course_comments.yaml
test-end-to-end/android-maestro/e2e-tests/005_001_add_discussionBoard.yaml
test-end-to-end/android-maestro/e2e-tests/005_006_users_can_delete_post_on_discussion_board.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_002_user_registration_above_age_13.yaml
test-end-to-end/android-maestro/e2e-tests/004_006_assignment_grace_period_finished.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_009_user_registration_email_field_verification.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_010_user_registration_phone_field_verification.yaml
test-end-to-end/android-maestro/e2e-tests/005_005_users_can_add_external_links_as_post_on_discussion_board.yaml
test-end-to-end/android-maestro/e2e-tests/001_003_admin_can_permanently_delete_the_content_002.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_004_user_registration_dob_field_is_mandatory.yaml
test-end-to-end/android-maestro/e2e-tests/003_002_add_module_text_blocks_and_perform_indent_hide_delete_actions.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/005_004_users_can_add_internal_links_as_post_on_discussion_board.yaml
test-end-to-end/android-maestro/e2e-tests/002_003_teacher_record_attendance.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/004_013_peer_marking_for_group_assignment.yaml
test-end-to-end/android-maestro/e2e-tests/007_001_admin_enable_or_disable_user_registration.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/004_002_users_add_course_comments.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_008_user_registration_mandatory_fields_test.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/004_009_group_users_add_private_comments.yaml
test-end-to-end/android-maestro/e2e-tests/005_003_users_can_add_post_on_discussion_board.yaml
test-end-to-end/android-maestro/e2e-tests/003_005_add_new_content_block_inside_course.yaml
test-end-to-end/android-maestro/e2e-tests/004_001_assignment_creation_submission_grading.yaml
test-end-to-end/android-maestro/e2e-tests/003_008_course_blocks_title_field_is_mandatory.yaml
test-end-to-end/android-maestro/common/login_download_and_open_content.yaml
test-end-to-end/android-maestro/e2e-tests/004_004_multiple_submission_possible_for_student.yaml
test-end-to-end/android-maestro/common/clear_state_and_personal_account_new_user_flow.yaml
test-end-to-end/android-maestro/e2e-tests/001_003_admin_can_delete_and_restore_content_001.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/004_011_group_users_multiple_assignment_submission_allowed.yaml
test-end-to-end/android-maestro/e2e-tests/002_007_admin_grant_permissions_test.yaml
test-end-to-end/android-maestro/common/clear_state_and_learning_space_new_userflow.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/004_003_user_add_private_comment.yaml
test-end-to-end/android-maestro/common/clear_state_and_learning_space_existing_userflow.yaml
test-end-to-end/android-maestro/e2e-tests/003_003_add_existing_content_in_library_as_block.yaml
test-end-to-end/android-maestro/e2e-tests/004_005_assignment_after_deadline_and_before_grace_Period.yaml
test-end-to-end/android-maestro/e2e-tests/002_001_admin_add_new_course_and_teacher.yaml
test-end-to-end/android-maestro/common/guest_login.yaml
test-end-to-end/android-maestro/e2e-tests/007_006_admin_enable_or_disable_guest_login.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/ANDROID_INTEROP_001-can_get_courses_and_store_results.yaml
test-end-to-end/android-maestro/e2e-tests/007_005_student_registered_by_admin_or_teacher_dont_need_parentConsent.yaml
test-end-to-end/android-maestro/e2e-tests/007_004_user_registration_dob_field_is_mandatory.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/004_007_user_enter_assignment_page_before_graceperiod_but_submission_after_grace_Period.yaml
test-end-to-end/android-maestro/e2e-tests/007_002b_user_registration_above_age_13_join_learning_space_username_password.yaml
test-end-to-end/android-maestro/e2e-tests/003_001_add_or_edit_course_permission_test.yaml
test-end-to-end/android-maestro/e2e-tests/005_002_teacher_can_edit_discussion_board.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/004_012_peer_marking_for_individual_assignment.yaml
test-end-to-end/android-maestro/e2e-tests/003_006_course_view_and_modules_can_expand_collapse.yaml
test-end-to-end/android-maestro/common/clear_state_and_get_started.yaml
test-end-to-end/android-maestro/e2e-tests/003_007_all_user_able_to_open_text_block.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/004_010_group_users_single_assignment_submission_allowed.yaml
test-end-to-end/android-maestro/e2e-tests/007_002d_user_registration_above_age_13_personal_account_username_password.yaml
test-end-to-end/android-maestro/e2e-tests/002_005_course_title_is_mandatory.yaml
test-end-to-end/android-maestro/e2e-tests/002_002_student_joining_course_using_code.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_005_student_registered_by_admin_or_teacher_dont_need_parentConsent.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_003_user_registration_below_age_13.yaml
</description></item><item><title>#811 changes in simplified on boarding (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail112</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail112</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests.disabled/007_002d_user_registration_above_age_13_personal_account_username_password.yaml
test-end-to-end/android-maestro/e2e-tests/007_002d_user_registration_above_age_13_personal_account_username_password.yaml
</description></item><item><title>#811 changes in simplified on boarding (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail113</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail113</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/common/add_profile_pic.yaml
test-end-to-end/android-maestro/common/clear_state_and_personal_account_new_user_flow.yaml
test-end-to-end/android-maestro/e2e-tests/000_000_hello_world.yaml
</description></item><item><title>#811 changes in simplified on boarding (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail114</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail114</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/run-maestro-test.sh
</description></item><item><title>#811 changes in simplified on boarding (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail115</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail115</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/007_005_student_registered_by_admin_or_teacher_dont_need_parentConsent.yaml
test-end-to-end/test-descriptions/007_004_user_registration_dob_field_is_mandatory_test_description.md
test-end-to-end/test-descriptions/007_008_user_registration_mandatory_fields_test_description.md
test-end-to-end/README.md
test-end-to-end/android-maestro/e2e-tests.disabled/007_008_user_registration_mandatory_fields_test.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_002d_user_registration_above_age_13_personal_account_username_password.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_002_user_registration_above_age_13.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_009_user_registration_email_field_verification.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_010_user_registration_phone_field_verification.yaml
test-end-to-end/test-descriptions/007_009_user_registration_email_field_verification_test_description.md
test-end-to-end/android-maestro/e2e-tests/007_004_user_registration_above_age_13_join_learning_space_mandatoryfields_test.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_004_user_registration_dob_field_is_mandatory.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_005_student_registered_by_admin_or_teacher_dont_need_parentConsent.yaml
test-end-to-end/test-descriptions/007_010_user_registration_phone_field_verification_test_description.md
test-end-to-end/test-descriptions/007_004_user_registration_mandatory_fields_test_description.md
</description></item><item><title>#811 changes in simplified on boarding (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail116</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail116</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests.disabled/007_002d_user_registration_above_age_13_personal_account_username_password.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/ANDROID_INTEROP_001-can_get_courses_and_store_results.yaml
test-end-to-end/android-maestro/e2e-tests.disabled/007_003_user_registration_below_age_13.yaml
</description></item><item><title>#811 changes in simplified on boarding (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail117</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail117</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests.disabled/007_002d_user_registration_above_age_13_personal_account_username_password.yaml
test-end-to-end/android-maestro/e2e-tests/007_004_user_registration_above_age_13_join_learning_space_mandatoryfields_test.yaml
test-end-to-end/android-maestro/e2e-tests/007_002b_user_registration_above_age_13_join_learning_space_username_password.yaml
</description></item><item><title>#811 web ui created (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail118</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail118</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/view/person/child/EditChildProfilesScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountExistingUserViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/child/EditChildProfilesScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/signup/SignUpEnterUsernamePasswordScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/siteenterlink/LearningSpaceEnterLinkScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/chlid/AddChildProfilesScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/signup/SignUpScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AddAccountExistingUserScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/entities/UstadScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingUserTypeViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewUserTypeViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/mui/components/UstadScreens.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/child/AddChildProfilesScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/learningspacelist/LearningSpaceListScreen.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/newuser/AddAccountSelectNewOrExistingUserTypeScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/addaccount/AddAccountSelectNewOrExistingScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/addaccount/AddAccountSelectNewOrExistingUserTypeScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/AddChildProfilesViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/child/ChildProfileItem.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/siteenterlink/SiteEnterLinkScreen.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/SiteRoute.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignupEnterUsernamePasswordViewModel.kt
app-react/src/jsMain/resources/img/onboarding_individual.svg
app-react/src/jsMain/resources/img/onboarding_add_org.svg
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/EditChildProfileViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
app-react/src/jsMain/resources/img/onboarding_existing.svg
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/child/AddChildProfilesScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/SignUpEnterUsernamePasswordScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/registerageredirect/RegisterAgeRedirectScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/chlid/EditChildProfilesScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/newuser/AddAccountSelectNewUserTypeScreen.kt
</description></item><item><title>#811 changes in existing codes (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail119</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail119</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/003_006_course_view_and_modules_can_expand_collapse.yaml
test-end-to-end/android-maestro/e2e-tests/003_007_all_user_able_to_open_text_block.yaml
test-end-to-end/android-maestro/e2e-tests/005_002_teacher_can_edit_discussion_board.yaml
test-end-to-end/android-maestro/common/create_course_with_members.yaml
test-end-to-end/android-maestro/common/create_course_with_1teacher_2students.yaml
test-end-to-end/android-maestro/common/create_course_with_1teacher_1student.yaml
</description></item><item><title>#811 changes in existing codes (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail120</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail120</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/common/create_course_with_1teacher_1student.yaml
</description></item><item><title>#811 changes in RedirectViewModel (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail121</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail121</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/accountlist/AccountListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
</description></item><item><title>#811 existing tests (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail122</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail122</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/common/clear_state_and_learning_space_existing_userflow.yaml
test-end-to-end/android-maestro/common/clear_login_and_add_content.yaml
test-end-to-end/android-maestro/common/add_profile_pic.yaml
test-end-to-end/android-maestro/common/clear_state_and_learning_space_new_userflow.yaml
test-end-to-end/android-maestro/e2e-tests/000_000_hello_world.yaml
</description></item><item><title>#811 existing tests with conditions (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail123</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail123</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/common/clear_state_and_learning_space_existing_userflow.yaml
test-end-to-end/android-maestro/common/clear_login_and_add_content.yaml
test-end-to-end/android-maestro/common/add_profile_pic.yaml
test-end-to-end/android-maestro/common/clear_state_and_learning_space_new_userflow.yaml
test-end-to-end/android-maestro/e2e-tests/000_000_hello_world.yaml
</description></item><item><title>#811 preset learnning space check placed in NavControllerExt.kt (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail124</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail124</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/accountlist/AccountListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/NavControllerExt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
</description></item><item><title>#811 Cypress existing test changes (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail125</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail125</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_009_user_registration_email_field_verification.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_008_user_registration_mandatory_fields_test.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_002_user_registration_above_age_13.cy.js
test-end-to-end/webapp-cypress/cypress/support/commands.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_010_user_registration_phone_field_verification.cy.js
test-end-to-end/webapp-cypress/cypress.config.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_001_admin_enable_or_disable_user_registration.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_002b_user_registration_above_age_13_join_learning_space_username_password.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_004_user_registration_dob_field_is_mandatory.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_004_user_registration_above_age_13_join_learning_space_mandatoryfields_test.cy.js
</description></item><item><title>#811 Cypress existing test changes (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail126</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail126</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_001_admin_enable_or_disable_user_registration.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_005_005_user_add_external_links_to_post.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_002b_user_registration_above_age_13_join_learning_space_username_password.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_004_user_registration_above_age_13_join_learning_space_mandatoryfields_test.cy.js
</description></item><item><title>#811 changes in web part (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail127</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail127</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AppIcon.desktop.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/OtherSignUpOptionSelectionScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/accountlist/AccountListViewModel.kt
lib-ui-compose/src/desktopMain/resources/img/logo.svg
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/NavControllerExt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
</description></item><item><title>#811 Cypress existing test changes (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail128</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail128</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>cypress.config.js
</description></item><item><title>#811 unit test added (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail129</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail129</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModelTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/accountlist/AccountListViewModel.kt
</description></item><item><title>#811 Add changes/todos for learning space list. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail130</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail130</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-systemdb/build.gradle.kts
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/LearningSpaceInfo.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/LearningSpaceInfoDao.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
</description></item><item><title>#811 pr comment (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail131</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail131</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/PasskeyRequestJsonUseCase.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/CreatePasskeyUseCase.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/person/AddNewPersonUseCase.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyPrompt.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyUseCaseImpl.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/PasskeyResult.kt
gradle/libs.versions.toml
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/LoginWithPasskeyUseCaseImpl.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/login/LoginScreen.kt
lib-ui-compose/build.gradle.kts
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/util/passkey/PasskeyRequestJsonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/SavePersonPasskeyUseCase.kt
core/src/jsMain/kotlin/com/ustadmobile/core/impl/di/DomainDiModuleJs.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyPrompt.desktop.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyPrompt.android.kt
</description></item><item><title>#811 commit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail132</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail132</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/view/login/LoginScreen.kt
</description></item><item><title>#811 commit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail133</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail133</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/App.kt
</description></item><item><title>#811 worked on todo points (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail134</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail134</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/SystemDbDataLayer.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
app-android/build.gradle
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/model/SystemDbNodeIdAndAuth.kt
</description></item><item><title>#811 added id (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail135</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail135</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/view/person/addaccount/AddAccountSelectNewOrExistingScreen.kt
</description></item><item><title>#811 Cypress code update (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail136</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail136</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/support/commands.js
</description></item><item><title>#811 Cypress code update (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail137</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail137</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/support/commands.js
</description></item><item><title>#811 Cypress code update (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail138</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail138</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/support/commands.js
</description></item><item><title>#811 dependency issue fixed (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail139</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail139</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-systemdb/build.gradle.kts
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/composites/LearningSpaceConfigAndInfo.kt
core/build.gradle
</description></item><item><title>#811 port issue fixed (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail140</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail140</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/CreatePasskeyParams.kt
</description></item><item><title>#811 instance changes (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail141</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail141</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
</description></item><item><title>#811 commit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail142</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail142</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/learningspacelist/LearningSpaceListViewModel.kt
</description></item><item><title>#811 commit (nikunj)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail143</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail143</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/learningspacelist/LearningSpaceListScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/learningspacelist/LearningSpaceListViewModel.kt
</description></item><item><title>#811 Add required door entities to SystemDb. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail144</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail144</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/SystemDb.kt
</description></item><item><title>#811 Change endpoint for SystemDb in UstadApp DI. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail145</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail145</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
</description></item><item><title>#811 commit (Nikunjs.0011)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail146</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail146</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/view/person/learningspacelist/LearningSpaceListScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/learningspacelist/LearningSpaceListScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/learningspacelist/LearningSpaceListViewModel.kt
</description></item><item><title>#811 command added (Nikunjs.0011)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail147</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail147</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/appconfig/AppConfigCLIDeleteLearningSpace.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceServerRepo.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/delete/DeleteLearningSpaceUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceApiRoute.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/update/UpdateLearningSpaceUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/appconfig/AppConfigCLIUpdateLearningSpace.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/LearningSpaceInfoDao.kt
</description></item><item><title>#811 delete dir code added (Nikunjs.0011)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail148</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail148</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/delete/DeleteLearningSpaceUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/appconfig/AppConfigCLIDeleteLearningSpace.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
</description></item><item><title>#811 commit (Nikunjs.0011)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail149</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail149</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/delete/DeleteLearningSpaceUseCase.kt
</description></item><item><title>#811 readme updated to test passkey (Nikunjs.0011)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail150</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail150</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/README.md
</description></item><item><title>#811 readme updated to test passkey (Nikunjs.0011)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail151</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail151</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/README.md
</description></item><item><title>#811 crash fixed (Nikunjs.0011)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail152</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail152</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/proguard-rules.pro
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/LearningSpaceInfoDao.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
</description></item><item><title>#811 ustad-appconfig command added (Nikunjs.0011)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail153</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail153</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/ustad-appconfig.sh
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/SystemConfigScriptRoute.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/appconfig/AppConfigCLIDeleteLearningSpace.kt
app-ktor-server/ustad-appconfig.bat
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/appconfig/AppConfigCLI.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceServerRepo.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/LearningSpaceConfigDao.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/appconfig/AppConfigCLIUpdateLearningSpace.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/LearningSpaceInfoDao.kt
app-react/src/jsMain/resources/index.html
</description></item><item><title>#811 commit (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail154</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail154</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/ustad-appconfig.sh
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/SystemConfigScriptRoute.kt
data/system.db-shm
app-ktor-server/ustad-appconfig.bat
data/ustadcache.db-shm
data/ustadcache.db
data/admin.txt
data/system.db
data/system.db-wal
ustad-appconfig.bat
ustad-appconfig.sh
data/quartz.properties
data/ustadcache.db-wal
data/quartz.script
app-react/src/jsMain/resources/index.html
</description></item><item><title>#811 commit (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail155</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail155</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/jsMain/kotlin/com/ustadmobile/core/impl/di/DomainDiModuleJs.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/contententry/getsubtitletrackfromuri/GetSubtitleTrackFromUriUseCaseJs.kt
</description></item><item><title>#811 error fixed (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail156</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail156</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/components/UstadPickFileLauncher.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/settings/SettingsScreenPreview.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
</description></item><item><title>#811 commit (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail157</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail157</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/SystemConfigScriptRoute.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/learningspace/GoToLearningSpaceUseCase.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/204.json
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
wget-log
testserver-controller/src/main/java/com/ustadmobile/test/http/TestServerController.kt
testserver-controller/src/main/resources/application.conf
wget-log.1
</description></item><item><title>#811 commit (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail158</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail158</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>testserver-controller/src/main/java/com/ustadmobile/test/http/TestServerController.kt
testserver-controller/src/main/resources/application.conf
</description></item><item><title>#811 commit (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail159</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail159</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>testserver-controller/src/main/java/com/ustadmobile/test/http/TestServerController.kt
</description></item><item><title>#811 commit (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail160</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail160</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/learningspace/GoToLearningSpaceUseCase.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/learningspace/GoToLearningSpaceUseCaseAndroid.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/learningspace/GoToLearningSpaceUseCaseJvm.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/learningspace/GoToLearningSpaceUseCaseJs.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/learningspacelist/LearningSpaceListViewModel.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/addaccount/AddAccountSelectNewOrExistingScreen.kt
</description></item><item><title>#811 commit (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail161</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail161</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/SystemConfigScriptRoute.kt
app-react/src/jsMain/kotlin/com/ustadmobile/mui/components/UstadScreens.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/learningspace/GoToLearningSpaceUseCaseJs.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
</description></item><item><title>#811 system db added in js di (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail162</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail162</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/SystemConfigScriptRoute.kt
app-react/src/jsMain/kotlin/com/ustadmobile/mui/components/UstadScreens.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/learningspace/GoToLearningSpaceUseCaseJs.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
</description></item><item><title>#811 system db changes (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail163</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail163</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/build.gradle
</description></item><item><title>#811 Fix SystemDb - add ReplicateEntity annotation for LearningSpaceInfo. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail164</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail164</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/LearningSpaceInfo.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/SystemConfigScriptRoute.kt
app-react/src/jsMain/kotlin/com/ustadmobile/mui/components/UstadScreens.kt
</description></item><item><title>#811 changing admin person to admin user (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail165</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail165</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/create/CreateLearningSpaceUseCase.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/learningspace/GoToLearningSpaceUseCaseJs.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/learningspacelist/LearningSpaceListScreen.kt
</description></item><item><title>#811 desktop di added (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail166</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail166</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/view/person/learningspacelist/LearningSpaceListScreen.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDiModule.kt
</description></item><item><title>#811 readme updated (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail167</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail167</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/README.md
</description></item><item><title>#811 readme updated (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail168</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail168</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>README.md
</description></item><item><title>#811 install.md updated (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail169</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail169</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ServerAppMain.kt
INSTALL.md
README.md
</description></item><item><title>#811 Update to use a single command with subcommands for running the server and managing the server. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail170</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail170</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>data/system.db-shm
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/appconfig/AppConfigCLI.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/manageserver/ManageServerCLI.kt
data/ustadcache.db-shm
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ServerAppMain.kt
data/admin.txt
data/ustadcache.db
README.md
data/system.db-wal
data/system.db
runserver.bat
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
data/quartz.properties
data/quartz.script
data/ustadcache.db-wal
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ext/AppConfigExt.kt
runserver.sh
</description></item><item><title>#811 readme updated (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail171</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail171</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/README.md
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ServerAppMain.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/manageserver/ManageServerCLI.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
README.md
</description></item><item><title>#811 test server controller updated (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail172</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail172</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>testserver-controller/src/main/java/com/ustadmobile/test/http/TestServerController.kt
testserver-controller/src/main/resources/application.conf
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/manageserver/ManageServerCLI.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
</description></item><item><title>#811 test server controller updated (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail173</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail173</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>testserver-controller/src/main/resources/application.conf
</description></item><item><title>#811 Fix ServerAppMain when started with no args to run server by default. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail174</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail174</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/resources/application.conf
app-react/src/jsMain/kotlin/UstadJsDi.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
lib-ihttp-ktor-server/build.gradle.kts
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ServerAppMain.kt
app-ktor-server/src/dist/ustad-server.conf
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ext/AppConfigExt.kt
</description></item><item><title>#811 Fixes/improvements for initial setup and learning space creation. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail175</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail175</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/manageserver/ManageServerCLI.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ServerAppMain.kt
testserver-controller/src/main/java/com/ustadmobile/test/http/TestServerController.kt
README.md
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/SystemDb.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/LearningSpaceConfig.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/create/CreateLearningSpaceUseCase.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/LearningSpaceConfigDao.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceApiRoute.kt
testserver-controller/build.gradle
testserver-controller/src/main/resources/application.conf
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ext/AppConfigExt.kt
ARCHITECTURE.md
</description></item><item><title>#811 Add app-ktor-server/server.properties to gitignore (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail176</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail176</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/.gitignore
</description></item><item><title>#811 Fix server setup procedures for binary server build. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail177</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail177</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ServerAppMain.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/manageserver/ManageServerCLI.kt
app-ktor-server/src/scripttemplates/windowsStartScript.txt
app-ktor-server/src/scripttemplates/unixStartScript.txt
ARCHITECTURE.md
INSTALL.md
</description></item><item><title>#811 Fix testserver-controller to disable using jsDevServer (e.g. reverse proxy for webpack) when using testserver-controller . (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail178</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail178</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/README.md
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ServerAppMain.kt
testserver-controller/src/main/java/com/ustadmobile/test/http/TestServerController.kt
testserver-controller/start.sh
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
</description></item><item><title>#811 Update cypress and maestro scripts to use learning space parameter name. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail179</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail179</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/run-maestro-test.sh
app-react/src/jsMain/kotlin/com/ustadmobile/mui/components/UstadScreens.kt
test-end-to-end/webapp-cypress/run-cypress-test.sh
</description></item><item><title>#811 invite branch merged (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail180</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail180</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
app-ktor-server/src/main/resources/application.conf
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/194.json
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ContactToServerUseCase.kt
buildconfig.default.properties
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/redeem/ClazzInviteViewModel.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/UmAppDatabase.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/205.json
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#811 invite bug fix (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail181</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail181</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
app-ktor-server/src/main/resources/application.conf
app-react/src/jsMain/kotlin/UstadJsDi.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
buildconfig.default.properties
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/redeem/ClazzInviteViewModel.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteRoute.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDiModule.kt
core/src/jsMain/kotlin/com/ustadmobile/core/util/stringvalues/JsHeaderStringValuesAdapter.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#811 Work-in-progress migration of SystemDb to using SQLdelight. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail182</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail182</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-systemdb-model/.gitignore
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/SystemConfigDao.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/SystemConfig.kt
lib-systemdb-sqldelight/src/main/sqldelight/systemdb/data/SystemConfigAuth.sq
gradle/libs.versions.toml
lib-systemdb-model/src/commonMain/kotlin/com/ustadmobile/systemdb/model/SystemDbRepository.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/systemconfig/sysconfiginit/GenerateSystemConfigAuthUseCase.kt
app-react/src/jsMain/kotlin/com/ustadmobile/mui/components/UstadScreens.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/SystemDb.kt
app-react/build.gradle
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/SystemConfig.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/LearningSpaceConfigDao.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/delete/DeleteLearningSpaceUseCase.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDiModule.kt
lib-systemdb-sqldelight/.gitignore
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/SystemDbRepository.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/SystemConfigAuthDao.kt
lib-systemdb/.gitignore
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/LearningSpaceInfo.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
lib-systemdb-sqldelight/src/main/sqldelight/systemdb/data/LearningSpace.sq
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/SystemConfigAuth.kt
app-react/src/jsMain/kotlin/com/ustadmobile/mui/components/UstadAvatar.kt
app-ktor-server/build.gradle
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/composites/LearningSpaceConfigAndInfo.kt
README.md
lib-systemdb-model/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceConfigAndInfo.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/learningspacelist/LearningSpaceListScreen.kt
lib-systemdb-model/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceConfig.kt
lib-systemdb-sqldelight/src/jvmMain/kotlin/com/ustadmobile/systemdb/Scratch.kt
lib-systemdb-model/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceRepository.kt
app-android/build.gradle
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/adapters/LearningSpaceEntityExt.kt
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/LearningSpaceInfoRepository.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/systemconfig/verifyauth/VerifySystemConfigAuthUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceClientRoute.kt
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/SystemConfigAuth.kt
lib-systemdb-model/build.gradle.kts
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/daos/LearningSpaceInfoDao.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/systemconfig/sysconfiginit/GenerateSystemConfigAuthCallback.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
lib-systemdb-model/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceInfo.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/learningspacelist/LearningSpaceListViewModel.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/update/UpdateLearningSpaceUseCase.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/SystemDbDataLayer.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/SystemConfigScriptRoute.kt
lib-systemdb-sqldelight/build.gradle.kts
settings.gradle
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/SystemDbDataLayer.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceServerRepo.kt
lib-systemdb-sqldelight/README.md
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/adapters/LearningSpaceConfigAndInfoExt.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/LearningSpaceConfig.kt
core/build.gradle
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/create/CreateLearningSpaceUseCase.kt
lib-systemdb/build.gradle.kts
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/dimodules/JvmBackendDiModule.kt
lib-systemdb/src/commonMain/kotlin/com/ustadmobile/appconfigdb/model/SystemDbNodeIdAndAuth.kt
lib-systemdb/README.md
</description></item><item><title>#811 invite bug fix (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail183</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail183</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/redeem/ClazzInviteViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ClazzRedeemUseCase.kt
</description></item><item><title>#811 ProcessInviteUseCaseTest issue fix (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail184</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail184</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/.attach_pid65957
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/invite/ProcessInviteUseCaseTest.kt
</description></item><item><title>#811 ParseInviteUseCaseTest issue fix (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail185</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail185</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/jvmTest/kotlin/com/ustadmobile/core/domain/invite/ParseInviteUseCaseTest.kt
</description></item><item><title>#811 Updated test descriptions to reflect changes (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail186</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail186</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/004_004_multiple_submission_possible_for_student_test_description.md
test-end-to-end/test-descriptions/003_006_course_view_and_modules_can_expand_collapse_test_description.md
test-end-to-end/test-descriptions/004_015_teacher_or_admin_enable_or_disable_file_submission_test_description.md
test-end-to-end/test-descriptions/004_002_users_add_course_comments_test_description.md
test-end-to-end/test-descriptions/004_010_group_users_single_assignment_submission_allowed_test_description.md
test-end-to-end/test-descriptions/002_005_course_title_is_mandatory_test_description.md
test-end-to-end/test-descriptions/007_006_admin_enable_or_disable_guest_login_test_description.md
test-end-to-end/test-descriptions/004_014_teacher_or_admin_can_delete_private_comments_and_course_comments_test_description.md
test-end-to-end/test-descriptions/002_001_admin_add_new_course_and_teacher_test_description.md
test-end-to-end/test-descriptions/002_004_teacher_can_view_progress_report_showing_each_students_result_in_gradebook_test_description.md
test-end-to-end/test-descriptions/001_006_admin_can_cancel_content_download_test_description.md
test-end-to-end/test-descriptions/001_005_content_download_will_stop_when_wifi_stop_then_resume_when_WiFi_is_resumed _test_description.md
test-end-to-end/test-descriptions/003_003_add_existing_content_in_library_as_block_test_description.md
test-end-to-end/test-descriptions/005_006_users_can_delete_post_on_discussion_board_test_description.md
test-end-to-end/test-descriptions/010_002_english_language_used_if_system_language_not_supported_by_the_app_test_description.md
test-end-to-end/test-descriptions/004_012_peer_marking_for_individual_assignment_test_description.md
test-end-to-end/test-descriptions/005_003_users_can_add_post_on_discussion_board_test_description.md
test-end-to-end/test-descriptions/004_007_user_enter_assignment_page_before_graceperiod_but_submission_after_grace_Period_test_description.md
test-end-to-end/test-descriptions/004_005_assignment_after_deadline_and_before_grace_period_test_description.md
test-end-to-end/test-descriptions/008_001_admin_uploads_valid_content_with_video_subtitles_test_description.md
test-end-to-end/test-descriptions/011_004_user_visits_a_screen_whilst_offline_that_cannot_be_loaded_gets_an_error_test_description.md
test-end-to-end/test-descriptions/002_009_people_add_and_remove_profile_pic_test_description.md
test-end-to-end/test-descriptions/005_004_user_add_internal_links_to_post_test_description.md
test-end-to-end/test-descriptions/001_008_deleting_content_will_remove_the_files_associated_with_the_content_from_the_serve _test_description.md
test-end-to-end/test-descriptions/010_001_default_system_language_if_language_is_supported_by_app_test_description.md
test-end-to-end/test-descriptions/006_001_users_on_same_course_can_send_a_chat_message_test_description.md
test-end-to-end/test-descriptions/003_005_add_new_content_block_inside_course_test_description.md
test-end-to-end/test-descriptions/001_009_user_can_store_offline_content_on_device_storage_or_memory_card_test_description.md
test-end-to-end/test-descriptions/010_004_android_13+_users_can_select_language_in_app_settings_test_description.md
test-end-to-end/test-descriptions/002_002_student_joining_course_using_code_test_description.md
test-end-to-end/test-descriptions/011_001_screen_caching_for_offline_access_test_description.md
test-end-to-end/test-descriptions/007_007_admin_or_teacher_send_group_invitation_to_join_course_test_description.md
test-end-to-end/test-descriptions/002_007_admin_grant_permissions_test_description.md
test-end-to-end/test-descriptions/001_001_admin_can_add_content_test_description.md
test-end-to-end/test-descriptions/003_001_add_or_edit_course_permission_test_description.md
test-end-to-end/test-descriptions/011_003_handling_conflicting_offline_edits_test_description.md
test-end-to-end/test-descriptions/004_009_group_users_add_private_comments_test_description.md
test-end-to-end/test-descriptions/004_006_assignment_grace_period_finished_test_description.md
test-end-to-end/test-descriptions/002_008_teacher_or_admin_can_add_banner_photo_to_the_course_test_description.md
test-end-to-end/test-descriptions/006_002_admin_user_can_send_a_chat_message_to_students_test_description.md
test-end-to-end/test-descriptions/004_011_group_users_multiple_assignment_submission_allowed_test_description.md
test-end-to-end/test-descriptions/005_001_add_discussionBoard_test_description.md
test-end-to-end/test-descriptions/008_002_accessibility_text-to-Speech_image_button_labels_test_description.md
test-end-to-end/test-descriptions/003_004_admin_or_teacher_can_add_a_content_block_and_upload_new_content_via_link_test_description.md
test-end-to-end/test-descriptions/004_001_assignment_creation_submission_grading_test_description.md
test-end-to-end/test-descriptions/005_005_users_can_add_external_links_as_post_on_discussion_board_test_description.md
test-end-to-end/test-descriptions/001_007_h5p_and_video_content_compression_test_description.md
test-end-to-end/test-descriptions/003_008_course_blocks_title_field_is_mandatory_test_description.md
test-end-to-end/test-descriptions/011_002_Offline_data_editing_and_syncing_test_description.md
test-end-to-end/test-descriptions/004_013_peer_marking_for_group_assignment_test_description.md
test-end-to-end/test-descriptions/001_003_admin_can_delete_and_restore_content_001_test_description.md
test-end-to-end/test-descriptions/005_002_teacher_can_edit_discussion_board_test_description.md
test-end-to-end/test-descriptions/001_002_admin_add_invalid_content_gets_error_message_test_description.md
test-end-to-end/test-descriptions/001_003_admin_can_permanently_delete_the_content_002_test_description.md
test-end-to-end/test-descriptions/010_003_language_selection_in_app_settings_test_description.md
test-end-to-end/test-descriptions/004_003_user_add_private_comment_test_description.md
test-end-to-end/test-descriptions/001_004_admin_can_move_content_test_description.md
test-end-to-end/test-descriptions/002_003_teacher_record_attendance_test_description.md
test-end-to-end/test-descriptions/007_001_admin_enable_or_disable_user_registration_test_description.md
test-end-to-end/test-descriptions/002_006_teacher_or_admin_can remove_people_from_a_course_test_description.md
test-end-to-end/test-descriptions/003_007_all_user_able_to_open_text_block_test_description.md
test-end-to-end/test-descriptions/004_008_group_users_add_assignment_and_course_comments_test_description.md
test-end-to-end/test-descriptions/003_002_add_module_text_blocks_and_perform_indent_hide_delete_actions_test_description.md
</description></item><item><title>#811 Updated test descriptions to reflect changes (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail187</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail187</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/003_006_course_view_and_modules_can_expand_collapse_test_description.md
test-end-to-end/test-descriptions/004_015_teacher_or_admin_enable_or_disable_file_submission_test_description.md
test-end-to-end/test-descriptions/004_004_multiple_submission_possible_for_student_test_description.md
test-end-to-end/test-descriptions/004_002_users_add_course_comments_test_description.md
test-end-to-end/test-descriptions/004_010_group_users_single_assignment_submission_allowed_test_description.md
test-end-to-end/test-descriptions/002_005_course_title_is_mandatory_test_description.md
test-end-to-end/test-descriptions/007_006_admin_enable_or_disable_guest_login_test_description.md
test-end-to-end/test-descriptions/004_014_teacher_or_admin_can_delete_private_comments_and_course_comments_test_description.md
test-end-to-end/test-descriptions/002_001_admin_add_new_course_and_teacher_test_description.md
test-end-to-end/test-descriptions/002_004_teacher_can_view_progress_report_showing_each_students_result_in_gradebook_test_description.md
test-end-to-end/test-descriptions/001_005_content_download_will_stop_when_wifi_stop_then_resume_when_WiFi_is_resumed _test_description.md
test-end-to-end/test-descriptions/001_006_admin_can_cancel_content_download_test_description.md
test-end-to-end/test-descriptions/003_003_add_existing_content_in_library_as_block_test_description.md
test-end-to-end/test-descriptions/005_006_users_can_delete_post_on_discussion_board_test_description.md
test-end-to-end/test-descriptions/010_002_english_language_used_if_system_language_not_supported_by_the_app_test_description.md
test-end-to-end/test-descriptions/004_012_peer_marking_for_individual_assignment_test_description.md
test-end-to-end/test-descriptions/005_003_users_can_add_post_on_discussion_board_test_description.md
test-end-to-end/test-descriptions/004_007_user_enter_assignment_page_before_graceperiod_but_submission_after_grace_Period_test_description.md
test-end-to-end/test-descriptions/004_005_assignment_after_deadline_and_before_grace_period_test_description.md
test-end-to-end/test-descriptions/008_001_admin_uploads_valid_content_with_video_subtitles_test_description.md
test-end-to-end/test-descriptions/011_004_user_visits_a_screen_whilst_offline_that_cannot_be_loaded_gets_an_error_test_description.md
test-end-to-end/test-descriptions/002_009_people_add_and_remove_profile_pic_test_description.md
test-end-to-end/test-descriptions/005_004_user_add_internal_links_to_post_test_description.md
test-end-to-end/test-descriptions/001_008_deleting_content_will_remove_the_files_associated_with_the_content_from_the_serve _test_description.md
test-end-to-end/test-descriptions/010_001_default_system_language_if_language_is_supported_by_app_test_description.md
test-end-to-end/test-descriptions/006_001_users_on_same_course_can_send_a_chat_message_test_description.md
test-end-to-end/test-descriptions/003_005_add_new_content_block_inside_course_test_description.md
test-end-to-end/test-descriptions/001_009_user_can_store_offline_content_on_device_storage_or_memory_card_test_description.md
test-end-to-end/test-descriptions/010_004_android_13+_users_can_select_language_in_app_settings_test_description.md
test-end-to-end/test-descriptions/002_002_student_joining_course_using_code_test_description.md
test-end-to-end/test-descriptions/011_001_screen_caching_for_offline_access_test_description.md
test-end-to-end/test-descriptions/007_007_admin_or_teacher_send_group_invitation_to_join_course_test_description.md
test-end-to-end/test-descriptions/002_007_admin_grant_permissions_test_description.md
test-end-to-end/test-descriptions/001_001_admin_can_add_content_test_description.md
test-end-to-end/test-descriptions/003_001_add_or_edit_course_permission_test_description.md
test-end-to-end/test-descriptions/011_003_handling_conflicting_offline_edits_test_description.md
test-end-to-end/test-descriptions/004_009_group_users_add_private_comments_test_description.md
test-end-to-end/test-descriptions/004_006_assignment_grace_period_finished_test_description.md
test-end-to-end/test-descriptions/002_008_teacher_or_admin_can_add_banner_photo_to_the_course_test_description.md
test-end-to-end/test-descriptions/006_002_admin_user_can_send_a_chat_message_to_students_test_description.md
test-end-to-end/test-descriptions/004_011_group_users_multiple_assignment_submission_allowed_test_description.md
test-end-to-end/test-descriptions/005_001_add_discussionBoard_test_description.md
test-end-to-end/test-descriptions/008_002_accessibility_text-to-Speech_image_button_labels_test_description.md
test-end-to-end/test-descriptions/003_004_admin_or_teacher_can_add_a_content_block_and_upload_new_content_via_link_test_description.md
test-end-to-end/test-descriptions/004_001_assignment_creation_submission_grading_test_description.md
test-end-to-end/test-descriptions/005_005_users_can_add_external_links_as_post_on_discussion_board_test_description.md
test-end-to-end/test-descriptions/001_007_h5p_and_video_content_compression_test_description.md
test-end-to-end/test-descriptions/003_008_course_blocks_title_field_is_mandatory_test_description.md
test-end-to-end/test-descriptions/011_002_Offline_data_editing_and_syncing_test_description.md
test-end-to-end/test-descriptions/004_013_peer_marking_for_group_assignment_test_description.md
test-end-to-end/test-descriptions/001_003_admin_can_delete_and_restore_content_001_test_description.md
test-end-to-end/test-descriptions/005_002_teacher_can_edit_discussion_board_test_description.md
test-end-to-end/test-descriptions/001_003_admin_can_permanently_delete_the_content_002_test_description.md
test-end-to-end/test-descriptions/001_002_admin_add_invalid_content_gets_error_message_test_description.md
test-end-to-end/test-descriptions/010_003_language_selection_in_app_settings_test_description.md
test-end-to-end/test-descriptions/004_003_user_add_private_comment_test_description.md
test-end-to-end/test-descriptions/001_004_admin_can_move_content_test_description.md
test-end-to-end/test-descriptions/002_003_teacher_record_attendance_test_description.md
test-end-to-end/test-descriptions/007_001_admin_enable_or_disable_user_registration_test_description.md
test-end-to-end/test-descriptions/002_006_teacher_or_admin_can remove_people_from_a_course_test_description.md
test-end-to-end/test-descriptions/003_007_all_user_able_to_open_text_block_test_description.md
test-end-to-end/test-descriptions/004_008_group_users_add_assignment_and_course_comments_test_description.md
test-end-to-end/test-descriptions/003_002_add_module_text_blocks_and_perform_indent_hide_delete_actions_test_description.md
</description></item><item><title>#811 Updated test descriptions to reflect changes (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail188</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail188</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-passkey-test/001_001_New_user_login_using_passkey.yaml
test-end-to-end/android-maestro/common/clear_state_and_learning_space_new_userflow.yaml
</description></item><item><title>#811 Rename lib-systemdb-model to lib-systemdb-core (because it contains common repository interfaces as well). (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail189</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail189</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-systemdb-model/.gitignore
lib-systemdb-model/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceRepository.kt
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/LearningSpaceInfoRepository.kt
lib-systemdb-model/build.gradle.kts
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/SystemDbRepositorySqlDelight.kt
lib-systemdb-model/src/commonMain/kotlin/com/ustadmobile/systemdb/model/SystemDbRepository.kt
lib-systemdb-model/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceInfo.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/learningspacelist/LearningSpaceListViewModel.kt
lib-systemdb-core/.gitignore
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDiModule.kt
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/SystemDbRepository.kt
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/LearningSpaceInfoRepositorySqlDelight.kt
lib-systemdb-sqldelight/build.gradle.kts
settings.gradle
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/repo/SystemDbRepository.kt
app-ktor-server/build.gradle
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceConfig.kt
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceInfo.kt
lib-systemdb-model/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceConfigAndInfo.kt
core/build.gradle
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/repo/LearningSpaceRepository.kt
app-desktop/build.gradle.kts
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/learningspacelist/LearningSpaceListScreen.kt
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceConfigAndInfo.kt
lib-systemdb-model/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceConfig.kt
lib-systemdb-core/build.gradle.kts
</description></item><item><title>#811 invite user merged (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail190</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail190</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
</description></item><item><title>#811 Modularize XXHash (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail191</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail191</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xxhash/XXHashJvmTest.kt
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/SystemDbDataSourceSqlDelight.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/xxhash/XXStringHasherCommonJvm.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xxhash/XXHasher64Factory.kt
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/adapters/LearningSpaceInfoExt.kt
gradle/libs.versions.toml
lib-xxhashkmp-core/.gitignore
lib-xxhashkmp-core/src/commonMain/kotlin/com/ustadmobile/xxhashkmp/XXHasher64.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/coursegroup/CreateXapiGroupForCourseGroupUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/interop/oneroster/OneRosterEndpointTest.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/xxhash/XXHasher64CommonJvm.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xapi/coursegroup/CreateXapiGroupForCourseGroupUseCaseTest.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDiModule.kt
lib-xxhashkmp-core/build.gradle.kts
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/model/XapiActor.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/state/h5puserdata/H5PUserDataEndpointUseCase.kt
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/datasource/SystemDbDataSource.kt
lib-xxhashkmp-core/src/commonMain/kotlin/com/ustadmobile/xxhashkmp/XXHasher64Factory.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
lib-xxhashkmp-commonjvmimpl/build.gradle.kts
lib-systemdb-sqldelight/src/main/sqldelight/systemdb/data/LearningSpace.sq
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xapi/XapiStatementResourceTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/model/XapiContextActivities.kt
lib-xxhashkmp-core/src/jsMain/kotlin/com/ustadmobile/xxhashkmp/jsimpl/XXHasher64Js.kt
lib-xxhashkmp-core/src/jsMain/kotlin/com/ustadmobile/xxhashkmp/wrappers/CUINTWrapper.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/test/viewmodeltest/ViewModelTestBuilder.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/http/XapiHttpServerUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/state/RetrieveXapiStateUseCase.kt
app-ktor-server/build.gradle
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/LearningSpaceInfoDataSourceSqlDelight.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xapi/noninteractivecontentusagestatementrecorder/NonInteractiveContentXapiStatementRecorderTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/model/XapiVerb.kt
lib-xxhashkmp/.gitignore
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/model/XapiStatement.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/state/ListXapiStateIdsUseCase.kt
lib-xxhashkmp-commonjvmimpl/.gitignore
core/src/jsMain/kotlin/com/ustadmobile/core/domain/xxhash/XXStringHasherJs.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xxhash/XXStringHasherExt.kt
core/src/jsMain/kotlin/com/ustadmobile/core/wrappers/xxhash/XXHashWrapper.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/model/XapiActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/model/XapiStatementObject.kt
lib-xxhashkmp/build.gradle.kts
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/model/XapiAgent.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/assignment/submitmark/SubmitMarkUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/model/XapiGroup.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/interop/oneroster/model/LineItem.kt
lib-xxhashkmp-commonjvmimpl/src/commonMain/kotlin/com/ustadmobile/xxhashkmp/commonjvmimpl/XXStringHasherCommonJvm.kt
app-android/build.gradle
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/SystemDbRepositorySqlDelight.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xxhash/XXHasher64.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/interop/oneroster/model/Result.kt
core/src/jsTest/kotlin/com/ustadmobile/core/domain/xxhash/XXHashJsTest.kt
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/datasource/LearningSpaceDataSource.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/learningspacelist/LearningSpaceListViewModel.kt
core/src/jsMain/kotlin/com/ustadmobile/core/impl/di/DomainDiModuleJs.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xxhash/XXStringHasher.kt
lib-xxhashkmp-core/src/commonMain/kotlin/com/ustadmobile/xxhashkmp/ext/LongExt.kt
lib-xxhashkmp-commonjvmimpl/src/commonMain/kotlin/com/ustadmobile/xxhashkmp/commonjvmimpl/XXHasher64FactoryCommonJvm.kt
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/LearningSpaceInfoRepositorySqlDelight.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/UstadViewModel.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/xxhash/XXHasher64FactoryJs.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/SystemConfigScriptRoute.kt
lib-systemdb-sqldelight/build.gradle.kts
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/state/XapiStateParamsExt.kt
settings.gradle
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/xxhash/XXHasher64FactoryCommonJvm.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/session/ResumeOrStartXapiSessionUseCaseLocal.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/state/StoreXapiStateUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceServerRepo.kt
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/repo/SystemDbRepository.kt
lib-xxhashkmp-core/src/jsTest/kotlin/com/ustadmobile/xxhashkmp/jsimpl/XXHashJsTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/state/DeleteXapiStateUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xapi/XapiAssertions.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xapi/state/XapiStateUseCaseIntegrationTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/interop/oneroster/OneRosterEndpoint.kt
lib-xxhashkmp-core/src/jsMain/kotlin/com/ustadmobile/xxhashkmp/wrappers/XXHashWrapper.kt
core/src/jsMain/kotlin/com/ustadmobile/core/wrappers/cuint/CUINTWrapper.kt
core/build.gradle
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/repo/LearningSpaceRepository.kt
lib-xxhashkmp-core/src/commonMain/kotlin/com/ustadmobile/xxhashkmp/XXStringHasherExt.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/create/CreateLearningSpaceUseCase.kt
lib-xxhashkmp-core/src/jsMain/kotlin/com/ustadmobile/xxhashkmp/jsimpl/XXHasher64FactoryJs.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/test/clientservertest/ClientServerIntegrationTest.kt
lib-xxhashkmp-commonjvmimpl/src/jvmTest/kotlin/com/ustadmobile/xxhashkmp/commonjvmimpl/XXHashJvmTest.kt
lib-xxhashkmp-core/src/commonMain/kotlin/com/ustadmobile/xxhashkmp/XXStringHasher.kt
lib-xxhashkmp-commonjvmimpl/src/commonMain/kotlin/com/ustadmobile/xxhashkmp/commonjvmimpl/XXHasher64CommonJvm.kt
lib-systemdb-core/build.gradle.kts
lib-xxhashkmp-core/src/jsMain/kotlin/com/ustadmobile/xxhashkmp/jsimpl/XXStringHasherJs.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/xxhash/XXHasher64Js.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/xapi/XapiStatementResource.kt
</description></item><item><title>#811 Handle showing list of learning spaces on desktop using SQLDelight based implementation. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail192</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail192</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceInfo.kt
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/SystemDbDataSourceSqlDelight.kt
lib-systemdb-sqldelight/build.gradle.kts
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/datasource/network/LearningSpaceDataSourceHttp.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/learningspacelist/LearningSpaceListViewModel.kt
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/datasource/network/SystemDbDataSourceHttp.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDiModule.kt
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/LearningSpaceInfoDataSourceSqlDelight.kt
lib-systemdb-core/build.gradle.kts
gradle/libs.versions.toml
</description></item><item><title>#811 Remove explicit dependsOn for lib-systemdb-core and lib-systemdb-sqldelight such that default hierarchy is applied. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail193</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail193</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-systemdb-core/build.gradle.kts
lib-systemdb-sqldelight/build.gradle.kts
</description></item><item><title>#811 Fix LearningSpaceServerRepo add function to add learningspace to in memory cache. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail194</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail194</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceServerRepo.kt
</description></item><item><title>#811 Handle listing learning spaces on Android using SQLDelight based systemdb. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail195</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail195</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/.attach_pid65957
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/datasource/network/LearningSpaceDataSourceHttp.kt
</description></item><item><title>#811 Update app-react to use SQLDelight based learning space list. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail196</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail196</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/UstadJsDi.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/learningspacelist/LearningSpaceListScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/mui/components/UstadScreens.kt
</description></item><item><title>#811 Remove obsolete server Google API key config (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail197</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail197</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/README.md
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ext/UmAppDatabaseKtorExt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/DiTag.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
</description></item><item><title>#811 Fix Cypress 004-005 - after student clicks submit needed to ensure that submission was saved before moving on. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail198</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail198</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_004_005_assignment_after_deadline_and_before_grace_Period.cy.js
</description></item><item><title>#811 Refactor libsystemdb to lib-centralappconfigdb and update docs. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail199</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail199</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/SystemDbDataSourceSqlDelight.kt
lib-centralappconfigdb-common/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/repo/LearningSpaceRepository.kt
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/datasource/network/LearningSpaceDataSourceHttp.kt
lib-systemdb-sqldelight/src/main/sqldelight/systemdb/data/SystemConfigAuth.sq
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/adapters/LearningSpaceInfoExt.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/systemconfig/sysconfiginit/GenerateSystemConfigAuthUseCase.kt
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/SystemConfig.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
lib-systemdb-core/.gitignore
lib-centralappconfigdb-sqldelight/src/main/sqldelight/com/ustadmobile/centralappconfigdb/db/LearningSpace.sq
lib-systemdb-sqldelight/.gitignore
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDiModule.kt
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/datasource/SystemDbDataSource.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
lib-systemdb-sqldelight/src/main/sqldelight/systemdb/data/LearningSpace.sq
lib-centralappconfigdb-sqldelight/.gitignore
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/repo/LearningSpaceInfoDataSourceSqlDelight.kt
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/datasource/network/SystemDbDataSourceHttp.kt
app-ktor-server/build.gradle
lib-centralappconfigdb-common/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/datasource/network/LearningSpaceDataSourceHttp.kt
README.md
app-android/proguard-rules.pro
lib-centralappconfigdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/datasource/CentralAppConfigDbDataSourceSqlDelight.kt
lib-systemdb-sqldelight/src/jvmMain/kotlin/com/ustadmobile/systemdb/Scratch.kt
lib-centralappconfigdb-common/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/model/LearningSpaceInfo.kt
lib-centralappconfigdb-sqldelight/src/main/sqldelight/com/ustadmobile/centralappconfigdb/db/SystemConfigAuth.sq
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/adapters/LearningSpaceEntityExt.kt
app-android/build.gradle
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/systemconfig/verifyauth/VerifySystemConfigAuthUseCase.kt
lib-centralappconfigdb-common/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/datasource/CentralAppConfigDbDataSource.kt
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/entities/SystemConfigAuth.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
lib-centralappconfigdb-sqldelight/README.md
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/datasource/LearningSpaceDataSource.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/learningspacelist/LearningSpaceListViewModel.kt
lib-centralappconfigdb-common/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/model/LearningSpaceConfig.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/update/UpdateLearningSpaceUseCase.kt
lib-centralappconfigdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/adapters/LearningSpaceConfigAndInfoExt.kt
lib-centralappconfigdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/datasource/LearningSpaceInfoDataSourceSqlDelight.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/SystemConfigScriptRoute.kt
lib-systemdb-sqldelight/build.gradle.kts
lib-centralappconfigdb-common/README.md
settings.gradle
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/SystemDbDataLayer.kt
lib-centralappconfigdb-common/.gitignore
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/LearningSpaceServerRepo.kt
lib-centralappconfigdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/adapters/LearningSpaceEntityExt.kt
lib-centralappconfigdb-common/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/datasource/network/CentralAppConfigDbDataSourceHttp.kt
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/repo/SystemDbRepository.kt
lib-systemdb-sqldelight/README.md
lib-systemdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/appconfigdb/adapters/LearningSpaceConfigAndInfoExt.kt
lib-centralappconfigdb-common/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/repo/CentralAppConfigDbRepository.kt
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceConfig.kt
lib-centralappconfigdb-common/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/model/LearningSpaceConfigAndInfo.kt
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceInfo.kt
lib-centralappconfigdb-sqldelight/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/adapters/LearningSpaceInfoExt.kt
lib-centralappconfigdb-common/src/commonMain/kotlin/com/ustadmobile/centralappconfigdb/datasource/LearningSpaceDataSource.kt
lib-centralappconfigdb-common/build.gradle.kts
core/build.gradle
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/repo/LearningSpaceRepository.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/create/CreateLearningSpaceUseCase.kt
lib-centralappconfigdb-sqldelight/build.gradle.kts
app-desktop/build.gradle.kts
lib-systemdb-core/src/commonMain/kotlin/com/ustadmobile/systemdb/model/LearningSpaceConfigAndInfo.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/dimodules/JvmBackendDiModule.kt
lib-systemdb-core/build.gradle.kts
ARCHITECTURE.md
</description></item><item><title>#811 commit (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail200</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail200</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/redeem/ClazzInviteRedeem.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteViaContact/ClazzInviteRedeem.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
core/src/jsMain/kotlin/com/ustadmobile/core/domain/learningspace/GoToLearningSpaceUseCaseJs.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/redeem/ClazzInviteViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
</description></item><item><title>#811 Fix UmAppDatabaseMigration handling of adding ClazzInvite table. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail201</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail201</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/learningspace/create/CreateLearningSpaceUseCase.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
</description></item><item><title>#811 some class name change and coding style commit (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail202</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail202</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/redeem/ClazzInviteRedeem.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteViaContact/ClazzInviteRedeem.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ClazzRedeemUseCase.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UserSessionWithPersonAndLearningSpace.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/redeem/ClazzInviteViewModel.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ClazzInviteRedeemUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#811 preferImmediatelyAvailableCredentials added (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail203</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail203</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>gradle/libs.versions.toml
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/LoginWithPasskeyUseCaseImpl.kt
</description></item><item><title>#811 saving password in password manager (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail204</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail204</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/password/LoginWithSavedPasswordUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/password/SavePasswordUseCase.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignupEnterUsernamePasswordViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/password/LoginWithSavePasswordResult.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/password/LoginWithSavedPasswordUseCase.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/password/SavePasswordUseCaseImpl.kt
</description></item><item><title>#811 LoginWithPasskeyUseCase.kt changed to GetCredentialUseCase (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail205</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail205</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/GetCredentialUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/password/LoginWithSavedPasswordUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/password/SavePasswordUseCase.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/CredentialResult.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/LoginWithPasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/GetCredentialUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/LoginWithPasskeyUseCase.kt
</description></item><item><title>#811 getting domain from learning space and moving impl to core (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail206</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail206</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/build.gradle
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/GetCredentialUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
core/src/androidMain/kotlin/com/ustadmobile/core/impl/password/SavePasswordUseCaseImpl.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/password/LoginWithSavePasswordResult.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/password/LoginWithSavedPasswordUseCase.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/passkey/CreatePasskeyUseCaseImpl.kt
core/src/androidMain/kotlin/com/ustadmobile/core/impl/passkey/CreatePasskeyUseCaseImpl.kt
core/src/androidMain/kotlin/com/ustadmobile/core/impl/passkey/GetCredentialUseCaseImpl.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/util/password/SavePasswordUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/GetCredentialUseCase.kt
</description></item><item><title>#811 Fix ServerAppMain setting config file. Set using the default ustad-server.conf file if it exists automatically. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail207</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail207</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ServerAppMain.kt
</description></item><item><title>#811 username , the text remains in chip field and Email notification subject line is blank fixed (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail208</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail208</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/email/SendEmailUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/sms/SendSmsUseCaseHttp.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/message/SendMessageUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/sms/SendSmsUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ParseInviteUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/InviteViaContactViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteViaContact/InviteViaContactScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteViaContact/InviteViaContactScreen.kt
</description></item><item><title>#811 commit (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail209</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail209</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
</description></item><item><title>#811 Minor invite tidy up. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail210</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail210</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteViaContact/InviteViaContactScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/InviteViaContactViewModel.kt
</description></item><item><title>#811 Fix ParseInviteUseCaseTest (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail211</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail211</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/validateemail/ValidateEmailUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/invite/ParseInviteUseCaseTest.kt
</description></item><item><title>#811 Workaround for TetsServerController compilation. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail212</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail212</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>testserver-controller/src/main/java/com/ustadmobile/test/http/TestServerController.kt
</description></item><item><title>#811 Fix ServerAppMain to pass config prop using -config= property correctly. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail213</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail213</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/redeem/ClazzInviteViewModel.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ServerAppMain.kt
</description></item><item><title>#811 when invitation sent pop back and sending invitation even  if text present in textfield not created chip (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail214</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail214</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteViaContact/InviteViaContactScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/InviteViaContactViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteViaContact/InviteViaContactScreen.kt
</description></item><item><title>#811 Update invite related files to follow naming conventions. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail215</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail215</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
app-react/src/jsMain/kotlin/com/ustadmobile/entities/UstadScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteredeem/ClazzInviteRedeemViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/redeem/ClazzInviteRedeem.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteViaContact/ClazzInviteRedeem.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteredeem/ClazzInviteRedeemScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteredeem/ClazzInviteRedeemScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteviacontact/InviteViaContactScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/redeem/ClazzInviteViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteViaContact/InviteViaContactScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteViaContact/InviteViaContactScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteviacontact/InviteViaContactScreen.kt
</description></item><item><title>#811 Improvements to ClazzInvite system: (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail216</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail216</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/detailoverview/ClazzAssignmentDetailOverviewViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/edit/ContentEntryEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/DIExt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/detailoverviewtab/ContentEntryDetailOverviewViewModel.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/composites/ClazzInviteWithTimeZone.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ClazzInviteRedeemException.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzInviteDao.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteredeem/ClazzInviteRedeemViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/edit/PersonEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/edit/ClazzEnrolmentEditViewModel.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzEnrolmentDao.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/edit/ClazzEnrolmentEditViewModelTest.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/composites/ClazzInviteAndClazz.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/invitevialink/InviteViaLinkViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/deleteditem/DeletedItemListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteredeem/ClazzInviteRedeemScreen.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/components/webview/RememberContentEntryVersionNavigator.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/xapicontent/XapiContentViewModel.kt
lib-ui-compose/src/androidMain/kotlin/com/ustadmobile/libuicompose/view/epubcontent/EpubContentScreen.kt
build.gradle
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/ClazzTitleExt.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/joinwithcode/JoinWithCodeViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ExceptionWithStringResource.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/videocontent/VideoContentScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/AddChildProfilesViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/clazzenrolment/pendingenrolment/EnrolIntoCourseUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/getmetadata/ContentEntryGetMetadataViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/submitterdetail/ClazzAssignmentSubmitterDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/bulkaddrunimport/BulkAddPersonRunImportViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/list/ContentEntryListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/peerreviewerallocationedit/PeerReviewerAllocationEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/bulkaddselectfile/BulkAddPersonSelectFileViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/child/EditChildProfileViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/noninteractivecontent/AbstractNonInteractiveContentViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteredeem/ClazzInviteRedeemScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/ExceptionExt.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/ClazzInviteWithTimeZone.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/ClazzInvite.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/accountlist/AccountListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/InviteViaContactViewModel.kt
core/src/commonMain/resources/MR/base/strings.xml
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ClazzInviteRedeemUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/parentalconsentmanagement/ParentalConsentManagementViewModelTest.kt
</description></item><item><title>#811 resend invite added (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail217</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail217</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/list/PersonListViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
app-react/src/jsMain/kotlin/com/ustadmobile/entities/UstadScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ResendInviteRequest.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/list/PersonListScreen.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzInviteDao.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ResendInviteRoute.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteViaContact/PendingInviteScreen.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ResendInviteUseCase.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteViaContact/PendingInviteScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ResendInviteUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/ClazzInvite.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/redeem/ClazzInviteViewModel.kt
core/src/commonMain/resources/MR/base/strings.xml
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ClazzInviteRedeemUseCase.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/UmAppDatabase.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/list/PersonListScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/206.json
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/PendingInviteViewModel.kt
</description></item><item><title>#811 pending invite list showing in ClazzMemberListScreen (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail218</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail218</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/list/PersonListViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteviacontact/PendingInviteScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
app-react/src/jsMain/kotlin/com/ustadmobile/entities/UstadScreen.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzInviteDao.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/clazzmemberlist/ClazzMemberListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteredeem/ClazzInviteRedeemViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/list/PersonListScreen.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ResendInviteUseCase.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteViaContact/PendingInviteScreen.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazzenrolment/clazzmemberlist/ClazzMemberListScreen.kt
core/src/commonMain/resources/MR/base/strings.xml
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ClazzInviteRedeemUseCase.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/list/PersonListScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazzenrolment/clazzmemberlist/ClazzMemberListScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/PendingInviteViewModel.kt
</description></item><item><title>#811 simplified onboarding changes merged (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail219</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail219</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/entities/UstadScreen.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzInviteDao.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/clazzmemberlist/ClazzMemberListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteredeem/ClazzInviteRedeemViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ClazzInviteRedeemUseCase.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/clazzenrolment/clazzmemberlist/ClazzMemberListScreenPreview.kt
</description></item><item><title>#811 SendEmailUseCase refracted as interface and implemented real and mock email sender (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail220</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail220</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
app-ktor-server/src/main/resources/application.conf
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/email/SendEmailUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/email/mockemailsender/TestEmailRoute.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/email/mockemailsender/MockSendEmailUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/email/mockemailsender/MockEmailSender.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazzenrolment/clazzmemberlist/ClazzMemberListScreen.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/email/SendEmailUseCaseImpl.kt
</description></item><item><title>#811 e sign-up view model to handle NEXT argument similarly to Login view model (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail221</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail221</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/site/termsdetail/SiteTermsDetailViewModel.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/clazzenrolment/clazzmemberlist/ClazzMemberListScreenPreview.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignupEnterUsernamePasswordViewModel.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/registerageredirect/RegisterAgeRedirectViewModel.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/EnrollToCourseFromInviteCodeUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/learningspacelist/LearningSpaceListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazzenrolment/clazzmemberlist/ClazzMemberListScreen.kt
</description></item><item><title>#811 useMockEmail set false in appconfig (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail222</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail222</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/resources/application.conf
</description></item><item><title>#811 Update testserver-controller after primary merge to create learning space as required on dev-simplified-onboarding. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail223</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail223</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ServerAppMain.kt
testserver-controller/src/main/java/com/ustadmobile/test/http/ServerRunner.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/clitools/manageserver/ManageServerCLI.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/ext/AppConfigExt.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
</description></item><item><title>#811 Fix testserver-controller cypress run: disable jsDevServer when starting server. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail224</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail224</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>testserver-controller/src/main/java/com/ustadmobile/test/http/ServerRunner.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
</description></item><item><title>#811 maestro and cypress updates (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail225</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail225</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/007_004_username_validation_and_add_profile_pic.yaml
test-end-to-end/android-maestro/e2e-tests/005_001_add_discussionBoard.yaml
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_002_user_registration_above_age_13.cy.js
test-end-to-end/android-maestro/e2e-tests/common/login_download_and_open_content.yaml
test-end-to-end/android-maestro/e2e-tests/common/clear_state_and_learning_space_existing_userflow.yaml
test-end-to-end/android-maestro/e2e-tests.pending/004_010_peer_marking_for_individual_assignment.yaml
test-end-to-end/android-maestro/e2e-tests/004_003_multiple_submission_possible_for_student.yaml
test-end-to-end/android-maestro/e2e-tests/005_002_users_can_add_post_on_discussion_board.yaml
test-end-to-end/android-maestro/e2e-tests/003_003_add_existing_content_in_library_as_block.yaml
test-end-to-end/android-maestro/e2e-tests/002_001_admin_add_new_course_and_teacher.yaml
test-end-to-end/android-maestro/e2e-tests.pending/005_003_users_can_add_internal_links_as_post_on_discussion_board.yaml
test-end-to-end/android-maestro/e2e-tests/common/clear_state_and_learning_space_new_userflow.yaml
test-end-to-end/android-maestro/e2e-tests/007_004_user_registration_above_age_13_join_learning_space_mandatoryfields_test.yaml
test-end-to-end/android-maestro/e2e-tests/002_005_admin_grant_permissions_test.yaml
test-end-to-end/android-maestro/e2e-tests/common/enable_user_registration.yaml
test-end-to-end/android-maestro/e2e-tests/005_005_users_can_delete_post_on_discussion_board.yaml
test-end-to-end/android-maestro/e2e-tests/007_006_admin_enable_or_disable_guest_login.yaml
test-end-to-end/android-maestro/e2e-tests/001_003_admin_can_permanently_delete_the_content_002.yaml
test-end-to-end/android-maestro/e2e-tests/007_005_student_registered_by_admin_or_teacher_dont_need_parentConsent.yaml
test-end-to-end/android-maestro/e2e-tests/007_002b_user_registration_above_age_13_join_learning_space_username_password.yaml
test-end-to-end/android-maestro/e2e-tests/003_002_add_module_text_blocks_and_perform_indent_hide_delete_actions.yaml
test-end-to-end/android-maestro/e2e-tests/common/clear_login_and_add_content.yaml
test-end-to-end/android-maestro/e2e-tests/002_003_teacher_record_attendance.yaml
test-end-to-end/android-maestro/e2e-tests/003_001_add_or_edit_course_permission_test.yaml
test-end-to-end/android-maestro/e2e-tests/004_004_assignment_after_deadline_and_before_grace_Period.yaml
test-end-to-end/android-maestro/e2e-tests.pending/004_008_group_users_single_assignment_submission_allowed.yaml
test-end-to-end/android-maestro/e2e-tests.pending/004_009_group_users_multiple_assignment_submission_allowed.yaml
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_001_admin_enable_or_disable_user_registration.cy.js
test-end-to-end/android-maestro/e2e-tests/007_001_admin_enable_or_disable_user_registration.yaml
test-end-to-end/android-maestro/e2e-tests/003_006_course_view_and_modules_can_expand_collapse.yaml
test-end-to-end/android-maestro/e2e-tests/003_007_all_user_able_to_open_text_block.yaml
test-end-to-end/android-maestro/e2e-tests.pending/004_011_peer_marking_for_group_assignment.yaml
test-end-to-end/android-maestro/e2e-tests/004_005_assignment_grace_period_finished.yaml
test-end-to-end/android-maestro/e2e-tests/003_005_add_new_content_block_inside_course.yaml
test-end-to-end/android-maestro/e2e-tests/004_001_assignment_creation_submission_grading.yaml
test-end-to-end/android-maestro/e2e-tests.pending/004_007_group_users_add_assignment_and_course_comments.yaml
test-end-to-end/android-maestro/e2e-tests/common/new-student-registration-details.yaml
test-end-to-end/android-maestro/e2e-tests.pending/004_006_user_enter_assignment_page_before_graceperiod_but_submission_after_grace_Period.yaml
test-end-to-end/android-maestro/e2e-tests/002_002_student_joining_course_using_code.yaml
test-end-to-end/webapp-cypress/cypress/support/commands.js
test-end-to-end/android-maestro/e2e-tests/005_004_users_can_add_external_links_as_post_on_discussion_board.yaml
test-end-to-end/android-maestro/e2e-tests/001_003_admin_can_delete_and_restore_content_001.yaml
test-end-to-end/android-maestro/e2e-tests/common/clear_state_and_get_started.yaml
test-end-to-end/android-maestro/e2e-tests/common/clear_state_and_personal_account_new_user_flow.yaml
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_002b_user_registration_above_age_13_join_learning_space_username_password.cy.js
test-end-to-end/android-maestro/e2e-tests.pending/004_002_users_add_course_and_private_comments.yaml
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_004_user_registration_above_age_13_join_learning_space_mandatoryfields_test.cy.js
</description></item><item><title>#811 maestro test fix (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail226</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail226</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/001_001_admin_can_add_content_005_using_link.yaml
</description></item><item><title>#811 passkey signin added in AddAccountSelectNewOrExisting (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail227</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail227</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/PasskeyRequestJsonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignupEnterUsernamePasswordViewModel.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/FormattedHost.kt
core/src/androidMain/kotlin/com/ustadmobile/core/impl/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/CreatePasskeyParams.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/password/SavePasswordUseCase.kt
core/src/androidMain/kotlin/com/ustadmobile/core/impl/password/SavePasswordUseCaseImpl.kt
core/src/androidMain/kotlin/com/ustadmobile/core/impl/passkey/GetCredentialUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/GetCredentialUseCase.kt
</description></item><item><title>#811 test descriptions (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail228</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail228</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/005_005_users_can_delete_post_on_discussion_board_test_description.md
test-end-to-end/test-descriptions/004_004_assignment_after_deadline_and_before_grace_period_test_description.md
test-end-to-end/test-descriptions/001_001_admin_can_add_content_test_description.md
test-end-to-end/test-descriptions/003_001_add_or_edit_course_permission_test_description.md
test-end-to-end/test-descriptions/006_002_admin_user_can_send_a_chat_message_to_students_test_description.md
test-end-to-end/test-descriptions/004_012_teacher_or_admin_can_delete_private_comments_and_course_comments_test_description.md
test-end-to-end/test-descriptions/005_001_add_discussionBoard_test_description.md
test-end-to-end/test-descriptions/001_006_admin_can_cancel_content_download_test_description.md
test-end-to-end/test-descriptions/004_005_assignment_grace_period_finished_test_description.md
test-end-to-end/test-descriptions/001_005_content_download_will_stop_when_wifi_stop_then_resume_when_WiFi_is_resumed _test_description.md
test-end-to-end/test-descriptions/004_002_users_add_assignment_course_and_private_comments_test_description.md
test-end-to-end/test-descriptions/004_006_user_enter_assignment_page_before_graceperiod_but_submission_after_grace_Period_test_description.md
test-end-to-end/test-descriptions/003_003_add_existing_content_in_library_as_block_test_description.md
test-end-to-end/test-descriptions/005_003_user_add_internal_links_to_post_test_description.md
test-end-to-end/test-descriptions/007_004_user_registration_mandatory_fields_test_description.md
test-end-to-end/test-descriptions/004_003_multiple_submission_possible_for_student_test_description.md
test-end-to-end/test-descriptions/004_011_peer_marking_for_group_assignment_test_description.md
test-end-to-end/test-descriptions/001_007_h5p_and_video_content_compression_test_description.md
test-end-to-end/test-descriptions/004_010_peer_marking_for_individual_assignment_test_description.md
test-end-to-end/test-descriptions/004_008_group_users_single_assignment_submission_allowed_test_description.md
test-end-to-end/test-descriptions/001_003_admin_can_delete_and_restore_content_001_test_description.md
test-end-to-end/test-descriptions/005_004_users_can_add_external_links_as_post_on_discussion_board_test_description.md
test-end-to-end/test-descriptions/001_008_deleting_content_will_remove_the_files_associated_with_the_content_from_the_serve _test_description.md
test-end-to-end/test-descriptions/001_003_admin_can_permanently_delete_the_content_002_test_description.md
test-end-to-end/test-descriptions/002_001_admin_add_new_course_members_and_set_course_banner_test_description.md
test-end-to-end/test-descriptions/001_002_admin_add_invalid_content_gets_error_message_test_description.md
test-end-to-end/test-descriptions/004_009_group_users_multiple_assignment_submission_allowed_test_description.md
test-end-to-end/test-descriptions/004_007_group_users_add_assignment_course_and_private_comments_test_description.md
test-end-to-end/test-descriptions/007_002_user_registration_above_age_13_test_description.md
test-end-to-end/test-descriptions/006_001_users_on_same_course_can_send_a_chat_message_test_description.md
test-end-to-end/test-descriptions/001_004_admin_can_move_content_test_description.md
test-end-to-end/test-descriptions/002_003_teacher_record_attendance_test_description.md
test-end-to-end/test-descriptions/004_001_assignment_creation_submission_gradebook_test_description.md
test-end-to-end/test-descriptions/007_001_admin_enable_or_disable_user_registration_test_description.md
test-end-to-end/test-descriptions/004_013_teacher_or_admin_enable_or_disable_file_submission_test_description.md
test-end-to-end/test-descriptions/001_009_user_can_store_offline_content_on_device_storage_or_memory_card_test_description.md
test-end-to-end/test-descriptions/002_002_student_joining_course_using_code_test_description.md
test-end-to-end/test-descriptions/005_002_users_can_add_post_on_discussion_board_test_description.md
test-end-to-end/test-descriptions/003_002_add_module_text_blocks_and_perform_indent_hide_delete_actions_test_description.md
</description></item><item><title>#811 test descriptions (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail229</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail229</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/README.md
</description></item><item><title>#811 Refactoring to ensure that newly added screens/viewmodels accurately follow naming patterns. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail230</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail230</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteviacontact/ClazzInviteViaContactScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/list/PersonListViewModel.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/clazz/invitevialink/InviteViaLinkScreenPreview.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/invitevialink/InviteViaLinkScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/entities/UstadScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteviacontact/ClazzInviteViaContactScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/invitevialink/ClazzInviteViaLinkScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/view/ReportDashboardView.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/clazzmemberlist/ClazzMemberListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/invitevialink/ClazzInviteViaLinkViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/invitevialink/InviteViaLinkViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/CheckContactTypeUseCase.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteviacontact/InviteViaContactScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ResendInviteUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviacontact/ClazzInviteViaContactViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/invitevialink/InviteViaLinkScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/invitevialink/ClazzInviteViaLinkScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/list/ClazzListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviaContact/InviteViaContactViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ParseInviteUseCase.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteviacontact/InviteViaContactScreen.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/invite/ProcessInviteUseCaseTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/view/JoinWithCodeView.kt
</description></item><item><title>#811 Improve ClazzInvite handling of keyboard hiding. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail231</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail231</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteviacontact/ClazzInviteViaContactScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/App.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviacontact/ClazzInviteViaContactViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/viewmodel/UstadViewModelFun.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/hidekeyboard/HideKeyboardUseCase.kt
</description></item><item><title>#811 Invitation improvements (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail232</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail232</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/inviteviacontact/ClazzInviteViaContactScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/SendClazzInvitesUseCaseSendToServerImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/SendClazzInvitesUseCase.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ContactToServerUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/SendClazzInvitesUseCaseServerImpl.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/inviteviacontact/ClazzInviteViaContactScreen.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/CheckContactTypeUseCase.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/SendClazzInvitesRoute.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteviacontact/ClazzInviteViaContactViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonClientDomainModule.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/ClazzInvite.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ParseInviteUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ProcessInviteRoute.kt
core/src/commonMain/resources/MR/base/strings.xml
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/invite/ProcessInviteUseCaseTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/206.json
app-desktop/src/main/java/com/ustadmobile/port/desktop/App.kt
</description></item><item><title>#811 revoke passkey added (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail233</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail233</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/passkey/PasskeyListViewModel.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/PersonAuth2.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/manageaccount/ManageAccountScreen.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/PersonPasskeyDao.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/passkey/PasskeyListScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/entities/UstadScreen.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/manageaccount/ManageAccountScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/detail/PersonDetailViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/detail/PersonDetailScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/detail/PersonDetailScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/manageaccount/ManageAccountViewModel.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/person/PersonIntegrationTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/commonMain/resources/MR/base/strings.xml
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/person/detail/PersonDetailViewModelTest.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/PersonAuth2Dao.kt
</description></item><item><title>#811 for resend using existing send invitation use case (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail234</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail234</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ResendInviteUseCase.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazzenrolment/clazzmemberlist/ClazzMemberListScreen.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/SendClazzInvitesUseCaseServerImpl.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzInviteDao.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzenrolment/clazzmemberlist/ClazzMemberListViewModel.kt
core/src/commonMain/resources/MR/base/strings.xml
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazzenrolment/clazzmemberlist/ClazzMemberListScreen.kt
</description></item><item><title>#811 Resend invite use cases removed (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail235</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail235</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ResendInviteUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ResendInviteUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/invite/ResendInviteRequest.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzInviteDao.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/invite/ResendInviteRoute.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#811 fix issue 1050 (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail236</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail236</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/inviteredeem/ClazzInviteRedeemViewModel.kt
</description></item><item><title>#811 cypress test-005_004 external link test fix for simplified onboarding branch (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail237</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail237</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_005_004_user_add_external_links_to_post.cy.js
</description></item><item><title>#811 Merge migrations. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail238</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail238</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
</description></item><item><title>#811 Fix compilation after updated primary merge (including attempt list). (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail239</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail239</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xapi/formatresponse/FormatStatementResponseUseCaseTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/detailattemptlisttab/ContentEntryDetailAttemptsSessionListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/detailattemptlisttab/ContentEntryDetailAttemptsPersonListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/detailattemptlisttab/ContentEntryDetailAttemptsStatementListViewModel.kt
</description></item><item><title>#811 updated e2e tests for attemptlist test updates (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail240</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail240</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/003_005_add_new_content_block_inside_course.yaml
test-end-to-end/android-maestro/e2e-tests/003_003_add_existing_content_in_library_as_block.yaml
test-end-to-end/android-maestro/e2e-tests/003_003_add_content_as_block_in_course.yaml
</description></item><item><title>#811 updated e2e tests for attemptlist test updates (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail241</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail241</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_001_001_add_content.cy.js
</description></item><item><title>#811 updated cypress test (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail242</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail242</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_003_003_admin_or_teacher_add_content_via_file.cy.js
</description></item><item><title>#811 Tidyup handling of using saved passwords. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail243</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail243</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/UserPasskeyChallenge.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/password/SavePasswordUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/credentials/GetCredentialUseCaseTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/PasskeyVerifyResult.kt
core/src/androidMain/kotlin/com/ustadmobile/core/impl/passkey/CreatePasskeyUseCaseImpl.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/CreatePasskeyParams.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/CredentialResult.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/GetCredentialUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/learningspace/GoToLearningSpaceUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyParams.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/learningspacelist/LearningSpaceListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/PassKeySignInData.kt
core/src/jsMain/kotlin/com/ustadmobile/core/impl/di/DomainDiModuleJs.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/GetCredentialUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/SavePersonPasskeyUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/PasskeyRequestJsonUseCase.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/GetCredentialUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/password/SavePasswordUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/CreatePasskeyUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignupEnterUsernamePasswordViewModel.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/PasskeyRequestJsonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/PassKeySignInData.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/UserPasskeyChallenge.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/207.json
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/PasskeyVerifyResult.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/password/SavePasswordUseCase.kt
core/src/androidMain/kotlin/com/ustadmobile/core/impl/password/SavePasswordUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/passkey/SavePersonPasskeyUseCase.kt
core/src/androidMain/kotlin/com/ustadmobile/core/impl/passkey/GetCredentialUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/passkey/verify/VerifySignInWithPasskeyUseCase.kt
</description></item><item><title>#811 Tidyup and refactoring of the signup/registration flow and passkey handling. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail244</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail244</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/SignUpScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/PublicKeyCredentialRpEntity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/redirect/RedirectViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/entities/UstadScreen.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/util/ext/NavControllerExtTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
lib-ui-compose/src/desktopMain/kotlin/com/ustadmobile/libuicompose/view/accountlist/AccountListScreenPreview.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/account/list/AccountListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/registerageredirect/RegisterAgeRedirectViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/newuser/AddAccountSelectNewOrExistingUserTypeScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/detail/ContentEntryDetailViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/addaccount/AddAccountSelectNewOrExistingScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/getmetadata/ContentEntryGetMetadataViewModel.kt
app-android/src/main/AndroidManifest.xml
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/GetCredentialUseCaseImpl.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/account/list/AccountListViewModelTest.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyRequestJsonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/account/addaccountselectusertype/AddAccountSelectUserTypeViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/PublicKeyCredentialCreationOptionsJSON.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/accountlist/AccountListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/PublicKeyCredentialUserEntityJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/site/termsdetail/SiteTermsDetailViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/request/CreatePasskeyRequestJsonServerUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/edit/ContentEntryEditViewModel.kt
core/src/jvmMain/kotlin/com/ustadmobile/core/domain/learningspace/GoToLearningSpaceUseCaseJvm.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppNavHost.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/signup/SignUpScreen.kt
app-react/src/jsMain/kotlin/com/ustadmobile/mui/components/Header.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AddAccountSelectNewOrExistingScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/navigation/GetDefaultDestinationUseCase.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/accountlist/AccountListScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingUserTypeViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/app/AppBar.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/AuthenticatorSelectionCriteria.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/PublicKeyCredentialDescriptorJSON.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModelTest.kt
app-android/assetlinks.json
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/learningspacelist/LearningSpaceListViewModel.kt
core/src/jsMain/kotlin/com/ustadmobile/core/impl/di/DomainDiModuleJs.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/person/addaccount/AddAccountSelectNewOrExistingUserTypeScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/UstadViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/account/CheckRegistrationAllowedUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/contententry/list/ContentEntryListViewModel.kt
app-android/README.md
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignupEnterUsernamePasswordViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/config/SystemUrlConfig.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/PasskeyRequestJsonUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/account/addaccountselectneworexisting/AddAccountSelectNewOrExistingViewModelTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/PublicKeyCredentialParameters.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/AddAccountSelectNewOrExistingViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/accountlist/AccountListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/util/ext/NavControllerExt.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/accountlist/AccountListScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/account/addaccountselectneworexisting/AddAccountSelectNewOrExistingViewModel.kt
</description></item><item><title>#811 Add binding for CheckRegistrationAllowedUseCase (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail245</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail245</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#811 Fix merge (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail246</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail246</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/manageaccount/ManageAccountViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/passkey/PasskeyListViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/passkey/PasskeyListScreen.kt
</description></item><item><title>#811 Fix merge (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail247</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail247</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
</description></item><item><title>#811 Fixes for passkey creation and additional documentation (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail248</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail248</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyRequestJsonUseCase.kt
app-android/src/main/AndroidManifest.xml
app-android/src/main/res/values/assets_statement_values.xml
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/CreatePasskeyUseCaseImpl.kt
app-android/README.md
</description></item><item><title>#811 Refactor passkey and credential handling: (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail249</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail249</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/password/SavePasswordUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/request/CreatePasskeyRequestJsonServerUseCase.kt
app-android/build.gradle
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/util/UstadTestRule.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/credentials/GetCredentialUseCaseTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/username/ParseCredentialUsernameUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/GetCredentialUseCase.kt
app-react/src/jsMain/kotlin/UstadJsDi.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/impl/UstadAccountManagerTest.kt
core/Module.md
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
app-android/src/main/AndroidManifest.xml
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/password/SavePasswordUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignupEnterUsernamePasswordViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/config/SystemUrlConfig.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/test/viewmodeltest/ViewModelTestBuilder.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/account/list/AccountListViewModelTest.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/account/addaccountselectneworexisting/AddAccountSelectNewOrExistingViewModelTest.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyRequestJsonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/username/CreateCredentialUsernameUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/config/UstadBuildConfig.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/test/clientservertest/ClientServerIntegrationTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/account/addaccountselectneworexisting/AddAccountSelectNewOrExistingViewModel.kt
</description></item><item><title>#811 Fix DomainDiModuleJs compilation (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail250</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail250</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/jsMain/kotlin/com/ustadmobile/core/impl/di/DomainDiModuleJs.kt
</description></item><item><title>#811 Fix DesktopDomainDiModule compilation (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail251</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail251</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
</description></item><item><title>#811 Updated button name - Manage account in cypress test (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail252</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail252</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/support/commands.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_004_username_validation_and_add_profile_pic.cy.js
</description></item><item><title>#811 Updated button name - Manage account in maestro test (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail253</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail253</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/001_001_admin_can_add_content_002-epub.yaml
test-end-to-end/android-maestro/e2e-tests/007_004_username_validation_and_add_profile_pic.yaml
</description></item><item><title>#811 Manage account in maestro test 007_004 (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail254</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail254</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/007_004_username_validation_and_add_profile_pic.yaml
</description></item><item><title>#811 Manage account in maestro test 001_002 (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail255</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail255</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/001_001_admin_can_add_content_002-epub.yaml
</description></item><item><title>#811 Update passkey creation: (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail256</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail256</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/SignUpScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/request/CreatePasskeyRequestJsonServerUseCase.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/signup/SignUpScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/request/CreatePublicKeyCredentialCreationOptionsJsonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/CreatePasskeyUseCaseImpl.kt
</description></item><item><title>#811 Add learning space url template support to testserver controller to enable maestro end to end tests to use https. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail257</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail257</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyRequestJsonUseCase.kt
testserver-controller/src/main/java/com/ustadmobile/test/http/FindFreePort.kt
testserver-controller/src/main/java/com/ustadmobile/test/http/TestServerController.kt
testserver-controller/src/main/java/com/ustadmobile/test/http/ServerRunner.kt
testserver-controller/README.md
test-end-to-end/android-maestro/README.md
</description></item><item><title>#811 username suggestions added (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail258</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail258</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/SignUpScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/username/GetUsernameSuggestionUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/username/UsernameSuggestionUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonClientDomainModule.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/signup/SignUpScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/username/UsernameSuggestionRoute.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/username/UsernameSuggestionUseCaseTest.kt
</description></item><item><title>#811 Kotlinx Serialization Classes for WebAuthn Passkey Response (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail259</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail259</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/GetCredentialUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/ClientExtensionResults.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/Prf.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/PasskeyWebAuthNResponse.kt
core/build.gradle
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/Response.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
gradle/libs.versions.toml
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/ClientDataJSON.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/CreatePasskeyUseCaseImpl.kt
</description></item><item><title>#811 changes in GetCredentialUseCaseImpl (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail260</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail260</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/Response.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/CreatePasskeyUseCaseImpl.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/GetCredentialUseCaseImpl.kt
</description></item><item><title>#811 Fix testServerController running Cypress: changing the order of adding to the running server list broke the reverse proxy interceptor. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail261</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail261</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>testserver-controller/src/main/java/com/ustadmobile/test/http/TestServerController.kt
</description></item><item><title>#811 CreatePasskey use case should be returning the webauthn response (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail262</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail262</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/signup/SignUpEnterUsernamePasswordScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignupEnterUsernamePasswordViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyRequestJsonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/manageaccount/ManageAccountViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/signup/SignUpEnterUsernamePasswordScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyParams.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/SavePersonPasskeyUseCase.kt
</description></item><item><title>#811 added UsernameSuggestionUseCase (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail263</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail263</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/username/UsernameSuggestionUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/username/helper/UsernameErrorException.kt
</description></item><item><title>#811 spec added (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail264</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail264</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/PasskeyWebAuthNResponse.kt
</description></item><item><title>#811 Refactor passkey rpId and user id handling: (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail265</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail265</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/request/CreatePublicKeyCredentialCreationOptionsJsonUseCase.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/lib/db/entities/PersonPasskey.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/ext/UmAppDatabaseMigrations.kt
</description></item><item><title>#811 changed the name of PasskeyWebAuthNResponse according to spec (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail266</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail266</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/Response.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xapi/formatresponse/FormatStatementAuthenticatorAssertionResponseJSONUseCaseTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyUseCase.kt
gradle/libs.versions.toml
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/OtherSignUpOptionSelectionViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/GetCredentialUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyParams.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/person/manageaccount/ManageAccountViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/AuthenticationResponseJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/SavePersonPasskeyUseCase.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/GetCredentialUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
app-android/src/main/java/com/ustadmobile/port/android/impl/UstadApp.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/AuthenticationExtensionsClientOutputsJSON.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/xapi/formatresponse/FormatStatementResponseUseCaseTest.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/AuthenticationExtensionsPRFOutputsJSON.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/AuthenticatorAssertionResponseJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyRequestJsonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/ClientExtensionResults.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/Prf.kt
lib-database/schemas/com.ustadmobile.core.db.UmAppDatabase/207.json
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/PasskeyWebAuthNResponse.kt
core/build.gradle
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/ClientDataJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/account/addaccountselectneworexisting/AddAccountSelectNewOrExistingViewModel.kt
</description></item><item><title>#811 Move webauthn model into model package. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail267</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail267</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/GetCredentialUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/AuthenticationExtensionsClientOutputsJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/AuthenticationExtensionsClientOutputsJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/AuthenticationResponseJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/ClientDataJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/AuthenticationExtensionsPRFOutputsJSON.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/CreatePasskeyUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/AuthenticatorAssertionResponseJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/AuthenticatorAssertionResponseJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/GetCredentialUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/AuthenticationExtensionsPRFOutputsJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/AuthenticationResponseJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/webAuthn/ClientDataJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/SavePersonPasskeyUseCase.kt
</description></item><item><title>#811 user handle encoding decoding added with test (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail268</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail268</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/passkey/DecodeUserHandleUseCaseImpl.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/request/CreatePublicKeyCredentialCreationOptionsJsonUseCase.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/passkey/EncodeDecodeUserHandleUseCaseTest.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/DecodeUserHandleUseCase.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/EncodeUserHandleUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/account/addaccountselectneworexisting/AddAccountSelectNewOrExistingViewModel.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/passkey/EncodeUserHandleUseCaseImpl.kt
</description></item><item><title>#811 clean up encoding decoding (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail269</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail269</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/UmRestApplication.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/passkey/DecodeUserHandleUseCaseImpl.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/domain/passkey/EncodeDecodeUserHandleUseCaseTest.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/passkey/verify/VerifySignInWithPasskeyUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/passkey/verify/VerifySignInWithPasskeyRoute.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/passkey/EncodeUserHandleUseCaseImpl.kt
</description></item><item><title>#811 Fix SavePersonPasskeyUseCase compilation (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail270</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail270</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/SavePersonPasskeyUseCase.kt
</description></item><item><title>#811 username issue fixed for web (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail271</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail271</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/view/signup/SignUpScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
</description></item><item><title>#811 Fix AbstractAppActivity compilation and remove CreatePasskeyRequestJsonUseCase from desktop and web DI. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail272</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail272</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/jsMain/kotlin/com/ustadmobile/core/impl/di/DomainDiModuleJs.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/GetCredentialUseCaseImpl.kt
</description></item><item><title>#811 Minor tidyup - remove commented out code etc. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail273</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail273</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/passkey/verify/VerifySignInWithPasskeyUseCase.kt
app-ktor-server/src/main/kotlin/com/ustadmobile/lib/rest/domain/passkey/verify/VerifySignInWithPasskeyRoute.kt
core/src/jvmTest/kotlin/com/ustadmobile/core/username/UsernameSuggestionUseCaseTest.kt
</description></item><item><title>#811 Remove unused json codegen dependency. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail274</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail274</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>gradle/libs.versions.toml
core/build.gradle
</description></item><item><title>#811 Fix ustad-server.conf in distribution version to avoid setting an incorrect .well-known directory. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail275</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail275</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/dist/ustad-server.conf
</description></item><item><title>#811 Add documentation on checking asset links. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail276</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail276</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/README.md
</description></item><item><title>#811 Update documentation on checking asset links. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail277</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail277</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-android/README.md
</description></item><item><title>#811 invite user e2e and username test added to cypress tests (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail278</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail278</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-ktor-server/src/main/resources/application.conf
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_007b_admin_send_group_invitation_to_join_course_via_email.cy.js
test-end-to-end/webapp-cypress/cypress/support/commands.js
test-end-to-end/test-files/content/Ustad_Unenrolled_Teacher_And__Student_list.csv
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_001_admin_enable_or_disable_user_registration.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_002b_user_registration_above_age_13_join_learning_space_username_password.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_007a_admin_send_group_invitation_to_join_course_via_username.cy.js
</description></item><item><title>#811 invite user e2e and username test added to maestro tests (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail279</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail279</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/007_007b_admin_send_group_invitation_to_join_course_via_email.yaml
test-end-to-end/android-maestro/e2e-tests/common/fetch_invitation_link.js
test-end-to-end/android-maestro/e2e-tests/007_002b_user_registration_above_age_13_join_learning_space_username_password.yaml
test-end-to-end/android-maestro/e2e-tests/common/clear_state_and_learning_space_new_userflow.yaml
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_001_admin_enable_or_disable_user_registration.cy.js
test-end-to-end/android-maestro/e2e-tests/common/clear_state_and_learning_space_existing_userflow.yaml
test-end-to-end/android-maestro/e2e-tests/common/clear_state_and_personal_account_new_user_flow.yaml
test-end-to-end/android-maestro/e2e-tests/007_007a_admin_send_group_invitation_to_join_course_via_username.yaml
</description></item><item><title>#811 google password manager issues fixed (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail280</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail280</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/request/CreatePublicKeyCredentialCreationOptionsJsonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/ClientDataJSON.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/SavePersonPasskeyUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/PublicKeyCredentialCreationOptionsJSON.kt
</description></item><item><title>#811 google password manager signing in issues fixed (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail281</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail281</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/model/PublicKeyCredentialRequestOptionsJSON.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/login/LoginScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/GetCredentialUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/person/addaccount/AddAccountSelectNewOrExistingScreen.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/account/addaccountselectneworexisting/AddAccountSelectNewOrExistingViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/request/CreatePublicKeyCredentialRequestOptionsJsonUseCase.kt
</description></item><item><title>#811 maestro - stopserver uncommented (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail282</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail282</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/007_007b_admin_send_group_invitation_to_join_course_via_email.yaml
</description></item><item><title>#811 SignUpScreen bug fix for issue (nikunj.sharma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail283</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail283</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/view/signup/SignUpScreen.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/signup/SignUpViewModel.kt
</description></item><item><title>#811 updated cypress - mandatory field check (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail284</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail284</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_001_admin_enable_or_disable_user_registration.cy.js
</description></item><item><title>#811 updated maestro - added max tries on downloads (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail285</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail285</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/common/clear_login_and_add_content.yaml
test-end-to-end/android-maestro/e2e-tests/007_001_admin_enable_or_disable_user_registration.yaml
test-end-to-end/android-maestro/e2e-tests/common/download_file_via_browser.yaml
</description></item><item><title>#811 maestro - 007_007b_admin_send_group_invitation_to_join_course_via_email.yaml moved to pending folder (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail286</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail286</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests.pending/007_007b_admin_send_group_invitation_to_join_course_via_email.yaml
test-end-to-end/android-maestro/e2e-tests/007_007b_admin_send_group_invitation_to_join_course_via_email.yaml
</description></item><item><title>#811 Remove obsolete CreatePasskeyRequestJsonUseCase (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail287</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail287</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/androidMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/GetCredentialUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/account/UstadAccountManager.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/login/LoginViewModel.kt
app-android/src/main/java/com/ustadmobile/port/android/view/AbstractAppActivity.kt
app-desktop/src/main/java/com/ustadmobile/port/desktop/DesktopDomainDiModule.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/EncodeUserHandleUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/request/CreatePublicKeyCredentialRequestOptionsJsonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/CreatePasskeyRequestJsonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/GetCredentialUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/request/CreatePublicKeyCredentialCreationOptionsJsonUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/domain/credentials/passkey/DecodeUserHandleUseCase.kt
core/src/commonJvmMain/kotlin/com/ustadmobile/core/domain/passkey/EncodeUserHandleUseCaseImpl.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/account/addaccountselectneworexisting/AddAccountSelectNewOrExistingViewModel.kt
</description></item><item><title>#811 Revert changes to application.conf and update ServerRunner to handle useMockEmail (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail288</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail288</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>testserver-controller/src/main/java/com/ustadmobile/test/http/ServerRunner.kt
app-ktor-server/src/main/resources/application.conf
</description></item><item><title>#811 Fix compilation issues after merging primary into dev-simplifed-onboarding (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail289</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail289</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/ClazzDetailOverviewViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#811 Delete obsolete scripts and wget test logs. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/811/changes#detail290</link><guid isPermaLink="false">job/UstadMobile-primary2/811/changes#detail290</guid><pubDate>Sun, 1 Jun 2025 18:47:06 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>ustad-appconfig.sh
wget-log
wget-log.1
ustad-appconfig.bat
</description></item><item><title>#810 1-ClazzDetailOverviewViewModel.kt : Have added a block which gets the canAddNewCourse value. (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail0</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/detailoverview/ClazzDetailOverviewScreen.kt
core/src/commonMain/resources/MR/base/strings.xml
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/ClazzDetailOverviewViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/detailoverview/ClazzDetailOverviewScreen.kt
</description></item><item><title>#810 Refactor (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail1</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail1</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/ClazzDetailOverviewViewModel.kt
app-react/src/jsMain/kotlin/com/ustadmobile/view/clazz/detailoverview/ClazzDetailOverviewScreen.kt
</description></item><item><title>#810 Refactor (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail2</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail2</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/detailoverview/ClazzDetailOverviewScreen.kt
</description></item><item><title>#810 1- Passing Enum (Copy and Edit) from ClazzDetailOverviewViewModel.kt (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail3</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail3</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/view/UstadView.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
core/src/commonMain/resources/MR/base/strings.xml
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/ClazzDetailOverviewViewModel.kt
</description></item><item><title>#810 1- Made changes in function save according to the action triggered (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail4</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail4</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
</description></item><item><title>#810 commented code removed (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail5</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail5</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
</description></item><item><title>#810 merged test files (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail6</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail6</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_003_002_add_module_text_blocks_and_perform_indent_hide_delete_actions.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_005_student_registered_by_admin_or_teacher_dont_need_parentConsent.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_007_002_user_registration_above_age_13.cy.js
test-end-to-end/android-maestro/e2e-tests/002_006_admin_or_teacher_copy_existing_course_test.yaml
test-end-to-end/README.md
test-end-to-end/webapp-cypress/package.json
test-end-to-end/android-maestro/e2e-tests/common/setDate.js
test-end-to-end/android-maestro/e2e-tests/common/erase_text.yaml
test-end-to-end/webapp-cypress/cypress/e2e/WEB_002_006_admin_or_teacher_copy_a_course.cy.js
test-end-to-end/webapp-cypress/cypress/support/commands.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_005_002_all_user_add_post_and_reply.cy.js
test-end-to-end/test-descriptions/002_006_admin_or_teacher_can_copy_a_course_test_description.md
test-end-to-end/webapp-cypress/package-lock.json
</description></item><item><title>#810 string changed (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail7</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail7</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/resources/MR/base/strings.xml
</description></item><item><title>#810 naviagtion solved (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail8</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail8</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
</description></item><item><title>#810 Cypress test update for 002_001 copy course (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail9</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail9</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/support/commands.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_002_001_admin_add_new_course_and_teacher.cy.js
</description></item><item><title>#810 Cypress test -002_001 copy course - removed click on Library command (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail10</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail10</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_002_001_admin_add_new_course_and_teacher.cy.js
</description></item><item><title>#810 Cypress test -added assignment test (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail11</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail11</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_004_011_peer_marking_for_group_assignment.cy.js
</description></item><item><title>#810 Fixed- (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail12</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail12</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
</description></item><item><title>#810 updated test descriptions (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail13</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail13</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/test-descriptions/002_001_admin_add_new_course_members_and_set_course_banner_test_description.md
test-end-to-end/README.md
test-end-to-end/test-descriptions/004_011_peer_marking_for_group_assignment_test_description.md
</description></item><item><title>#810 updated maestro tests - 002_001 and 004_011 (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail14</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail14</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/android-maestro/e2e-tests/002_006_admin_or_teacher_copy_existing_course_test.yaml
test-end-to-end/android-maestro/e2e-tests/002_001_admin_add_new_course_and_teacher.yaml
test-end-to-end/test-descriptions/002_006_admin_or_teacher_can_copy_a_course_test_description.md
test-end-to-end/android-maestro/e2e-tests.pending/004_011_peer_marking_for_group_assignment.yaml
test-end-to-end/webapp-cypress/cypress/e2e/WEB_002_001_admin_add_new_course_and_teacher.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_002_006_admin_or_teacher_copy_a_course.cy.js
</description></item><item><title>#810 Made it group to individual (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail15</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail15</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
</description></item><item><title>#810 Test checking (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail16</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail16</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_004_011_peer_marking_for_group_assignment.cy.js
</description></item><item><title>#810 Moving copy logic to CopyCourseUseCase.kt (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail17</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail17</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/CopyCourseUseCase.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzDao.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/ClazzDetailOverviewViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/impl/di/CommonDomainModule.kt
</description></item><item><title>#810 Course Picture (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail18</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail18</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/CopyCourseUseCase.kt
</description></item><item><title>#810 Clazz Name set Copy of - (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail19</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail19</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/CopyCourseUseCase.kt
</description></item><item><title>#810 Clazz Name set Copy of - (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail20</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail20</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/ClazzDetailOverviewViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
</description></item><item><title>#810 Course Image set when saving. (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail21</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail21</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
</description></item><item><title>#810 Clazz name removed (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail22</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail22</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
</description></item><item><title>#810 Clazz name removed (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail23</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail23</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
</description></item><item><title>#810 Clazz name testes (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail24</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail24</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_002_001_admin_add_new_course_and_teacher.cy.js
</description></item><item><title>#810 Added assertion on cypress test (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail25</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail25</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_004_011_peer_marking_for_group_assignment.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_002_001_admin_add_new_course_and_teacher.cy.js
</description></item><item><title>#810 Assignment Copied and CourseBlockAndEditEntities set (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail26</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail26</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/ClazzDetailOverviewViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/CopyCourseUseCase.kt
</description></item><item><title>#810 Test fix (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail27</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail27</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_002_001_admin_add_new_course_and_teacher.cy.js
</description></item><item><title>#810 when copying set the group id (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail28</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail28</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/CopyCourseUseCase.kt
</description></item><item><title>#810 Update fetching of CourseBlock (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail29</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail29</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/ClazzDetailOverviewViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/CopyCourseUseCase.kt
</description></item><item><title>#810 assignment change and removed wait for cypress test (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail30</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail30</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_004_011_peer_marking_for_group_assignment.cy.js
test-end-to-end/webapp-cypress/cypress/e2e/WEB_002_001_admin_add_new_course_and_teacher.cy.js
</description></item><item><title>#810 All fixes done (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail31</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail31</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/CopyCourseUseCase.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/edit/ClazzAssignmentEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/ClazzDetailOverviewViewModel.kt
</description></item><item><title>#810 Refactoring (mandvi.verma)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/810/changes#detail32</link><guid isPermaLink="false">job/UstadMobile-primary2/810/changes#detail32</guid><pubDate>Tue, 13 May 2025 16:33:28 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazzassignment/edit/ClazzAssignmentEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/CopyCourseUseCase.kt
lib-database/src/commonMain/kotlin/com/ustadmobile/core/db/dao/ClazzDao.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/edit/ClazzEditViewModel.kt
core/src/commonMain/kotlin/com/ustadmobile/core/viewmodel/clazz/detailoverview/ClazzDetailOverviewViewModel.kt
lib-ui-compose/src/commonMain/kotlin/com/ustadmobile/libuicompose/view/clazz/detailoverview/ClazzDetailOverviewScreen.kt
</description></item><item><title>#808 Updated Android Gradle Plugin to version 8.10.0 (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/808/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/808/changes#detail0</guid><pubDate>Tue, 13 May 2025 15:37:22 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>build.gradle
</description></item><item><title>#807 Update Android Gradle Plugin (AGP) from 8.9.1 to 8.9.2 (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/807/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/807/changes#detail0</guid><pubDate>Wed, 23 Apr 2025 16:22:58 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>build.gradle
</description></item><item><title>#806 Update PULLREQUEST-CHECKLIST.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/806/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/806/changes#detail0</guid><pubDate>Thu, 17 Apr 2025 14:34:39 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>PULLREQUEST-CHECKLIST.md
</description></item><item><title>#805 Cypress test fix for test 001_001 (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/job/UstadMobile-primary2/805/changes#detail0</link><guid isPermaLink="false">job/UstadMobile-primary2/805/changes#detail0</guid><pubDate>Tue, 15 Apr 2025 16:23:48 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>test-end-to-end/webapp-cypress/cypress/e2e/WEB_001_001_add_content.cy.js
</description></item></channel></rss>