Commit Graph
80 Commits
Author SHA1 Message Date
javier b3f0826122 Added the "reset()" method to the Reporting protocol in the Recording feature target to discard leftover Live Activities at launch and set a stale date on recording activities. 2026-07-06 23:05:24 +02:00
javier f443d434f2 Removed boilerplated widget source code from the Attendi widget target. 2026-07-06 22:03:49 +02:00
javier 0f889e22e4 Refined the Recording Live Activity presentation in the Attendi widget target. 2026-07-06 04:07:14 +02:00
javier a1a27a51c2 Updated the documentation of the README in the Xcode project. 2026-07-06 03:48:37 +02:00
javier 874de398d2 Implemented the (first version of the) Recording Live Activity in the Attendi widget target. 2026-07-06 03:43:25 +02:00
javier ffa80d3b58 Added a process command for recording processing on the RecordingCommand enum in the Commanding package target. 2026-07-06 03:34:21 +02:00
javier 380ffc39b3 Implemented the ActivityReporting service in the Sample app target to surface the recording flow in Live Activities. 2026-07-05 22:06:45 +02:00
javier cfe6b1b408 Added the recording flow reporting and command listening on the RecordingViewModel view model in the Recording package target. 2026-07-05 22:00:43 +02:00
javier d473504d75 Created the Commanding package target in the Features package for controlling the recording flow from Live Activities. 2026-07-05 21:58:20 +02:00
javier cbb5703751 Implemented the Persisting the selected locale across launches on the ContentView view in the Sample app target. 2026-07-05 21:04:29 +02:00
javier 58a6ec217f Reshuffle the position of the action buttons on the RecordingView view in the Recording package target. 2026-07-05 19:05:03 +02:00
javier 3ac5d527cd Created the Sample app widget target in the Xcode project. 2026-07-05 18:55:32 +02:00
javier d8e496ce51 Added the audio background mode to the Sample app target to continue recording audio when on background. 2026-07-05 17:16:13 +02:00
javier 0aaa257533 Updated the documentation on the README file in the project. 2026-07-05 17:03:24 +02:00
javier a0d83b7962 Added the app icon image to the AppIcon asset catalog in the Attendi app target. 2026-07-05 16:45:44 +02:00
javier f1e4b59809 Extracted the PreviewPreinstalling service in the Sample app target into its own file and declared it as development asset. 2026-07-05 16:29:28 +02:00
javier 83ac1cf4e4 Reformatted the tests for the Notifying package tests. 2026-07-05 16:21:30 +02:00
javier c2ac476257 Implemented the resumed interrupted recordings and allowed processing discards on the RecordingViewModel view model in the Recording package target. 2026-07-05 16:16:53 +02:00
javier 8576d6bac6 Restructured the Sample app target in the Xcode project and added its unit tests target as well. 2026-07-05 15:45:09 +02:00
javier 21d86cdc33 Made visual improvements to the RecordingView view in the Recording package target. 2026-07-05 14:30:48 +02:00
javier ee212cb6e3 Integrated the Notifier and the AssetPreinstalling to the ContentView view model in the Sample app target. 2026-07-05 13:43:49 +02:00
javier d22a8dda13 Implemented the AssetPreinstalling service in the Recording package target. 2026-07-05 13:37:04 +02:00
javier 59b0237638 Extracted the in-app notifications from the Sample app target into its own Notifying package target. 2026-07-05 13:33:07 +02:00
javier 6bcb88c944 Added accessibility support to in-app notifications on the ContentViewModel view model in the Sample app. 2026-07-05 13:06:43 +02:00
javier 6373fad0cd Implemented in-app download notifications on the ContentView view in the Sample app target. 2026-07-05 12:39:58 +02:00
javier 88262a7dee Implemented the NotificationLabelStyle label style in the Sample app target. 2026-07-05 11:54:05 +02:00
javier 480a0c80e1 Implemented the reinstallation of speech assets in a cancellable task with notifications on the ContentViewModel view model in the Sample app target. 2026-07-05 11:51:39 +02:00
javier 9949c94490 Extracted the error types in the Recording package target into the Errors folder. 2026-07-04 19:17:18 +02:00
javier beb4f7b4cc Updated the README file of the project. 2026-07-04 16:00:13 +02:00
javier b0c6e25639 Added a discard button and error handling to the RecordingView view in the Recording package target. 2026-07-04 15:59:30 +02:00
javier 7ec49264e6 Implemented the pre-installation of speech model assets for the selected locale for the ContentViewModel view model in the Sample app target. 2026-07-04 15:41:53 +02:00
javier 0ca948272b Surfaced recording flow errors to the user through an alert in the Recording package target. 2026-07-04 15:40:03 +02:00
javier 088c4c757e Added the "id" parameter to the initializer of the Transcription model in the Recording package target. 2026-07-04 15:37:36 +02:00
javier 1f1ac630f3 Improved the Capturing protocol in the Recording package target to capture interruptions and pause any active capture process. 2026-07-04 15:19:26 +02:00
javier 6a0e7698a5 Updated the Capturing procotol in the Recording package target to pass captured audio as a file URL instead of data. 2026-07-04 15:06:55 +02:00
javier 2fe240de1a Added default locale fallback when loading supported locales on the ContentViewModel view model in the Sample app target. 2026-07-04 14:58:14 +02:00
javier ed9d1e86fa Serialized the capturing service calls for the RecordingViewModel view model in the Recording package target. 2026-07-04 14:55:49 +02:00
javier 702333038c Move the recording side effects into the RecordingViewModel view model in the Recording package target. 2026-07-04 14:50:41 +02:00
javier 5e102f21e1 Fixed the size of the timer label for the ContentView view in the Sample app target. 2026-07-04 13:52:40 +02:00
javier be130eb05f Renamed the RecordingService protocol in the Recording package target as Capturing. 2026-07-04 13:41:56 +02:00
javier 69e30a9947 Improve the recording time with a monotonic clock to avoid timer drift on the RecordingViewModel view model in the Recording package target. 2026-07-04 13:25:15 +02:00
javier 3c542ee033 Implemented an unavailable view for empty transcriptions on the ContentView view in the Sample app target. 2026-07-04 13:23:42 +02:00
javier 0d0705c95a Added a toolbar locale picker to the ContentView view in the Sample app target. 2026-07-04 12:59:24 +02:00
javier 20cbda7b27 Propagated the Transcription type and locale binding through the RecordingView view and its view model in the Recording package target. 2026-07-04 12:11:24 +02:00
javier 68c070948e Made the transcribing callable and per-call for the transcribing protocol in the Recording package target. 2026-07-04 12:03:19 +02:00
javier 8b46c4e7d1 Implemented the Transcription model in the Recording package target. 2026-07-04 10:53:33 +02:00
javier d7dc32d7f7 Reorganized the Sample app target into folders and also, extracted the ContentViewModel view model from the ContentView view. 2026-07-04 10:32:59 +02:00
javier 2b62de5154 Added the "locale" parameter to the initializer for the AudioTranscribingService service in the Recording package target. 2026-07-04 10:15:18 +02:00
javier 9c366b98cb Adopted Liquid Glass effect for the buttons of the RecordingView view in the Recording package target. 2026-07-04 10:10:24 +02:00
javier a9eff33e3e Adopted Liquid Glass effect for the RecordingButtonStyle button style in the Recording package target. 2026-07-04 10:04:41 +02:00
javier aa9ec01611 Reorganized the Recording package target into folders. 2026-07-04 00:07:42 +02:00
javier fe08548b08 Presented transcribed recordings from the RecordingView view into the ContentView view in the Sample app target as a modal sheet. 2026-07-03 23:48:16 +02:00
javier f56ca3d8ff Added the "onTranscription" closure to the RecordingView view in the Recording package target. 2026-07-03 23:45:25 +02:00
javier d7d50492e6 Implemented the AudioTranscribingService service in the Sample app target. 2026-07-03 22:13:16 +02:00
javier 64f85277cb Configured microphone access and hardened runtime for the Sample app target in the Xcode project. 2026-07-03 22:01:54 +02:00
javier a02d5ce52f Implemented the AudioRecordingService service in the Sample app target. 2026-07-03 22:01:17 +02:00
javier 376be4940b Integrated the RecordingService and the TranscribingService protocols into the RecordingView view in the Recording package target. 2026-07-03 21:37:40 +02:00
javier 31b778a36e Defined the RecordingService and the TranscribingService protocols in the Recording package tracker. 2026-07-03 21:33:07 +02:00
javier cc82e4fbf2 Reordered the "invertStyle" property in the RecordingButtonStyle button style in the Recording package target for consistency. 2026-07-03 20:53:55 +02:00
javier 44a2036e71 Added a demo video of the sample app created for this assignment and linked it in the README.md file. 2026-07-03 20:45:06 +02:00
javier 4fd695c2cb Reset the elapsed seconds after processing for the RecordingViewModel view model in the Recording package target. 2026-07-03 20:30:37 +02:00
javier 851cedc54f Written the README.md file for the Xcode project. 2026-07-03 20:18:05 +02:00
javier 7c1281ec75 Integrated the RecordingView feature into the ContentView view in the Sample app target. 2026-07-03 20:05:11 +02:00
javier c980dfc0a5 Added the "Features" local package reference to the Attendi app target in the Xcode project. 2026-07-03 20:02:05 +02:00
javier f97dac8371 Added the "invertStyle" flag to the RecordingButtonStyle button style in the Recording package target. 2026-07-03 20:01:06 +02:00
javier a9dd4c9abe Implemented the scaling of the label and its padding to dynamic type for the RecordingButtonStyle button style in the Recording package target. 2026-07-03 19:42:32 +02:00
javier 7a3853db9e Set the template rendering intent for the icon image assets in the Recording package target. 2026-07-03 19:33:32 +02:00
javier 946fa76c63 Formatted the timer text for the RecordingView view in the Recording package target. 2026-07-03 19:21:37 +02:00
javier cad0a570ac Integrated the RecordingButtonStyle button style into the RecordingView view in. the Recording package target. 2026-07-03 19:20:04 +02:00
javier 2ae4306c3f Implemented the RecodingButtonStyle button style in the Recording package target. 2026-07-03 19:08:42 +02:00
javier 1487ecb3f4 Implemented the RecordingView view in the Recording package target. 2026-07-03 18:52:21 +02:00
javier 1fb8ece751 Implemented the RecordingViewModel view model in the Recording package target. 2026-07-03 18:49:30 +02:00
javier c4581116a8 Added the supported platforms to the Features package dependency. 2026-07-03 18:30:53 +02:00
javier 33c77c5c47 Added the icon assets for the buttons to Image catalog in the Recording package target. 2026-07-03 18:30:15 +02:00
javier c785bdb61c Removed the Git submodule from the Features package dependency. 2026-07-03 15:46:31 +02:00
javier f66cb559ff Added the assignment requirements to the Xcode project. 2026-07-03 15:37:53 +02:00
javier e402f62d77 Created the Features package dependency in the Xcode project. 2026-07-03 15:36:25 +02:00
javier 87b5b21a30 Added a Swift Format configuration for the Xcode project. 2026-07-03 15:22:14 +02:00
javier 9cd731e6fc Created the cross-platform Sample App target in the Xcode project. 2026-07-03 15:11:33 +02:00
javier 53ff7c5198 Initial Commit 2026-07-03 15:00:56 +02:00