From 810d6ada023bb2f0754f88aa290f0aa1e8963f7d Mon Sep 17 00:00:00 2001 From: Carlos Mota <478962+cmota@users.noreply.github.com> Date: Thu, 21 May 2026 16:32:09 +0100 Subject: [PATCH] Added Chapter 02 Projects --- .../projects/final/Breeze/.gitignore | 19 + .../projects/final/Breeze/.idea/.gitignore | 3 + .../Breeze/.idea/AndroidProjectSystem.xml | 6 + .../final/Breeze/.idea/Breeze.iosApp.iml | 2 + .../Breeze/.idea/artifacts/composeApp_js.xml | 8 + .../Breeze/.idea/artifacts/composeApp_jvm.xml | 8 + .../.idea/artifacts/composeApp_wasm_js.xml | 8 + .../Breeze/.idea/caches/deviceStreaming.xml | 2205 +++++++++++++++++ .../projects/final/Breeze/.idea/compiler.xml | 6 + .../Breeze/.idea/deploymentTargetSelector.xml | 18 + .../final/Breeze/.idea/deviceManager.xml | 13 + .../projects/final/Breeze/.idea/gradle.xml | 19 + .../projects/final/Breeze/.idea/markdown.xml | 8 + .../final/Breeze/.idea/migrations.xml | 10 + .../projects/final/Breeze/.idea/misc.xml | 10 + .../projects/final/Breeze/.idea/receipt.json | 33 + .../final/Breeze/.idea/runConfigurations.xml | 17 + .../projects/final/Breeze/.idea/workspace.xml | 677 +++++ .../projects/final/Breeze/.idea/xcode.xml | 4 + .../projects/final/Breeze/README.md | 76 + .../projects/final/Breeze/build.gradle.kts | 10 + .../final/Breeze/composeApp/build.gradle.kts | 110 + .../src/androidMain/AndroidManifest.xml | 22 + .../kotlin/com/kodeco/breeze/MainActivity.kt | 25 + .../com/kodeco/breeze/Platform.android.kt | 9 + .../drawable-v24/ic_launcher_foreground.xml | 30 + .../res/drawable/ic_launcher_background.xml | 170 ++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3593 bytes .../res/mipmap-hdpi/ic_launcher_round.png | Bin 0 -> 5339 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2636 bytes .../res/mipmap-mdpi/ic_launcher_round.png | Bin 0 -> 3388 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 4926 bytes .../res/mipmap-xhdpi/ic_launcher_round.png | Bin 0 -> 7472 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 7909 bytes .../res/mipmap-xxhdpi/ic_launcher_round.png | Bin 0 -> 11873 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 10652 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.png | Bin 0 -> 16570 bytes .../src/androidMain/res/values/strings.xml | 3 + .../drawable/compose-multiplatform.xml | 44 + .../kotlin/com/kodeco/breeze/App.kt | 29 + .../kotlin/com/kodeco/breeze/Greeting.kt | 9 + .../kotlin/com/kodeco/breeze/Platform.kt | 7 + .../com/kodeco/breeze/model/AqiLevel.kt | 56 + .../kotlin/com/kodeco/breeze/model/City.kt | 10 + .../com/kodeco/breeze/model/StubCities.kt | 10 + .../kotlin/com/kodeco/breeze/ui/AqiCard.kt | 133 + .../com/kodeco/breeze/ui/AqiCardPreview.kt | 33 + .../kotlin/com/kodeco/breeze/ui/CityList.kt | 39 + .../com/kodeco/breeze/ComposeAppCommonTest.kt | 12 + .../com/kodeco/breeze/MainViewController.kt | 5 + .../kotlin/com/kodeco/breeze/Platform.ios.kt | 9 + .../kotlin/com/kodeco/breeze/Platform.js.kt | 7 + .../kotlin/com/kodeco/breeze/Platform.jvm.kt | 7 + .../jvmMain/kotlin/com/kodeco/breeze/main.kt | 14 + .../com/kodeco/breeze/Platform.wasmJs.kt | 7 + .../webMain/kotlin/com/kodeco/breeze/main.kt | 11 + .../src/webMain/resources/index.html | 20 + .../src/webMain/resources/styles.css | 7 + .../projects/final/Breeze/gradle.properties | 12 + .../final/Breeze/gradle/libs.versions.toml | 47 + .../Breeze/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 43764 bytes .../gradle/wrapper/gradle-wrapper.properties | 7 + .../projects/final/Breeze/gradlew | 251 ++ .../projects/final/Breeze/gradlew.bat | 94 + .../iosApp/Configuration/Config.xcconfig | 7 + .../iosApp/iosApp.xcodeproj/project.pbxproj | 373 +++ .../contents.xcworkspacedata | 7 + .../UserInterfaceState.xcuserstate | Bin 0 -> 11042 bytes .../xcschemes/xcschememanagement.plist | 5 + .../xcschemes/iosApp.xcscheme | 66 + .../xcschemes/xcschememanagement.plist | 14 + .../AccentColor.colorset/Contents.json | 11 + .../AppIcon.appiconset/Contents.json | 36 + .../AppIcon.appiconset/app-icon-1024.png | Bin 0 -> 67285 bytes .../iosApp/Assets.xcassets/Contents.json | 6 + .../Breeze/iosApp/iosApp/ContentView.swift | 21 + .../final/Breeze/iosApp/iosApp/Info.plist | 8 + .../Preview Assets.xcassets/Contents.json | 6 + .../final/Breeze/iosApp/iosApp/iOSApp.swift | 10 + .../Breeze/kotlin-js-store/wasm/yarn.lock | 8 + .../projects/final/Breeze/local.properties | 8 + .../projects/final/Breeze/settings.gradle.kts | 35 + .../projects/starter/Breeze/.gitignore | 19 + .../projects/starter/Breeze/README.md | 76 + .../projects/starter/Breeze/build.gradle.kts | 10 + .../Breeze/composeApp/build.gradle.kts | 109 + .../src/androidMain/AndroidManifest.xml | 22 + .../kotlin/com/kodeco/breeze/MainActivity.kt | 25 + .../com/kodeco/breeze/Platform.android.kt | 9 + .../drawable-v24/ic_launcher_foreground.xml | 30 + .../res/drawable/ic_launcher_background.xml | 170 ++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3593 bytes .../res/mipmap-hdpi/ic_launcher_round.png | Bin 0 -> 5339 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2636 bytes .../res/mipmap-mdpi/ic_launcher_round.png | Bin 0 -> 3388 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 4926 bytes .../res/mipmap-xhdpi/ic_launcher_round.png | Bin 0 -> 7472 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 7909 bytes .../res/mipmap-xxhdpi/ic_launcher_round.png | Bin 0 -> 11873 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 10652 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.png | Bin 0 -> 16570 bytes .../src/androidMain/res/values/strings.xml | 3 + .../drawable/compose-multiplatform.xml | 44 + .../kotlin/com/kodeco/breeze/App.kt | 49 + .../kotlin/com/kodeco/breeze/Greeting.kt | 9 + .../kotlin/com/kodeco/breeze/Platform.kt | 7 + .../com/kodeco/breeze/ComposeAppCommonTest.kt | 12 + .../com/kodeco/breeze/MainViewController.kt | 5 + .../kotlin/com/kodeco/breeze/Platform.ios.kt | 9 + .../kotlin/com/kodeco/breeze/Platform.js.kt | 7 + .../kotlin/com/kodeco/breeze/Platform.jvm.kt | 7 + .../jvmMain/kotlin/com/kodeco/breeze/main.kt | 13 + .../com/kodeco/breeze/Platform.wasmJs.kt | 7 + .../webMain/kotlin/com/kodeco/breeze/main.kt | 11 + .../src/webMain/resources/index.html | 20 + .../src/webMain/resources/styles.css | 7 + .../projects/starter/Breeze/gradle.properties | 12 + .../starter/Breeze/gradle/libs.versions.toml | 45 + .../Breeze/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 43764 bytes .../gradle/wrapper/gradle-wrapper.properties | 7 + .../projects/starter/Breeze/gradlew | 251 ++ .../projects/starter/Breeze/gradlew.bat | 94 + .../iosApp/Configuration/Config.xcconfig | 7 + .../iosApp/iosApp.xcodeproj/project.pbxproj | 373 +++ .../contents.xcworkspacedata | 7 + .../AccentColor.colorset/Contents.json | 11 + .../AppIcon.appiconset/Contents.json | 36 + .../AppIcon.appiconset/app-icon-1024.png | Bin 0 -> 67285 bytes .../iosApp/Assets.xcassets/Contents.json | 6 + .../Breeze/iosApp/iosApp/ContentView.swift | 21 + .../starter/Breeze/iosApp/iosApp/Info.plist | 8 + .../Preview Assets.xcassets/Contents.json | 6 + .../starter/Breeze/iosApp/iosApp/iOSApp.swift | 10 + .../starter/Breeze/settings.gradle.kts | 35 + 138 files changed, 6659 insertions(+) create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.gitignore create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/.gitignore create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/AndroidProjectSystem.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/Breeze.iosApp.iml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/artifacts/composeApp_js.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/artifacts/composeApp_jvm.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/artifacts/composeApp_wasm_js.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/caches/deviceStreaming.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/compiler.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/deploymentTargetSelector.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/deviceManager.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/gradle.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/markdown.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/migrations.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/misc.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/receipt.json create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/runConfigurations.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/workspace.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/.idea/xcode.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/README.md create mode 100644 02-building-a-shared-ui/projects/final/Breeze/build.gradle.kts create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/build.gradle.kts create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/AndroidManifest.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/kotlin/com/kodeco/breeze/MainActivity.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/kotlin/com/kodeco/breeze/Platform.android.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/drawable/ic_launcher_background.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/mipmap-hdpi/ic_launcher.png create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/mipmap-hdpi/ic_launcher_round.png create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/mipmap-mdpi/ic_launcher.png create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/mipmap-mdpi/ic_launcher_round.png create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/mipmap-xhdpi/ic_launcher.png create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/mipmap-xhdpi/ic_launcher_round.png create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/mipmap-xxhdpi/ic_launcher_round.png create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/mipmap-xxxhdpi/ic_launcher_round.png create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/androidMain/res/values/strings.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/commonMain/composeResources/drawable/compose-multiplatform.xml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/commonMain/kotlin/com/kodeco/breeze/App.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/commonMain/kotlin/com/kodeco/breeze/Greeting.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/commonMain/kotlin/com/kodeco/breeze/Platform.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/commonMain/kotlin/com/kodeco/breeze/model/AqiLevel.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/commonMain/kotlin/com/kodeco/breeze/model/City.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/commonMain/kotlin/com/kodeco/breeze/model/StubCities.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/commonMain/kotlin/com/kodeco/breeze/ui/AqiCard.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/commonMain/kotlin/com/kodeco/breeze/ui/AqiCardPreview.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/commonMain/kotlin/com/kodeco/breeze/ui/CityList.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/commonTest/kotlin/com/kodeco/breeze/ComposeAppCommonTest.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/iosMain/kotlin/com/kodeco/breeze/MainViewController.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/iosMain/kotlin/com/kodeco/breeze/Platform.ios.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/jsMain/kotlin/com/kodeco/breeze/Platform.js.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/jvmMain/kotlin/com/kodeco/breeze/Platform.jvm.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/jvmMain/kotlin/com/kodeco/breeze/main.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/wasmJsMain/kotlin/com/kodeco/breeze/Platform.wasmJs.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/webMain/kotlin/com/kodeco/breeze/main.kt create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/webMain/resources/index.html create mode 100644 02-building-a-shared-ui/projects/final/Breeze/composeApp/src/webMain/resources/styles.css create mode 100644 02-building-a-shared-ui/projects/final/Breeze/gradle.properties create mode 100644 02-building-a-shared-ui/projects/final/Breeze/gradle/libs.versions.toml create mode 100644 02-building-a-shared-ui/projects/final/Breeze/gradle/wrapper/gradle-wrapper.jar create mode 100644 02-building-a-shared-ui/projects/final/Breeze/gradle/wrapper/gradle-wrapper.properties create mode 100755 02-building-a-shared-ui/projects/final/Breeze/gradlew create mode 100644 02-building-a-shared-ui/projects/final/Breeze/gradlew.bat create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/Configuration/Config.xcconfig create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp.xcodeproj/project.pbxproj create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp.xcodeproj/project.xcworkspace/xcuserdata/carlosmota.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp.xcodeproj/project.xcworkspace/xcuserdata/carlosmota.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp.xcodeproj/xcuserdata/carlosmota.xcuserdatad/xcschemes/iosApp.xcscheme create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp.xcodeproj/xcuserdata/carlosmota.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp/Assets.xcassets/AccentColor.colorset/Contents.json create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp/Assets.xcassets/AppIcon.appiconset/app-icon-1024.png create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp/Assets.xcassets/Contents.json create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp/ContentView.swift create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp/Info.plist create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp/Preview Content/Preview Assets.xcassets/Contents.json create mode 100644 02-building-a-shared-ui/projects/final/Breeze/iosApp/iosApp/iOSApp.swift create mode 100644 02-building-a-shared-ui/projects/final/Breeze/kotlin-js-store/wasm/yarn.lock create mode 100644 02-building-a-shared-ui/projects/final/Breeze/local.properties create mode 100644 02-building-a-shared-ui/projects/final/Breeze/settings.gradle.kts create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/.gitignore create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/README.md create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/build.gradle.kts create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/build.gradle.kts create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/AndroidManifest.xml create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/kotlin/com/kodeco/breeze/MainActivity.kt create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/kotlin/com/kodeco/breeze/Platform.android.kt create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/drawable/ic_launcher_background.xml create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/mipmap-hdpi/ic_launcher.png create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/mipmap-hdpi/ic_launcher_round.png create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/mipmap-mdpi/ic_launcher.png create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/mipmap-mdpi/ic_launcher_round.png create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/mipmap-xhdpi/ic_launcher.png create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/mipmap-xhdpi/ic_launcher_round.png create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/mipmap-xxhdpi/ic_launcher_round.png create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/mipmap-xxxhdpi/ic_launcher_round.png create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/androidMain/res/values/strings.xml create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/commonMain/composeResources/drawable/compose-multiplatform.xml create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/commonMain/kotlin/com/kodeco/breeze/App.kt create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/commonMain/kotlin/com/kodeco/breeze/Greeting.kt create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/commonMain/kotlin/com/kodeco/breeze/Platform.kt create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/commonTest/kotlin/com/kodeco/breeze/ComposeAppCommonTest.kt create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/iosMain/kotlin/com/kodeco/breeze/MainViewController.kt create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/iosMain/kotlin/com/kodeco/breeze/Platform.ios.kt create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/jsMain/kotlin/com/kodeco/breeze/Platform.js.kt create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/jvmMain/kotlin/com/kodeco/breeze/Platform.jvm.kt create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/jvmMain/kotlin/com/kodeco/breeze/main.kt create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/wasmJsMain/kotlin/com/kodeco/breeze/Platform.wasmJs.kt create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/webMain/kotlin/com/kodeco/breeze/main.kt create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/webMain/resources/index.html create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/composeApp/src/webMain/resources/styles.css create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/gradle.properties create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/gradle/libs.versions.toml create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/gradle/wrapper/gradle-wrapper.jar create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/gradle/wrapper/gradle-wrapper.properties create mode 100755 02-building-a-shared-ui/projects/starter/Breeze/gradlew create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/gradlew.bat create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/iosApp/Configuration/Config.xcconfig create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/iosApp/iosApp.xcodeproj/project.pbxproj create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/iosApp/iosApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/iosApp/iosApp/Assets.xcassets/AccentColor.colorset/Contents.json create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/iosApp/iosApp/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/iosApp/iosApp/Assets.xcassets/AppIcon.appiconset/app-icon-1024.png create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/iosApp/iosApp/Assets.xcassets/Contents.json create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/iosApp/iosApp/ContentView.swift create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/iosApp/iosApp/Info.plist create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/iosApp/iosApp/Preview Content/Preview Assets.xcassets/Contents.json create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/iosApp/iosApp/iOSApp.swift create mode 100644 02-building-a-shared-ui/projects/starter/Breeze/settings.gradle.kts diff --git a/02-building-a-shared-ui/projects/final/Breeze/.gitignore b/02-building-a-shared-ui/projects/final/Breeze/.gitignore new file mode 100644 index 0000000..adfa9bf --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.gitignore @@ -0,0 +1,19 @@ +*.iml +.kotlin +.gradle +**/build/ +xcuserdata +!src/**/build/ +local.properties +.idea +.DS_Store +captures +.externalNativeBuild +.cxx +*.xcodeproj/* +!*.xcodeproj/project.pbxproj +!*.xcodeproj/xcshareddata/ +!*.xcodeproj/project.xcworkspace/ +!*.xcworkspace/contents.xcworkspacedata +**/xcshareddata/WorkspaceSettings.xcsettings +node_modules/ diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/.gitignore b/02-building-a-shared-ui/projects/final/Breeze/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/AndroidProjectSystem.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/AndroidProjectSystem.xml new file mode 100644 index 0000000..4a53bee --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/AndroidProjectSystem.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/Breeze.iosApp.iml b/02-building-a-shared-ui/projects/final/Breeze/.idea/Breeze.iosApp.iml new file mode 100644 index 0000000..1e29701 --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/Breeze.iosApp.iml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/artifacts/composeApp_js.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/artifacts/composeApp_js.xml new file mode 100644 index 0000000..47f0b1b --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/artifacts/composeApp_js.xml @@ -0,0 +1,8 @@ + + + $PROJECT_DIR$/composeApp/build/libs + + + + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/artifacts/composeApp_jvm.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/artifacts/composeApp_jvm.xml new file mode 100644 index 0000000..7a14e2b --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/artifacts/composeApp_jvm.xml @@ -0,0 +1,8 @@ + + + $PROJECT_DIR$/composeApp/build/libs + + + + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/artifacts/composeApp_wasm_js.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/artifacts/composeApp_wasm_js.xml new file mode 100644 index 0000000..e3e8b33 --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/artifacts/composeApp_wasm_js.xml @@ -0,0 +1,8 @@ + + + $PROJECT_DIR$/composeApp/build/libs + + + + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/caches/deviceStreaming.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/caches/deviceStreaming.xml new file mode 100644 index 0000000..6ff48f4 --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/caches/deviceStreaming.xml @@ -0,0 +1,2205 @@ + + + + + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/compiler.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/compiler.xml new file mode 100644 index 0000000..b86273d --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/compiler.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/deploymentTargetSelector.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/deploymentTargetSelector.xml new file mode 100644 index 0000000..24b3e08 --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/deploymentTargetSelector.xml @@ -0,0 +1,18 @@ + + + + + + + + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/deviceManager.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/deviceManager.xml new file mode 100644 index 0000000..91f9558 --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/deviceManager.xml @@ -0,0 +1,13 @@ + + + + + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/gradle.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/gradle.xml new file mode 100644 index 0000000..41d5b69 --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/gradle.xml @@ -0,0 +1,19 @@ + + + + + + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/markdown.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/markdown.xml new file mode 100644 index 0000000..c61ea33 --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/markdown.xml @@ -0,0 +1,8 @@ + + + + + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/migrations.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/migrations.xml new file mode 100644 index 0000000..f8051a6 --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/migrations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/misc.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/misc.xml new file mode 100644 index 0000000..a4f09e2 --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/misc.xml @@ -0,0 +1,10 @@ + + + + + + + + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/receipt.json b/02-building-a-shared-ui/projects/final/Breeze/.idea/receipt.json new file mode 100644 index 0000000..554779d --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/receipt.json @@ -0,0 +1,33 @@ +// Project generated by Kotlin Multiplatform Wizard +{ + "spec": { + "template_id": "kmt", + "targets": { + "android": { + "ui": [ + "compose" + ] + }, + "ios": { + "ui": [ + "compose" + ] + }, + "desktop": { + "ui": [ + "compose" + ] + }, + "web": { + "ui": [ + "compose" + ] + } + }, + "include_tests": true, + "android_project_spec": { + "min_android_sdk": 24 + } + }, + "timestamp": "2026-03-26T09:43:26.721589823Z" +} \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/runConfigurations.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/runConfigurations.xml new file mode 100644 index 0000000..16660f1 --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/runConfigurations.xml @@ -0,0 +1,17 @@ + + + + + + \ No newline at end of file diff --git a/02-building-a-shared-ui/projects/final/Breeze/.idea/workspace.xml b/02-building-a-shared-ui/projects/final/Breeze/.idea/workspace.xml new file mode 100644 index 0000000..6a1c436 --- /dev/null +++ b/02-building-a-shared-ui/projects/final/Breeze/.idea/workspace.xml @@ -0,0 +1,677 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +