Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
79 commits
Select commit Hold shift + click to select a range
70d7018
created the playlist screen.
lipsa-b Dec 4, 2025
be21a08
created the playlist screen.
lipsa-b Dec 4, 2025
0498356
Enable reordering for both sections and items.
lipsa-b Dec 5, 2025
4afa198
Merge branch 'refs/heads/main' into assignment-playlists
lipsa-b Dec 5, 2025
ee3cdbf
Refactor and improve lesson item reordering behavior
lipsa-b Dec 5, 2025
d6d662b
add semi-transparent state to items when dragging a section
lipsa-b Dec 8, 2025
731c3ca
Merge branch 'refs/heads/main' into assignment-playlists
lipsa-b Dec 8, 2025
05d7a24
update te curriculum list screen as per the new prototype
lipsa-b Dec 11, 2025
cff7ac5
Create the curriculum detail screen and navigate to curriculum edit s…
lipsa-b Dec 11, 2025
c44c14f
Create the curriculum detail screen and navigate to curriculum edit s…
lipsa-b Dec 11, 2025
9aef044
Merge branch 'main' into assignment-playlists
lipsa-b Dec 11, 2025
55d19db
Remove the curriculumDetailScreen
lipsa-b Dec 12, 2025
081fefe
Merge branch 'main' into assignment-playlists
lipsa-b Dec 12, 2025
f013ad2
added two tabs apps and play lists in Home screen
lipsa-b Dec 15, 2025
8f2621a
Remove the CurriculumMappingListScreen
lipsa-b Dec 15, 2025
f154e70
Added onclick lesson to navigate to leaning unit detail screen
lipsa-b Dec 16, 2025
2446746
added home and playlist test
poojaustad Dec 16, 2025
bb08d4f
added playlist
poojaustad Dec 16, 2025
fbe93a3
test updates
poojaustad Dec 16, 2025
729f234
test updates
poojaustad Dec 16, 2025
ee17ff3
test updates
poojaustad Dec 16, 2025
455063a
Modified the learning unit detail screen
lipsa-b Dec 18, 2025
715976a
Modify the Test
lipsa-b Dec 18, 2025
8e2fe37
add onclicklesson function
lipsa-b Dec 19, 2025
e2b5b91
fix the screen
lipsa-b Dec 22, 2025
d3ad051
add the testtag for additem.
lipsa-b Dec 22, 2025
00cd2c0
update
poojaustad Dec 22, 2025
af4bf2c
Merge remote-tracking branch 'origin/assignment-playlists' into assig…
poojaustad Dec 22, 2025
4191723
update
poojaustad Dec 22, 2025
a2987ee
change the navigation from playlist tab to learnint unit detail screen
lipsa-b Dec 23, 2025
0b1a604
Add the testtag for the expand/collapse
lipsa-b Dec 23, 2025
0518afe
Add the testtag for the expand/collapse
lipsa-b Dec 23, 2025
dda3774
Add the testtag for the action buttons
lipsa-b Dec 23, 2025
e85dd84
Merge branch 'main' into assignment-playlists
lipsa-b Dec 23, 2025
f4542b8
update
poojaustad Dec 23, 2025
a9caa37
update
poojaustad Dec 23, 2025
e1acea4
modify the code
lipsa-b Dec 23, 2025
5769152
modify the code
lipsa-b Dec 24, 2025
dc14cbd
Modify the assign button functionality
lipsa-b Dec 24, 2025
0b61a44
updated test flow
poojaustad Dec 24, 2025
62b0661
fix playlistList
lipsa-b Dec 29, 2025
4ef55bc
add the multiplelesson on assignment
lipsa-b Dec 30, 2025
2cbcea2
Merge branch 'main' into assignment-playlists
lipsa-b Dec 30, 2025
7c07359
Navigation change to playlist tab onclick add from playlist in assign…
lipsa-b Dec 30, 2025
b6f8302
Add filtermappings
lipsa-b Dec 31, 2025
a96d875
Refactor the asignmentedit viewmodel
lipsa-b Dec 31, 2025
1486927
Add "Add task to assignment"
lipsa-b Dec 31, 2025
080c066
change the package name to playlists
lipsa-b Dec 31, 2025
5704a2b
change to playlists
lipsa-b Dec 31, 2025
b69ba54
updated test- added assignment flow
poojaustad Dec 31, 2025
4ea08e8
add the select task to assignment
lipsa-b Jan 2, 2026
1f7c043
change the button name add from playlist to Task.
lipsa-b Jan 2, 2026
7a47018
Add checkboox
lipsa-b Jan 2, 2026
5655b3f
Merge branch 'main' into assignment-playlists
lipsa-b Jan 5, 2026
e968384
fix assignmentedit
lipsa-b Jan 5, 2026
bbb2188
removed 000 test
poojaustad Jan 5, 2026
d6b4fd9
update learningunitDetailscreen
lipsa-b Jan 5, 2026
1b94584
Merge remote-tracking branch 'origin/assignment-playlists' into assig…
lipsa-b Jan 5, 2026
5ae0a8d
Added the share screen
lipsa-b Jan 6, 2026
8509cbc
Merge branch 'main' into assignment-playlists
lipsa-b Jan 7, 2026
8b8beeb
Rename the file names
lipsa-b Jan 9, 2026
d62876a
tidy up assignmenteditviewmodel
lipsa-b Jan 12, 2026
209a0e4
Merge branch 'main' into assignment-playlists
lipsa-b Jan 14, 2026
b037c9a
tidy up playlisteditscreen
lipsa-b Jan 19, 2026
2e38219
Merge branch 'main' into assignment-playlists
lipsa-b Jan 19, 2026
9585db8
Merge branch 'main' into assignment-playlists
lipsa-b Jan 19, 2026
3b01f2d
Merge branch 'main' into assignment-playlists
lipsa-b Jan 19, 2026
2dbffd4
Merge remote-tracking branch 'origin/assignment-playlists' into assig…
lipsa-b Jan 19, 2026
79934b6
Merge branch 'main' into assignment-playlists
lipsa-b Jan 19, 2026
ccc06f7
modify the copy playlist
lipsa-b Jan 20, 2026
fb1dafc
change to playlist
lipsa-b Jan 20, 2026
591c4d8
change to playlist
lipsa-b Jan 20, 2026
e41a109
Merge branch 'main' into assignment-playlists
lipsa-b Jan 21, 2026
8474863
Merge branch 'main' into assignment-playlists
lipsa-b Jan 22, 2026
dea0ba0
Resolve merge conflict
lipsa-b Jan 22, 2026
eec3ff0
Merge branch 'main' into assignment-playlists
lipsa-b Jan 27, 2026
dab9f97
Merge branch 'main' into assignment-playlists
lipsa-b Feb 18, 2026
86f13a7
resolve merge conflicts
lipsa-b Feb 19, 2026
635e46e
Merge branch 'main' into assignment-playlists
lipsa-b Mar 6, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
410 changes: 410 additions & 0 deletions .maestro/flows/001_001_invite_using_invite_code_test.yaml

Large diffs are not rendered by default.

35 changes: 34 additions & 1 deletion .maestro/flows/001_002_add_user_direct_test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,22 @@ onFlowComplete:
when:
visible: "Save password for Respect?"
file: "subflows/save_password_prompt_cancel.yaml"
- assertVisible: "Home"
- tapOn: "People"
- tapOn: "Test User"
- tapOn: "Manage account"
- assertVisible: "testuser"
- tapOn: "Change"
- tapOn: "Old password*"
- inputText: "test234"
- tapOn: "New password*"
- inputText: "t2"
- tapOn: "Save"
- assertVisible: "Password must be at least 6 characters"
- tapOn: "New password*"
- eraseText
- inputText: "test123"
- tapOn: "Save"
- assertVisible: "Apps"
- tapOn: "People"
- tapOn: "ParentA User"
Expand Down Expand Up @@ -356,6 +372,23 @@ onFlowComplete:
arguments:
respect_directory: ${output.SCHOOL_URL}
- tapOn: "Get Started"
- runFlow:
file: "subflows/get_started_select_school_by_name.yaml"
env:
SCHOOL_NAME: ${SCHOOL_NAME}
- tapOn:
id: "username"
- inputText: "childuser"
- tapOn:
id : "password"
- inputText: "test123"
- hideKeyboard
- tapOn: "Login"
- runFlow:
when:
visible: "Save password for Respect?"
file: "subflows/save_password_prompt_cancel.yaml"
- assertVisible: "Home"
- tapOn: "Scan QR code/badge"
- assertVisible:
id: "app_title"
Expand All @@ -371,4 +404,4 @@ onFlowComplete:
text: "Apps"
- assertVisible: "Assignments"
- assertVisible: "Classes"
- assertVisible: "People"
- assertVisible: "People"
2 changes: 1 addition & 1 deletion .maestro/flows/001_003_login_using_school_link_test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -48,5 +48,5 @@ onFlowComplete:
when:
visible: "Save password for Respect?"
file: "subflows/save_password_prompt_cancel.yaml"
- assertVisible: "Apps"
- assertVisible: "Home"

210 changes: 204 additions & 6 deletions .maestro/flows/002_browse_lessons_test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,13 @@ onFlowComplete:
file: "scripts/teardown.js"
---
- runFlow: "subflows/school_admin_login_flow.yaml"
- assertVisible: "Home"
- assertVisible:
id: "app_title"
text: "Home"
- tapOn: "Apps"
- tapOn:
id: "floating_action_button"
id: "floating_action_button" # +Add App
- tapOn: "Add from Link"
- tapOn: "Link*"
- inputText: "https://respect.world/respect-ds/case_valid/appmanifest.json"
Expand All @@ -30,14 +35,10 @@ onFlowComplete:
- assertVisible: "Add App"
# verify App got added to Apps section
- tapOn: "Add App"
- tapOn: "Home"
- tapOn: "Apps"
- assertVisible:
id: "app_title"
text: "Apps"
- assertVisible: "My app"
- tapOn: "My app"
- assertVisible: "Lessons"
- tapOn: "Lessons"
- tapOn: "Grade 1"
- tapOn: "Lesson 001"
- assertVisible: "Lesson 001"
Expand All @@ -48,5 +49,202 @@ onFlowComplete:
timeout: 1000
- assertVisible: "Hello World Lesson"
- tapOn: "Close"
- runFlow: "subflows/admin_add_class.yaml"
- tapOn: "Home"
- tapOn: "Playlists"
- assertVisible: "All"
- assertVisible: "School Playlists"
- assertVisible: "My Playlists"
- assertVisible: "No playlists yet"
- tapOn: "Playlist"
- assertVisible: "Add new"
- assertVisible: "Add from a link"
- tapOn:
text: "Add new"
- assertVisible:
id: "app_title"
text: "Add playlist"
- tapOn: "Save" # To test mandatory fields
- assertVisible: "Required field" #Title field is mandatory
- tapOn: "Title*"
- inputText: "Playlist - Grade 1"
- tapOn: "Description"
- inputText: "Test list"
#- tapOn: "Subject" # Need to Implement
#- tapOn: "English"
#- tapOn: "Grade"
#- tapOn: "Grade 1"
- tapOn: "Section"
- tapOn: "Section title"
- inputText: "Day 1"
- hideKeyboard
- tapOn:
id: "add_item"
- tapOn: "My app"
- tapOn: "Grade 1"
- tapOn: "Lesson 001"
- assertVisible:
id: "app_title"
text: "Add playlist"
- assertVisible: "Lesson 001"
- tapOn: "Save"
- assertVisible:
id: "app_title"
text: "Playlist - Grade 1"
- assertVisible: "Day 1"
- tapOn:
id: "expand_collapse_icon_"
- assertVisible: "Lesson 001"
- tapOn:
text: "Edit"
index: 1 # Edit button
- assertVisible:
id: "app_title"
text: "Edit playlist"
- tapOn: "Section"
- tapOn:
text: "Section title"
index: 1
- inputText: "Day 2"
- hideKeyboard
- tapOn: "Save"
- assertVisible:
id: "app_title"
text: "Playlist - Grade 1"
- tapOn: "Day 1"
- assertVisible: "Lesson 001"
- assertVisible: "Day 2"
- assertVisible:
id: "share_btn"
- assertVisible:
id: "copy_btn"
- assertVisible:
id: "assign_btn"
- assertVisible:
id: "delete_btn"
- tapOn: "Lesson 001"
- assertVisible: "Lesson 001"
- assertVisible: "App name"
- assertVisible: "Open"
- tapOn: "Home"
- tapOn: "Playlists"
- assertVisible: "Playlist - Grade 1"
- assertVisible: "2 sections, 1 items"
- assertVisible: "Created by: Admin"
- tapOn: "My Playlist"
- assertVisible: "Playlist - Grade 1"
- tapOn: "School Playlist"
- assertVisible: "No playlists yet"
- tapOn: "All"
- assertVisible: "Playlist - Grade 1"
- tapOn: "Playlist - Grade 1"
- assertVisible:
id: "app_title"
text: "Playlist - Grade 1"

# Assigning a playlist to a assignment
- tapOn:
id: "assign_btn"
- assertVisible:
id: "app_title"
text: "Add assignment"
- tapOn: "Name*"
- inputText: "Homework 1"
- tapOn: "Class"
- tapOn: "New Class"
- tapOn: "Date"
- runScript:
file: "scripts/setDate.js"
- inputText: ${output.futureDate}
- tapOn: "Time"
- runScript:
file: "scripts/setDate.js"
- inputText: ${output.currentTime}
- assertVisible: "Lesson 001"
- tapOn: "Save"
- assertVisible:
id: "app_title"
text: "Homework 1"
- assertVisible: "Lesson 001"
- tapOn: "Home"
- tapOn: "Playlists"
- tapOn: "Playlist - Grade 1"
- assertVisible:
id: "share_btn"
- assertVisible:
id: "app_title"
text: "Share"
- assertVisible: ${output.futureDate}playlist/uid
- tapOn: "Who can view"
- tapOn: "Anyone with the link"
- tapOn: "Who can edit"
- tapOn: "Teacher/admin in my school"
- assertVisible: "Share link"
- assertVisible: "Copy link"
- assertVisible: "Send link via SMS"
- assertVisible: "Send link via email"
- back
- tapOn:
id: "copy_btn"
- assertVisible: "Make a copy"
- assertVisible: "copy the Playlist - Grade 1"
- tapOn: "Copy"
- assertVisible:
id: "app_title"
text: "copy the Playlist - Grade 1"
- assertVisible: "Day 1"
- assertVisible: "Day 2"

# Adding playlist to an assignment
- tapOn: "Assignments"
- tapOn:
id: "floating_action_button" # +Assignment button
- assertVisible:
id: "app_title"
text: "Add assignment"
- tapOn: "Name*"
- inputText: "Homework 2"
- tapOn: "Class"
- tapOn: "New Class"
- tapOn: "Date"
- runScript:
file: "scripts/setDate.js"
- inputText: ${output.futureDate}
- tapOn: "Time"
- runScript:
file: "scripts/setDate.js"
- inputText: ${output.currentTime}
- tapOn: "Lesson/assessment"
- assertVisible:
id: "app_title"
text: "Add task to assignment"
- tapOn: "Playlists"
- tapOn: "copy the Playlist - Grade 1"
- assertVisible:
id: "app_title"
text: "copy the Playlist - Grade 1"
- assertVisible: "Select all"
- assertVisible: "Select none"
- tapOn: "Select all"
- assertVisible:
id: "check_box"
checked: true
- tapOn: "Select none"
- assertVisible:
id: "check_box"
checked: false
- tapOn:
id: "check_box"
index: 1
- tapOn: "Add 1 task to assignment"
- assertVisible:
id: "app_title"
text: "Add assignment"
- tapOn: "Save"
- assertVisible:
id: "app_title"
text: "Homework 2"
- assertVisible: "Lesson 001"
- back
- assertVisible: "Homework 2"

Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ onFlowComplete:
when:
visible: "Save password for Respect?"
file: "subflows/save_password_prompt_cancel.yaml"
- assertVisible: "Apps"
- assertVisible: "Home"
- tapOn: "Classes"
- assertVisible:
id: "app_title"
Expand All @@ -68,8 +68,6 @@ onFlowComplete:
file: "scripts/setDate.js"
- inputText: ${output.currentTime}
- tapOn: "Lesson/assessment"
- assertVisible:
id: "app_title"
- tapOn: "My app"
- tapOn: "Grade 1"
- tapOn: "Lesson 001"
Expand Down
3 changes: 2 additions & 1 deletion .maestro/flows/subflows/admin_add_app.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@ appId: world.respect.app
---
- assertVisible:
id: "app_title"
text: "Apps"
text: "Home"
- tapOn: "Apps"
- tapOn:
id: "floating_action_button"
- tapOn: "Add from Link"
Expand Down
5 changes: 3 additions & 2 deletions .maestro/flows/subflows/admin_add_app_and_teacher.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@ appId: world.respect.app
- runFlow: "school_admin_login_flow.yaml"
- assertVisible:
id: "app_title"
text: "Apps"
text: "Home"
- tapOn: "Apps"
- tapOn:
id: "floating_action_button"
- tapOn: "Add from Link"
Expand All @@ -16,7 +17,7 @@ appId: world.respect.app
id: "app_title"
text: "App detail"
- tapOn: "Add App"
- tapOn: "Apps"
- tapOn: "Home"
- assertVisible: "My app"

# Admin add new class
Expand Down
2 changes: 1 addition & 1 deletion .maestro/flows/subflows/school_admin_login_flow.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,4 @@ appId: world.respect.app
when:
visible: "Save password for Respect?"
file: "save_password_prompt_cancel.yaml"
- assertVisible: "Apps"

4 changes: 3 additions & 1 deletion gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,8 @@ androidx-preference = "1.2.1"
androidx-biometric = "1.4.0-alpha02"
buildconfig-plugin = "6.0.6"

qr-kit = "3.1.3"

[libraries]
argparse4j = { module = "net.sourceforge.argparse4j:argparse4j", version.ref = "argparse4j" }
coil-network-okhttp = { module = "io.coil-kt.coil3:coil-network-okhttp", version.ref = "coil3" }
Expand Down Expand Up @@ -171,7 +173,7 @@ acra-http = { module = "ch.acra:acra-http", version.ref = "acra" }
acra-core = { module = "ch.acra:acra-core", version.ref = "acra" }

reorderable = { module = "sh.calvin.reorderable:reorderable", version.ref = "reorderable" }

qr-kit = { module = "network.chaintech:qr-kit", version.ref = "qr-kit" }



Expand Down
1 change: 1 addition & 0 deletions respect-app-compose/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,7 @@ kotlin {
implementation(libs.kotlinx.io.core)
implementation(libs.androidx.paging.compose)
implementation(libs.reorderable)
implementation(libs.qr.kit)
implementation(libs.kscan)
implementation(libs.qrose)
}
Expand Down
6 changes: 1 addition & 5 deletions respect-app-compose/src/androidMain/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,14 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">


<uses-sdk
android:minSdkVersion="23"
android:targetSdkVersion="34"
tools:overrideLibrary="
org.ncgroup.kscan
" />
tools:overrideLibrary="org.qrcodeScanner, network.chaintech.cmpimagepickncrop, org.ncgroup.kscan" />

<uses-permission android:name="android.permission.INTERNET" />
<uses-feature android:name="android.hardware.camera"/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -105,4 +105,4 @@ abstract class AbstractAppActivity : AppCompatActivity() {
Napier.w("Exception handling link", e)
}
}
}
}
Loading