From f5f4e6667ff7541b945060b6bce8df01ff9c6b52 Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 11:45:10 +0100 Subject: [PATCH 01/18] chore: add prettier baseline config and scripts --- .prettierignore | 11 +++++++++++ .prettierrc.json | 6 ++++++ package.json | 2 ++ 3 files changed, 19 insertions(+) create mode 100644 .prettierignore create mode 100644 .prettierrc.json diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 00000000..fd4bd1d3 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,11 @@ +node_modules/ +bun.lock + +# Expo / native generated artifacts +apps/example/.expo/ +apps/example/dist/ +apps/example/ios/Pods/ +apps/example/ios/build/ + +# Package build output +packages/react-native-device-activity/build/ diff --git a/.prettierrc.json b/.prettierrc.json new file mode 100644 index 00000000..3fccd987 --- /dev/null +++ b/.prettierrc.json @@ -0,0 +1,6 @@ +{ + "$schema": "https://json.schemastore.org/prettierrc", + "singleQuote": false, + "semi": true, + "trailingComma": "all" +} diff --git a/package.json b/package.json index 43f70bed..dbab7b7b 100644 --- a/package.json +++ b/package.json @@ -4,6 +4,8 @@ "private": true, "description": "Provides access to Apples DeviceActivity API", "scripts": { + "format": "prettier --write .", + "format:check": "prettier --check .", "lint": "eslint .", "pre-push": "bun run typecheck && bun run lint && apps/example/ios/Pods/SwiftLint/swiftlint lint --strict", "typecheck": "cd packages/react-native-device-activity && bun run typecheck && cd ../../apps/example && bun run typecheck", From 4962a2dee16f390711955c19311aa7aded7f1377 Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 12:01:35 +0100 Subject: [PATCH 02/18] style: format native event observer line break in iOS module --- .../ios/ReactNativeDeviceActivityModule.swift | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/react-native-device-activity/ios/ReactNativeDeviceActivityModule.swift b/packages/react-native-device-activity/ios/ReactNativeDeviceActivityModule.swift index 3fe03eb0..db032f0c 100644 --- a/packages/react-native-device-activity/ios/ReactNativeDeviceActivityModule.swift +++ b/packages/react-native-device-activity/ios/ReactNativeDeviceActivityModule.swift @@ -213,7 +213,8 @@ class NativeEventObserver { _: CFDictionary? ) in if let observer = observer, let name = name { - let nativeObserver = Unmanaged.fromOpaque(observer).takeUnretainedValue() + let nativeObserver = Unmanaged.fromOpaque(observer) + .takeUnretainedValue() guard let module = nativeObserver.module else { return } From 6c9e0fce9c161a1db26bdb42ac321f8f02fdf103 Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 12:01:52 +0100 Subject: [PATCH 03/18] chore: standardize local dev scripts on bun --- .husky/pre-push | 2 +- apps/example/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.husky/pre-push b/.husky/pre-push index fe2292f5..f7757de6 100644 --- a/.husky/pre-push +++ b/.husky/pre-push @@ -1 +1 @@ -npm run pre-push \ No newline at end of file +bun run pre-push diff --git a/apps/example/package.json b/apps/example/package.json index 61a61160..6d2e0ab0 100644 --- a/apps/example/package.json +++ b/apps/example/package.json @@ -9,7 +9,7 @@ "web": "INTERNALLY_TEST_EXAMPLE_PROJECT=true expo start --web", "bundle": "INTERNALLY_TEST_EXAMPLE_PROJECT=true expo export", "typecheck": "tsc --noEmit", - "prebuild": "rm -rf targets && COPY_TO_TARGET_FOLDER=true INTERNALLY_TEST_EXAMPLE_PROJECT=true npx expo prebuild --platform=ios --clean" + "prebuild": "rm -rf targets && COPY_TO_TARGET_FOLDER=true INTERNALLY_TEST_EXAMPLE_PROJECT=true bunx expo prebuild --platform=ios --clean" }, "dependencies": { "expo": "52", From 0be74612aff48d6c8fd4f2d2def6083da62a3f98 Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 12:02:30 +0100 Subject: [PATCH 04/18] chore: fix stale example paths after apps migration --- .github/workflows/test.yml | 8 ++++---- .gitignore | 4 ++-- .npmignore | 4 ++-- README.md | 2 +- packages/react-native-device-activity/package.json | 4 ++-- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 15d9e40b..0841e4bd 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -114,8 +114,8 @@ jobs: - uses: actions/cache@v4 with: - path: example/ios/Pods - key: ${{ runner.os }}-pods-${{ hashFiles('example/ios/Podfile.lock') }} + path: apps/example/ios/Pods + key: ${{ runner.os }}-pods-${{ hashFiles('apps/example/ios/Podfile.lock') }} restore-keys: | ${{ runner.os }}-pods- @@ -149,8 +149,8 @@ jobs: - uses: actions/cache@v4 with: - path: example/ios/Pods - key: ${{ runner.os }}-pods-${{ hashFiles('example/ios/Podfile.lock') }} + path: apps/example/ios/Pods + key: ${{ runner.os }}-pods-${{ hashFiles('apps/example/ios/Podfile.lock') }} restore-keys: | ${{ runner.os }}-pods- diff --git a/.gitignore b/.gitignore index 895b5cc7..a193638b 100644 --- a/.gitignore +++ b/.gitignore @@ -38,10 +38,10 @@ android.iml # Cocoapods # -example/ios/Pods +apps/example/ios/Pods # Ruby -example/vendor/ +apps/example/vendor/ # node.js # diff --git a/.npmignore b/.npmignore index 88749731..f16cb065 100644 --- a/.npmignore +++ b/.npmignore @@ -8,7 +8,7 @@ __tests__ /android/src/androidTest/ /android/src/test/ /android/build/ -/example/ +/apps/example/ # Test files *.test.ts @@ -18,4 +18,4 @@ __tests__ __tests__/ # seems like something is causing example to get installed recursively (bun bug?) -example \ No newline at end of file +apps/example diff --git a/README.md b/README.md index c3fe88ef..ee6175ca 100644 --- a/README.md +++ b/README.md @@ -542,7 +542,7 @@ const AppBlocker = () => { 4. **Action Configuration**: Defines what happens when the scheduled interval starts/ends. 5. **Scheduling**: Sets up when blocking should occur (e.g., evenings from 7 PM to midnight). -For a complete implementation, see the [example app](https://github.com/Kingstinct/react-native-device-activity/tree/main/example). +For a complete implementation, see the [example app](https://github.com/Kingstinct/react-native-device-activity/tree/main/apps/example). ## API Reference (the list is not exhaustive yet please refer to the TypeScript types for the full list) diff --git a/packages/react-native-device-activity/package.json b/packages/react-native-device-activity/package.json index 48b40909..7d370b18 100644 --- a/packages/react-native-device-activity/package.json +++ b/packages/react-native-device-activity/package.json @@ -12,8 +12,8 @@ "test": "expo-module test", "prepublishOnly": "expo-module prepublishOnly && tsc && cp ../../README.md ./README.md", "expo-module": "expo-module", - "open:ios": "xed example/ios", - "open:android": "open -a \"Android Studio\" example/android" + "open:ios": "xed apps/example/ios", + "open:android": "open -a \"Android Studio\" apps/example/android" }, "keywords": [ "react-native", From 51f5ea5b3197afa68f0f07704a6b78bc88127afc Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 12:24:35 +0100 Subject: [PATCH 05/18] chore(format): apply prettier baseline and align formatting outputs --- .eslintrc.js | 4 +- .github/workflows/npm-publish.yml | 22 ++++---- .github/workflows/pr.yml | 6 +-- .swiftlint.yml | 6 +-- .vscode/extensions.json | 7 +-- .vscode/launch.json | 2 +- .vscode/settings.json | 6 +-- README.md | 51 +++++++++++-------- apps/example/app.json | 24 +++++---- apps/example/babel.config.js | 2 +- apps/example/components/CreateActivity.tsx | 4 +- .../AppIcon.appiconset/Contents.json | 2 +- .../Images.xcassets/Contents.json | 6 +-- .../SplashScreen.imageset/Contents.json | 2 +- .../Contents.json | 2 +- .../kingstinct.imageset/Contents.json | 2 +- apps/example/screens/AllTheThings.tsx | 4 +- apps/example/screens/SimpleTab.tsx | 4 +- apps/example/tsconfig.json | 8 ++- bun.lock | 17 +++---- package.json | 4 +- .../expo-module.config.json | 5 +- 22 files changed, 101 insertions(+), 89 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index 45cf2c1e..8e39d62a 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,5 +1,5 @@ module.exports = { root: true, - extends: ['universe/native', 'universe/web'], - ignorePatterns: ['build'], + extends: ["universe/native", "universe/web"], + ignorePatterns: ["build"], }; diff --git a/.github/workflows/npm-publish.yml b/.github/workflows/npm-publish.yml index bd75af08..a54fbf28 100644 --- a/.github/workflows/npm-publish.yml +++ b/.github/workflows/npm-publish.yml @@ -8,33 +8,33 @@ on: workflow_dispatch: inputs: description: - description: 'Description' + description: "Description" required: false type: string release_type: - description: 'Release Type' + description: "Release Type" required: true - default: 'patch' + default: "patch" type: choice options: - - 'patch' - - 'minor' - - 'major' + - "patch" + - "minor" + - "major" jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - + - uses: oven-sh/setup-bun@v2 with: bun-version: latest - run: bun install - + - run: bun lint - + - run: bun typecheck publish-to-npm: @@ -42,7 +42,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - + - uses: actions/setup-node@v4 - uses: oven-sh/setup-bun@v2 @@ -90,4 +90,4 @@ jobs: with: name: ${{ env.versionTag }} ${{ github.event.inputs.description }} tag_name: ${{ env.versionTag }} - generate_release_notes: true \ No newline at end of file + generate_release_notes: true diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index b84743fd..359cabb3 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -9,7 +9,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - + - uses: oven-sh/setup-bun@v2 with: bun-version: latest @@ -21,6 +21,6 @@ jobs: cd packages/react-native-device-activity bun run build bun run prepublishOnly - + - name: Publish preview - run: bunx pkg-pr-new@latest publish './packages/*' \ No newline at end of file + run: bunx pkg-pr-new@latest publish './packages/*' diff --git a/.swiftlint.yml b/.swiftlint.yml index 13a0a142..182ab684 100644 --- a/.swiftlint.yml +++ b/.swiftlint.yml @@ -12,6 +12,6 @@ disabled_rules: - inclusive_language included: -- packages/react-native-device-activity/ios -- apps/example/ios -- packages/react-native-device-activity/targets \ No newline at end of file + - packages/react-native-device-activity/ios + - apps/example/ios + - packages/react-native-device-activity/targets diff --git a/.vscode/extensions.json b/.vscode/extensions.json index e6d68f07..a072e50d 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,6 +1,3 @@ { - "recommendations": [ - "vknabel.vscode-swiftlint", - "swiftlang.swift-vscode" - ], -} \ No newline at end of file + "recommendations": ["vknabel.vscode-swiftlint", "swiftlang.swift-vscode"] +} diff --git a/.vscode/launch.json b/.vscode/launch.json index 5f17df8c..69cb3d94 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -10,4 +10,4 @@ "android": {} } ] -} \ No newline at end of file +} diff --git a/.vscode/settings.json b/.vscode/settings.json index 85ea4c62..7274f9b9 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,7 +1,5 @@ { - "cSpell.words": [ - "Triggerable" - ], + "cSpell.words": ["Triggerable"], "swiftlint.path": "apps/example/ios/Pods/SwiftLint/swiftlint", "swift.SDK": "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS18.2.sdk" -} \ No newline at end of file +} diff --git a/README.md b/README.md index ee6175ca..1508aa96 100644 --- a/README.md +++ b/README.md @@ -196,7 +196,6 @@ Here's another example that focuses on tracking app usage with time thresholds: import * as ReactNativeDeviceActivity from "react-native-device-activity"; ReactNativeDeviceActivity.revokeAuthorization(); - ``` ### Select Apps to track @@ -381,9 +380,9 @@ ReactNativeDeviceActivity.updateShield( This example shows how to implement a complete app blocking system on a given interval. The main principle is that you're configuring these apps to be blocked with FamilyControl API and then schedule when the shield should be shown with ActivityMonitor API. You're customizing the shield UI and actions with ShieldConfiguration and ShieldAction APIs. ```typescript -import { useEffect, useState } from 'react'; -import { Alert, View, Button } from 'react-native'; -import * as ReactNativeDeviceActivity from 'react-native-device-activity'; +import { useEffect, useState } from "react"; +import { Alert, View, Button } from "react-native"; +import * as ReactNativeDeviceActivity from "react-native-device-activity"; // Constants for identifying your selections, shields and scheduled activities const SELECTION_ID = "evening_block_selection"; @@ -407,7 +406,9 @@ const AppBlocker = () => { // Step 3: Handle selection changes from the native selection UI const handleSelectionChange = (event) => { // The selection is a serialized string containing the user's app selections - setCurrentFamilyActivitySelection(event.nativeEvent.familyActivitySelection); + setCurrentFamilyActivitySelection( + event.nativeEvent.familyActivitySelection, + ); }; // Step 4: Save the selection for use by the extension @@ -420,7 +421,7 @@ const AppBlocker = () => { // Store the selection with a consistent ID so the extension can access it ReactNativeDeviceActivity.setFamilyActivitySelectionId({ id: SELECTION_ID, - familyActivitySelection: currentFamilyActivitySelection + familyActivitySelection: currentFamilyActivitySelection, }); // Now configure the blocking schedule @@ -434,14 +435,14 @@ const AppBlocker = () => { title: "App Blocked", subtitle: "This app is currently unavailable", primaryButtonLabel: "OK", - iconSystemName: "moon.stars.fill" // SF Symbols icon name + iconSystemName: "moon.stars.fill", // SF Symbols icon name }; // Define what happens when users interact with the shield const shieldActions = { primary: { - behavior: "close" // Just close the shield when OK is tapped - } + behavior: "close", // Just close the shield when OK is tapped + }, }; // Apply the shield configuration @@ -451,21 +452,25 @@ const AppBlocker = () => { ReactNativeDeviceActivity.configureActions({ activityName: ACTIVITY_NAME, callbackName: "intervalDidStart", // Called when the scheduled time begins - actions: [{ - type: "blockSelection", - familyActivitySelectionId: SELECTION_ID, // The stored selection ID - shieldId: SHIELD_CONFIG_ID // The shield to show when blocked - }] + actions: [ + { + type: "blockSelection", + familyActivitySelectionId: SELECTION_ID, // The stored selection ID + shieldId: SHIELD_CONFIG_ID, // The shield to show when blocked + }, + ], }); // Configure what happens when the scheduled interval ends ReactNativeDeviceActivity.configureActions({ activityName: ACTIVITY_NAME, callbackName: "intervalDidEnd", // Called when the scheduled time ends - actions: [{ - type: "unblockSelection", - familyActivitySelectionId: SELECTION_ID // Unblock the same selection - }] + actions: [ + { + type: "unblockSelection", + familyActivitySelectionId: SELECTION_ID, // Unblock the same selection + }, + ], }); // Start the monitoring schedule @@ -479,7 +484,7 @@ const AppBlocker = () => { const schedule = { intervalStart: { hour: 19, minute: 0 }, // 7:00 PM intervalEnd: { hour: 23, minute: 59 }, // 11:59 PM - repeats: true // Repeat this schedule daily + repeats: true, // Repeat this schedule daily // Optional: warningTime: { minutes: 5 } // Warn user 5 minutes before blocking starts }; @@ -491,7 +496,9 @@ const AppBlocker = () => { second: (new Date().getSeconds() + 10) % 60, // +10 seconds from now }, intervalEnd: { - hour: new Date().getHours() + Math.floor((new Date().getMinutes() + 5) / 60), + hour: + new Date().getHours() + + Math.floor((new Date().getMinutes() + 5) / 60), minute: (new Date().getMinutes() + 5) % 60, // +5 minutes from start }, repeats: false, // One-time test @@ -502,7 +509,7 @@ const AppBlocker = () => { await ReactNativeDeviceActivity.startMonitoring( ACTIVITY_NAME, schedule, // Use testSchedule for testing - [] + [], ); Alert.alert("Success", "Blocking schedule has been set up!"); @@ -520,7 +527,7 @@ const AppBlocker = () => { familyActivitySelection={currentFamilyActivitySelection} style={{ width: "100%", - flex: 1 + flex: 1, }} /> diff --git a/apps/example/app.json b/apps/example/app.json index a5cb611e..56c5f085 100644 --- a/apps/example/app.json +++ b/apps/example/app.json @@ -18,15 +18,13 @@ "supportsTablet": true, "bundleIdentifier": "expo.modules.deviceactivity.example" }, - "assetBundlePatterns": [ - "assets/*" - ], + "assetBundlePatterns": ["assets/*"], "android": { - "package": "expo.modules.deviceactivity.example", + "package": "expo.modules.deviceactivity.example" }, "web": { "favicon": "./assets/favicon.png" - }, + }, "plugins": [ [ "expo-build-properties", @@ -36,7 +34,7 @@ } } ], - + [ "expo-asset", { @@ -62,7 +60,9 @@ "bundleIdentifier": "expo.modules.deviceactivity.example.ActivityMonitorExtension", "entitlements": { "com.apple.developer.family-controls": true, - "com.apple.security.application-groups": ["group.ActivityMonitor"] + "com.apple.security.application-groups": [ + "group.ActivityMonitor" + ] } }, { @@ -70,7 +70,9 @@ "bundleIdentifier": "expo.modules.deviceactivity.example.ShieldConfiguration", "entitlements": { "com.apple.developer.family-controls": true, - "com.apple.security.application-groups": ["group.ActivityMonitor"] + "com.apple.security.application-groups": [ + "group.ActivityMonitor" + ] } }, { @@ -78,7 +80,9 @@ "bundleIdentifier": "expo.modules.deviceactivity.example.ShieldAction", "entitlements": { "com.apple.developer.family-controls": true, - "com.apple.security.application-groups": ["group.ActivityMonitor"] + "com.apple.security.application-groups": [ + "group.ActivityMonitor" + ] } } ] @@ -88,4 +92,4 @@ } } } -} \ No newline at end of file +} diff --git a/apps/example/babel.config.js b/apps/example/babel.config.js index 9d89e131..73ebf58e 100644 --- a/apps/example/babel.config.js +++ b/apps/example/babel.config.js @@ -1,6 +1,6 @@ module.exports = function (api) { api.cache(true); return { - presets: ['babel-preset-expo'], + presets: ["babel-preset-expo"], }; }; diff --git a/apps/example/components/CreateActivity.tsx b/apps/example/components/CreateActivity.tsx index a91e70ec..a6339e74 100644 --- a/apps/example/components/CreateActivity.tsx +++ b/apps/example/components/CreateActivity.tsx @@ -219,8 +219,8 @@ export const CreateActivity = ({ onDismiss }: { onDismiss: () => void }) => { familyActivitySelectionResult?.categoryCount < 13 ? `${familyActivitySelectionResult?.applicationCount} apps, ${familyActivitySelectionResult?.categoryCount} categories, ${familyActivitySelectionResult?.webDomainCount} domains` : familyActivitySelectionResult?.categoryCount - ? "All categories selected" - : "Nothing selected"} + ? "All categories selected" + : "Nothing selected"} diff --git a/apps/example/screens/SimpleTab.tsx b/apps/example/screens/SimpleTab.tsx index 278a68f3..7ba00172 100644 --- a/apps/example/screens/SimpleTab.tsx +++ b/apps/example/screens/SimpleTab.tsx @@ -96,8 +96,8 @@ export function SimpleTab() { {authorizationStatus === AuthorizationStatus.approved ? "✅ " : authorizationStatus === AuthorizationStatus.denied - ? "❌ " - : "❓ "} + ? "❌ " + : "❓ "} {authorizationStatusMap[authorizationStatus]} diff --git a/apps/example/tsconfig.json b/apps/example/tsconfig.json index f8849b7d..1c678535 100644 --- a/apps/example/tsconfig.json +++ b/apps/example/tsconfig.json @@ -4,8 +4,12 @@ "strict": true, "allowJs": true, "paths": { - "react-native-device-activity": ["../../packages/react-native-device-activity/src/index"], - "react-native-device-activity/*": ["../../packages/react-native-device-activity/*"] + "react-native-device-activity": [ + "../../packages/react-native-device-activity/src/index" + ], + "react-native-device-activity/*": [ + "../../packages/react-native-device-activity/*" + ] } } } diff --git a/bun.lock b/bun.lock index 09bd807d..e27513eb 100644 --- a/bun.lock +++ b/bun.lock @@ -1,12 +1,13 @@ { "lockfileVersion": 1, + "configVersion": 0, "workspaces": { "": { "name": "react-native-device-activity", "devDependencies": { - "eslint": "8", + "eslint": "^8.57.1", "husky": "^9.1.7", - "prettier": "^3.3.3", + "prettier": "^3.8.1", }, }, "apps/example": { @@ -33,7 +34,7 @@ }, "packages/react-native-device-activity": { "name": "react-native-device-activity", - "version": "0.4.20", + "version": "0.5.3", "dependencies": { "@bacons/xcode": "^1.0.0-alpha.24", "@expo/plist": "^0.1.3", @@ -855,7 +856,7 @@ "command-exists": ["command-exists@1.2.9", "", {}, "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w=="], - "commander": ["commander@12.1.0", "", {}, "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA=="], + "commander": ["commander@2.20.3", "", {}, "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="], "commondir": ["commondir@1.0.1", "", {}, "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg=="], @@ -1743,7 +1744,7 @@ "prelude-ls": ["prelude-ls@1.2.1", "", {}, "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g=="], - "prettier": ["prettier@3.4.2", "", { "bin": { "prettier": "bin/prettier.cjs" } }, "sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ=="], + "prettier": ["prettier@3.8.1", "", { "bin": { "prettier": "bin/prettier.cjs" } }, "sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg=="], "prettier-linter-helpers": ["prettier-linter-helpers@1.0.0", "", { "dependencies": { "fast-diff": "^1.1.2" } }, "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w=="], @@ -2425,8 +2426,6 @@ "expo-module-scripts/babel-preset-expo": ["babel-preset-expo@11.0.15", "", { "dependencies": { "@babel/plugin-proposal-decorators": "^7.12.9", "@babel/plugin-transform-export-namespace-from": "^7.22.11", "@babel/plugin-transform-object-rest-spread": "^7.12.13", "@babel/plugin-transform-parameters": "^7.22.15", "@babel/preset-react": "^7.22.15", "@babel/preset-typescript": "^7.23.0", "@react-native/babel-preset": "0.74.87", "babel-plugin-react-compiler": "0.0.0-experimental-592953e-20240517", "babel-plugin-react-native-web": "~0.19.10", "react-refresh": "^0.14.2" } }, "sha512-rgiMTYwqIPULaO7iZdqyL7aAff9QLOX6OWUtLZBlOrOTreGY1yHah/5+l8MvI6NVc/8Zj5LY4Y5uMSnJIuzTLw=="], - "expo-module-scripts/commander": ["commander@2.20.3", "", {}, "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="], - "expo-module-scripts/typescript": ["typescript@5.7.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw=="], "expo-modules-autolinking/commander": ["commander@7.2.0", "", {}, "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw=="], @@ -2547,6 +2546,8 @@ "react-devtools-core/ws": ["ws@7.5.10", "", { "peerDependencies": { "bufferutil": "^4.0.1", "utf-8-validate": "^5.0.2" }, "optionalPeers": ["bufferutil", "utf-8-validate"] }, "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ=="], + "react-native/commander": ["commander@12.1.0", "", {}, "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA=="], + "react-native-vector-icons/yargs": ["yargs@16.2.0", "", { "dependencies": { "cliui": "^7.0.2", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", "string-width": "^4.2.0", "y18n": "^5.0.5", "yargs-parser": "^20.2.2" } }, "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw=="], "react-test-renderer/scheduler": ["scheduler@0.23.2", "", { "dependencies": { "loose-envify": "^1.1.0" } }, "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ=="], @@ -2599,8 +2600,6 @@ "terminal-link/ansi-escapes": ["ansi-escapes@4.3.2", "", { "dependencies": { "type-fest": "^0.21.3" } }, "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ=="], - "terser/commander": ["commander@2.20.3", "", {}, "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="], - "tinyglobby/picomatch": ["picomatch@4.0.2", "", {}, "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg=="], "tough-cookie/universalify": ["universalify@0.2.0", "", {}, "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg=="], diff --git a/package.json b/package.json index dbab7b7b..cc5adffd 100644 --- a/package.json +++ b/package.json @@ -33,8 +33,8 @@ "license": "MIT", "homepage": "https://github.com/kingstinct/react-native-device-activity#readme", "devDependencies": { - "eslint": "8", + "eslint": "^8.57.1", "husky": "^9.1.7", - "prettier": "^3.3.3" + "prettier": "^3.8.1" } } diff --git a/packages/react-native-device-activity/expo-module.config.json b/packages/react-native-device-activity/expo-module.config.json index aadad61f..ca8942bb 100644 --- a/packages/react-native-device-activity/expo-module.config.json +++ b/packages/react-native-device-activity/expo-module.config.json @@ -1,6 +1,9 @@ { "platforms": ["ios"], "ios": { - "modules": ["ReactNativeDeviceActivityModule", "ReactNativeDeviceActivityViewPersistedModule"] + "modules": [ + "ReactNativeDeviceActivityModule", + "ReactNativeDeviceActivityViewPersistedModule" + ] } } From e3506e9647dee00588cb20cee0a757fcd136cc63 Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 12:25:45 +0100 Subject: [PATCH 06/18] chore: fix lint warnings in example screens --- apps/example/components/CreateActivity.tsx | 6 +++--- apps/example/screens/AllTheThings.tsx | 2 -- apps/example/screens/SimpleTab.tsx | 4 ++-- apps/example/screens/WhiteList.tsx | 3 +-- 4 files changed, 6 insertions(+), 9 deletions(-) diff --git a/apps/example/components/CreateActivity.tsx b/apps/example/components/CreateActivity.tsx index a6339e74..9aa94ddb 100644 --- a/apps/example/components/CreateActivity.tsx +++ b/apps/example/components/CreateActivity.tsx @@ -219,8 +219,8 @@ export const CreateActivity = ({ onDismiss }: { onDismiss: () => void }) => { familyActivitySelectionResult?.categoryCount < 13 ? `${familyActivitySelectionResult?.applicationCount} apps, ${familyActivitySelectionResult?.categoryCount} categories, ${familyActivitySelectionResult?.webDomainCount} domains` : familyActivitySelectionResult?.categoryCount - ? "All categories selected" - : "Nothing selected"} + ? "All categories selected" + : "Nothing selected"} void }) => { mode="contained" disabled={!familyActivitySelectionResult || !activityName} onPress={() => { - void startMonitoring( + startMonitoring( familyActivitySelectionResult?.familyActivitySelection ?? "", activityName, ); diff --git a/apps/example/screens/AllTheThings.tsx b/apps/example/screens/AllTheThings.tsx index 7e73ec4d..0b034a3a 100644 --- a/apps/example/screens/AllTheThings.tsx +++ b/apps/example/screens/AllTheThings.tsx @@ -24,8 +24,6 @@ import { ActivityPickerPersisted } from "../components/ActivityPicker"; // const initialMinutes = 1; // const postponeMinutes = 60; -const trackEveryXMinutes = 1; - const selectionId = "some-id-3"; export function requestPermissionsAsync() { diff --git a/apps/example/screens/SimpleTab.tsx b/apps/example/screens/SimpleTab.tsx index 7ba00172..278a68f3 100644 --- a/apps/example/screens/SimpleTab.tsx +++ b/apps/example/screens/SimpleTab.tsx @@ -96,8 +96,8 @@ export function SimpleTab() { {authorizationStatus === AuthorizationStatus.approved ? "✅ " : authorizationStatus === AuthorizationStatus.denied - ? "❌ " - : "❓ "} + ? "❌ " + : "❓ "} {authorizationStatusMap[authorizationStatus]} diff --git a/apps/example/screens/WhiteList.tsx b/apps/example/screens/WhiteList.tsx index 49ece77d..20d70086 100644 --- a/apps/example/screens/WhiteList.tsx +++ b/apps/example/screens/WhiteList.tsx @@ -1,4 +1,4 @@ -import React, { useCallback, useEffect, useMemo, useState } from "react"; +import React, { useCallback, useEffect, useState } from "react"; import { NativeSyntheticEvent, ScrollView, @@ -12,7 +12,6 @@ import { activitySelectionMetadata, disableBlockAllMode, enableBlockAllMode, - clearWhitelistAndUpdateBlock, addSelectionToWhitelistAndUpdateBlock, ActivitySelectionMetadata, resetBlocks, From 67a7ce70a4875328cf065d8e241149cb6ff5478b Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 13:17:40 +0100 Subject: [PATCH 07/18] chore(devx): move iOS tests to package harness and switch example to env-driven CNG --- .github/workflows/test.yml | 24 +- .gitignore | 4 + .husky/pre-commit | 5 +- .swiftlint.yml | 9 +- CONTRIBUTING.md | 62 +++- README.md | 17 + apps/example/.env.example | 4 + apps/example/android/.gitignore | 16 - apps/example/android/app/build.gradle | 201 ----------- apps/example/android/app/debug.keystore | Bin 2257 -> 0 bytes apps/example/android/app/proguard-rules.pro | 14 - .../android/app/src/debug/AndroidManifest.xml | 7 - .../android/app/src/main/AndroidManifest.xml | 33 -- .../deviceactivity/example/MainActivity.kt | 61 ---- .../deviceactivity/example/MainApplication.kt | 55 --- .../res/drawable-hdpi/splashscreen_image.png | Bin 59836 -> 0 bytes .../res/drawable-mdpi/splashscreen_image.png | Bin 59836 -> 0 bytes .../res/drawable-xhdpi/splashscreen_image.png | Bin 59836 -> 0 bytes .../drawable-xxhdpi/splashscreen_image.png | Bin 59836 -> 0 bytes .../drawable-xxxhdpi/splashscreen_image.png | Bin 59836 -> 0 bytes .../app/src/main/res/drawable/kingstinct.png | Bin 25006 -> 0 bytes .../res/drawable/rn_edit_text_material.xml | 37 -- .../src/main/res/drawable/splashscreen.xml | 3 - .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 - .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 - .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 8377 -> 0 bytes .../mipmap-hdpi/ic_launcher_foreground.png | Bin 8031 -> 0 bytes .../res/mipmap-hdpi/ic_launcher_round.png | Bin 10372 -> 0 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 5199 -> 0 bytes .../mipmap-mdpi/ic_launcher_foreground.png | Bin 5079 -> 0 bytes .../res/mipmap-mdpi/ic_launcher_round.png | Bin 6526 -> 0 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 11624 -> 0 bytes .../mipmap-xhdpi/ic_launcher_foreground.png | Bin 11145 -> 0 bytes .../res/mipmap-xhdpi/ic_launcher_round.png | Bin 14257 -> 0 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 18266 -> 0 bytes .../mipmap-xxhdpi/ic_launcher_foreground.png | Bin 18064 -> 0 bytes .../res/mipmap-xxhdpi/ic_launcher_round.png | Bin 22474 -> 0 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 25203 -> 0 bytes .../mipmap-xxxhdpi/ic_launcher_foreground.png | Bin 25030 -> 0 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.png | Bin 30705 -> 0 bytes .../app/src/main/res/values-night/colors.xml | 1 - .../app/src/main/res/values/colors.xml | 6 - .../app/src/main/res/values/strings.xml | 5 - .../app/src/main/res/values/styles.xml | 17 - apps/example/android/build.gradle | 41 --- apps/example/android/gradle.properties | 61 ---- .../android/gradle/wrapper/gradle-wrapper.jar | Bin 43453 -> 0 bytes .../gradle/wrapper/gradle-wrapper.properties | 7 - apps/example/android/gradlew | 249 -------------- apps/example/android/gradlew.bat | 92 ----- .../react-settings-plugin/build.gradle.kts | 19 -- .../expo/plugins/ReactSettingsPlugin.kt | 10 - apps/example/android/settings.gradle | 66 ---- apps/example/app.config.ts | 99 ++++++ apps/example/app.json | 95 ------ package.json | 2 +- .../ios/TestHarness}/.gitignore | 0 .../ios/TestHarness}/.xcode.env | 0 .../ios/TestHarness}/Podfile | 46 +-- .../ios/TestHarness}/Podfile.lock | 316 +++++++++--------- .../ios/TestHarness}/Podfile.properties.json | 0 .../ios/TestHarness}/Tests.xctestplan | 0 .../project.pbxproj | 56 ++-- .../xcshareddata/xcschemes/Tests.xcscheme | 2 +- .../reactnativedeviceactivityexample.xcscheme | 0 .../contents.xcworkspacedata | 0 .../AppDelegate.h | 0 .../AppDelegate.mm | 0 .../App-Icon-1024x1024@1x.png | Bin .../AppIcon.appiconset/Contents.json | 0 .../Images.xcassets/Contents.json | 0 .../SplashScreen.imageset/Contents.json | 0 .../SplashScreen.imageset/image.png | Bin .../Contents.json | 0 .../SplashScreenBackground.imageset/image.png | Bin .../kingstinct.imageset/Contents.json | 0 .../kingstinct.imageset/kingstinct.png | Bin .../Info.plist | 0 .../SplashScreen.storyboard | 0 .../Supporting/Expo.plist | 0 .../reactnativedeviceactivityexample/main.m | 0 .../noop-file.swift | 0 ...ivedeviceactivityexample-Bridging-Header.h | 0 ...ctnativedeviceactivityexample.entitlements | 0 .../ios/Tests/ComparisonTests.swift | 0 .../ios/Tests/FamilySelectionIdTests.swift | 0 .../ios/Tests/IsShieldActiveTests.swift | 0 .../ios/Tests/SkipTests.swift | 0 .../ios/Tests/TextReplacementTests.swift | 0 .../ios/Tests/UnionTests.swift | 0 .../react-native-device-activity/package.json | 5 +- .../plugin/__tests__/config-plugin.test.ts | 111 ++++++ .../plugin/jest.config.js | 1 + .../generated.entitlements | 12 + .../ShieldAction/generated.entitlements | 12 + .../ShieldConfiguration/PrivacyInfo.xcprivacy | 48 +++ .../generated.entitlements | 12 + 97 files changed, 609 insertions(+), 1344 deletions(-) create mode 100644 apps/example/.env.example delete mode 100644 apps/example/android/.gitignore delete mode 100644 apps/example/android/app/build.gradle delete mode 100644 apps/example/android/app/debug.keystore delete mode 100644 apps/example/android/app/proguard-rules.pro delete mode 100644 apps/example/android/app/src/debug/AndroidManifest.xml delete mode 100644 apps/example/android/app/src/main/AndroidManifest.xml delete mode 100644 apps/example/android/app/src/main/java/expo/modules/deviceactivity/example/MainActivity.kt delete mode 100644 apps/example/android/app/src/main/java/expo/modules/deviceactivity/example/MainApplication.kt delete mode 100644 apps/example/android/app/src/main/res/drawable-hdpi/splashscreen_image.png delete mode 100644 apps/example/android/app/src/main/res/drawable-mdpi/splashscreen_image.png delete mode 100644 apps/example/android/app/src/main/res/drawable-xhdpi/splashscreen_image.png delete mode 100644 apps/example/android/app/src/main/res/drawable-xxhdpi/splashscreen_image.png delete mode 100644 apps/example/android/app/src/main/res/drawable-xxxhdpi/splashscreen_image.png delete mode 100644 apps/example/android/app/src/main/res/drawable/kingstinct.png delete mode 100644 apps/example/android/app/src/main/res/drawable/rn_edit_text_material.xml delete mode 100644 apps/example/android/app/src/main/res/drawable/splashscreen.xml delete mode 100644 apps/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml delete mode 100644 apps/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml delete mode 100644 apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png delete mode 100644 apps/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png delete mode 100644 apps/example/android/app/src/main/res/values-night/colors.xml delete mode 100644 apps/example/android/app/src/main/res/values/colors.xml delete mode 100644 apps/example/android/app/src/main/res/values/strings.xml delete mode 100644 apps/example/android/app/src/main/res/values/styles.xml delete mode 100644 apps/example/android/build.gradle delete mode 100644 apps/example/android/gradle.properties delete mode 100644 apps/example/android/gradle/wrapper/gradle-wrapper.jar delete mode 100644 apps/example/android/gradle/wrapper/gradle-wrapper.properties delete mode 100755 apps/example/android/gradlew delete mode 100644 apps/example/android/gradlew.bat delete mode 100644 apps/example/android/react-settings-plugin/build.gradle.kts delete mode 100644 apps/example/android/react-settings-plugin/src/main/kotlin/expo/plugins/ReactSettingsPlugin.kt delete mode 100644 apps/example/android/settings.gradle create mode 100644 apps/example/app.config.ts delete mode 100644 apps/example/app.json rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/.gitignore (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/.xcode.env (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/Podfile (78%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/Podfile.lock (77%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/Podfile.properties.json (100%) rename {apps/example => packages/react-native-device-activity/ios/TestHarness}/Tests.xctestplan (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample.xcodeproj/project.pbxproj (94%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample.xcodeproj/xcshareddata/xcschemes/Tests.xcscheme (97%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample.xcodeproj/xcshareddata/xcschemes/reactnativedeviceactivityexample.xcscheme (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample.xcworkspace/contents.xcworkspacedata (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/AppDelegate.h (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/AppDelegate.mm (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/Images.xcassets/AppIcon.appiconset/App-Icon-1024x1024@1x.png (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/Images.xcassets/AppIcon.appiconset/Contents.json (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/Images.xcassets/Contents.json (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/Images.xcassets/SplashScreen.imageset/Contents.json (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/Images.xcassets/SplashScreen.imageset/image.png (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/Images.xcassets/SplashScreenBackground.imageset/Contents.json (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/Images.xcassets/SplashScreenBackground.imageset/image.png (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/Images.xcassets/kingstinct.imageset/Contents.json (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/Images.xcassets/kingstinct.imageset/kingstinct.png (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/Info.plist (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/SplashScreen.storyboard (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/Supporting/Expo.plist (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/main.m (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/noop-file.swift (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/reactnativedeviceactivityexample-Bridging-Header.h (100%) rename {apps/example/ios => packages/react-native-device-activity/ios/TestHarness}/reactnativedeviceactivityexample/reactnativedeviceactivityexample.entitlements (100%) rename {apps/example => packages/react-native-device-activity}/ios/Tests/ComparisonTests.swift (100%) rename {apps/example => packages/react-native-device-activity}/ios/Tests/FamilySelectionIdTests.swift (100%) rename {apps/example => packages/react-native-device-activity}/ios/Tests/IsShieldActiveTests.swift (100%) rename {apps/example => packages/react-native-device-activity}/ios/Tests/SkipTests.swift (100%) rename {apps/example => packages/react-native-device-activity}/ios/Tests/TextReplacementTests.swift (100%) rename {apps/example => packages/react-native-device-activity}/ios/Tests/UnionTests.swift (100%) create mode 100644 packages/react-native-device-activity/plugin/__tests__/config-plugin.test.ts create mode 100644 packages/react-native-device-activity/plugin/jest.config.js create mode 100644 packages/react-native-device-activity/targets/ActivityMonitorExtension/generated.entitlements create mode 100644 packages/react-native-device-activity/targets/ShieldAction/generated.entitlements create mode 100644 packages/react-native-device-activity/targets/ShieldConfiguration/PrivacyInfo.xcprivacy create mode 100644 packages/react-native-device-activity/targets/ShieldConfiguration/generated.entitlements diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 0841e4bd..80e4c5f3 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -102,7 +102,7 @@ jobs: working-directory: apps/example swift-lint: - name: SwiftLint (example project) + name: SwiftLint (iOS harness) runs-on: macos-latest timeout-minutes: 10 steps: @@ -114,20 +114,20 @@ jobs: - uses: actions/cache@v4 with: - path: apps/example/ios/Pods - key: ${{ runner.os }}-pods-${{ hashFiles('apps/example/ios/Podfile.lock') }} + path: packages/react-native-device-activity/ios/TestHarness/Pods + key: ${{ runner.os }}-pods-${{ hashFiles('packages/react-native-device-activity/ios/TestHarness/Podfile.lock') }} restore-keys: | ${{ runner.os }}-pods- - run: bun install - run: pod install - working-directory: apps/example/ios + working-directory: packages/react-native-device-activity/ios/TestHarness - - run: apps/example/ios/Pods/SwiftLint/swiftlint lint + - run: packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint lint --config .swiftlint.yml swift-test: - name: Swift Test (example project) + name: Swift Test (iOS harness) runs-on: macos-latest timeout-minutes: 25 steps: @@ -149,8 +149,8 @@ jobs: - uses: actions/cache@v4 with: - path: apps/example/ios/Pods - key: ${{ runner.os }}-pods-${{ hashFiles('apps/example/ios/Podfile.lock') }} + path: packages/react-native-device-activity/ios/TestHarness/Pods + key: ${{ runner.os }}-pods-${{ hashFiles('packages/react-native-device-activity/ios/TestHarness/Podfile.lock') }} restore-keys: | ${{ runner.os }}-pods- @@ -172,9 +172,7 @@ jobs: run: swift --version - run: pod install - working-directory: apps/example/ios + working-directory: packages/react-native-device-activity/ios/TestHarness - - run: cp .swiftlint.yml apps/example/ios - - - run: xcodebuild test -workspace reactnativedeviceactivityexample.xcworkspace -scheme Tests -allowProvisioningUpdates -destination "platform=iOS Simulator,OS=latest,name=iPhone 17" - working-directory: apps/example/ios + - run: xcodebuild test -workspace reactnativedeviceactivityexample.xcworkspace -scheme Tests -destination "platform=iOS Simulator,OS=latest,name=iPhone 17" CODE_SIGNING_ALLOWED=NO CODE_SIGNING_REQUIRED=NO + working-directory: packages/react-native-device-activity/ios/TestHarness diff --git a/.gitignore b/.gitignore index a193638b..86332136 100644 --- a/.gitignore +++ b/.gitignore @@ -36,6 +36,10 @@ project.xcworkspace local.properties android.iml +# Example native output (CNG) +apps/example/ios/ +apps/example/android/ + # Cocoapods # apps/example/ios/Pods diff --git a/.husky/pre-commit b/.husky/pre-commit index fa4d0074..ee6daa4f 100644 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1,2 +1,3 @@ -swift format -i -p -r ./packages/react-native-device-activity/ios ./packages/react-native-device-activity/targets ./apps/example/ios -apps/example/ios/Pods/SwiftLint/swiftlint lint --fix \ No newline at end of file +swift format -i -p -r ./packages/react-native-device-activity/ios/Tests ./packages/react-native-device-activity/targets ./packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample +swift format -i -p ./packages/react-native-device-activity/ios/Shared.swift +packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint lint --fix --config .swiftlint.yml diff --git a/.swiftlint.yml b/.swiftlint.yml index 182ab684..53918e29 100644 --- a/.swiftlint.yml +++ b/.swiftlint.yml @@ -12,6 +12,11 @@ disabled_rules: - inclusive_language included: - - packages/react-native-device-activity/ios - - apps/example/ios + - packages/react-native-device-activity/ios/Tests + - packages/react-native-device-activity/ios/Shared.swift + - packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample - packages/react-native-device-activity/targets + +excluded: + - packages/react-native-device-activity/ios/TestHarness/Pods + - packages/react-native-device-activity/ios/TestHarness/build diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 79bc8098..b7a8eec5 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,13 +1,57 @@ -# Example project setup +# Repository development setup -The example project is linked specifically to simplify development. This means it's not looking exactly like the published package, but for most intents and purposes it should result in the same outcome. +## Example app config (env-driven) -- The config plugin has a `copyToTargetFolder` option that is set to false. This is to prevent the target folder from being copied to the example project and potentially overwriting the original files. -- The swift files in the targets folder are linked to the root project instead of duplicated. If adding new swift files, try to link them instead of duplicating to keep things clean. -- The entitlements and info.plist files however duplicated - to not mess with the example project/signing etc. -- There is a Shared.swift file that can be accessed by all targets. This is linked to each target in the example project, but in the published package it's copied and duplicated to each target. I prefer this to making more changes in @bacons/xcode package which only supports swift files on the root level of each target directory. -- In addition the example project contains an XCode test target as well as SwiftLint. +The example app uses `apps/example/app.config.ts` so local developer values do not need to be committed. -## Prebuild +Create local env values from the template: -To try out prebuild functionality (i.e. the config plugin) run `bun run prebuild` in the example project (it uses the `INTERNALLY_TEST_EXAMPLE_PROJECT` and `COPY_TO_TARGET_FOLDER` env variables to behave like a published package). This should be used to verify changes are expected, but the result should not in it's full state be commited to the example project, since it will break the DX of the example project as explained above. +```bash +cp apps/example/.env.example apps/example/.env +``` + +Supported variables: + +- `RNDA_APPLE_TEAM_ID` +- `RNDA_APP_GROUP` +- `RNDA_IOS_BUNDLE_ID` +- `RNDA_ANDROID_PACKAGE` + +If these variables are missing, `app.config.ts` falls back to stable defaults for this repository. + +## Example app follows CNG + +The example app no longer tracks `apps/example/ios` and `apps/example/android`. + +Regenerate native folders when needed: + +```bash +cd apps/example +bun run prebuild +# or +bun run ios +bun run android +``` + +## Swift test ownership + +Swift test sources are package-owned and live in: + +- `packages/react-native-device-activity/ios/Tests` + +The iOS test runner lives in: + +- `packages/react-native-device-activity/ios/TestHarness` + +## Plugin testing + +In addition to app/prebuild validation, config plugin regression tests are defined under: + +- `packages/react-native-device-activity/plugin/__tests__` + +Run them with: + +```bash +cd packages/react-native-device-activity +bun run test:plugin +``` diff --git a/README.md b/README.md index 1508aa96..ef3c0c8b 100644 --- a/README.md +++ b/README.md @@ -583,6 +583,23 @@ For a complete implementation, see the [example app](https://github.com/Kingstin Contributions are very welcome! Please refer to guidelines described in the [contributing guide](https://github.com/expo/expo#contributing). +### Repository development setup + +This repository uses an env-driven Expo example config in `apps/example/app.config.ts` to avoid committing local developer values such as team ID and app group. + +Use `apps/example/.env.example` as a template for local values: + +- `RNDA_APPLE_TEAM_ID` +- `RNDA_APP_GROUP` +- `RNDA_IOS_BUNDLE_ID` +- `RNDA_ANDROID_PACKAGE` + +The example app follows CNG workflow (`expo prebuild --clean` / `expo run:*`) and native folders are generated as needed. + +Swift test sources are package-owned in `packages/react-native-device-activity/ios/Tests` and run through the iOS harness in `packages/react-native-device-activity/ios/TestHarness`. + +For repository-specific details, see [`CONTRIBUTING.md`](./CONTRIBUTING.md). + ## Weird behaviors ⚠️ - Authorization changes outside app not captured diff --git a/apps/example/.env.example b/apps/example/.env.example new file mode 100644 index 00000000..ef89bb63 --- /dev/null +++ b/apps/example/.env.example @@ -0,0 +1,4 @@ +RNDA_APPLE_TEAM_ID=YOUR_APPLE_TEAM_ID +RNDA_APP_GROUP=group.your-app-group +RNDA_IOS_BUNDLE_ID=com.yourcompany.yourapp +RNDA_ANDROID_PACKAGE=com.yourcompany.yourapp diff --git a/apps/example/android/.gitignore b/apps/example/android/.gitignore deleted file mode 100644 index 8a6be077..00000000 --- a/apps/example/android/.gitignore +++ /dev/null @@ -1,16 +0,0 @@ -# OSX -# -.DS_Store - -# Android/IntelliJ -# -build/ -.idea -.gradle -local.properties -*.iml -*.hprof -.cxx/ - -# Bundle artifacts -*.jsbundle diff --git a/apps/example/android/app/build.gradle b/apps/example/android/app/build.gradle deleted file mode 100644 index 8d7d60f1..00000000 --- a/apps/example/android/app/build.gradle +++ /dev/null @@ -1,201 +0,0 @@ -apply plugin: "com.android.application" -apply plugin: "org.jetbrains.kotlin.android" -apply plugin: "com.facebook.react" - -def projectRoot = rootDir.getAbsoluteFile().getParentFile().getAbsolutePath() - -static def versionToNumber(major, minor, patch) { - return patch * 100 + minor * 10000 + major * 1000000 -} - -def getRNVersion() { - def version = providers.exec { - workingDir(projectDir) - commandLine("node", "-e", "console.log(require('react-native/package.json').version);") - }.standardOutput.asText.get().trim() - - def coreVersion = version.split("-")[0] - def (major, minor, patch) = coreVersion.tokenize('.').collect { it.toInteger() } - - return versionToNumber( - major, - minor, - patch - ) -} -def rnVersion = getRNVersion() - -/** - * This is the configuration block to customize your React Native Android app. - * By default you don't need to apply any configuration, just uncomment the lines you need. - */ -react { - entryFile = file(["node", "-e", "require('expo/scripts/resolveAppEntry')", projectRoot, "android", "absolute"].execute(null, rootDir).text.trim()) - reactNativeDir = new File(["node", "--print", "require.resolve('react-native/package.json')"].execute(null, rootDir).text.trim()).getParentFile().getAbsoluteFile() - hermesCommand = new File(["node", "--print", "require.resolve('react-native/package.json')"].execute(null, rootDir).text.trim()).getParentFile().getAbsolutePath() + "/sdks/hermesc/%OS-BIN%/hermesc" - codegenDir = new File(["node", "--print", "require.resolve('@react-native/codegen/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim()).getParentFile().getAbsoluteFile() - - // Use Expo CLI to bundle the app, this ensures the Metro config - // works correctly with Expo projects. - cliFile = new File(["node", "--print", "require.resolve('@expo/cli', { paths: [require.resolve('expo/package.json')] })"].execute(null, rootDir).text.trim()) - bundleCommand = "export:embed" - - /* Folders */ - // The root of your project, i.e. where "package.json" lives. Default is '..' - // root = file("../") - // The folder where the react-native NPM package is. Default is ../node_modules/react-native - // reactNativeDir = file("../node_modules/react-native") - // The folder where the react-native Codegen package is. Default is ../node_modules/@react-native/codegen - // codegenDir = file("../node_modules/@react-native/codegen") - - /* Variants */ - // The list of variants to that are debuggable. For those we're going to - // skip the bundling of the JS bundle and the assets. By default is just 'debug'. - // If you add flavors like lite, prod, etc. you'll have to list your debuggableVariants. - // debuggableVariants = ["liteDebug", "prodDebug"] - - /* Bundling */ - // A list containing the node command and its flags. Default is just 'node'. - // nodeExecutableAndArgs = ["node"] - - // - // The path to the CLI configuration file. Default is empty. - // bundleConfig = file(../rn-cli.config.js) - // - // The name of the generated asset file containing your JS bundle - // bundleAssetName = "MyApplication.android.bundle" - // - // The entry file for bundle generation. Default is 'index.android.js' or 'index.js' - // entryFile = file("../js/MyApplication.android.js") - // - // A list of extra flags to pass to the 'bundle' commands. - // See https://github.com/react-native-community/cli/blob/main/docs/commands.md#bundle - // extraPackagerArgs = [] - - /* Hermes Commands */ - // The hermes compiler command to run. By default it is 'hermesc' - // hermesCommand = "$rootDir/my-custom-hermesc/bin/hermesc" - // - // The list of flags to pass to the Hermes compiler. By default is "-O", "-output-source-map" - // hermesFlags = ["-O", "-output-source-map"] - - if (rnVersion >= versionToNumber(0, 75, 0)) { - /* Autolinking */ - autolinkLibrariesWithApp() - } -} - -/** - * Set this to true to Run Proguard on Release builds to minify the Java bytecode. - */ -def enableProguardInReleaseBuilds = (findProperty('android.enableProguardInReleaseBuilds') ?: false).toBoolean() - -/** - * The preferred build flavor of JavaScriptCore (JSC) - * - * For example, to use the international variant, you can use: - * `def jscFlavor = 'org.webkit:android-jsc-intl:+'` - * - * The international variant includes ICU i18n library and necessary data - * allowing to use e.g. `Date.toLocaleString` and `String.localeCompare` that - * give correct results when using with locales other than en-US. Note that - * this variant is about 6MiB larger per architecture than default. - */ -def jscFlavor = 'org.webkit:android-jsc:+' - -android { - ndkVersion rootProject.ext.ndkVersion - - buildToolsVersion rootProject.ext.buildToolsVersion - compileSdk rootProject.ext.compileSdkVersion - - namespace 'expo.modules.deviceactivity.example' - defaultConfig { - applicationId 'expo.modules.deviceactivity.example' - minSdkVersion rootProject.ext.minSdkVersion - targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 1 - versionName "1.0.0" - } - signingConfigs { - debug { - storeFile file('debug.keystore') - storePassword 'android' - keyAlias 'androiddebugkey' - keyPassword 'android' - } - } - buildTypes { - debug { - signingConfig signingConfigs.debug - } - release { - // Caution! In production, you need to generate your own keystore file. - // see https://reactnative.dev/docs/signed-apk-android. - signingConfig signingConfigs.debug - shrinkResources (findProperty('android.enableShrinkResourcesInReleaseBuilds')?.toBoolean() ?: false) - minifyEnabled enableProguardInReleaseBuilds - proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" - crunchPngs (findProperty('android.enablePngCrunchInReleaseBuilds')?.toBoolean() ?: true) - } - } - packagingOptions { - jniLibs { - useLegacyPackaging (findProperty('expo.useLegacyPackaging')?.toBoolean() ?: false) - } - } -} - -// Apply static values from `gradle.properties` to the `android.packagingOptions` -// Accepts values in comma delimited lists, example: -// android.packagingOptions.pickFirsts=/LICENSE,**/picasa.ini -["pickFirsts", "excludes", "merges", "doNotStrip"].each { prop -> - // Split option: 'foo,bar' -> ['foo', 'bar'] - def options = (findProperty("android.packagingOptions.$prop") ?: "").split(","); - // Trim all elements in place. - for (i in 0.. 0) { - println "android.packagingOptions.$prop += $options ($options.length)" - // Ex: android.packagingOptions.pickFirsts += '**/SCCS/**' - options.each { - android.packagingOptions[prop] += it - } - } -} - -dependencies { - // The version of react-native is set by the React Native Gradle Plugin - implementation("com.facebook.react:react-android") - - def isGifEnabled = (findProperty('expo.gif.enabled') ?: "") == "true"; - def isWebpEnabled = (findProperty('expo.webp.enabled') ?: "") == "true"; - def isWebpAnimatedEnabled = (findProperty('expo.webp.animated') ?: "") == "true"; - - if (isGifEnabled) { - // For animated gif support - implementation("com.facebook.fresco:animated-gif:${reactAndroidLibs.versions.fresco.get()}") - } - - if (isWebpEnabled) { - // For webp support - implementation("com.facebook.fresco:webpsupport:${reactAndroidLibs.versions.fresco.get()}") - if (isWebpAnimatedEnabled) { - // Animated webp support - implementation("com.facebook.fresco:animated-webp:${reactAndroidLibs.versions.fresco.get()}") - } - } - - if (hermesEnabled.toBoolean()) { - implementation("com.facebook.react:hermes-android") - } else { - implementation jscFlavor - } -} - -if (rnVersion < versionToNumber(0, 75, 0)) { - apply from: new File(["node", "--print", "require.resolve('@react-native-community/cli-platform-android/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim(), "../native_modules.gradle"); - applyNativeModulesAppBuildGradle(project) -} diff --git a/apps/example/android/app/debug.keystore b/apps/example/android/app/debug.keystore deleted file mode 100644 index 364e105ed39fbfd62001429a68140672b06ec0de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2257 zcmchYXEfYt8;7T1^dLH$VOTZ%2NOdOH5j5LYLtZ0q7x-V8_6gU5)#7dkq{HTmsfNq zB3ZqcAxeY^G10@?efK?Q&)M(qInVv!xjx+IKEL}p*K@LYvIzo#AZG>st5|P)KF1_Z;y){W{<7K{nl!CPuE z_^(!C(Ol0n8 zK13*rzAtW>(wULKPRYLd7G18F8#1P`V*9`(Poj26eOXYyBVZPno~Cvvhx7vPjAuZo zF?VD!zB~QG(!zbw#qsxT8%BSpqMZ4f70ZPn-3y$L8{EVbbN9$H`B&Z1quk9tgp5FM zuxp3pJ0b8u|3+#5bkJ4SRnCF2l7#DyLYXYY8*?OuAwK4E6J{0N=O3QNVzQ$L#FKkR zi-c@&!nDvezOV$i$Lr}iF$XEcwnybQ6WZrMKuw8gCL^U#D;q3t&HpTbqyD%vG=TeDlzCT~MXUPC|Leb-Uk+ z=vnMd(|>ld?Fh>V8poP;q;;nc@en$|rnP0ytzD&fFkCeUE^kG9Kx4wUh!!rpjwKDP zyw_e|a^x_w3E zP}}@$g>*LLJ4i0`Gx)qltL}@;mDv}D*xR^oeWcWdPkW@Uu)B^X&4W1$p6}ze!zudJ zyiLg@uggoMIArBr*27EZV7djDg@W1MaL+rcZ-lrANJQ%%>u8)ZMWU@R2qtnmG(acP z0d_^!t>}5W zpT`*2NR+0+SpTHb+6Js4b;%LJB;B_-ChhnU5py}iJtku*hm5F0!iql8Hrpcy1aYbT z1*dKC5ua6pMX@@iONI?Hpr%h;&YaXp9n!ND7-=a%BD7v&g zOO41M6EbE24mJ#S$Ui0-brR5ML%@|ndz^)YLMMV1atna{Fw<;TF@>d&F|!Z>8eg>>hkFrV)W+uv=`^F9^e zzzM2*oOjT9%gLoub%(R57p-`TXFe#oh1_{&N-YN z<}artH|m=d8TQuKSWE)Z%puU|g|^^NFwC#N=@dPhasyYjoy(fdEVfKR@cXKHZV-`06HsP`|Ftx;8(YD$fFXumLWbGnu$GMqRncXYY9mwz9$ap zQtfZB^_BeNYITh^hA7+(XNFox5WMeG_LtJ%*Q}$8VKDI_p8^pqX)}NMb`0e|wgF7D zuQACY_Ua<1ri{;Jwt@_1sW9zzdgnyh_O#8y+C;LcZq6=4e^cs6KvmK@$vVpKFGbQ= z$)Eux5C|Fx;Gtmv9^#Y-g@7Rt7*eLp5n!gJmn7&B_L$G?NCN`AP>cXQEz}%F%K;vUs{+l4Q{}eWW;ATe2 zqvXzxoIDy(u;F2q1JH7Sf;{jy_j})F+cKlIOmNfjBGHoG^CN zM|Ho&&X|L-36f}Q-obEACz`sI%2f&k>z5c$2TyTSj~vmO)BW~+N^kt`Jt@R|s!){H ze1_eCrlNaPkJQhL$WG&iRvF*YG=gXd1IyYQ9ew|iYn7r~g!wOnw;@n42>enAxBv*A zEmV*N#sxdicyNM=A4|yaOC5MByts}s_Hpfj|y<6G=o=!3S@eIFKDdpR7|FY>L&Wat&oW&cm&X~ z5Bt>Fcq(fgnvlvLSYg&o6>&fY`ODg4`V^lWWD=%oJ#Kbad2u~! zLECFS*??>|vDsNR&pH=Ze0Eo`sC_G`OjoEKVHY|wmwlX&(XBE<@sx3Hd^gtd-fNwUHsylg06p`U2y_={u}Bc - - - - - diff --git a/apps/example/android/app/src/main/AndroidManifest.xml b/apps/example/android/app/src/main/AndroidManifest.xml deleted file mode 100644 index 7887c00c..00000000 --- a/apps/example/android/app/src/main/AndroidManifest.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/apps/example/android/app/src/main/java/expo/modules/deviceactivity/example/MainActivity.kt b/apps/example/android/app/src/main/java/expo/modules/deviceactivity/example/MainActivity.kt deleted file mode 100644 index 48624eef..00000000 --- a/apps/example/android/app/src/main/java/expo/modules/deviceactivity/example/MainActivity.kt +++ /dev/null @@ -1,61 +0,0 @@ -package expo.modules.deviceactivity.example - -import android.os.Build -import android.os.Bundle - -import com.facebook.react.ReactActivity -import com.facebook.react.ReactActivityDelegate -import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.fabricEnabled -import com.facebook.react.defaults.DefaultReactActivityDelegate - -import expo.modules.ReactActivityDelegateWrapper - -class MainActivity : ReactActivity() { - override fun onCreate(savedInstanceState: Bundle?) { - // Set the theme to AppTheme BEFORE onCreate to support - // coloring the background, status bar, and navigation bar. - // This is required for expo-splash-screen. - setTheme(R.style.AppTheme); - super.onCreate(null) - } - - /** - * Returns the name of the main component registered from JavaScript. This is used to schedule - * rendering of the component. - */ - override fun getMainComponentName(): String = "main" - - /** - * Returns the instance of the [ReactActivityDelegate]. We use [DefaultReactActivityDelegate] - * which allows you to enable New Architecture with a single boolean flags [fabricEnabled] - */ - override fun createReactActivityDelegate(): ReactActivityDelegate { - return ReactActivityDelegateWrapper( - this, - BuildConfig.IS_NEW_ARCHITECTURE_ENABLED, - object : DefaultReactActivityDelegate( - this, - mainComponentName, - fabricEnabled - ){}) - } - - /** - * Align the back button behavior with Android S - * where moving root activities to background instead of finishing activities. - * @see onBackPressed - */ - override fun invokeDefaultOnBackPressed() { - if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.R) { - if (!moveTaskToBack(false)) { - // For non-root activities, use the default implementation to finish them. - super.invokeDefaultOnBackPressed() - } - return - } - - // Use the default back button implementation on Android S - // because it's doing more than [Activity.moveTaskToBack] in fact. - super.invokeDefaultOnBackPressed() - } -} diff --git a/apps/example/android/app/src/main/java/expo/modules/deviceactivity/example/MainApplication.kt b/apps/example/android/app/src/main/java/expo/modules/deviceactivity/example/MainApplication.kt deleted file mode 100644 index a7599c4d..00000000 --- a/apps/example/android/app/src/main/java/expo/modules/deviceactivity/example/MainApplication.kt +++ /dev/null @@ -1,55 +0,0 @@ -package expo.modules.deviceactivity.example - -import android.app.Application -import android.content.res.Configuration - -import com.facebook.react.PackageList -import com.facebook.react.ReactApplication -import com.facebook.react.ReactNativeHost -import com.facebook.react.ReactPackage -import com.facebook.react.ReactHost -import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.load -import com.facebook.react.defaults.DefaultReactNativeHost -import com.facebook.soloader.SoLoader - -import expo.modules.ApplicationLifecycleDispatcher -import expo.modules.ReactNativeHostWrapper - -class MainApplication : Application(), ReactApplication { - - override val reactNativeHost: ReactNativeHost = ReactNativeHostWrapper( - this, - object : DefaultReactNativeHost(this) { - override fun getPackages(): List { - // Packages that cannot be autolinked yet can be added manually here, for example: - // packages.add(new MyReactNativePackage()); - return PackageList(this).packages - } - - override fun getJSMainModuleName(): String = ".expo/.virtual-metro-entry" - - override fun getUseDeveloperSupport(): Boolean = BuildConfig.DEBUG - - override val isNewArchEnabled: Boolean = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED - override val isHermesEnabled: Boolean = BuildConfig.IS_HERMES_ENABLED - } - ) - - override val reactHost: ReactHost - get() = ReactNativeHostWrapper.createReactHost(applicationContext, reactNativeHost) - - override fun onCreate() { - super.onCreate() - SoLoader.init(this, false) - if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) { - // If you opted-in for the New Architecture, we load the native entry point for this app. - load() - } - ApplicationLifecycleDispatcher.onApplicationCreate(this) - } - - override fun onConfigurationChanged(newConfig: Configuration) { - super.onConfigurationChanged(newConfig) - ApplicationLifecycleDispatcher.onConfigurationChanged(this, newConfig) - } -} diff --git a/apps/example/android/app/src/main/res/drawable-hdpi/splashscreen_image.png b/apps/example/android/app/src/main/res/drawable-hdpi/splashscreen_image.png deleted file mode 100644 index c52c2c68019b49c56da4faf7d8835a8392cfef7a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 59836 zcmeFYhdJXQHaXO4jIWvB@{(MA$w+KE2Rh-B_lhOBH3G+$(HPd?7cVl zdA-rq_xj!czv}w7yx*^J&hwn}Jmd3J@ro?*UYfl)I5@;|7o@J@;Orv6!P(nR zv>Se-+)KuRgERb4PU@VpJ?_|NTwM62+w+Z-2_iiB?!W*3lfZux_)h}=N#H*T{3n6` zB=DaE{*%Ce68KL7|4HCK3H&F4|6fbMt?gm3YC&CzSbb6Vs&g(gzhB$a*HxZUB~lcD zczabJj_`1Z{^bG^5PpYtSHTt|i&3o!8 z`>$knyE43EOeMjmJxRz;P2V4M<;*?fTXM_NfDm;}zg7YyW_d+A{tVC<#_=Qkg`n{7z1qNa3Wu&gu0z=x*n%~JU zz|+Lo4mclee&FI{UZ;`^Eeq$(&*Lmt^*g&1sOl=y#@Yp9;^+Wk9-eGOd zFL@)!lw2y;{tE+f;qIbi9L}2w)@{iHxTyF~z;c`{h5ZC2k!!vRf)UU04 z*Z+B5H@%CLHlv1`PEN0*TBsyXoui$5pn5;84L7A)I&qkfbVoIMI2|qC?n}Rql}3k8 zE|AY8{pK_7>sAw!o<8N&bl!1ld?w$scHy*M8O6a-Pcm(fH*I}CZXgm+op~pXyWFT? zsfTpYmHG+~WfFTX5vu|G9mj1PEm{+*%N)|fEc!gIM=Gh=sNm*@A4$ziNpM*v`0=-5 ziJmEX0z}d%j8pt$B)Y*?z=W^7QuX(R5}BlChm4yaT6ET$iCBlJbzVq^fo!OCtZUog z6ozy-x5F~zNj(D7>1tw3TTPy&YJMnpc$P{+Ym<7jI>h?Gl}2V!GMw9|KH%e+e6WnO zs(l=2&E3u?S0Xby?~tL{opCc|^PY!~gKoM|Jsc=j=h?($-EN%Li|CT?)%XlcWK4M} zO|yxUnpIP-C*_q>Cs_m}Be}5}1!NlTh^>6cK(=H3u}{0+Ghetp?T41pW`_bzpVXU= zeA?sbn7lzospyeEOB*(UG(^eFzELOP+kLpMb4b8Qn=jd>S4;@PP2?a-&06>V3Jd%cU8#8sy(C+LoIDt*LAnyiC`V`TqK7-Vg8Q zVoQrh;0- zgTjXWlR?Rz>q+xQ1*#vek6JvSr#26Wp>%-nEVd;iv&IP8!6F;`B49p-ricW{mlSV-OL%GqjRCsz4aC=U* z)xi08a`Un9sKYuLM!bQbMc>Rn5)Jc-V*;6)!nLwFl9)!huO|V_!5`>0#P=}Ew=)y( z>`wYdj`m8uwLf3D$+KkGnI@LW-b?0t}bEfP3R>Zfv*paH* zuLv(@?HnzM&QLZG%>PJbjCV0zW7)PdX>YJa@Dag01h+6H*oIMHYGn*@=Q$9?Au!Nk zYSDu`_$p)p(NtFY@1A&$^rQ;{Q0hpJCB)mp_J?NQhWK%VGfGtMBJaJCzQ+xk@V5{6 z!zeH_R=#A91DhvJ_O)D9j!y=%B{HHsf0V3k8gLxJpZmH_ZHNGI=TT&r)ghUnxUh6N zn!nEgYBFuyJrN~9r}KWW`ZC6wOVf8-OdBb)wi_ebX)&$t~J!=nrsp>X7?x+VR^5@1C1{D_?K`Fifo?pI(O`v8>W+F0ve|(30 zhxIc+u(w4AM5U}~jSuA~0h7i}0;WydM&+F$7na^bP@~EmVp{SQqRWUj*p*NqGQB{7 z9mfK}x<^Xm8Fy%$9F1AYe%4X#XQ@@u0w&)DM9Fs)EHIo3r^(!cNZ5HRz04j0QwK)F zZQsQ4LnjvYfe=hj)Op90=F0c1XFD$2n7zG$8{MVB_61+@Y64va&mXOqL2w1EVJ2dB z4d3pn9}D33H5TT(j{;l?1K^eT@uBE{47xpDj^;{zx(+ihEGFMRC$Sw&%0lBjzsQ*8 zQp+_-XUkjdo=6lxdc!zI`!o8ztVR_EB?=($JEpQ!+k&PXjgBLx&5#!fJx@HfVIY!w zp?$|6`EVn%17CI68zNJd;o}ZoeZ4bEA`t0!l&#uy9;6^l>ArXYB8X3eZ^QW=1=2u7 zq^Is75PgYIXcgx!@^5&>Y zAmO(dtg-k+f9cQt=2aU%s)f;4#>nI6bFF0VM9z%iurGVsQ;DVuN7Q$Gv-iAW0L19{ z@yh7k_T6(5jXSCZHq&710a1oMARY{q#-3~LLOc9%i|Wvc3ZSJbqaO!W7duAN83L$x zME3){AH>M?8i0O$4*_vLRrydVh~5ZA?+iLo$}8Wc0|pqPu8D{wD7-<`U%XFb%_&1TxY|HhVlvxW4W)oexHoV@n zEh$=gHpY_!9|{V>+=(F~(r>wZw?!?#yA5%MR#AkX48o*Ie=AbSQ3?H!{@Ex^!snei z4D1p9F$|0I=99BZG)yySkMm}hZ_NMT&8!h8*EFC?r8XzgegxnK-wM^o0W&ddI%3p5 zSHiGSwmMO;7!g@Cnw&SWoUl0;ys^sO9$%BH*B}ic4___a(3j8LFm33VccxsZfar5+ zDm5Td`ETU(Ty6zc=Xbj-2TzJ`dKWDz)H3r9){CBYhvbgrM2sJ zt}9?TV>2?xbe(h^vn~{eM1yjWjL3CFpCn7|HiyrxjZ#?y0-qV>q z-JY=}kkKDC@Xclx`f0V+u4sLQ);xcjs(ZCIOUt#-M{wg<7Mv#Fcu3pzqM1{RT1)kw zVoq8C%ME@mbCKhqh+4-OIPFaCsZ}#u z)#}!U=<3y0>*{f*z2fB!36cHu>V8MHHvES3)2k3(?~pR|gLJ@s#tOXvA^m}4U#s1P zcmsv3OyH4$V%VoT96fbQmm5}<4uGxEk7p@y>=__pO$HX49vSLpG^`jJQkUs?Mo(iX z(*DdgZk#$+zR`BB7~B%6PXj*FuzESQsDJ}otf!2F346P*fcy$ctd8{@hhd{mtj=69 zP}67hhu19)Wh;gZL{>5_H`j~q^-SbV<}B82uGN`m=rs7xNvym~HK;HM^yL-~pr?uT z<~zJ@EJNx;PaPX8E8{8^%J;Q8FN8Nuez4l4sq-kfRztHUPqDe4)rq3bjajSXke!&X z-8MI$)cXknG!2ccM_=u@_4UFASoz@VPe8)r&qaT~wZ^xkV{3hz6X%O8y1CZAcy4|r z6q|Byvg@|0D`-2Gm#1GhjsRgdT~6vUMb*7Lk)>6%Tp;ee{^MuldYfI*Vwd>xPrJfd z3=9u-2P*hw^)eg&IgHxcZOhRgKWp+?Lv;rd`1J=w#_DudSFK#>+ao7Giu*B#RPa!( z&YG@Tr4|*5!*{ZGYuDFvF7Wv2(l7OE6>hF|*>&42eo)Wa7)#k0;p%?ny}m9KD73h^ z$g96F*cmCy6Syt}-}$e@Yps#y7YB~b%A*Zx*O%jUIeGlXxOm_(^n0sR*uWcfpQ=mW z8tJ_*4KU+epaQT!?loCgws9Gb0)N-z8QeGq+vG%6k4@IC>%xK7Lv#z9Hna;(#c`&@ zR0(l10WhYaI#$O`8}$M+g-!>y#qr7o9uFA?2w!fGyMHY#D_t&(fqU?>NTW25Ra}lU zuUy!9UQ;WRQ6hZ%|I|>=f%8k=XJ;K<=U*m&GmvXtA_X- z4saGNH6d;BIkBLw*X{XtYpVrnM5@tm(BCpciXMe9@qVq24$&PjKRqiL${Vt*#4Fpb zTMLge%ku<=*wHX)JUbG`>p4&zBexKydmJsfeQXN;@#^sVH#DlHU8H#RDNT9w1CFQ3 z>G|?~b@|!IEH5IWuh+=TE1rz~>N1s;|9N->=a;?-9gcluHK?nW;rQxu4{4M1&uDO> z65wQ;*xLtG)4&^}?~fS6zj12mHU6A4@dJwRL}0x9EK{g}e5gQ;pFx^|)qC$F5ZRC* zO(`{g%gcw(_YS&D3~n|=ZVWFLTJ=|*+SF=<)xFt6r8|xo!y8dT-;Wr8mnKO!Y)m&K z;rGs57U{p?(!a5fVRNZsQ<`#fSbV)_(sfilrRXKcy^SyUq+)B8v3|~Tu~cHV8*7gU z#XqK532zp6I@gIJo9nV#bk<$G)LaUcnzP>ycE0 z;}Q}84?55q9-;=cc79fTb9QqmuY3KcUGlB_{hRXed@VbAGUPnCI30KyIo#vC=Apda z+y0Pl;21c+aNfz&;7z^3$L=^#-2r(ke+GUkA%Vea?Jc*Ny5%Z$(4xLI@GP#|;%8y7 zlThz`Q_e3PfUe2zcCE4T@vgO6a1|e>l5K5muS~+v)xGN74(l0Z8To#;b>X6mr4*6* zOZ7~CPHWMw83xl%Rmj;$f6)4;4t!^`a>I@@e52VdUM7YbAHbJFp+A}YbZfF*+HD7X_>b%5NU_boh=g*ptETNnMJM8tnXMjNGiCIl#h(@JS<9e$@`I1to9UxAS}v*kJ#+Zm0R?lx}q7HBq}hK!jkjR*@|_ znU%>Rl2@Jh)GutM<$Y9Q3-u*_VlN}>&y$L;v|?YV0#nu+E^%qDjJz3)bR0J3(%d_l z1Zl#b92|%?cjFZA;uMpg*uoOBtKWf8TN&? zMJo?(a4LASB)Dkq5&DtRWx&B8PJTP*Lp5Gnm*ZCex-KJc6C&>;Lm7$oWN>B|k4Bqs z4!xn`(kKA!740CP+SVwu5)pBLu+#F$i(oGOR7W86n9@BNTz;pby{{#JLm3npix6_0 z_{ysvd4Hz2sV;wIM6hsUbFJ2@X#NXGiCCOhG>8*2$*rtON3O)tc(J<8Nqc9Oro%=XJH5kFLq$aH(p!Cc zhu{8w7U}mO&Dk9ebfP>^9-a4@+Ldw(dp;hzeLZ1=&5#D8yWnwybjH=D$@_SuTd zdA#frwpl(`;WCoss{g+5g-Y zTlgB4`1~-odH8LlHmxYBOh@+B?%p2pca*dz0BY%JZMQd;-XHRXR_^YK5|ESSrn;_9Ew5#pU)toIph zNm*ZYT{MsU+WXa8L45XmnS%2QW)`#fz!?c#G^~D#LyEkTn3#Ycw{DNE9fo;c$ z-_&5H)9{F_#9Ri|rr+l5Ddb|mnJ&c!Yv#}8Z7y0B*l?oe}%)!8cefbMYfmD$j z)&i}fRtud}u6=?@6SGC@{ansHk1o}T)4E8Co^Id0wAuEMVM<`KL~N?N+gLQF zmnh|9nb9Gfx?RZv6qn8T+i*Nq$0B$yq!#GrF`YYZ=@@Guc{iEm+?SXL{TGHOPM$lJ zPHnpQgh%>nK^YUHS5{fZiRbEp>9YQnX`>U2jJ#bYyI+mx6m~sa{4n`8P-1d4&pVB} z=-~#R{{h99rgAuClY{4_l*4S@o;-PC6ry-gng|y+muXdOcc`7z z7M5Zzw)YLW^@ehHJKQ$?{b`id*Uv*wKRyP(=R&$@YqNKU#Tku>!3x%am6G$Zo8QLf zsE2&_;NlYDN?>a@l8_xZpj1OHh%4!4X1r(?wq9)RG?67XKa^rWCC1*wek zGW~KIPP@Q`zdV7u@JR0?cTv1v;C4*sXShTaNOT?rjw%wBUr6DC}ZABgD zt!D~1D@0+P5(Fti)irl^pWOoR2^ zEtuQs$41JIqZgK^p9-aI zWX=~r^d)s3563?z*BAe)Pb}%V7mFA6uHALBtxrFfbb)?CWX{?iwH~y+WlOfc3oO@-Eb{j=$f-DEb><;Y|!`^uKH{}VRG(vY_etk>ktBRu{~)fh?v2#aHvE>`M5k9+ItT-569!ab3a@MuypHE3!}lVO zi1QE5FXLzXTo!(@MnyGP=Q6+>X-3c>I@NC1^mTJ-y>o?YeTKEm{YNH=NsRcBr@L=< zJdlkzJjOSd|JYQnlK}VFv19M#L@JpR`Yub_eY4YP01_ntXB6rA2Vz0}rP?OrGZ(cPk36*%?{cI* z)T-RPv06tjeod=;YH6%Ghx>e;aqIC?8!tSf|G7XXSe6O?e8l7OuT%+KpkYCQJJk2b zOH&6)?l!(<9*QN4B0cwu<{Qtxgdzd4{M_7tGs|Dz3V~6{>;hdsZ)rI)w4+&k5c@5B zOgtDg^-g#xf;AKEBF#n;3f9tasOhoJNqzcgd8sX-kj$hi?wTA~*9|;397f9|keAcD zQ?2P1M_nkxkoz%TA0E-#zh6csm6!-OnoaTm%U`%D@ld>o<4*WOUS(WX*7vpHZfE5X?Ro_my8@el>^r(a~|F@@Qs<0P{ z2UEks?HgPt4M=St_60wFUP66pIgr9CQ}i8O z*cnl77u`EzVtaCR0Lwn)o=wBH!mrJOT5XeT!;I4UD1Ch7H*#}xHC8vx*87UmCj-qo zbwjRycIaSNjaNI(ku;TQNO}3&Noog8`~t3RACjAFjQ`MIN%rW!eqWuse4K)jZ6GL*ZSPDrJJLNGmTH%)0n<9 zN=Y#{NN+Q7q@U&Ed-twp!XmqKi7diIh^&~Y&U;8h^X9XHgJD`$XKtAVr2?9(y?KLc>n=;{CnS_l;T*v0-A#moihMhUPc=!l z7^wr22ka%no$hES7sQ_OkbkeCDHpy}Re2N^Z7nx>XJjWFZU%nT;>_!bx|PsKYnR61 z%yFghL~?+qE$pLwTZ4ZeZFgO=`R{uvw7JRs0-r`hPQ7K$r@xjZ6{x1+HbDzOHZHkDsr7A<@?40BE>tbe1q*%oQgKxnrMO6Y~J|%LysW z5KnH?a$9Qv_3vzB@RcIm%@ms$mB-4rrWPq~@jK-66=bx%9$+3GZg~H=9d-9&$^oR- z8VyyeGa7Ks5WPD~A)jku-BMXbmN+u9Ry+{TA~+Xy@LrMg{NlsYe0;sQzu|b`z3aQ0 z9I07yZrQHq4WH^()6kI9O^yp_J&x1?N}CVVdi^R51j*J1Zx!;{-T5$C-^2ld=VQj6 zqg!w`MzQ(HM6`p#`M%%YO~DYQXb(}#XpZiiPp8gJ?qMRw!{e`xf4AW4o2>ZF9iMJT zBAq&5r51tFqcmpid3KY9xw)_Ne%>Es72g;w+87m7`qUBMuF|ZRHGX{@;(Z@I@{pq7 zo+cuGmau&V0rr=^u@`n`F&w&2O!_gS`98`_D*0E7;+<_QboE`cyGk=)KJ2~Fb` zXTEc?C?-p1#4d9gy=IK z&{@&iNTV?#lrJf~Elt$$5c}EUq(hv>K$jwpL_WDgF$iXl7^i(P(#nEw?a!AlGow%h z^@PK4SoL4z3I0|PA(s$Rt$SApnPP#TA3Ow3 z|BUGL7k{9j)bu#up1Tf=jg3!C&>`oygmW)vY^A;b#hc437kL0)N{7e=i8@I^-``fW zO@vaZ&p$;6q&L{-@}p%9{8;@H5fmiq{1mFyZq$5fZ@;K*JJ9(G;MjSC+^*w`lSyO! zZ2Q-gE7fh_(Sn8{bh3rKj-V-dc~tS(Ke5eV-}6M9^@sk5xq9sdQO(hf7`9d3ZLtIy zohsCGjS@f0H-gZJ132Pw?ys_YNfE3KLR92ses>g3$~&w~&O(yV)YZ5``+4EEehNC< z;vJy+9l%f_!WzKo!(Iys>VfU6x3-U5jG44^NDtmvUJC`_$cAjd&H)$$+(Yh$QTlky zP*$G&ksY`wTHpP)W?%u?=FAfUT500-4D>YfD{Hu&D6Sx`-*Wv1IRahcF$fcnmRo-# z5%gFCi}iS{PI6?(0zyl^ADjm%_9jN*YkdwoXqHfB_UAFMrVOyc>?hX>-y zL6)?pYdVSd@!SXyzrcZEsp6p-12lCo0>CMf?t6)v1Ar2570vVGHO zh{vx;pma*%8EIq$HN(Qnn!E39eK<(7_hJM6*xn4nJV~G>t=p6@+dIzVARgZ0tLV|2 zT8Rn$Z(7$v5jDT;dWJlMeRc#EmHU2L4GS)6Tb%X^-t$ChpmskoJp!AZf8=lzwzTM$ zb5aJdInTA}=wmdL@L!4EN+nV(C{iC#4Yqjt^clVpaLU;}|1YxAU?d=5v=E0_f!5db zs!0(7LR_`BkycUnDt#CVNoxOJvF469q7%0jCVPVDuWC)Tcsfb z4YV8q4|3O6%+cf?Q?Ro$Q?LdhfT)3RiVOllq8>j#zo^oU8(H7@K1d3zmJ1uXLAoSMIT6(%yX9hEhmWu8rKKMT;m=c5F$RIZ3r{LUA zT3#yx8IKtgU{>LX>qPx>$Xo7`dVUj2d3kvSbTA(IwC6R2slFUlpWc4~hofz3b9cBw zYx$5LmJw`KB#z&5aSafbq7ToUB7m%iNeOlChu|+ zJ6bl@3vK~7bm`lKRLM-ae%3EyWghW$l}~n)Kb=<>Cl{lb!<==x_-gRXN`a)zDGKI@NCIs|_@pz?#Yp!>;!RwAM!Yd=#P{P*li} ztapg73U)u#j6=nMhAQ6;LbKCnr%I#2wBco`Esy&O%gR+Ex+$lFhBcqv? z=4R(=zOBva$>1t0z@XmW8FC#qoZ@RYc}Isb=%4qZIEJi+yJ%^1S~$M3-=+XKcV)S5 zy7&b>2SBHQawQH?KTbaUcq8}&VfzEN*-9qIMbVX0MZL=lSsP2ViJ$%fvdTX|-pVkK z6A-+64=GnW?DAx9t%8CN2Ny^A$6bgI4Hh{V)k3cPKdHXG#h$ap$X$UmIctBKuXEjc z@{UOi_%Y-?kUrS}$dctS%Qhe@(nYSv^geh;R0wdI);5{h2_|?b zO9ldN>!NoO+k?gqzViw|l&fmalS%0tPl{$fS)^3+1(e~LUPE@Q?k2^L&;-?-FsWUL zPN9Ov_cO58MtRbu(Js+~l2#93eN7a7vM4qpxDB~$59KZ_cN;j*&6VzxeV?R<8-`N( z?vKM5JDZSN^2Pem&N zvu3EYIWPN>r`$hF?1v@#%ipO)LMaFO0;34qA^gw0<+9=9V5RJ9_1GcgzPE1>@lU`p zN+6MaJgmnYp&kqrr@pd8JTS8#=JiEI#|IBN2x*+an`9G*e3{k})lxbQJXrH*% zJ*Q)OKyj4Z|GFzkxz&~+lW9AbPhizNqYbGnN-h>qRdzSZ6z_n$@jXj1!S^ixF%JsN z_tw52fvumM#1dEj%P};F_RuSo^d;Ut!_#Uwl>3+_1JbLy{4-W>^AhZ+!z%kfrHId$ z`Nl&A1-qF@fdp!NQ>s_wP^ud6}b4;VeLzRiY9c3W@?(lo8WLH5XiP%1VdP zHKnqKz|ePp@dt*DY8e0(S)cX-^{!dcjXRE$I`a`SCfawzTo$ql>l+N9=-mDTBAnPJ z?FYZwD+)e$C?FvBwSK*3m1oy6mZ*fRarh~fZ`1=Q8(ECHXELH&nMI?j*wArM-~=hD zPs{^UMMCE``tG{ENVEQ#%jvCa*1Ii1qU0W>L-qXREqhGt5X~;}w@A42n_u~(dPdtr zEvJ#ijZ=#$_KLBT13H2GsCxC4KF>nhi}GnKXN<#ki|6IK!isX+yQr)OgiFR}WMU7U z*al(4tjOqyZS;d%oU1F>w8jijEvvqp4082z#fX`5eQ(l+r0NiOvaFna+vpZ<~U3kK`J=fMw#Ooh*inbKAH`PY&G`Gz|nXmZ_o^-6l~Asm#<7up$a& z9;MGfOrR3N|2+zxsN3(sq-4@NSGwd67FPnLbqQy81DiguLVxQgloqW@6A$&x%#ep zx`3#f!@0>m^gtgvARg>OSZ)~{XaR>HOPtD{cKXQSF-#T16MKjqVF9#L$5qS+x)*Ec z0dI1(H`sE%yw)1$i4mI}wVIXlOX#swM!B%%aKE@y2hYAJ5k^K9W=4su#f6URJz=i- z2RD02e>zYcvWM&xj;EFO_8lERvcAaIqJoe2Uh$0#MZa2nhUG$>$W+rgh&`BM0RcWd zsGKRndq~=6d8N~-vCq){$RS{>x^t)M=vKapOs-K|dqVvZhk0ndz*Oy#`9{*4rA5Je zqlv|Rh6ZaZooh5k)!-Si6tf&c72%ijvDx~}2xqn@Fr_6xA)&RaN#q$1XdW6sLLM|$ zGmoAMVHZQ?{6%2??B7nh4biWBRe++uzy6okK#tE~WpM>xh3e??@H1lfDszn}72}~U z_6KdU7#wi%?3z&RN%8X-&={yF8C5p;_vyEbNIN5 zFunsGB8w8OGg#3Vv%8~E0Qd@_S?VyjCJFl1CkRfpwJGqCbUe>C2sWKYsR=#^zO8gBR zKPFM}f2p@Iwbe7)kHVI?kc$zColi0GR;A`3oVg*h-XV&k6{4c_VWKNx(E5s=^2`nXI92izoL}D2-$HQvN3Q%xTxQyaTFKJ z=f=rF{Jf{HR9^5iY8_x?P3J>p{zhF{l8{;zdSw@hQ~iJrt$B zo+mvaNhBS_CMf}hVXtEs52B_3)QJhms`z81P8<+C!4e~-RLbu~=EbJuq398Vo`bg~ z4~Qq+VoJVtv6P=o^2C8Eem7{1-im!fE^#X%2<;sm^d!t>y~VY_rX^W}fmc51BQ*7| zW?%WW`{^Pp&V^e|6e}}nk@mm+o!Qc6Si9GPH#ZzzBk%}t_DJA7x97r@=#8boVaCBd z!QxTuIF|W#p_c3HyyMmjvzdm6I5}MUNL>*t?$sy2d1|~cz8W{0T0y_M|6<`{!KCw| ztoTZgx?3?Zxj1aMb_^CAgy*!FaV`X1kRX!irP_mo{V6{fo|#m@d7f>B=T=IL=O&fI z8nHCbYB%w|<8J7UeWRl(Z>H#>(7?!e$-}LfiwuX^NTGw)}IkaIuSFeaO>1x|&sNy0Q?v zR-Q_;FORtW=m$ZHl)^Pn2sTr^TZbvF+dgI|qs7D0RS-#)bJeAkV`9-5|dTQ;~bQ}Pvmuso}9&N=J_##gGUcW2LXml z&sUu%-LuOrh7IAB4gQ7@4UI51$($=^nJ?lT4N^xP1_BQ>Y0 zj|Lf+@{@|j0r*cGki36E$>Z2XoakFj9&R(dk~uO&(qIzs6xhkJWTlH9WL4c{l58xH zOHSyZ^l)V4XWN^1@8}pByPd0NmssiV>oQcWRZN<{-yAIZE}#q*bpccnlDv4~D5Hhn z+4&Aa(#h*8B2}vKDoZ~YSbI17S;d!A-@UU{o|-BlolH(j>R@4+n)VaVU+uDUUAcA( z0Gc0+!t3I2TOrUX|R7>rN_-^E~l)k0-;= z0xSJ4&ZBNHmSn$}H@PvFz&5M3@lC;Htwvnai?C=)d9(JljZJnLI|;7Q|8(<8-46a71}2j=f47Ap$|_6Wbehz?dp~;VEwx022HCEGc;U6VVB! z{Bx9VoU&BeFYdXZ#$ILTEeHq$M6p-J#5{=!@?w7p*kI93W&8O8?J1#j@huKpjHDxze#qrNm|A(nK)OA+6*^CYitQNkHUY z=>uNbSCl-+z+3v@JuyCru#t@maLRrJSi|WRej^3#U3CDM8+g!dd@*_`mdbmP?L8>X z2F~;rAugLFU3x3oCj|lwh*_EN#`8+#UC#YL2l`#CCy-&>W zg$bmdGTh>Xt2~twOxXtoY(@NyRo~irGnI_k2m7ox$Bf07K7+Rta9L@xbIpZ{gcc>< zQc{rv?`AB+`V>cfyx9C(g>l!V9>2*AG_?BANi3yD7+2!K&(Q>yqPa_su7_F73zzja zFwfX3wHCRV_H^^DtHHs$8w;%TZHvZ51CBE<#8-k{pU_Nkan?qz&rFi|qLy1{%y3#^ zanX9(=DGqDD1V(_`JT|ZD!!2FX-BnJe8oL^a5F9FIZK(b?jA;f1K9h~H=wio=TkA& z&cw&CUjxJMmoGy~e-rflDrLXC8z_AyG$sf<$d-DIk-x#aaN%i8{#(^!ZwMH@k)Me? z0saU;<(8kUiYEcc!QLiDj_Tr`%E%KhE6H(YXdu9mw8ls{=(ViFRM`e|Db!c{7V&<$td9IN!q9X6^;0ek( z5$z-vh&eSjYVYSS1|GGQ;G=dAN~g1R$gKzCJP5jM5LNh@lb&AW1_FLkux7Giap6pfsqzRC~V)>ISd(L~oHn6I7|`VkNhpM8)T=M0&7D zm>bPAC4PeZN(yEcVlF#=JcX`{EsZI$9gkV;iTjk|!9&$oB5BVPBT3Vt)EBk=AZgtj zLsP4% z`W1Tyet3@3z-LeuKjM^YN3HS_3Y3taJmo<%CZM<_H^2-?vY8zvF>?}!|DZrQ1bFqL zr>D#xP;?$5x2|9wBDvsn5NJLtj6D!x#UOMS6#=A!Lr2Dj>B|ft4TmKWJ%^)Fzk3heHLtx$8<35<8_<4aPqVzO==&=zP zdX+W9n5fA$6_JT2rNrcLf8{WY^W#SYGVh@>Rmf{G!N(^@Awv;{@_5yD&w~0%rvDCl zP+J;i@#th;XyjY;u%k2nJTSH&)vD=(GvA$hulA+3AFV7`(f+20DKwfg`JX9Zj-QQ^V*9_ zBE&E|w}=w-E1uA2hpxLyM#t9ROl(|gDzpj$)?KqUrnTC$>U_wdxUbQ|A7ldUKUCpZ z^Z>Ifd$iQ%ZlQZH3!AZ8dYgk%{&%IHs=xgC%hXl^10w?{qicAXxpgEPYwO2Y@=5(J z5#_pnsZ^<613Dsk(7{yI>aJIvoIbnpDj~XISuUXi^@T{zw%ucVvKI=NcluV*c){L~ zQ#T3&VMGaat)udK*XESdnOfUMQTyx>m<8ZL0-5baO3qSN!Y}?xK|)K`lRc1bBC{|x z#Cmt?Xih1MFwa3r55S9x35Vnh&p7YF3>x2=8Je)gqsA_cqsAoP#edWrpdrd&)YOIK zOhOI>P9_LLU%JPg`$b?NL3iLHbQ|l@L{Yu`@_)_Z17!5Y1n@Q2vTqYr)#kLjz&2evbIr1KnS? zzs_Mv?pCaaW>}F$b3k=mNgDH$r$u=AcjxK=R{owSRnh@}p4T;ubx~p5g=hHG&dB8y zjz9TTBBD-wREwRNNxGC0T@7=N23l+{q+X!131_hSqWxK)Z0V?s4?4CEC-)*}{b_3y z_Z8UL3;P}XqJhlB7$_ejo7mA53~v41^hLF@_gOU$3~xTl;z;|5S~@m1B6bC{wLqF% zT-RI7g<;UZG|MOp>N^am=$s|;r$w%QGxuQKEjgBH9GK!vMt zFUh^RmA|%+Y-aw3Ne|0?et=DoJ;)h3gmf0H%W0}cNB8=uGHR$M#%w^aJc(Iu*UOYP zh9M}yqH35JBUAxsY1^RpG=ch0&~N%8!sciHiXHS#8-}fOM@1tl zMn`GUWLX6r8jwKs89?-{E4RG3pbr`)k0yrIZ?+4gfgQ7HKL-a=^!vmB;0<4q$=j7bfMsVau{xl6>w2U1fs2?^k1V0+2=vd0x%Vp6wJj1(Ekmx z^38*8ZYV@nI7ul7nlnKYQx3l*Ji!cqk!(-yAa9O_#jv)>Ivy12y@AU>eUi~EV~Cxss8)^?4D=%%tZ>wn1Wk5ig08260k;a^Mf3y%Z;3ND9+zkd&It8O!jWSBZqiHne7c;5YLn3H z(Lsubs0K3?4yk)!Zfg~l&t&xzx2NGGTF^sC=T)eezwqd)oU;4fkVpOfm!{E}!M}au zC8e##SLp`?Tcyued#@f*=>?ty`?&F-zy~$V3H+msiha3`lAc-{v8Bf7PaSAXTx>Ip z!*2l!rpQLs5rvC5BSyZmW}bOA7mnK}03csgcg zL~O+z@P>#<<`KlDphb1k(9m=rMkbMXU+f3UlXx3d2MOTLtXknY*4DpUid#W zacCA1EQBpBH}{jrNugF$g+~^k0^>ti_Z%BoemV;iR`BryG|U<0K#&}m_~)Y(@P}3@ zn0BH=8y_d?G>2YaU}6-^5s|_1wB%wCb)2VHV8U1f);U#oE9FOa2O9y?e2QHj=Kk1$ zSl^)?*{R!a4c%G{j#VokwC;k*ks%A_P9(s@DEQO>3Cyi4*^n=Wfj>Z26#^5En#x~C z`d<*7oZ?@_nr0m5v1=awKuBU8bs2CBA7YU>1fzqyu(S&S<0CQZ{{i1)Lsj=5c8Ljh zQGbB{d=w>`M2uLuDjSHJn)Tb`!>y08d<@+Q-QXl-0VsU4H8r;XaM$`P+i5=IUW7(N zu|Vl@5*vd4lS@cO-2``BfDIdNHzJYGO*}!K0gZzXJFQLBq(F1;nIS0fV@(>MtllT( z5>lK9?~ZIocE_!zKi2T#zk)|LC9sO0$QWGnA@<@;2J%&!4e+tMT1bE025D45kLRidSwq`_{6k1k9GZHIL>Xsh+Is| z3g<4=f*=wzzl+Mq;6Th*N$-T^318Dvh+yF33U$%1{u-C!zZCOwdpHeDD;ljE$aO^v zVBFd47*futKYN~sG`RWnm1|B2^Sg%|p z-%%bmcXbvE6SHU(_|Wf9IX24fS#1p1I0H*$kZh%Z0b3-PQ30n$`^CkidXk(EEAC(+DsON$^MmMll0BFDS?=)=|v(GRe2j|@Vo zoChXT!FV!J4(PIxlrW(98O=PS2A%q2DGv2le)62a7NmC}slkxGujy^5gJfYnaDG8T z#a%n@tq%r#{%0#|VX;T38T$0(^830?@N+yj3LlzkGoC$Yvput6>!9sKZGGc4j1pUL z!fXT9;3FdS(MDPJ$LaMk;VOIQ8ikmP0)>$pvLWEeE3nyJtSR1{-^FlaoGs1&TY>M% zk8R3%@F_g05cH|3t0`FO zd457fCiu6uNJoXb^>JDHHcy^SamOi!BZK!_pRTXwe^Y$-aIxR`X@ufrp6EoW*m$zp z&E&eJ=p6BPyF83j3O!V32JXEM;ENhME-R@kC(p{m^a!6Z*+e=d;(|M)^|eu==aOOH z+J2Fnj@_zeNXncz*jm8NXT?I9t2^V6J87J|V(Gnjm-E=8u7pd^6S2q3^UdL=?Kz^{}q! z!D{icm3UR`(};+lM<1%mSW_#_*PjsZI*VO zu)gR4BJwCnWc^z6pY&M-x%4{5V| zJm7|`sxwK7XV<1migp9Ez4(aXDhCbyRDbBPQBqM29Kh2MtX4kx!aYVc+>wIA%-Br5 z=xzmtV!nWYaBoiXLw?!Y95c6C4vPy2<2^E?9;nqo7r0oK1NYGtj-`G4l#IQw;52F3 zc~VzH3J?%mBOj`k#$~L(yCa#Z%31V?jJauef2b0 zhUj4KomV1u^Uw}H#=hsaGxo9?jTT*JIqUqBu^-}kv z&-#%u2M+H)=|`YS4_`pG)N<#=znHg zQXF)jyn)}H(o5fDQ<6SrkLQI>!(jpn7f0IAn`xp@?I5^*;l0W=*5jmvms}2ceaJCg z&)(2{#5W!0>&ZDp z2y?4_PZxZ_O5Wt;;IUbs`*oxHRp?nfX-C-`ned@1Z%P%-Td!m(Fg<6B&mLiGw=N+d zK!*;+V5BQLS05~J?f}7Oa>?hH<9QVc3bi!Yg9jU87WPlj$x!rF$jE+NkV|)aOA+YV zASJ7>PsvfW4f?poxBDfhY?r^NE2d{;gkaiT4PN;kA*WQpV3gjX!FBE67WNFx!4MyeK;fErSCy*g;h@ zU&G2RHc_gZzg7tUayxP@#MioSzf#Oj9%UpjUD-{69sZ`Wf`U1Te7LyXalapoA0@Rv zh}bP$7DFa)ZEdU95L4AZbN1j@U88-HzZ{bB%U0$|&t`A9&y%7EbW9E(*;ByXjy-$_ z2rj93Fuu5WH;OG7oPr!)WJ`;1ZiHL!S`Kdlpyt6b7NWJ0-j02zO19Ie%o*;;~$|v#5a?Zn4qnH)9Z!kRa%(0tSBUiv|{!o$^XOGo4`}m zeR1O#H?EM2NQMlFGAknUSR|AtAww!kp^(gTrpi<*G8K6wW9Ez*OBqsBWG+Nx%IyBv zKIrlM-v9f4K3#I}xo7Xa_8PwHyVf~p>zfm@z9)GA`}6Xy*+AA+Id3A~^VjJ_bXp8o zYhtIhzBO311#~uL-_e^kH7X&8pXnPV?0)~ASvmYvbc`!gaHiu8Memc`>_mx5)5Vj! z9n_>5koE3%sG8$N1`vT60NyIXWEre9PgAb zxI^0Eg}P5PkO*OTagheygiV_~vhe;HBkV*U5Dk)+l-jDg*bK2J5PZz2d9tp!?gOVn zqRQp&$YHX=OkYH!N7kFA7Xk;rtn8~CD;2Q##Adqw5P}L3e-fTA~^79?T5A z&SQElJ`uwXl$)EeaU;r!BMX#%+=L~;tygcE z|BnW%tH+d8R=caV(=lysvggd@=HbQ#oysXZ>Om8HesAffS?Y!yra;0|9cj#{l29yf zqeX^VA^!EqZl8+GC!2O1PZdETO1MCs8v(0^ktZ~Ax#1vnzro@y@C~c?%}8Y&sK}N6 z;myIHiX1Fb(rAdV+7&k_dsO~hM+`c-y0jIhT{*B74CZGh@MBC-S3zsZ%QqV`xhegl zYMwjH5ASj6aq|kx#i8anjR@pEoBb}%5hOuBz22za2dR;Pn1Hmv5?`ycP4VJf?@2ix=FSeG1v%CD7JyZyZ z@cTwA`k#&!ooe92XVmE`R)$BIRIQ@dJzkg>Dc!_gc~K^WNFu;CU`UdJqwgxitgcz;uL$61p`_}QIc2JC$uCTIjnL`8 zbx}(<$<*F6LYE_Yq0}Vp(};fCi2mCJu{R4Ra}rH5Kb==Ag`XpiXEGa#@68n7%URKe z_tQ)T*g@4DLes&`93!avKD(6dNSAGJ<*eF^-qYuV+N7%6&L+cqr)$ow{m8zxcEFL= zT+=h{#E|rmbR&jEW*zudAj)Ed-Z9!1a%tq8kjDkMg(#e_{K+NND%7}!8rV{>nu?n! z{5L&`YfqHvC-c4KmVh{|Vm*Z^TCj<`q zcY-GBU|%A8DZD5*2H|+|baF z=Te$qQewQAb!ySB=u}#J6#HfP-bwV0=U;=r(?57%-7w>lo?l{Yl<^5ZY{>h1J>C4w z;rYZX;Obfwo+01l#^@Es$Vi;qgtSm{r`??jN7V!sXbY2s2C7|rHZbq#$U>>07%l1` zem^fS_{5E$F<$dZ|tc3!mHNttVh-&B!G%agCfyAS)Ug z9yfa%0hE&_xb5{ejVR;0 z_?*O3X(H_-Gtq@VC|YpJowUSum49&8nEkx?GrS8AQm9jK`+*>=nsH0ZL1i zvmPr`Ax-(nV9Ht=*)RS$?|! z=ujz1*gjroVKSg?Wrh9ZGpl`98)P*0*CXFgJ$**j9i&uC5 z#}R$<98qX_3!`&XR`tLSh~XwLhUvGF)w`TMtgL$Y%maP+LB-9^otdh=hbJ=?ntOKh zq5JS`Wpw5o%0FA?Ht%~lxsRK?%Y8654vFF^qLnmclf>dSB zulESF^w>u*GFn&c>dxfF1KdEU!TJ`Kl<;+zpU_apui?37A7g-t;$Iz@a{2kVbSx8o z!_1qs2n6-p7rs!dKLphJ7oi>FJG(jR`B6Zhy!dq>XQiS9aDOYHmmvUQygL8pC1#%p z>i!oxViJEFx2q741UAf}$`$CaamfjsZY*8bjd+-9ArV zrASi+=bjhL+Z0@LeO@G&8+J{SVNQh^P_rCa4ct~#@n75*oP<&-1YLOmBnIV5^oB3LernxbE0vl)V=|rT=|4Y|!|xqN!2iT!p@dD_uNDXKLn><*I$Ui2BuM*# z&n`qv@U5~?lQ0PX^!{(^1jJXFL!!h0In^nZwY*rvNzayRcSQb={28@lf{iTX-3Ud) z?6!VKR7OS4FMM?2_4&zeWGQRuransR!XYgpRQ9RPi|iI|=(pq2y zB7A2y+hKeAO_D7SI`(@-@$PCXynDA%I9kT(&mrgBe-4e#0Sngf9qwlZ8O%}RqU-a% z|5drIXRzcp49|EcA?$JY|c*7H^GDcuF6xjL=Ln_z`qzclxP`(%f`L-d@X>XN# zotddtH+z@TKjf%GV5`n58`I@ETN-lIAgXjb4@$NnJ*vtTmh)zDl=ZyK7z}L56<|kL zwo-$MA=)VM;Txb0AbqGLuXxMUqsI$o-bP0a+L#WY58(r zBP3c@!kJZPTK-E6g~sc+%F-&UJ_ipMa*?m&Zrn zsvZMchaPPe=3)xB&Yj#qcNN2*D9?m#X7It-Ni2 z17db}#2ZWz3=h|QQQgQfw#f(O)dN3OR(6$QoyF_P2n+NXcnXS^+;@d+mB_mGeeyd! z@~3MI@W_Yc1Q+yPf@bpZ?S5w2CF1lzjb7Y)|80VQsf3jC-xZj>XEF#u)?su5>~!vP z3qx+!dBNBgX;%KN-~A`$S1Bz_?Pj}O$Fa13brnfxH~R=~jbheYRXa&+JNXDW^0ccz zs|R|`-ejs~TUe4jfbe~BiP8EFWP$GP9hAtK?~9C&Q>M{Q26e%_7x8m`tXJRiY*!J+ z2CNalpG?+>Cso?IKiz3{4X%$pup3FVXAy`a#98tZR*F&fxlS>UmoCBx$X-+@Z9`t#se?bR1UWLvMY?sKL%bO0#NUGnV{H3f?RajwI(RW8`rdra(7IrB0$) z#;=2s5MLMJ4%_x?Tm?6Nurclp@V2)e9ZBA6We%R84hYkPpl*e^C7}e@zL|c3#-~B6 z^9BaT0zCcJn$_+7u-)C)Ty>)B)%aOd&{`*#XS>{IEv=qBeJKpWzml7=6tfPQV9PI`Z0E7@GlOKTYJOax>C;4Jq=2sy5ZQb z*gQ25=?*UOrGLe28bJjyRl$>euibzx`FE81#V;C7-hI}wv3lHmm|umUb{i-;RRKF` z5m-@*?vWiTOaZ2xa>-!GQX0HJ!5~eQJo@CLZ(hCPPz^{!M7N#pC6KfyvFFP8&^ulSxO>Z7c8fXUaDafD=#-B4+?4w~Zt=%d zfCvOLfK-j>^G+&RS=pCXPh_Nxlr`7<{mV_*ogU$l7HC)E`j<{_*Fo&N>QN9s7W0Al z^y~rN@Il4nJYw(e~TEfZfMfhc8-?7+I-AeJQ_*(psM~*ZVlnNfB0s)T| z_@^g9eVtdx!cZu;YQ;>u0O~#TQ9v!FItcoPy?ggK+7AWs6cA1`+&>0<|NH~fg+DK? z&dv6e^`;m7S~g(9Ke=pe<4TIFbO*nhm)*huOi`ym@hjIwjOZi&2aiy0tRl7HylV=; z^$(2=|5DRzj8%vXP?e_L2T+K}7UX*A=RkGulx5REOSOHs+ln3dUhYXgxa-YfOZ2b> z7;NdwzIiBRRTb(@Pf!1trn^O5GrW|l<(D-0Mqn`kIrch7Rb?FNUSEwmR&-$y^MGmv zXNag)9#o{Nj4<_oA_kFbHe5}N!|g4yN+^zGaw$10!dS}jL7;k>q=v}B85jWxP_5ka z_nyu}#qp!>RlrzNPC%87@6Dms?YkS}np5fu) z_bQM}doc3 zH&Y6FfW~wj9d2AOB|Q*m8eykp(&2Df={b&|hM#Vq$=B$PHhLs@IGa}(ijqg~9k#bc z2G~ZsIx4yJ0c>ND;lSn*-mo8!Jd}VO>rW(U6b)piUst9y`$6?iD07Eg9;!hqb7fn! zSFDWhP;xeb0BhCv{ecPGqIG&2ugbRzE*mKffH|U*sIJO;9gBbx9oYd|m3t9Od!&?m zo=**W+&jdCYEgazpqI{)+4iSNWPYmLNA}IbHSk~-ov+6|ruTol_C5+K%QG)hr$9cT>~yeb`n)tTHPs zZ0>Zol0vx!OtbTK;vl`El;ibDabDmUI@O>DNKYC0co>8j0c~^~$g#s8za=*6*a1&u zOkX?X;=$XgBMWwAL%0Rij>nFpg;Ok27Hond8mc`^EKD#BE?)1TA_@k%UPV45eraS$ zPd{~<1(JeQQ`nc1B0%JUE6sKcH(ce)LXoz0{&*zen5*j`)6siBer!hGN=gGc#PmJ? zM!aYH2yc#fxbUKy&z1LAN9x>1p=LARy-??lkee@3wmIKzrm`#P@WTcol`4;2CdBm} z9y6a)ZA<4q_<^mp_<@q8#DD#C7M4ytKtB7{^Od#P-@+h43*4>lUnF)2yNot>)y|cB zwyh(pA?FSK*gOr*nY6_F-m>Y4`8=8X5i=9#fS5bLC^-0rst@ZkOYCC z9P{V>7KaX*#DnQW($r=O`d~*7yc!_}irffwDEKbkDgdt{V5TyLbX8>?%iGH~Sg{w=d z%E}NP954R(IB@su^5V5fFv7<+tWA`_^$?JzL85^?Qy)K4q*_$r?+m8!87yuD=elKU zh`s;16bqW6T6Pr<9ox|7vwG% z3ou+0Rqjg^QO&NYrz;Uf+071BV6KpSi;Q+2ursTZUYPA?LObVb*Zq48pahI(&hL3S z$KbIL6b>sn8Rq0cTZbU%I4aGbH%0qiaLMh8!}*_g-c$i=rNWhMX*Vt&&B`SQdN~8R zUMtEkQl?V)TkcgmVi-UR+jeVx5FH_E={eHvNL1WUnQCPsXu-QEW+L3$dEVM)u>vU^ zG`J{B1FuxF6d<^d+ctd?hR!dGmwdg7+IoKYuFc zqJw3zY-^Z;09yd8hcQGF_*c-^a~zEIXR*0qek@dUAraaab=6k)nf~^MU;#TS(7M-< zy@jJ*fZ}8YQ0|s$l+F2}^bvVD%rSunuzHWFL-5`py`z9r%!q17M>{`xn!$Fl^6UW_ zBRQeIhZy7tI>18U4YH5-)|B@)7dvOyzCzo=S1AR0fYJ)yKzSVy5nu>=E5tyu-QExF z5qx|r!(){^Ftx11K)EzNR+O5reG^m#UN%7w6?GB#O+?&+B{X#qTG~4E$s{E_t~lW1 z4U1|FbjSG?e>{9$3&)yV=TCizK^M+x->0HL5xsTLXZlz!-_zWk1 zbs=iEa#_GS55Y@86UETj{9+N(aA>;nB_QptDJqh-oJ`>dRxH-EvHt-`BN_crzV! z=!#r8P=kePU}C=79*)-%<;S5qA7cN~A5y0-M1iZJf)<(Pizv=l3$qxl0p~$I7Cbr7 z+O?i7P9nbq-rV}DEauvs#zr44A#a{I1mFge+->yS>d?CrQ1IvKNISSIn;dX|&ETF9 z1Dw$G9{MdHU;~hG?gSNR%^CH}V1Je|^30r-pDk`_k#u3q8~UiG<=Y>T-sr8^N)~2} z0PLV!O85!1n}aWrXrKX*b#!~DG%bS9sO^vN=%JEpTg#OK3S8SuWK-hs4|$p$!uC2f}=m z9T2#LEVheB@|s!qz78T8QeBkJVcbiTI_4s<-k`kO($Dxql~JD(;!nfwuPGLq@)Gj9 zTb?XdAgO|^l_kLXPy^l0^9W91?;tiW{t-s3V0~AYxBqP|dS{EPNsTvB zoL49>$=VF9AII>&K1*eJV$m1CHym`An;a++P9H=W02wifB5zb8!d!+2fs4jw2?V}6 zLX@hAylS2*pWPb$xzw^d3}FAwX9tHT|hdB|LJ|>R&w~(-A3GxL#89?L`O570W!fc8m3o~CC zcNZ75+aL8;&qhrS7r1{MVAzdeqZ35XFI-D#PeZP@5YbPf0l51b{6^Vjs%; z@UQfE-W)Cj$#EN2p;)d^=tR&#O{4nARg?Wy0ZhK_~~+u^r(@iqUfy-ACqM6$_T! z!*h-5@66YzWNzNLgEck?Atn*k*Q#tvQK!Dx_mzsJoyFk<_VjFDKtH&(=&|z`F zdbL})a3>ZDu44542dMLMB3^w}H9mhSH-$*e0HlKb&@4S9_rPS*k2+uMCJu=b6Pgaf zMVq(20af@l8%#VJ-D1 z`<{9P9Rj&7H%8e$ms{F(i(|YUmVv8R|FubY*lN;h>(W0LuyieIKXj>PLE9|k%WN_T zAZw_X+_>UU2s@h)G*~vj)Qi}VZ<`o%Wg}7@eiZpOaUEnrkQlkegX-%!2FkyX14mw7 zLLyURWgw}@e=mc=x5aHClGmdiMK7`lHn0JQ5t-|CYO>Y_aVH=0%wDl1RRk4 z5Kc?{dJ;QO82cdP5*_LTfZM|uqPB&bmerPN4*igk%LnJzsVRL&j_zu9N26y0d%?*&BEp(H=QzPI-q;E95IdU_^E zJi9?+OAEFG3msn_j)Q%1+YREQp@dk#2lSqe3J7A?wfpc@5%L0U=o`7g7#~g~TEWH0 zX{tSJ-f2mG_ZS&x?^XPYfF3EX*0yK1a|^atIIZ?MFa>LS99^!A{~?fRT((4J6H*Zi z-_p^f4q_%R|9$_^aig_PYOWKczF(8_iUK^`N!0>ScrVa8tO<@M7B*W~(#$_>ZZ~v? zz-nPYYPf+AyxH><&keJ(BI58F@Nj|xZnh-wTF0!g_79H9=Z3!b^a;lv=wE(vD(zA< zG~Jl6oW7(AoqE>9cB^QjYO7>RLJ*}6A@NeQRWlpv1$lN!f(QChpkc2WGa^-jj`35l z87uf(M-sk6gw{Sdwp!}zN%#ytO}_L*g(;f<9BTNJBvbAY{hWI#a@k*O>2inMc*)ch z%{I|@{q}Psq&aD>QMupUo>ajZ<+HOZY4*VJp>kf}TtoR%!{qq#%5NEH!nE;NmcG7B zYAt7FzxFNIH>SFOqWTu)o?R=;<)%wc2BAEdS{sjV;f1dv0roKH<4^(#64*{ZRj{9!ewiLzQRj)iwqOfT=5E-M{Le z1bMC;>h{=A@DWr@(TUmr#dJ>92 z-Qs(WUyj;_f%@`$riv!NXdlS|t2ke3@}T`w^1Yd~q7uwLA zb_-6!&c_XXY>8dm(5@DlBg+1B^{7%43ht4aVtf)FZZ`!8_nQSu6ShXUP?5>KpH;&su;EF7sK7qge_Qa1>Hi=HMK--DaFY*<>SO}(_KuSB*`i*w8Rgp z6ik1%2)#fHa{JxSMT$p<`BFmg1A_OA)jpt=OO`%_G_6dKCY8!>5$0hmo!srk)Cg3Z zb6Hq~24dKd#F1Lc_VlG`xarZ9JVKS%5p)4mnazfP8g@wl=PSxB*u@My>+G&1N*THp zJSIz^yfkDVmLLaLh0K5J7obT!;X;E&rSm@r2F%q10WDyeDJoK;Y&1=C<0UVP2+2)M zKyk6pNX%nUhWAGvR5~* z$r4BYcMU*Yi1S{Y-M4rP@D5hILKzgC+`+U38!7hR0#PC=?Nwvc2}($xV5g59|L%G2 z%mhAg?8*MK(xmycLwd>j!y;DapsIKP+H3b%D1ycv@blhCB;rFhmTrmS~_l$F_?(?>0dpt(HI z;biK~s{+crbLTFQC1#(rj5l!WW7-IoAv}%*9w!IY)4&AatT0PElhrCp?Wg+j8si}LR%NF^f*$L{7e+_`%8`?pw^s~2dw zO?~+1vN~cIlqH-TBgj-PMqfN!X>co!qufkC*3d_5iV&Q5WY4egy_#X|5_HN$OU6%R zWJ!0}AMmxk`Oaon!0hmV5Hj%W>p+&#tNh2GJTIL&ku`2Frl{UZ%%VBGb)IT|$s=Xa z#r1a?FYHluJUOUx_$&R?0cQF!(ue)R7S@NZo2psZ)3^=wc#jPf4N}Ed?H!{D;Qdv; zqDN{E)##@V?8M*Ec`rg*3_3nIP7|=xp!Re9@19DEZ(4IlEsonaG@d=HU{L$#{2`$( zC)8=xr$+`>Q-4+{GEOtr)#LX8;r{xT%;|vFy#%+RFP3-5)o&CFs|gy{P@5p*Et7MTY9(4gBc16Ee7)5yEgkj>KrcX+JP-X1Od{b z5rq~1voYG4t{TEE#pV`^7V#sURPnN{?H%?DC&tZRnAK%u#4(k+4?fMlNzR)_+#Ime zlIm7%!3~G8s?BiM|A-AfgIr>1khDZTp3NH+WSuQzv3VFQS*4!}G)-#Oe0SIcde zyK#f_d1`vv>H@yB=ULkiJ7xx6$hGq_pCW~9#MuP-qxk79EsD+R1em9^yJG0{!67CZm=)5}1 z{lg{`Ju6~YtM(d7U%7(mf!pZe)Ds-rJtjzVZSY*z*=(QuKO%3ol}k+OOS0(oWE>Rc z9y^7!9usiBj!}d`C1|}_(}VKdU+`7G&|jawIsP-#a_5&pZCS>*7@B!E^rQgZ5F}rQ zB3*ukaF;)yTSL))I?i0V>0lw}7L4z98TlF06gzkNTZ-Pyj@r#nvTydqbQe$mZ2WdM zfZHiqpqQS6WJqeh36n6})U-oxVGiusEo~4Dc^QUK9@~tRsGLOg zG}1^;cGi3o9Ao2}^K_=Oxrchr7!Hwl957IdlGwjj-mW;a08vG}+IZj{coi>ZRrH*a zyP4o>1e;OC2-|giT|1j}EK~Rk1mq0s#7tN#|96!yj>>R217k9=jbt{R{Pk;bK$g!D z7v356@~#y-klSlH);TR0`tdJM56lrT!mP&NQOq73X!r&K3NvoE4U{`CCr6y_j2pEQ zDIH_ZR)?=}kk-{$XkeG z8>qaQ3dV#DPRttqZ@|(kPzU$^=R-=a4sUcsa;EQU5>kbM&u>TGEiiO@r>?)7Vu9`W z*n5M6SFfI3X3`r|x+~Rp#MHLQk~G++w-wa<1vi`_PS)iG328KV7qT<0XwOG0n&;XV z0&0=F5URhJV$xNXzAE$=40;Y+GA2ewv&5)tzZ<@FYzDwm;J#;wpD|MY;G*oS(WpI)?v?r5hhpG5$>-jI@Iu{3`C2>ySN z`5HSil%WDeQpY!gTBNw7Um@jAlm#tS^h!&Q97o!|jX0ZJL$gC-9miuUJ?K;TzHxfy zkDpp^eOr^`SPdhxq6*BLw*~G4UkaFr0=d|yEg(Up)G1e6e+)b-iwrn)=oS@sSwY^; zBB#Md1%3^gx%Q_|(??yivHD$vd^0koR9*u7oRG3G z!})gnLXj#hHO>8>#O$I?+E6z66xlRrZ?Ut=*I*}X%Gk^Dl3pe>tB?mr=buhxAGjbi{gW`@T(j*KWxN~&4_~Q^5Pruo zqdvImFU?Qv?B3%WaYaBkmG5q+?enk^>U=*H+*du%Ny&wpS_^`$B< zfSAM4_7EIjEEWtefW{)5Dcz3DENv?mUmts$-aBk^4fzC6+MAMWdS*caah;y$WaVZi z9d2A^EVxs7M-Yq+P8c~n{rzL(H`gs1PbcvIx7nP}in@BaJ7Q^&GuGAGdgSLZ4R9ZF zg(U5cy~9CU+Y+L`7B2|IefA`8*uC}Q^^JyiAL|vKNQe8^&b7i5?_ae~mGmJs`|S-5 zk^|zFL)BCE4z)x(eES(>9;AVnXhyclH%UF#qM6Dm`Yt;JE!NX8-Isfl?)JRKX zk%p+-9Oa2``Ze;kbbhowpjK_9iosX_=F<3w{*G;TTZ?RLY;-l7gN;>B^;|MZX7aPe z8+Rk6_M&af>J}5##}9?hRBdP9zC-4l)1)1bQlxLEB#L?I?ECWz@~)22rqdrfssRfS zqoq@H8uPDY0w37N&!f_*io%9vxuWC_L$14KK@o$@vyQ*IjOz#Oe~X~bjENL%c3u9% zqaO$UbpNzcSe!|mXkLJwq4uu|f4QvI-%;S0s|#Twn-W2vmrWesW?$1#z{6yJ{=8(} z{UJ#3D|qS-c&92sJsETBFX7JPozEY<0z^QV_6=+Zez& zJ(z6ao7>)%|0BjCoqQE#}{C zgUR#R?D36B4r?0RvSUa$ZfxY&mvw7g4cZCNY})~1kKK;PY0>?JrL0Uy^BH# z+5DxB+@hCxjux&~?lL|ncRQO*_$O8l)*cL?LO$KvSOlmLiCV=(2E;H;lqG;ZD&cgrej?(I`>w;KLt{!qIVF`o1OUsRn||f z%^#;V!A=u=K;B8<7;?}nEdI@f4-bz2og-b}4Qn*VZ&}%;=~wM7u{jE^&9Sjm{N|GZ zXN^uWRJbD z=Vi3jy#TW4=yXDJ^KGusgG$;_9F9BfW)6Kw_r zmu#+_zlm!Me_97Q#Lh#Zbk*mwtA`;RO(^oHSeV(-Yy~Ye@VIFPhb4f(t{-3g(TITc z3st}sxix)nUUvn&<_m@5ukp9Zv* zZ2_U_aVsP`{qAP8v^Kuk;l1AIWhESidHclF;czR-xC%ij$^8YA@EXN!seA*Wt@X=j z1DayYdtH{veFsWxX>IZW!T*z@&ocXnNdCy-ggkEhw6>)1U~Q+FX%bUiv*(l?h3Mz<4; z4g$xR8Ny9vc~9-RqK?65W#DZeLw19p>UAc}-mS^9Z=ulltNc@o%U@Uf`D=LRHVB+x zLbgJnOVV_`+pt}Z)2u|+;f`X8k@S_$t&r3es(|D)H!i~9gv&P}UDBtI=izdGmdW|@ zJrE03&G`o*S_s9Ro<5v>4jgOMD-@gUo@5*FvV`nXo%P?@Vj#@0*}u*6d47iCA9x!r zN=JXgqEb>)__fid2!qw@y3Kr?$I`r~03UvJ$Qu5I|8J112$!m0eIe2MCG}1BTuRIi zMLBWF9SAQxajdHS12|W|+`VJakY@f7$Cz0^_|e;@#p2{C=tH_tn=7_fmtFYS?g;$e zfs!kvz6SmuMohA&)iMJ$5*J@H_#U8)@6H|}K5h8mwu10{LhMAa{lJnewh>j%DLCucY-L zE?nEj3K9MM(g%MA85C{MwAgpJI~>>1IqMDyVUIf_#2zdgtaa}_iZ4)xDYdp9k9;6% z!toxng;cH13zsjC{M19z12g#VoOE__V4(_|lX}-7gyt2#w74v#xep>>f+Z9sb5u{o zmdExT;_~dBuVg9=IRaBdvLC!fsat{EKiE{7?UgGoNzXF!6+wtux0nG&z5CvfdS(CO zbpUnIpwfM!`G7}fgT|HxvV5-G`1!rAJS(jf{324%NyW`5v1r5j=DmQo6yry&+@H9T zf{;%$s73j(Jlh@jr7sqGN_StKfHS^@)nVhKSQ;H&yioh>Srq&ZPz2?=3{&q_gN#Yk ze*QW*f-+;|S|4F9m4^Udh<#POQF?mvd>kSdZp2cV$+7}81q3kbjsmDxcOx2p#{ zl%@f|`O>eWD14kLyKltb?oTH_U()0R>o1L@#&GqdW!W`L{a5z}12= z3j?Axs0{FwWuy+M3V-zIQRh(oZ`{B$7nBXBbH*-a`GD&v$h4mQftE35@GqSf*h#sj zpwaJjb<5ZE6Edz|b#GXmAi>zP#hKfhUUTDT}&0L_t}JMKv2IoZw@x=G&y;Iy$7-sc{pv zlC7V%##*^k18M4cKwO97Rt|fjv}rpKe-Q{D44SaIjrk8!=_wDeeEH905$va$^}J++ zSdg=~XoNSORpW!9wlX!<0 zhV-8TeBRIOx`@Smj|_XUziDoFTUpUmkGI%WA#YZT52ChHO{l`$*HWOBvYwHT`13^CuBd*ZMe>L$83YT{| zmJfr1+S5F*hk%fx7b}kep7DxJEZi82vSvHf4bD+vPP@U>n^q=o>E-6xYK?W44jx5H zxd|yHdTl&?;VT9o2$!FWto1MrJ28P+A;^9dmS!@SV=Tg$!?PY!ZCpVFH#MU^B1kKo zHqUpKc}~=1E_I46^`#tB0Tn$DuL1PoFwip?2+^f<%0?7izD`Ue;=_;C7@f{6n}6Ur z;iLGb0wYh`+c|X33Wz36-K0>dI%{8hKA#)!@`0yjQ21LthAEm>pbVTiRmqc zl6owHq5x$kVmvPL3dmKov`qOvYGB$^&zZS#JF+(SZxg${)cd)*LDdgM$4SI!E_{h!{<08HDvD1Jc(Hk#0qO?)I}%>Yz*cA&8wV76)+6+a~;)mGuQiAfT)g z7Ur}cX4XTA@`8Uy3cj0{>##BWY%_>pxqci?2Spzs!Yv1(;Ip3A{G|e%HxF?Eoq~Yt z^at>^VMZwOAw<@(|LWM4tKU9je93*lTO8~PN^`H9D}qpArbO(;cc~3J(O_t3eQ8+v zIWNjgDG=ERwYl?>EZUeNtlKX0Izs|=shW45Wslj)Z<8f zYu0_C3aIDh2ikpfqy!b9}jS(^H=pif$M}3BwvD)<>WNugjUDgG+qx})J?#f^2ujO7ek3ol| z6=GvKV9gG)a#D`~6{&XdfLq*u<@0Bg<3@`|tw(DAAPj&Fd)O4R_I1ACIy=$WY@>_x zq|K47t?1!L$y@f)s_G(o2GntpEjoHf5QLEzs4@harH-w5^ZcXEX@?to?dK;8;KA~d z$jx+K0EUlGiCO>c>G3s3EQ-}k3A_5r}AN=7q`~3K0x2c zjy4gdSc$S5%%;`|rJl3EBcx%L>4+vEv@2647UdU%_VB!iH<0bVy9jyPan{Zw0L&qx z8gapF0P@YW7>xEy<>k$wR3Ikl=)*U6OiN^3fWQg|Mey%(4-Q9v^ZKtl3CHJDwB+6fMi<|iq2czw1(}iT7bXifrqbtivZL&UaT_*AqU^n@4er`2 z*v5ye#N4UQAq!nCR1~a+byPg z>=>@0g`YM|{S^{haQ!&(EoK}twPa>E3JdrTrPnnx4jiQ}H&Gl%%YhEzupqBxeJ6o? z$5Bzi3di93E6n1q^{_s47WcX)UMFLBo1#M4r&1n{wFlP9jDz*vzAYU4=46omlUTSdFJ-|LKj;=a7~{zc5l3Cc%1zF#&4A!h*HC7|9HQN#7Bu+U6e|h0=SC)9r(K9KvHaGtc?Ohs< z_gD-qM^APPsFtdQ=hjJ3a-*+Pv-&#onbH0T_mX&c2s?u_d}>CkOpXSbx?L#`BXN79 zLIe~i7peu6&P;`ey3Ki0DMD#@i{s4CPtu+@lTR#FLe2qYJ~j*SP*@h45Oa88E$b4V(SE3cheOt`kbvWqaZsjeZzk)tWBAcR#wla$x5=R= z%uds;(Nb|LbbqJoc(E&KYB4(}Pg&V3!q-cio;kH%u^1kCy4tuEPl@-M@ zg-#lQ)1nFB8^Zai$?%DASZjIN4Vf{d?;;~|YZAGK%*eKxGi zB$ojnR)5tDqUH6NhnvVO$oYxlWK+6i7PPk|$X*h}(VzV|GCVoI87(Lfo}(XE>rD;2 zOiO?gBnl%Lzc|K?6H>wWi9^QW914r9Qqcecsun&Y*~L;|aY*==h4ZR&>y;3Js&6qA|V@$I;3atbfdlPqCI zNlMDJ-z}kCqzZT%qZ!@f)YQ`^qW4R91^40t3&Im5#0$+SaVkEw6=Cpy14?Q(3g69& zOW~pNcHQp1^@kJ}T0DP);tW{KzIbK%EkMbQL^1oq$VsftD-EIDDxqZPU|L*pf}2!y zgZt`pS~2Ri&A3;>i_SD#jpG)?sOd8DV%dZVXkU~#)rD0At11Ju3!=)-$>8%7MY z8=TuB@LCOA6cq=e@SI_}#%5Y0L_QHuMonw7uw1@MjX#5)E89GV<6Kt)9OF(4UVM36 z%&5T`cPafl2QD}2?k;622VpI1k!@!h$%edaUq(gcy0I%$8K37gq3_`}`0&Aykvsjn zyqEopyvJ0{Wa(;#uX$8PAXE<-1lVbQJz)2OA|NT*B7GN5^a7`77QmPyI>bp9xzqk& z@TznqRN%OAz9Xy_zxP`ZENHt9g1~TiVnrwepE)go^@KT&qQWekr&1Y5IS#K7S`G_Z z7NQp!{J%Cq(87+BTpUMetm0s!umGDfgL7$sv4V$T+3p*UTm{bJH^$*-3HQ|n9;h|b zfJjc+3@#)JzKAw)DsW^wg|CzULkn6sxmgxDAe$|eN(YyE^4iO$zRsF1!V~$VGcR6? zb%m!bD=i+Cx!we2@vfIpU%bgx3eF(L_H60G zkNaFMHA2ZknWm)+ZJ~#gKaAMIXYaX6{w$9hLxW2hIuO<*e1Vp>YbRih1ek3NJn!h1Z;fY!8RA zny@$}juVGB!x6{TOI#^&*ElIy$ys0sss{Kr{N;tyw7`A9akH?3N?YIh0+-qFa$9(MpJXTV1W{Q2k{DQSzW4sdSwNv?G?DiLAd_Ra& zn!+ltc`^>2V+h)%DZ}T%m|Z;z7sq@4_Enlmgtnm-&vLi<$#@(-NTYgl;HGL`#x2?8 z5q5zi;eKi*Oub=tfx7~k!>T*L`>`-+hgI{QW7d4lgF>b+qOonnWDPdG<_UWBCPufS z$OS1v$wVzZkI+IdeWvkz3)FupaZ|PIw#E}s(0CO#=&T_FwCt9Uy_ZU={+9zhuYtaN zANd99!9z+e{lRc}eQ<_}`_yG_;#>vf-)EP>72QNPW9yS!%e8=9Nn$h9CI|k2p-4m% zl9c}>{+Sf1fm1IwRU9COclfk>BYd?^_C&N@-;u-{k+tOqgFZ8lv>%@5Ns3k5Kv3AWWJgVLpA2t{@Kb}hsKUrMWB`j;&si^sAl~XkwR6RtRDZ|@TthT2sB*;g&OfGtUzeR5f* zH0uQ!^kZSZCwqCVF{N0|jTH})^C@dO@`;?kPpe6UC8!ang(V@o-XoyztMLLbrKT0z1|D2xpkB57d3ws7VlQXaF8#Vz*&r zj7suXQ+?jU`(MeX=Q)`1Fo!4P@o_NnO4DiGYq&t;g`-XlOv(cqdc!`kaC)I_#PpI^ znuc=($4#yJJi+3?M)cj1-3E%c`GYL3m#9xiMv>ZR*l@i_o`$s<1dCm#x~^y@RQhy) zX+Wtch&gOYjyNKB(q3z4)C#?}pE(Umkk6W$sDKPN2uuW+ zD9w|PEk%BWhY1qAaI{HmufdV?B<)?NsMf?5o(uZz!+nWIIxy_5Oq1+GHBAj;GqMdV zNhm{79-l}OTO$NHzxwwU4Ht~|Q{IAwn`~Ss$SbQYA}m<5+0clR7PdMJl5(WO5Cp=4 zhdw*!{)aNq{@{Z|$9;*694rJ9a8}I=4sS15llkx^?Tv`y!?KB`RpS(CeChXs{1PXQ z5{HP~3l1+t9+0tuX{a;)m)QFdfge;Be1f98EYhO4niXGjHqqi#1^eY24*Wa*((SvO zKzHd8Mg2N5Vh@1bJ2dN9*umVS@EJ7PrZi>z^~|Z#pB|apv7l*hdikhLgPjDW~s( zw|hdp!vp~^AcepBhoHhMYicB2D7w;MH>CWW zTNCNQlF;fZM6(>g1teJTr0JW88{I(v&$|G~8C2^)o#94iSE7+ZQEpMe@s8waEQu_Af7rmxqx>u)ko7oh+slNtyI zkYQxOS{{0hL0R=VcfG68oKSyl*pLHBNa}w*eo}H?6nL&{4B+t36dA{f zJZN~?<_*5)Yfg*3I3F2M>@ zYm{F&o(#=emIaLGq-ay)%Y1p7)VH!Q;b8nA`2WAg*3GM8EyAfOmE_n1rYb3CbmL;f zUH=p3MJ}a_Sdj5BgX_$V+USzoBx+%wVAIUglO@7VX64IU<{Rf<&}2UU#aoS0f4i3U zhmFq20?UE%6vg zBsNy0DXJl#7NVAxHBZ{>P5<>wfRHKLKB&UEL>g)CiaA!Uh}pLJ*c9KLIqASQ5WB&ISCB^Dk?r6$ zSob&aH823v>=wS1(6sdQ(+qY%w}@WUoSrMm2P~L2`2joB2$RoqfSU&_oK^~)E7t%I z6O>9$SgY%-^~ffg4Oqo$DJOb1AkT*Z3)ZJH9$#coAP&g*SN6g{6aKL|!#?y~>@ diff --git a/apps/example/android/app/src/main/res/drawable-mdpi/splashscreen_image.png b/apps/example/android/app/src/main/res/drawable-mdpi/splashscreen_image.png deleted file mode 100644 index c52c2c68019b49c56da4faf7d8835a8392cfef7a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 59836 zcmeFYhdJXQHaXO4jIWvB@{(MA$w+KE2Rh-B_lhOBH3G+$(HPd?7cVl zdA-rq_xj!czv}w7yx*^J&hwn}Jmd3J@ro?*UYfl)I5@;|7o@J@;Orv6!P(nR zv>Se-+)KuRgERb4PU@VpJ?_|NTwM62+w+Z-2_iiB?!W*3lfZux_)h}=N#H*T{3n6` zB=DaE{*%Ce68KL7|4HCK3H&F4|6fbMt?gm3YC&CzSbb6Vs&g(gzhB$a*HxZUB~lcD zczabJj_`1Z{^bG^5PpYtSHTt|i&3o!8 z`>$knyE43EOeMjmJxRz;P2V4M<;*?fTXM_NfDm;}zg7YyW_d+A{tVC<#_=Qkg`n{7z1qNa3Wu&gu0z=x*n%~JU zz|+Lo4mclee&FI{UZ;`^Eeq$(&*Lmt^*g&1sOl=y#@Yp9;^+Wk9-eGOd zFL@)!lw2y;{tE+f;qIbi9L}2w)@{iHxTyF~z;c`{h5ZC2k!!vRf)UU04 z*Z+B5H@%CLHlv1`PEN0*TBsyXoui$5pn5;84L7A)I&qkfbVoIMI2|qC?n}Rql}3k8 zE|AY8{pK_7>sAw!o<8N&bl!1ld?w$scHy*M8O6a-Pcm(fH*I}CZXgm+op~pXyWFT? zsfTpYmHG+~WfFTX5vu|G9mj1PEm{+*%N)|fEc!gIM=Gh=sNm*@A4$ziNpM*v`0=-5 ziJmEX0z}d%j8pt$B)Y*?z=W^7QuX(R5}BlChm4yaT6ET$iCBlJbzVq^fo!OCtZUog z6ozy-x5F~zNj(D7>1tw3TTPy&YJMnpc$P{+Ym<7jI>h?Gl}2V!GMw9|KH%e+e6WnO zs(l=2&E3u?S0Xby?~tL{opCc|^PY!~gKoM|Jsc=j=h?($-EN%Li|CT?)%XlcWK4M} zO|yxUnpIP-C*_q>Cs_m}Be}5}1!NlTh^>6cK(=H3u}{0+Ghetp?T41pW`_bzpVXU= zeA?sbn7lzospyeEOB*(UG(^eFzELOP+kLpMb4b8Qn=jd>S4;@PP2?a-&06>V3Jd%cU8#8sy(C+LoIDt*LAnyiC`V`TqK7-Vg8Q zVoQrh;0- zgTjXWlR?Rz>q+xQ1*#vek6JvSr#26Wp>%-nEVd;iv&IP8!6F;`B49p-ricW{mlSV-OL%GqjRCsz4aC=U* z)xi08a`Un9sKYuLM!bQbMc>Rn5)Jc-V*;6)!nLwFl9)!huO|V_!5`>0#P=}Ew=)y( z>`wYdj`m8uwLf3D$+KkGnI@LW-b?0t}bEfP3R>Zfv*paH* zuLv(@?HnzM&QLZG%>PJbjCV0zW7)PdX>YJa@Dag01h+6H*oIMHYGn*@=Q$9?Au!Nk zYSDu`_$p)p(NtFY@1A&$^rQ;{Q0hpJCB)mp_J?NQhWK%VGfGtMBJaJCzQ+xk@V5{6 z!zeH_R=#A91DhvJ_O)D9j!y=%B{HHsf0V3k8gLxJpZmH_ZHNGI=TT&r)ghUnxUh6N zn!nEgYBFuyJrN~9r}KWW`ZC6wOVf8-OdBb)wi_ebX)&$t~J!=nrsp>X7?x+VR^5@1C1{D_?K`Fifo?pI(O`v8>W+F0ve|(30 zhxIc+u(w4AM5U}~jSuA~0h7i}0;WydM&+F$7na^bP@~EmVp{SQqRWUj*p*NqGQB{7 z9mfK}x<^Xm8Fy%$9F1AYe%4X#XQ@@u0w&)DM9Fs)EHIo3r^(!cNZ5HRz04j0QwK)F zZQsQ4LnjvYfe=hj)Op90=F0c1XFD$2n7zG$8{MVB_61+@Y64va&mXOqL2w1EVJ2dB z4d3pn9}D33H5TT(j{;l?1K^eT@uBE{47xpDj^;{zx(+ihEGFMRC$Sw&%0lBjzsQ*8 zQp+_-XUkjdo=6lxdc!zI`!o8ztVR_EB?=($JEpQ!+k&PXjgBLx&5#!fJx@HfVIY!w zp?$|6`EVn%17CI68zNJd;o}ZoeZ4bEA`t0!l&#uy9;6^l>ArXYB8X3eZ^QW=1=2u7 zq^Is75PgYIXcgx!@^5&>Y zAmO(dtg-k+f9cQt=2aU%s)f;4#>nI6bFF0VM9z%iurGVsQ;DVuN7Q$Gv-iAW0L19{ z@yh7k_T6(5jXSCZHq&710a1oMARY{q#-3~LLOc9%i|Wvc3ZSJbqaO!W7duAN83L$x zME3){AH>M?8i0O$4*_vLRrydVh~5ZA?+iLo$}8Wc0|pqPu8D{wD7-<`U%XFb%_&1TxY|HhVlvxW4W)oexHoV@n zEh$=gHpY_!9|{V>+=(F~(r>wZw?!?#yA5%MR#AkX48o*Ie=AbSQ3?H!{@Ex^!snei z4D1p9F$|0I=99BZG)yySkMm}hZ_NMT&8!h8*EFC?r8XzgegxnK-wM^o0W&ddI%3p5 zSHiGSwmMO;7!g@Cnw&SWoUl0;ys^sO9$%BH*B}ic4___a(3j8LFm33VccxsZfar5+ zDm5Td`ETU(Ty6zc=Xbj-2TzJ`dKWDz)H3r9){CBYhvbgrM2sJ zt}9?TV>2?xbe(h^vn~{eM1yjWjL3CFpCn7|HiyrxjZ#?y0-qV>q z-JY=}kkKDC@Xclx`f0V+u4sLQ);xcjs(ZCIOUt#-M{wg<7Mv#Fcu3pzqM1{RT1)kw zVoq8C%ME@mbCKhqh+4-OIPFaCsZ}#u z)#}!U=<3y0>*{f*z2fB!36cHu>V8MHHvES3)2k3(?~pR|gLJ@s#tOXvA^m}4U#s1P zcmsv3OyH4$V%VoT96fbQmm5}<4uGxEk7p@y>=__pO$HX49vSLpG^`jJQkUs?Mo(iX z(*DdgZk#$+zR`BB7~B%6PXj*FuzESQsDJ}otf!2F346P*fcy$ctd8{@hhd{mtj=69 zP}67hhu19)Wh;gZL{>5_H`j~q^-SbV<}B82uGN`m=rs7xNvym~HK;HM^yL-~pr?uT z<~zJ@EJNx;PaPX8E8{8^%J;Q8FN8Nuez4l4sq-kfRztHUPqDe4)rq3bjajSXke!&X z-8MI$)cXknG!2ccM_=u@_4UFASoz@VPe8)r&qaT~wZ^xkV{3hz6X%O8y1CZAcy4|r z6q|Byvg@|0D`-2Gm#1GhjsRgdT~6vUMb*7Lk)>6%Tp;ee{^MuldYfI*Vwd>xPrJfd z3=9u-2P*hw^)eg&IgHxcZOhRgKWp+?Lv;rd`1J=w#_DudSFK#>+ao7Giu*B#RPa!( z&YG@Tr4|*5!*{ZGYuDFvF7Wv2(l7OE6>hF|*>&42eo)Wa7)#k0;p%?ny}m9KD73h^ z$g96F*cmCy6Syt}-}$e@Yps#y7YB~b%A*Zx*O%jUIeGlXxOm_(^n0sR*uWcfpQ=mW z8tJ_*4KU+epaQT!?loCgws9Gb0)N-z8QeGq+vG%6k4@IC>%xK7Lv#z9Hna;(#c`&@ zR0(l10WhYaI#$O`8}$M+g-!>y#qr7o9uFA?2w!fGyMHY#D_t&(fqU?>NTW25Ra}lU zuUy!9UQ;WRQ6hZ%|I|>=f%8k=XJ;K<=U*m&GmvXtA_X- z4saGNH6d;BIkBLw*X{XtYpVrnM5@tm(BCpciXMe9@qVq24$&PjKRqiL${Vt*#4Fpb zTMLge%ku<=*wHX)JUbG`>p4&zBexKydmJsfeQXN;@#^sVH#DlHU8H#RDNT9w1CFQ3 z>G|?~b@|!IEH5IWuh+=TE1rz~>N1s;|9N->=a;?-9gcluHK?nW;rQxu4{4M1&uDO> z65wQ;*xLtG)4&^}?~fS6zj12mHU6A4@dJwRL}0x9EK{g}e5gQ;pFx^|)qC$F5ZRC* zO(`{g%gcw(_YS&D3~n|=ZVWFLTJ=|*+SF=<)xFt6r8|xo!y8dT-;Wr8mnKO!Y)m&K z;rGs57U{p?(!a5fVRNZsQ<`#fSbV)_(sfilrRXKcy^SyUq+)B8v3|~Tu~cHV8*7gU z#XqK532zp6I@gIJo9nV#bk<$G)LaUcnzP>ycE0 z;}Q}84?55q9-;=cc79fTb9QqmuY3KcUGlB_{hRXed@VbAGUPnCI30KyIo#vC=Apda z+y0Pl;21c+aNfz&;7z^3$L=^#-2r(ke+GUkA%Vea?Jc*Ny5%Z$(4xLI@GP#|;%8y7 zlThz`Q_e3PfUe2zcCE4T@vgO6a1|e>l5K5muS~+v)xGN74(l0Z8To#;b>X6mr4*6* zOZ7~CPHWMw83xl%Rmj;$f6)4;4t!^`a>I@@e52VdUM7YbAHbJFp+A}YbZfF*+HD7X_>b%5NU_boh=g*ptETNnMJM8tnXMjNGiCIl#h(@JS<9e$@`I1to9UxAS}v*kJ#+Zm0R?lx}q7HBq}hK!jkjR*@|_ znU%>Rl2@Jh)GutM<$Y9Q3-u*_VlN}>&y$L;v|?YV0#nu+E^%qDjJz3)bR0J3(%d_l z1Zl#b92|%?cjFZA;uMpg*uoOBtKWf8TN&? zMJo?(a4LASB)Dkq5&DtRWx&B8PJTP*Lp5Gnm*ZCex-KJc6C&>;Lm7$oWN>B|k4Bqs z4!xn`(kKA!740CP+SVwu5)pBLu+#F$i(oGOR7W86n9@BNTz;pby{{#JLm3npix6_0 z_{ysvd4Hz2sV;wIM6hsUbFJ2@X#NXGiCCOhG>8*2$*rtON3O)tc(J<8Nqc9Oro%=XJH5kFLq$aH(p!Cc zhu{8w7U}mO&Dk9ebfP>^9-a4@+Ldw(dp;hzeLZ1=&5#D8yWnwybjH=D$@_SuTd zdA#frwpl(`;WCoss{g+5g-Y zTlgB4`1~-odH8LlHmxYBOh@+B?%p2pca*dz0BY%JZMQd;-XHRXR_^YK5|ESSrn;_9Ew5#pU)toIph zNm*ZYT{MsU+WXa8L45XmnS%2QW)`#fz!?c#G^~D#LyEkTn3#Ycw{DNE9fo;c$ z-_&5H)9{F_#9Ri|rr+l5Ddb|mnJ&c!Yv#}8Z7y0B*l?oe}%)!8cefbMYfmD$j z)&i}fRtud}u6=?@6SGC@{ansHk1o}T)4E8Co^Id0wAuEMVM<`KL~N?N+gLQF zmnh|9nb9Gfx?RZv6qn8T+i*Nq$0B$yq!#GrF`YYZ=@@Guc{iEm+?SXL{TGHOPM$lJ zPHnpQgh%>nK^YUHS5{fZiRbEp>9YQnX`>U2jJ#bYyI+mx6m~sa{4n`8P-1d4&pVB} z=-~#R{{h99rgAuClY{4_l*4S@o;-PC6ry-gng|y+muXdOcc`7z z7M5Zzw)YLW^@ehHJKQ$?{b`id*Uv*wKRyP(=R&$@YqNKU#Tku>!3x%am6G$Zo8QLf zsE2&_;NlYDN?>a@l8_xZpj1OHh%4!4X1r(?wq9)RG?67XKa^rWCC1*wek zGW~KIPP@Q`zdV7u@JR0?cTv1v;C4*sXShTaNOT?rjw%wBUr6DC}ZABgD zt!D~1D@0+P5(Fti)irl^pWOoR2^ zEtuQs$41JIqZgK^p9-aI zWX=~r^d)s3563?z*BAe)Pb}%V7mFA6uHALBtxrFfbb)?CWX{?iwH~y+WlOfc3oO@-Eb{j=$f-DEb><;Y|!`^uKH{}VRG(vY_etk>ktBRu{~)fh?v2#aHvE>`M5k9+ItT-569!ab3a@MuypHE3!}lVO zi1QE5FXLzXTo!(@MnyGP=Q6+>X-3c>I@NC1^mTJ-y>o?YeTKEm{YNH=NsRcBr@L=< zJdlkzJjOSd|JYQnlK}VFv19M#L@JpR`Yub_eY4YP01_ntXB6rA2Vz0}rP?OrGZ(cPk36*%?{cI* z)T-RPv06tjeod=;YH6%Ghx>e;aqIC?8!tSf|G7XXSe6O?e8l7OuT%+KpkYCQJJk2b zOH&6)?l!(<9*QN4B0cwu<{Qtxgdzd4{M_7tGs|Dz3V~6{>;hdsZ)rI)w4+&k5c@5B zOgtDg^-g#xf;AKEBF#n;3f9tasOhoJNqzcgd8sX-kj$hi?wTA~*9|;397f9|keAcD zQ?2P1M_nkxkoz%TA0E-#zh6csm6!-OnoaTm%U`%D@ld>o<4*WOUS(WX*7vpHZfE5X?Ro_my8@el>^r(a~|F@@Qs<0P{ z2UEks?HgPt4M=St_60wFUP66pIgr9CQ}i8O z*cnl77u`EzVtaCR0Lwn)o=wBH!mrJOT5XeT!;I4UD1Ch7H*#}xHC8vx*87UmCj-qo zbwjRycIaSNjaNI(ku;TQNO}3&Noog8`~t3RACjAFjQ`MIN%rW!eqWuse4K)jZ6GL*ZSPDrJJLNGmTH%)0n<9 zN=Y#{NN+Q7q@U&Ed-twp!XmqKi7diIh^&~Y&U;8h^X9XHgJD`$XKtAVr2?9(y?KLc>n=;{CnS_l;T*v0-A#moihMhUPc=!l z7^wr22ka%no$hES7sQ_OkbkeCDHpy}Re2N^Z7nx>XJjWFZU%nT;>_!bx|PsKYnR61 z%yFghL~?+qE$pLwTZ4ZeZFgO=`R{uvw7JRs0-r`hPQ7K$r@xjZ6{x1+HbDzOHZHkDsr7A<@?40BE>tbe1q*%oQgKxnrMO6Y~J|%LysW z5KnH?a$9Qv_3vzB@RcIm%@ms$mB-4rrWPq~@jK-66=bx%9$+3GZg~H=9d-9&$^oR- z8VyyeGa7Ks5WPD~A)jku-BMXbmN+u9Ry+{TA~+Xy@LrMg{NlsYe0;sQzu|b`z3aQ0 z9I07yZrQHq4WH^()6kI9O^yp_J&x1?N}CVVdi^R51j*J1Zx!;{-T5$C-^2ld=VQj6 zqg!w`MzQ(HM6`p#`M%%YO~DYQXb(}#XpZiiPp8gJ?qMRw!{e`xf4AW4o2>ZF9iMJT zBAq&5r51tFqcmpid3KY9xw)_Ne%>Es72g;w+87m7`qUBMuF|ZRHGX{@;(Z@I@{pq7 zo+cuGmau&V0rr=^u@`n`F&w&2O!_gS`98`_D*0E7;+<_QboE`cyGk=)KJ2~Fb` zXTEc?C?-p1#4d9gy=IK z&{@&iNTV?#lrJf~Elt$$5c}EUq(hv>K$jwpL_WDgF$iXl7^i(P(#nEw?a!AlGow%h z^@PK4SoL4z3I0|PA(s$Rt$SApnPP#TA3Ow3 z|BUGL7k{9j)bu#up1Tf=jg3!C&>`oygmW)vY^A;b#hc437kL0)N{7e=i8@I^-``fW zO@vaZ&p$;6q&L{-@}p%9{8;@H5fmiq{1mFyZq$5fZ@;K*JJ9(G;MjSC+^*w`lSyO! zZ2Q-gE7fh_(Sn8{bh3rKj-V-dc~tS(Ke5eV-}6M9^@sk5xq9sdQO(hf7`9d3ZLtIy zohsCGjS@f0H-gZJ132Pw?ys_YNfE3KLR92ses>g3$~&w~&O(yV)YZ5``+4EEehNC< z;vJy+9l%f_!WzKo!(Iys>VfU6x3-U5jG44^NDtmvUJC`_$cAjd&H)$$+(Yh$QTlky zP*$G&ksY`wTHpP)W?%u?=FAfUT500-4D>YfD{Hu&D6Sx`-*Wv1IRahcF$fcnmRo-# z5%gFCi}iS{PI6?(0zyl^ADjm%_9jN*YkdwoXqHfB_UAFMrVOyc>?hX>-y zL6)?pYdVSd@!SXyzrcZEsp6p-12lCo0>CMf?t6)v1Ar2570vVGHO zh{vx;pma*%8EIq$HN(Qnn!E39eK<(7_hJM6*xn4nJV~G>t=p6@+dIzVARgZ0tLV|2 zT8Rn$Z(7$v5jDT;dWJlMeRc#EmHU2L4GS)6Tb%X^-t$ChpmskoJp!AZf8=lzwzTM$ zb5aJdInTA}=wmdL@L!4EN+nV(C{iC#4Yqjt^clVpaLU;}|1YxAU?d=5v=E0_f!5db zs!0(7LR_`BkycUnDt#CVNoxOJvF469q7%0jCVPVDuWC)Tcsfb z4YV8q4|3O6%+cf?Q?Ro$Q?LdhfT)3RiVOllq8>j#zo^oU8(H7@K1d3zmJ1uXLAoSMIT6(%yX9hEhmWu8rKKMT;m=c5F$RIZ3r{LUA zT3#yx8IKtgU{>LX>qPx>$Xo7`dVUj2d3kvSbTA(IwC6R2slFUlpWc4~hofz3b9cBw zYx$5LmJw`KB#z&5aSafbq7ToUB7m%iNeOlChu|+ zJ6bl@3vK~7bm`lKRLM-ae%3EyWghW$l}~n)Kb=<>Cl{lb!<==x_-gRXN`a)zDGKI@NCIs|_@pz?#Yp!>;!RwAM!Yd=#P{P*li} ztapg73U)u#j6=nMhAQ6;LbKCnr%I#2wBco`Esy&O%gR+Ex+$lFhBcqv? z=4R(=zOBva$>1t0z@XmW8FC#qoZ@RYc}Isb=%4qZIEJi+yJ%^1S~$M3-=+XKcV)S5 zy7&b>2SBHQawQH?KTbaUcq8}&VfzEN*-9qIMbVX0MZL=lSsP2ViJ$%fvdTX|-pVkK z6A-+64=GnW?DAx9t%8CN2Ny^A$6bgI4Hh{V)k3cPKdHXG#h$ap$X$UmIctBKuXEjc z@{UOi_%Y-?kUrS}$dctS%Qhe@(nYSv^geh;R0wdI);5{h2_|?b zO9ldN>!NoO+k?gqzViw|l&fmalS%0tPl{$fS)^3+1(e~LUPE@Q?k2^L&;-?-FsWUL zPN9Ov_cO58MtRbu(Js+~l2#93eN7a7vM4qpxDB~$59KZ_cN;j*&6VzxeV?R<8-`N( z?vKM5JDZSN^2Pem&N zvu3EYIWPN>r`$hF?1v@#%ipO)LMaFO0;34qA^gw0<+9=9V5RJ9_1GcgzPE1>@lU`p zN+6MaJgmnYp&kqrr@pd8JTS8#=JiEI#|IBN2x*+an`9G*e3{k})lxbQJXrH*% zJ*Q)OKyj4Z|GFzkxz&~+lW9AbPhizNqYbGnN-h>qRdzSZ6z_n$@jXj1!S^ixF%JsN z_tw52fvumM#1dEj%P};F_RuSo^d;Ut!_#Uwl>3+_1JbLy{4-W>^AhZ+!z%kfrHId$ z`Nl&A1-qF@fdp!NQ>s_wP^ud6}b4;VeLzRiY9c3W@?(lo8WLH5XiP%1VdP zHKnqKz|ePp@dt*DY8e0(S)cX-^{!dcjXRE$I`a`SCfawzTo$ql>l+N9=-mDTBAnPJ z?FYZwD+)e$C?FvBwSK*3m1oy6mZ*fRarh~fZ`1=Q8(ECHXELH&nMI?j*wArM-~=hD zPs{^UMMCE``tG{ENVEQ#%jvCa*1Ii1qU0W>L-qXREqhGt5X~;}w@A42n_u~(dPdtr zEvJ#ijZ=#$_KLBT13H2GsCxC4KF>nhi}GnKXN<#ki|6IK!isX+yQr)OgiFR}WMU7U z*al(4tjOqyZS;d%oU1F>w8jijEvvqp4082z#fX`5eQ(l+r0NiOvaFna+vpZ<~U3kK`J=fMw#Ooh*inbKAH`PY&G`Gz|nXmZ_o^-6l~Asm#<7up$a& z9;MGfOrR3N|2+zxsN3(sq-4@NSGwd67FPnLbqQy81DiguLVxQgloqW@6A$&x%#ep zx`3#f!@0>m^gtgvARg>OSZ)~{XaR>HOPtD{cKXQSF-#T16MKjqVF9#L$5qS+x)*Ec z0dI1(H`sE%yw)1$i4mI}wVIXlOX#swM!B%%aKE@y2hYAJ5k^K9W=4su#f6URJz=i- z2RD02e>zYcvWM&xj;EFO_8lERvcAaIqJoe2Uh$0#MZa2nhUG$>$W+rgh&`BM0RcWd zsGKRndq~=6d8N~-vCq){$RS{>x^t)M=vKapOs-K|dqVvZhk0ndz*Oy#`9{*4rA5Je zqlv|Rh6ZaZooh5k)!-Si6tf&c72%ijvDx~}2xqn@Fr_6xA)&RaN#q$1XdW6sLLM|$ zGmoAMVHZQ?{6%2??B7nh4biWBRe++uzy6okK#tE~WpM>xh3e??@H1lfDszn}72}~U z_6KdU7#wi%?3z&RN%8X-&={yF8C5p;_vyEbNIN5 zFunsGB8w8OGg#3Vv%8~E0Qd@_S?VyjCJFl1CkRfpwJGqCbUe>C2sWKYsR=#^zO8gBR zKPFM}f2p@Iwbe7)kHVI?kc$zColi0GR;A`3oVg*h-XV&k6{4c_VWKNx(E5s=^2`nXI92izoL}D2-$HQvN3Q%xTxQyaTFKJ z=f=rF{Jf{HR9^5iY8_x?P3J>p{zhF{l8{;zdSw@hQ~iJrt$B zo+mvaNhBS_CMf}hVXtEs52B_3)QJhms`z81P8<+C!4e~-RLbu~=EbJuq398Vo`bg~ z4~Qq+VoJVtv6P=o^2C8Eem7{1-im!fE^#X%2<;sm^d!t>y~VY_rX^W}fmc51BQ*7| zW?%WW`{^Pp&V^e|6e}}nk@mm+o!Qc6Si9GPH#ZzzBk%}t_DJA7x97r@=#8boVaCBd z!QxTuIF|W#p_c3HyyMmjvzdm6I5}MUNL>*t?$sy2d1|~cz8W{0T0y_M|6<`{!KCw| ztoTZgx?3?Zxj1aMb_^CAgy*!FaV`X1kRX!irP_mo{V6{fo|#m@d7f>B=T=IL=O&fI z8nHCbYB%w|<8J7UeWRl(Z>H#>(7?!e$-}LfiwuX^NTGw)}IkaIuSFeaO>1x|&sNy0Q?v zR-Q_;FORtW=m$ZHl)^Pn2sTr^TZbvF+dgI|qs7D0RS-#)bJeAkV`9-5|dTQ;~bQ}Pvmuso}9&N=J_##gGUcW2LXml z&sUu%-LuOrh7IAB4gQ7@4UI51$($=^nJ?lT4N^xP1_BQ>Y0 zj|Lf+@{@|j0r*cGki36E$>Z2XoakFj9&R(dk~uO&(qIzs6xhkJWTlH9WL4c{l58xH zOHSyZ^l)V4XWN^1@8}pByPd0NmssiV>oQcWRZN<{-yAIZE}#q*bpccnlDv4~D5Hhn z+4&Aa(#h*8B2}vKDoZ~YSbI17S;d!A-@UU{o|-BlolH(j>R@4+n)VaVU+uDUUAcA( z0Gc0+!t3I2TOrUX|R7>rN_-^E~l)k0-;= z0xSJ4&ZBNHmSn$}H@PvFz&5M3@lC;Htwvnai?C=)d9(JljZJnLI|;7Q|8(<8-46a71}2j=f47Ap$|_6Wbehz?dp~;VEwx022HCEGc;U6VVB! z{Bx9VoU&BeFYdXZ#$ILTEeHq$M6p-J#5{=!@?w7p*kI93W&8O8?J1#j@huKpjHDxze#qrNm|A(nK)OA+6*^CYitQNkHUY z=>uNbSCl-+z+3v@JuyCru#t@maLRrJSi|WRej^3#U3CDM8+g!dd@*_`mdbmP?L8>X z2F~;rAugLFU3x3oCj|lwh*_EN#`8+#UC#YL2l`#CCy-&>W zg$bmdGTh>Xt2~twOxXtoY(@NyRo~irGnI_k2m7ox$Bf07K7+Rta9L@xbIpZ{gcc>< zQc{rv?`AB+`V>cfyx9C(g>l!V9>2*AG_?BANi3yD7+2!K&(Q>yqPa_su7_F73zzja zFwfX3wHCRV_H^^DtHHs$8w;%TZHvZ51CBE<#8-k{pU_Nkan?qz&rFi|qLy1{%y3#^ zanX9(=DGqDD1V(_`JT|ZD!!2FX-BnJe8oL^a5F9FIZK(b?jA;f1K9h~H=wio=TkA& z&cw&CUjxJMmoGy~e-rflDrLXC8z_AyG$sf<$d-DIk-x#aaN%i8{#(^!ZwMH@k)Me? z0saU;<(8kUiYEcc!QLiDj_Tr`%E%KhE6H(YXdu9mw8ls{=(ViFRM`e|Db!c{7V&<$td9IN!q9X6^;0ek( z5$z-vh&eSjYVYSS1|GGQ;G=dAN~g1R$gKzCJP5jM5LNh@lb&AW1_FLkux7Giap6pfsqzRC~V)>ISd(L~oHn6I7|`VkNhpM8)T=M0&7D zm>bPAC4PeZN(yEcVlF#=JcX`{EsZI$9gkV;iTjk|!9&$oB5BVPBT3Vt)EBk=AZgtj zLsP4% z`W1Tyet3@3z-LeuKjM^YN3HS_3Y3taJmo<%CZM<_H^2-?vY8zvF>?}!|DZrQ1bFqL zr>D#xP;?$5x2|9wBDvsn5NJLtj6D!x#UOMS6#=A!Lr2Dj>B|ft4TmKWJ%^)Fzk3heHLtx$8<35<8_<4aPqVzO==&=zP zdX+W9n5fA$6_JT2rNrcLf8{WY^W#SYGVh@>Rmf{G!N(^@Awv;{@_5yD&w~0%rvDCl zP+J;i@#th;XyjY;u%k2nJTSH&)vD=(GvA$hulA+3AFV7`(f+20DKwfg`JX9Zj-QQ^V*9_ zBE&E|w}=w-E1uA2hpxLyM#t9ROl(|gDzpj$)?KqUrnTC$>U_wdxUbQ|A7ldUKUCpZ z^Z>Ifd$iQ%ZlQZH3!AZ8dYgk%{&%IHs=xgC%hXl^10w?{qicAXxpgEPYwO2Y@=5(J z5#_pnsZ^<613Dsk(7{yI>aJIvoIbnpDj~XISuUXi^@T{zw%ucVvKI=NcluV*c){L~ zQ#T3&VMGaat)udK*XESdnOfUMQTyx>m<8ZL0-5baO3qSN!Y}?xK|)K`lRc1bBC{|x z#Cmt?Xih1MFwa3r55S9x35Vnh&p7YF3>x2=8Je)gqsA_cqsAoP#edWrpdrd&)YOIK zOhOI>P9_LLU%JPg`$b?NL3iLHbQ|l@L{Yu`@_)_Z17!5Y1n@Q2vTqYr)#kLjz&2evbIr1KnS? zzs_Mv?pCaaW>}F$b3k=mNgDH$r$u=AcjxK=R{owSRnh@}p4T;ubx~p5g=hHG&dB8y zjz9TTBBD-wREwRNNxGC0T@7=N23l+{q+X!131_hSqWxK)Z0V?s4?4CEC-)*}{b_3y z_Z8UL3;P}XqJhlB7$_ejo7mA53~v41^hLF@_gOU$3~xTl;z;|5S~@m1B6bC{wLqF% zT-RI7g<;UZG|MOp>N^am=$s|;r$w%QGxuQKEjgBH9GK!vMt zFUh^RmA|%+Y-aw3Ne|0?et=DoJ;)h3gmf0H%W0}cNB8=uGHR$M#%w^aJc(Iu*UOYP zh9M}yqH35JBUAxsY1^RpG=ch0&~N%8!sciHiXHS#8-}fOM@1tl zMn`GUWLX6r8jwKs89?-{E4RG3pbr`)k0yrIZ?+4gfgQ7HKL-a=^!vmB;0<4q$=j7bfMsVau{xl6>w2U1fs2?^k1V0+2=vd0x%Vp6wJj1(Ekmx z^38*8ZYV@nI7ul7nlnKYQx3l*Ji!cqk!(-yAa9O_#jv)>Ivy12y@AU>eUi~EV~Cxss8)^?4D=%%tZ>wn1Wk5ig08260k;a^Mf3y%Z;3ND9+zkd&It8O!jWSBZqiHne7c;5YLn3H z(Lsubs0K3?4yk)!Zfg~l&t&xzx2NGGTF^sC=T)eezwqd)oU;4fkVpOfm!{E}!M}au zC8e##SLp`?Tcyued#@f*=>?ty`?&F-zy~$V3H+msiha3`lAc-{v8Bf7PaSAXTx>Ip z!*2l!rpQLs5rvC5BSyZmW}bOA7mnK}03csgcg zL~O+z@P>#<<`KlDphb1k(9m=rMkbMXU+f3UlXx3d2MOTLtXknY*4DpUid#W zacCA1EQBpBH}{jrNugF$g+~^k0^>ti_Z%BoemV;iR`BryG|U<0K#&}m_~)Y(@P}3@ zn0BH=8y_d?G>2YaU}6-^5s|_1wB%wCb)2VHV8U1f);U#oE9FOa2O9y?e2QHj=Kk1$ zSl^)?*{R!a4c%G{j#VokwC;k*ks%A_P9(s@DEQO>3Cyi4*^n=Wfj>Z26#^5En#x~C z`d<*7oZ?@_nr0m5v1=awKuBU8bs2CBA7YU>1fzqyu(S&S<0CQZ{{i1)Lsj=5c8Ljh zQGbB{d=w>`M2uLuDjSHJn)Tb`!>y08d<@+Q-QXl-0VsU4H8r;XaM$`P+i5=IUW7(N zu|Vl@5*vd4lS@cO-2``BfDIdNHzJYGO*}!K0gZzXJFQLBq(F1;nIS0fV@(>MtllT( z5>lK9?~ZIocE_!zKi2T#zk)|LC9sO0$QWGnA@<@;2J%&!4e+tMT1bE025D45kLRidSwq`_{6k1k9GZHIL>Xsh+Is| z3g<4=f*=wzzl+Mq;6Th*N$-T^318Dvh+yF33U$%1{u-C!zZCOwdpHeDD;ljE$aO^v zVBFd47*futKYN~sG`RWnm1|B2^Sg%|p z-%%bmcXbvE6SHU(_|Wf9IX24fS#1p1I0H*$kZh%Z0b3-PQ30n$`^CkidXk(EEAC(+DsON$^MmMll0BFDS?=)=|v(GRe2j|@Vo zoChXT!FV!J4(PIxlrW(98O=PS2A%q2DGv2le)62a7NmC}slkxGujy^5gJfYnaDG8T z#a%n@tq%r#{%0#|VX;T38T$0(^830?@N+yj3LlzkGoC$Yvput6>!9sKZGGc4j1pUL z!fXT9;3FdS(MDPJ$LaMk;VOIQ8ikmP0)>$pvLWEeE3nyJtSR1{-^FlaoGs1&TY>M% zk8R3%@F_g05cH|3t0`FO zd457fCiu6uNJoXb^>JDHHcy^SamOi!BZK!_pRTXwe^Y$-aIxR`X@ufrp6EoW*m$zp z&E&eJ=p6BPyF83j3O!V32JXEM;ENhME-R@kC(p{m^a!6Z*+e=d;(|M)^|eu==aOOH z+J2Fnj@_zeNXncz*jm8NXT?I9t2^V6J87J|V(Gnjm-E=8u7pd^6S2q3^UdL=?Kz^{}q! z!D{icm3UR`(};+lM<1%mSW_#_*PjsZI*VO zu)gR4BJwCnWc^z6pY&M-x%4{5V| zJm7|`sxwK7XV<1migp9Ez4(aXDhCbyRDbBPQBqM29Kh2MtX4kx!aYVc+>wIA%-Br5 z=xzmtV!nWYaBoiXLw?!Y95c6C4vPy2<2^E?9;nqo7r0oK1NYGtj-`G4l#IQw;52F3 zc~VzH3J?%mBOj`k#$~L(yCa#Z%31V?jJauef2b0 zhUj4KomV1u^Uw}H#=hsaGxo9?jTT*JIqUqBu^-}kv z&-#%u2M+H)=|`YS4_`pG)N<#=znHg zQXF)jyn)}H(o5fDQ<6SrkLQI>!(jpn7f0IAn`xp@?I5^*;l0W=*5jmvms}2ceaJCg z&)(2{#5W!0>&ZDp z2y?4_PZxZ_O5Wt;;IUbs`*oxHRp?nfX-C-`ned@1Z%P%-Td!m(Fg<6B&mLiGw=N+d zK!*;+V5BQLS05~J?f}7Oa>?hH<9QVc3bi!Yg9jU87WPlj$x!rF$jE+NkV|)aOA+YV zASJ7>PsvfW4f?poxBDfhY?r^NE2d{;gkaiT4PN;kA*WQpV3gjX!FBE67WNFx!4MyeK;fErSCy*g;h@ zU&G2RHc_gZzg7tUayxP@#MioSzf#Oj9%UpjUD-{69sZ`Wf`U1Te7LyXalapoA0@Rv zh}bP$7DFa)ZEdU95L4AZbN1j@U88-HzZ{bB%U0$|&t`A9&y%7EbW9E(*;ByXjy-$_ z2rj93Fuu5WH;OG7oPr!)WJ`;1ZiHL!S`Kdlpyt6b7NWJ0-j02zO19Ie%o*;;~$|v#5a?Zn4qnH)9Z!kRa%(0tSBUiv|{!o$^XOGo4`}m zeR1O#H?EM2NQMlFGAknUSR|AtAww!kp^(gTrpi<*G8K6wW9Ez*OBqsBWG+Nx%IyBv zKIrlM-v9f4K3#I}xo7Xa_8PwHyVf~p>zfm@z9)GA`}6Xy*+AA+Id3A~^VjJ_bXp8o zYhtIhzBO311#~uL-_e^kH7X&8pXnPV?0)~ASvmYvbc`!gaHiu8Memc`>_mx5)5Vj! z9n_>5koE3%sG8$N1`vT60NyIXWEre9PgAb zxI^0Eg}P5PkO*OTagheygiV_~vhe;HBkV*U5Dk)+l-jDg*bK2J5PZz2d9tp!?gOVn zqRQp&$YHX=OkYH!N7kFA7Xk;rtn8~CD;2Q##Adqw5P}L3e-fTA~^79?T5A z&SQElJ`uwXl$)EeaU;r!BMX#%+=L~;tygcE z|BnW%tH+d8R=caV(=lysvggd@=HbQ#oysXZ>Om8HesAffS?Y!yra;0|9cj#{l29yf zqeX^VA^!EqZl8+GC!2O1PZdETO1MCs8v(0^ktZ~Ax#1vnzro@y@C~c?%}8Y&sK}N6 z;myIHiX1Fb(rAdV+7&k_dsO~hM+`c-y0jIhT{*B74CZGh@MBC-S3zsZ%QqV`xhegl zYMwjH5ASj6aq|kx#i8anjR@pEoBb}%5hOuBz22za2dR;Pn1Hmv5?`ycP4VJf?@2ix=FSeG1v%CD7JyZyZ z@cTwA`k#&!ooe92XVmE`R)$BIRIQ@dJzkg>Dc!_gc~K^WNFu;CU`UdJqwgxitgcz;uL$61p`_}QIc2JC$uCTIjnL`8 zbx}(<$<*F6LYE_Yq0}Vp(};fCi2mCJu{R4Ra}rH5Kb==Ag`XpiXEGa#@68n7%URKe z_tQ)T*g@4DLes&`93!avKD(6dNSAGJ<*eF^-qYuV+N7%6&L+cqr)$ow{m8zxcEFL= zT+=h{#E|rmbR&jEW*zudAj)Ed-Z9!1a%tq8kjDkMg(#e_{K+NND%7}!8rV{>nu?n! z{5L&`YfqHvC-c4KmVh{|Vm*Z^TCj<`q zcY-GBU|%A8DZD5*2H|+|baF z=Te$qQewQAb!ySB=u}#J6#HfP-bwV0=U;=r(?57%-7w>lo?l{Yl<^5ZY{>h1J>C4w z;rYZX;Obfwo+01l#^@Es$Vi;qgtSm{r`??jN7V!sXbY2s2C7|rHZbq#$U>>07%l1` zem^fS_{5E$F<$dZ|tc3!mHNttVh-&B!G%agCfyAS)Ug z9yfa%0hE&_xb5{ejVR;0 z_?*O3X(H_-Gtq@VC|YpJowUSum49&8nEkx?GrS8AQm9jK`+*>=nsH0ZL1i zvmPr`Ax-(nV9Ht=*)RS$?|! z=ujz1*gjroVKSg?Wrh9ZGpl`98)P*0*CXFgJ$**j9i&uC5 z#}R$<98qX_3!`&XR`tLSh~XwLhUvGF)w`TMtgL$Y%maP+LB-9^otdh=hbJ=?ntOKh zq5JS`Wpw5o%0FA?Ht%~lxsRK?%Y8654vFF^qLnmclf>dSB zulESF^w>u*GFn&c>dxfF1KdEU!TJ`Kl<;+zpU_apui?37A7g-t;$Iz@a{2kVbSx8o z!_1qs2n6-p7rs!dKLphJ7oi>FJG(jR`B6Zhy!dq>XQiS9aDOYHmmvUQygL8pC1#%p z>i!oxViJEFx2q741UAf}$`$CaamfjsZY*8bjd+-9ArV zrASi+=bjhL+Z0@LeO@G&8+J{SVNQh^P_rCa4ct~#@n75*oP<&-1YLOmBnIV5^oB3LernxbE0vl)V=|rT=|4Y|!|xqN!2iT!p@dD_uNDXKLn><*I$Ui2BuM*# z&n`qv@U5~?lQ0PX^!{(^1jJXFL!!h0In^nZwY*rvNzayRcSQb={28@lf{iTX-3Ud) z?6!VKR7OS4FMM?2_4&zeWGQRuransR!XYgpRQ9RPi|iI|=(pq2y zB7A2y+hKeAO_D7SI`(@-@$PCXynDA%I9kT(&mrgBe-4e#0Sngf9qwlZ8O%}RqU-a% z|5drIXRzcp49|EcA?$JY|c*7H^GDcuF6xjL=Ln_z`qzclxP`(%f`L-d@X>XN# zotddtH+z@TKjf%GV5`n58`I@ETN-lIAgXjb4@$NnJ*vtTmh)zDl=ZyK7z}L56<|kL zwo-$MA=)VM;Txb0AbqGLuXxMUqsI$o-bP0a+L#WY58(r zBP3c@!kJZPTK-E6g~sc+%F-&UJ_ipMa*?m&Zrn zsvZMchaPPe=3)xB&Yj#qcNN2*D9?m#X7It-Ni2 z17db}#2ZWz3=h|QQQgQfw#f(O)dN3OR(6$QoyF_P2n+NXcnXS^+;@d+mB_mGeeyd! z@~3MI@W_Yc1Q+yPf@bpZ?S5w2CF1lzjb7Y)|80VQsf3jC-xZj>XEF#u)?su5>~!vP z3qx+!dBNBgX;%KN-~A`$S1Bz_?Pj}O$Fa13brnfxH~R=~jbheYRXa&+JNXDW^0ccz zs|R|`-ejs~TUe4jfbe~BiP8EFWP$GP9hAtK?~9C&Q>M{Q26e%_7x8m`tXJRiY*!J+ z2CNalpG?+>Cso?IKiz3{4X%$pup3FVXAy`a#98tZR*F&fxlS>UmoCBx$X-+@Z9`t#se?bR1UWLvMY?sKL%bO0#NUGnV{H3f?RajwI(RW8`rdra(7IrB0$) z#;=2s5MLMJ4%_x?Tm?6Nurclp@V2)e9ZBA6We%R84hYkPpl*e^C7}e@zL|c3#-~B6 z^9BaT0zCcJn$_+7u-)C)Ty>)B)%aOd&{`*#XS>{IEv=qBeJKpWzml7=6tfPQV9PI`Z0E7@GlOKTYJOax>C;4Jq=2sy5ZQb z*gQ25=?*UOrGLe28bJjyRl$>euibzx`FE81#V;C7-hI}wv3lHmm|umUb{i-;RRKF` z5m-@*?vWiTOaZ2xa>-!GQX0HJ!5~eQJo@CLZ(hCPPz^{!M7N#pC6KfyvFFP8&^ulSxO>Z7c8fXUaDafD=#-B4+?4w~Zt=%d zfCvOLfK-j>^G+&RS=pCXPh_Nxlr`7<{mV_*ogU$l7HC)E`j<{_*Fo&N>QN9s7W0Al z^y~rN@Il4nJYw(e~TEfZfMfhc8-?7+I-AeJQ_*(psM~*ZVlnNfB0s)T| z_@^g9eVtdx!cZu;YQ;>u0O~#TQ9v!FItcoPy?ggK+7AWs6cA1`+&>0<|NH~fg+DK? z&dv6e^`;m7S~g(9Ke=pe<4TIFbO*nhm)*huOi`ym@hjIwjOZi&2aiy0tRl7HylV=; z^$(2=|5DRzj8%vXP?e_L2T+K}7UX*A=RkGulx5REOSOHs+ln3dUhYXgxa-YfOZ2b> z7;NdwzIiBRRTb(@Pf!1trn^O5GrW|l<(D-0Mqn`kIrch7Rb?FNUSEwmR&-$y^MGmv zXNag)9#o{Nj4<_oA_kFbHe5}N!|g4yN+^zGaw$10!dS}jL7;k>q=v}B85jWxP_5ka z_nyu}#qp!>RlrzNPC%87@6Dms?YkS}np5fu) z_bQM}doc3 zH&Y6FfW~wj9d2AOB|Q*m8eykp(&2Df={b&|hM#Vq$=B$PHhLs@IGa}(ijqg~9k#bc z2G~ZsIx4yJ0c>ND;lSn*-mo8!Jd}VO>rW(U6b)piUst9y`$6?iD07Eg9;!hqb7fn! zSFDWhP;xeb0BhCv{ecPGqIG&2ugbRzE*mKffH|U*sIJO;9gBbx9oYd|m3t9Od!&?m zo=**W+&jdCYEgazpqI{)+4iSNWPYmLNA}IbHSk~-ov+6|ruTol_C5+K%QG)hr$9cT>~yeb`n)tTHPs zZ0>Zol0vx!OtbTK;vl`El;ibDabDmUI@O>DNKYC0co>8j0c~^~$g#s8za=*6*a1&u zOkX?X;=$XgBMWwAL%0Rij>nFpg;Ok27Hond8mc`^EKD#BE?)1TA_@k%UPV45eraS$ zPd{~<1(JeQQ`nc1B0%JUE6sKcH(ce)LXoz0{&*zen5*j`)6siBer!hGN=gGc#PmJ? zM!aYH2yc#fxbUKy&z1LAN9x>1p=LARy-??lkee@3wmIKzrm`#P@WTcol`4;2CdBm} z9y6a)ZA<4q_<^mp_<@q8#DD#C7M4ytKtB7{^Od#P-@+h43*4>lUnF)2yNot>)y|cB zwyh(pA?FSK*gOr*nY6_F-m>Y4`8=8X5i=9#fS5bLC^-0rst@ZkOYCC z9P{V>7KaX*#DnQW($r=O`d~*7yc!_}irffwDEKbkDgdt{V5TyLbX8>?%iGH~Sg{w=d z%E}NP954R(IB@su^5V5fFv7<+tWA`_^$?JzL85^?Qy)K4q*_$r?+m8!87yuD=elKU zh`s;16bqW6T6Pr<9ox|7vwG% z3ou+0Rqjg^QO&NYrz;Uf+071BV6KpSi;Q+2ursTZUYPA?LObVb*Zq48pahI(&hL3S z$KbIL6b>sn8Rq0cTZbU%I4aGbH%0qiaLMh8!}*_g-c$i=rNWhMX*Vt&&B`SQdN~8R zUMtEkQl?V)TkcgmVi-UR+jeVx5FH_E={eHvNL1WUnQCPsXu-QEW+L3$dEVM)u>vU^ zG`J{B1FuxF6d<^d+ctd?hR!dGmwdg7+IoKYuFc zqJw3zY-^Z;09yd8hcQGF_*c-^a~zEIXR*0qek@dUAraaab=6k)nf~^MU;#TS(7M-< zy@jJ*fZ}8YQ0|s$l+F2}^bvVD%rSunuzHWFL-5`py`z9r%!q17M>{`xn!$Fl^6UW_ zBRQeIhZy7tI>18U4YH5-)|B@)7dvOyzCzo=S1AR0fYJ)yKzSVy5nu>=E5tyu-QExF z5qx|r!(){^Ftx11K)EzNR+O5reG^m#UN%7w6?GB#O+?&+B{X#qTG~4E$s{E_t~lW1 z4U1|FbjSG?e>{9$3&)yV=TCizK^M+x->0HL5xsTLXZlz!-_zWk1 zbs=iEa#_GS55Y@86UETj{9+N(aA>;nB_QptDJqh-oJ`>dRxH-EvHt-`BN_crzV! z=!#r8P=kePU}C=79*)-%<;S5qA7cN~A5y0-M1iZJf)<(Pizv=l3$qxl0p~$I7Cbr7 z+O?i7P9nbq-rV}DEauvs#zr44A#a{I1mFge+->yS>d?CrQ1IvKNISSIn;dX|&ETF9 z1Dw$G9{MdHU;~hG?gSNR%^CH}V1Je|^30r-pDk`_k#u3q8~UiG<=Y>T-sr8^N)~2} z0PLV!O85!1n}aWrXrKX*b#!~DG%bS9sO^vN=%JEpTg#OK3S8SuWK-hs4|$p$!uC2f}=m z9T2#LEVheB@|s!qz78T8QeBkJVcbiTI_4s<-k`kO($Dxql~JD(;!nfwuPGLq@)Gj9 zTb?XdAgO|^l_kLXPy^l0^9W91?;tiW{t-s3V0~AYxBqP|dS{EPNsTvB zoL49>$=VF9AII>&K1*eJV$m1CHym`An;a++P9H=W02wifB5zb8!d!+2fs4jw2?V}6 zLX@hAylS2*pWPb$xzw^d3}FAwX9tHT|hdB|LJ|>R&w~(-A3GxL#89?L`O570W!fc8m3o~CC zcNZ75+aL8;&qhrS7r1{MVAzdeqZ35XFI-D#PeZP@5YbPf0l51b{6^Vjs%; z@UQfE-W)Cj$#EN2p;)d^=tR&#O{4nARg?Wy0ZhK_~~+u^r(@iqUfy-ACqM6$_T! z!*h-5@66YzWNzNLgEck?Atn*k*Q#tvQK!Dx_mzsJoyFk<_VjFDKtH&(=&|z`F zdbL})a3>ZDu44542dMLMB3^w}H9mhSH-$*e0HlKb&@4S9_rPS*k2+uMCJu=b6Pgaf zMVq(20af@l8%#VJ-D1 z`<{9P9Rj&7H%8e$ms{F(i(|YUmVv8R|FubY*lN;h>(W0LuyieIKXj>PLE9|k%WN_T zAZw_X+_>UU2s@h)G*~vj)Qi}VZ<`o%Wg}7@eiZpOaUEnrkQlkegX-%!2FkyX14mw7 zLLyURWgw}@e=mc=x5aHClGmdiMK7`lHn0JQ5t-|CYO>Y_aVH=0%wDl1RRk4 z5Kc?{dJ;QO82cdP5*_LTfZM|uqPB&bmerPN4*igk%LnJzsVRL&j_zu9N26y0d%?*&BEp(H=QzPI-q;E95IdU_^E zJi9?+OAEFG3msn_j)Q%1+YREQp@dk#2lSqe3J7A?wfpc@5%L0U=o`7g7#~g~TEWH0 zX{tSJ-f2mG_ZS&x?^XPYfF3EX*0yK1a|^atIIZ?MFa>LS99^!A{~?fRT((4J6H*Zi z-_p^f4q_%R|9$_^aig_PYOWKczF(8_iUK^`N!0>ScrVa8tO<@M7B*W~(#$_>ZZ~v? zz-nPYYPf+AyxH><&keJ(BI58F@Nj|xZnh-wTF0!g_79H9=Z3!b^a;lv=wE(vD(zA< zG~Jl6oW7(AoqE>9cB^QjYO7>RLJ*}6A@NeQRWlpv1$lN!f(QChpkc2WGa^-jj`35l z87uf(M-sk6gw{Sdwp!}zN%#ytO}_L*g(;f<9BTNJBvbAY{hWI#a@k*O>2inMc*)ch z%{I|@{q}Psq&aD>QMupUo>ajZ<+HOZY4*VJp>kf}TtoR%!{qq#%5NEH!nE;NmcG7B zYAt7FzxFNIH>SFOqWTu)o?R=;<)%wc2BAEdS{sjV;f1dv0roKH<4^(#64*{ZRj{9!ewiLzQRj)iwqOfT=5E-M{Le z1bMC;>h{=A@DWr@(TUmr#dJ>92 z-Qs(WUyj;_f%@`$riv!NXdlS|t2ke3@}T`w^1Yd~q7uwLA zb_-6!&c_XXY>8dm(5@DlBg+1B^{7%43ht4aVtf)FZZ`!8_nQSu6ShXUP?5>KpH;&su;EF7sK7qge_Qa1>Hi=HMK--DaFY*<>SO}(_KuSB*`i*w8Rgp z6ik1%2)#fHa{JxSMT$p<`BFmg1A_OA)jpt=OO`%_G_6dKCY8!>5$0hmo!srk)Cg3Z zb6Hq~24dKd#F1Lc_VlG`xarZ9JVKS%5p)4mnazfP8g@wl=PSxB*u@My>+G&1N*THp zJSIz^yfkDVmLLaLh0K5J7obT!;X;E&rSm@r2F%q10WDyeDJoK;Y&1=C<0UVP2+2)M zKyk6pNX%nUhWAGvR5~* z$r4BYcMU*Yi1S{Y-M4rP@D5hILKzgC+`+U38!7hR0#PC=?Nwvc2}($xV5g59|L%G2 z%mhAg?8*MK(xmycLwd>j!y;DapsIKP+H3b%D1ycv@blhCB;rFhmTrmS~_l$F_?(?>0dpt(HI z;biK~s{+crbLTFQC1#(rj5l!WW7-IoAv}%*9w!IY)4&AatT0PElhrCp?Wg+j8si}LR%NF^f*$L{7e+_`%8`?pw^s~2dw zO?~+1vN~cIlqH-TBgj-PMqfN!X>co!qufkC*3d_5iV&Q5WY4egy_#X|5_HN$OU6%R zWJ!0}AMmxk`Oaon!0hmV5Hj%W>p+&#tNh2GJTIL&ku`2Frl{UZ%%VBGb)IT|$s=Xa z#r1a?FYHluJUOUx_$&R?0cQF!(ue)R7S@NZo2psZ)3^=wc#jPf4N}Ed?H!{D;Qdv; zqDN{E)##@V?8M*Ec`rg*3_3nIP7|=xp!Re9@19DEZ(4IlEsonaG@d=HU{L$#{2`$( zC)8=xr$+`>Q-4+{GEOtr)#LX8;r{xT%;|vFy#%+RFP3-5)o&CFs|gy{P@5p*Et7MTY9(4gBc16Ee7)5yEgkj>KrcX+JP-X1Od{b z5rq~1voYG4t{TEE#pV`^7V#sURPnN{?H%?DC&tZRnAK%u#4(k+4?fMlNzR)_+#Ime zlIm7%!3~G8s?BiM|A-AfgIr>1khDZTp3NH+WSuQzv3VFQS*4!}G)-#Oe0SIcde zyK#f_d1`vv>H@yB=ULkiJ7xx6$hGq_pCW~9#MuP-qxk79EsD+R1em9^yJG0{!67CZm=)5}1 z{lg{`Ju6~YtM(d7U%7(mf!pZe)Ds-rJtjzVZSY*z*=(QuKO%3ol}k+OOS0(oWE>Rc z9y^7!9usiBj!}d`C1|}_(}VKdU+`7G&|jawIsP-#a_5&pZCS>*7@B!E^rQgZ5F}rQ zB3*ukaF;)yTSL))I?i0V>0lw}7L4z98TlF06gzkNTZ-Pyj@r#nvTydqbQe$mZ2WdM zfZHiqpqQS6WJqeh36n6})U-oxVGiusEo~4Dc^QUK9@~tRsGLOg zG}1^;cGi3o9Ao2}^K_=Oxrchr7!Hwl957IdlGwjj-mW;a08vG}+IZj{coi>ZRrH*a zyP4o>1e;OC2-|giT|1j}EK~Rk1mq0s#7tN#|96!yj>>R217k9=jbt{R{Pk;bK$g!D z7v356@~#y-klSlH);TR0`tdJM56lrT!mP&NQOq73X!r&K3NvoE4U{`CCr6y_j2pEQ zDIH_ZR)?=}kk-{$XkeG z8>qaQ3dV#DPRttqZ@|(kPzU$^=R-=a4sUcsa;EQU5>kbM&u>TGEiiO@r>?)7Vu9`W z*n5M6SFfI3X3`r|x+~Rp#MHLQk~G++w-wa<1vi`_PS)iG328KV7qT<0XwOG0n&;XV z0&0=F5URhJV$xNXzAE$=40;Y+GA2ewv&5)tzZ<@FYzDwm;J#;wpD|MY;G*oS(WpI)?v?r5hhpG5$>-jI@Iu{3`C2>ySN z`5HSil%WDeQpY!gTBNw7Um@jAlm#tS^h!&Q97o!|jX0ZJL$gC-9miuUJ?K;TzHxfy zkDpp^eOr^`SPdhxq6*BLw*~G4UkaFr0=d|yEg(Up)G1e6e+)b-iwrn)=oS@sSwY^; zBB#Md1%3^gx%Q_|(??yivHD$vd^0koR9*u7oRG3G z!})gnLXj#hHO>8>#O$I?+E6z66xlRrZ?Ut=*I*}X%Gk^Dl3pe>tB?mr=buhxAGjbi{gW`@T(j*KWxN~&4_~Q^5Pruo zqdvImFU?Qv?B3%WaYaBkmG5q+?enk^>U=*H+*du%Ny&wpS_^`$B< zfSAM4_7EIjEEWtefW{)5Dcz3DENv?mUmts$-aBk^4fzC6+MAMWdS*caah;y$WaVZi z9d2A^EVxs7M-Yq+P8c~n{rzL(H`gs1PbcvIx7nP}in@BaJ7Q^&GuGAGdgSLZ4R9ZF zg(U5cy~9CU+Y+L`7B2|IefA`8*uC}Q^^JyiAL|vKNQe8^&b7i5?_ae~mGmJs`|S-5 zk^|zFL)BCE4z)x(eES(>9;AVnXhyclH%UF#qM6Dm`Yt;JE!NX8-Isfl?)JRKX zk%p+-9Oa2``Ze;kbbhowpjK_9iosX_=F<3w{*G;TTZ?RLY;-l7gN;>B^;|MZX7aPe z8+Rk6_M&af>J}5##}9?hRBdP9zC-4l)1)1bQlxLEB#L?I?ECWz@~)22rqdrfssRfS zqoq@H8uPDY0w37N&!f_*io%9vxuWC_L$14KK@o$@vyQ*IjOz#Oe~X~bjENL%c3u9% zqaO$UbpNzcSe!|mXkLJwq4uu|f4QvI-%;S0s|#Twn-W2vmrWesW?$1#z{6yJ{=8(} z{UJ#3D|qS-c&92sJsETBFX7JPozEY<0z^QV_6=+Zez& zJ(z6ao7>)%|0BjCoqQE#}{C zgUR#R?D36B4r?0RvSUa$ZfxY&mvw7g4cZCNY})~1kKK;PY0>?JrL0Uy^BH# z+5DxB+@hCxjux&~?lL|ncRQO*_$O8l)*cL?LO$KvSOlmLiCV=(2E;H;lqG;ZD&cgrej?(I`>w;KLt{!qIVF`o1OUsRn||f z%^#;V!A=u=K;B8<7;?}nEdI@f4-bz2og-b}4Qn*VZ&}%;=~wM7u{jE^&9Sjm{N|GZ zXN^uWRJbD z=Vi3jy#TW4=yXDJ^KGusgG$;_9F9BfW)6Kw_r zmu#+_zlm!Me_97Q#Lh#Zbk*mwtA`;RO(^oHSeV(-Yy~Ye@VIFPhb4f(t{-3g(TITc z3st}sxix)nUUvn&<_m@5ukp9Zv* zZ2_U_aVsP`{qAP8v^Kuk;l1AIWhESidHclF;czR-xC%ij$^8YA@EXN!seA*Wt@X=j z1DayYdtH{veFsWxX>IZW!T*z@&ocXnNdCy-ggkEhw6>)1U~Q+FX%bUiv*(l?h3Mz<4; z4g$xR8Ny9vc~9-RqK?65W#DZeLw19p>UAc}-mS^9Z=ulltNc@o%U@Uf`D=LRHVB+x zLbgJnOVV_`+pt}Z)2u|+;f`X8k@S_$t&r3es(|D)H!i~9gv&P}UDBtI=izdGmdW|@ zJrE03&G`o*S_s9Ro<5v>4jgOMD-@gUo@5*FvV`nXo%P?@Vj#@0*}u*6d47iCA9x!r zN=JXgqEb>)__fid2!qw@y3Kr?$I`r~03UvJ$Qu5I|8J112$!m0eIe2MCG}1BTuRIi zMLBWF9SAQxajdHS12|W|+`VJakY@f7$Cz0^_|e;@#p2{C=tH_tn=7_fmtFYS?g;$e zfs!kvz6SmuMohA&)iMJ$5*J@H_#U8)@6H|}K5h8mwu10{LhMAa{lJnewh>j%DLCucY-L zE?nEj3K9MM(g%MA85C{MwAgpJI~>>1IqMDyVUIf_#2zdgtaa}_iZ4)xDYdp9k9;6% z!toxng;cH13zsjC{M19z12g#VoOE__V4(_|lX}-7gyt2#w74v#xep>>f+Z9sb5u{o zmdExT;_~dBuVg9=IRaBdvLC!fsat{EKiE{7?UgGoNzXF!6+wtux0nG&z5CvfdS(CO zbpUnIpwfM!`G7}fgT|HxvV5-G`1!rAJS(jf{324%NyW`5v1r5j=DmQo6yry&+@H9T zf{;%$s73j(Jlh@jr7sqGN_StKfHS^@)nVhKSQ;H&yioh>Srq&ZPz2?=3{&q_gN#Yk ze*QW*f-+;|S|4F9m4^Udh<#POQF?mvd>kSdZp2cV$+7}81q3kbjsmDxcOx2p#{ zl%@f|`O>eWD14kLyKltb?oTH_U()0R>o1L@#&GqdW!W`L{a5z}12= z3j?Axs0{FwWuy+M3V-zIQRh(oZ`{B$7nBXBbH*-a`GD&v$h4mQftE35@GqSf*h#sj zpwaJjb<5ZE6Edz|b#GXmAi>zP#hKfhUUTDT}&0L_t}JMKv2IoZw@x=G&y;Iy$7-sc{pv zlC7V%##*^k18M4cKwO97Rt|fjv}rpKe-Q{D44SaIjrk8!=_wDeeEH905$va$^}J++ zSdg=~XoNSORpW!9wlX!<0 zhV-8TeBRIOx`@Smj|_XUziDoFTUpUmkGI%WA#YZT52ChHO{l`$*HWOBvYwHT`13^CuBd*ZMe>L$83YT{| zmJfr1+S5F*hk%fx7b}kep7DxJEZi82vSvHf4bD+vPP@U>n^q=o>E-6xYK?W44jx5H zxd|yHdTl&?;VT9o2$!FWto1MrJ28P+A;^9dmS!@SV=Tg$!?PY!ZCpVFH#MU^B1kKo zHqUpKc}~=1E_I46^`#tB0Tn$DuL1PoFwip?2+^f<%0?7izD`Ue;=_;C7@f{6n}6Ur z;iLGb0wYh`+c|X33Wz36-K0>dI%{8hKA#)!@`0yjQ21LthAEm>pbVTiRmqc zl6owHq5x$kVmvPL3dmKov`qOvYGB$^&zZS#JF+(SZxg${)cd)*LDdgM$4SI!E_{h!{<08HDvD1Jc(Hk#0qO?)I}%>Yz*cA&8wV76)+6+a~;)mGuQiAfT)g z7Ur}cX4XTA@`8Uy3cj0{>##BWY%_>pxqci?2Spzs!Yv1(;Ip3A{G|e%HxF?Eoq~Yt z^at>^VMZwOAw<@(|LWM4tKU9je93*lTO8~PN^`H9D}qpArbO(;cc~3J(O_t3eQ8+v zIWNjgDG=ERwYl?>EZUeNtlKX0Izs|=shW45Wslj)Z<8f zYu0_C3aIDh2ikpfqy!b9}jS(^H=pif$M}3BwvD)<>WNugjUDgG+qx})J?#f^2ujO7ek3ol| z6=GvKV9gG)a#D`~6{&XdfLq*u<@0Bg<3@`|tw(DAAPj&Fd)O4R_I1ACIy=$WY@>_x zq|K47t?1!L$y@f)s_G(o2GntpEjoHf5QLEzs4@harH-w5^ZcXEX@?to?dK;8;KA~d z$jx+K0EUlGiCO>c>G3s3EQ-}k3A_5r}AN=7q`~3K0x2c zjy4gdSc$S5%%;`|rJl3EBcx%L>4+vEv@2647UdU%_VB!iH<0bVy9jyPan{Zw0L&qx z8gapF0P@YW7>xEy<>k$wR3Ikl=)*U6OiN^3fWQg|Mey%(4-Q9v^ZKtl3CHJDwB+6fMi<|iq2czw1(}iT7bXifrqbtivZL&UaT_*AqU^n@4er`2 z*v5ye#N4UQAq!nCR1~a+byPg z>=>@0g`YM|{S^{haQ!&(EoK}twPa>E3JdrTrPnnx4jiQ}H&Gl%%YhEzupqBxeJ6o? z$5Bzi3di93E6n1q^{_s47WcX)UMFLBo1#M4r&1n{wFlP9jDz*vzAYU4=46omlUTSdFJ-|LKj;=a7~{zc5l3Cc%1zF#&4A!h*HC7|9HQN#7Bu+U6e|h0=SC)9r(K9KvHaGtc?Ohs< z_gD-qM^APPsFtdQ=hjJ3a-*+Pv-&#onbH0T_mX&c2s?u_d}>CkOpXSbx?L#`BXN79 zLIe~i7peu6&P;`ey3Ki0DMD#@i{s4CPtu+@lTR#FLe2qYJ~j*SP*@h45Oa88E$b4V(SE3cheOt`kbvWqaZsjeZzk)tWBAcR#wla$x5=R= z%uds;(Nb|LbbqJoc(E&KYB4(}Pg&V3!q-cio;kH%u^1kCy4tuEPl@-M@ zg-#lQ)1nFB8^Zai$?%DASZjIN4Vf{d?;;~|YZAGK%*eKxGi zB$ojnR)5tDqUH6NhnvVO$oYxlWK+6i7PPk|$X*h}(VzV|GCVoI87(Lfo}(XE>rD;2 zOiO?gBnl%Lzc|K?6H>wWi9^QW914r9Qqcecsun&Y*~L;|aY*==h4ZR&>y;3Js&6qA|V@$I;3atbfdlPqCI zNlMDJ-z}kCqzZT%qZ!@f)YQ`^qW4R91^40t3&Im5#0$+SaVkEw6=Cpy14?Q(3g69& zOW~pNcHQp1^@kJ}T0DP);tW{KzIbK%EkMbQL^1oq$VsftD-EIDDxqZPU|L*pf}2!y zgZt`pS~2Ri&A3;>i_SD#jpG)?sOd8DV%dZVXkU~#)rD0At11Ju3!=)-$>8%7MY z8=TuB@LCOA6cq=e@SI_}#%5Y0L_QHuMonw7uw1@MjX#5)E89GV<6Kt)9OF(4UVM36 z%&5T`cPafl2QD}2?k;622VpI1k!@!h$%edaUq(gcy0I%$8K37gq3_`}`0&Aykvsjn zyqEopyvJ0{Wa(;#uX$8PAXE<-1lVbQJz)2OA|NT*B7GN5^a7`77QmPyI>bp9xzqk& z@TznqRN%OAz9Xy_zxP`ZENHt9g1~TiVnrwepE)go^@KT&qQWekr&1Y5IS#K7S`G_Z z7NQp!{J%Cq(87+BTpUMetm0s!umGDfgL7$sv4V$T+3p*UTm{bJH^$*-3HQ|n9;h|b zfJjc+3@#)JzKAw)DsW^wg|CzULkn6sxmgxDAe$|eN(YyE^4iO$zRsF1!V~$VGcR6? zb%m!bD=i+Cx!we2@vfIpU%bgx3eF(L_H60G zkNaFMHA2ZknWm)+ZJ~#gKaAMIXYaX6{w$9hLxW2hIuO<*e1Vp>YbRih1ek3NJn!h1Z;fY!8RA zny@$}juVGB!x6{TOI#^&*ElIy$ys0sss{Kr{N;tyw7`A9akH?3N?YIh0+-qFa$9(MpJXTV1W{Q2k{DQSzW4sdSwNv?G?DiLAd_Ra& zn!+ltc`^>2V+h)%DZ}T%m|Z;z7sq@4_Enlmgtnm-&vLi<$#@(-NTYgl;HGL`#x2?8 z5q5zi;eKi*Oub=tfx7~k!>T*L`>`-+hgI{QW7d4lgF>b+qOonnWDPdG<_UWBCPufS z$OS1v$wVzZkI+IdeWvkz3)FupaZ|PIw#E}s(0CO#=&T_FwCt9Uy_ZU={+9zhuYtaN zANd99!9z+e{lRc}eQ<_}`_yG_;#>vf-)EP>72QNPW9yS!%e8=9Nn$h9CI|k2p-4m% zl9c}>{+Sf1fm1IwRU9COclfk>BYd?^_C&N@-;u-{k+tOqgFZ8lv>%@5Ns3k5Kv3AWWJgVLpA2t{@Kb}hsKUrMWB`j;&si^sAl~XkwR6RtRDZ|@TthT2sB*;g&OfGtUzeR5f* zH0uQ!^kZSZCwqCVF{N0|jTH})^C@dO@`;?kPpe6UC8!ang(V@o-XoyztMLLbrKT0z1|D2xpkB57d3ws7VlQXaF8#Vz*&r zj7suXQ+?jU`(MeX=Q)`1Fo!4P@o_NnO4DiGYq&t;g`-XlOv(cqdc!`kaC)I_#PpI^ znuc=($4#yJJi+3?M)cj1-3E%c`GYL3m#9xiMv>ZR*l@i_o`$s<1dCm#x~^y@RQhy) zX+Wtch&gOYjyNKB(q3z4)C#?}pE(Umkk6W$sDKPN2uuW+ zD9w|PEk%BWhY1qAaI{HmufdV?B<)?NsMf?5o(uZz!+nWIIxy_5Oq1+GHBAj;GqMdV zNhm{79-l}OTO$NHzxwwU4Ht~|Q{IAwn`~Ss$SbQYA}m<5+0clR7PdMJl5(WO5Cp=4 zhdw*!{)aNq{@{Z|$9;*694rJ9a8}I=4sS15llkx^?Tv`y!?KB`RpS(CeChXs{1PXQ z5{HP~3l1+t9+0tuX{a;)m)QFdfge;Be1f98EYhO4niXGjHqqi#1^eY24*Wa*((SvO zKzHd8Mg2N5Vh@1bJ2dN9*umVS@EJ7PrZi>z^~|Z#pB|apv7l*hdikhLgPjDW~s( zw|hdp!vp~^AcepBhoHhMYicB2D7w;MH>CWW zTNCNQlF;fZM6(>g1teJTr0JW88{I(v&$|G~8C2^)o#94iSE7+ZQEpMe@s8waEQu_Af7rmxqx>u)ko7oh+slNtyI zkYQxOS{{0hL0R=VcfG68oKSyl*pLHBNa}w*eo}H?6nL&{4B+t36dA{f zJZN~?<_*5)Yfg*3I3F2M>@ zYm{F&o(#=emIaLGq-ay)%Y1p7)VH!Q;b8nA`2WAg*3GM8EyAfOmE_n1rYb3CbmL;f zUH=p3MJ}a_Sdj5BgX_$V+USzoBx+%wVAIUglO@7VX64IU<{Rf<&}2UU#aoS0f4i3U zhmFq20?UE%6vg zBsNy0DXJl#7NVAxHBZ{>P5<>wfRHKLKB&UEL>g)CiaA!Uh}pLJ*c9KLIqASQ5WB&ISCB^Dk?r6$ zSob&aH823v>=wS1(6sdQ(+qY%w}@WUoSrMm2P~L2`2joB2$RoqfSU&_oK^~)E7t%I z6O>9$SgY%-^~ffg4Oqo$DJOb1AkT*Z3)ZJH9$#coAP&g*SN6g{6aKL|!#?y~>@ diff --git a/apps/example/android/app/src/main/res/drawable-xhdpi/splashscreen_image.png b/apps/example/android/app/src/main/res/drawable-xhdpi/splashscreen_image.png deleted file mode 100644 index c52c2c68019b49c56da4faf7d8835a8392cfef7a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 59836 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 diff --git a/apps/example/android/app/src/main/res/drawable-xxhdpi/splashscreen_image.png b/apps/example/android/app/src/main/res/drawable-xxhdpi/splashscreen_image.png deleted file mode 100644 index c52c2c68019b49c56da4faf7d8835a8392cfef7a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 59836 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 diff --git a/apps/example/android/app/src/main/res/drawable-xxxhdpi/splashscreen_image.png b/apps/example/android/app/src/main/res/drawable-xxxhdpi/splashscreen_image.png deleted file mode 100644 index c52c2c68019b49c56da4faf7d8835a8392cfef7a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 59836 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 diff --git a/apps/example/android/app/src/main/res/drawable/kingstinct.png b/apps/example/android/app/src/main/res/drawable/kingstinct.png deleted file mode 100644 index cebd97f566529dbf57d79eea1c01d9fee156640e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25006 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 dvuaFt@YeRX7JSv!kwG7epZ)% - - - - - - - - - - diff --git a/apps/example/android/app/src/main/res/drawable/splashscreen.xml b/apps/example/android/app/src/main/res/drawable/splashscreen.xml deleted file mode 100644 index c8568e16..00000000 --- a/apps/example/android/app/src/main/res/drawable/splashscreen.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/apps/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/apps/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml deleted file mode 100644 index 3941bea9..00000000 --- a/apps/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/apps/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/apps/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml deleted file mode 100644 index 3941bea9..00000000 --- a/apps/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index 0a61c1b272eea7a762c3657ede11f4ce39a8cab0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8377 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 ap01I+?%QjQg+EDH;Oyw`z}f46`Tqd3=8|dv diff --git a/apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png b/apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png deleted file mode 100644 index ac03dbf69f0d7bfe4cd103b20ae5228aec2ce383..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8031 zcmb_hdpy(s_utLtGHkg`Zc8bZ%S=M9tGN^@a*HrwN^+^(O&b#NVN%ScMp8^^$St?I zqzO?{?pA~(_fM|zd;9+W`Tqa=J@(l4cyF)Ud7anmJfF{V63$zh2@CEO1c5-pr_G5r z!1t5gH$NQsY+jO-0f7__o+c7(L&3kBgmU_V9xW_(uZD=+bgvG53vq64Qku$vZfzg1 zf12)Cl2P~K`xhsMz2nu)68jWq{UQ4|KG%MJ>iQk`WjhWIfpF~2ZOx&?bLt2_S5 zZo|c2l!e5Z5$~DW8tGuj(l)5oi|hm=26+V*NQ%2{7;RC0UcM4h$T4 zG!@rU_ue(HS=nb>W7qU4vyW-T(g*+BHtv1anF>cyyaYo8FELA^|D`Ve{w-$)x?7a~ z3OvXOW|X?bsv2u@?dNY^fBHw+Vy4krmE1H*jS%8SlGJd}E4*{DJI~9@6EkE9>V(*g zYu2hp;7WN%p~|+TAj0`V`bL_{VOtAC*1&1SITy}J9%$PFSqHL*$RjGL*P&I=?_V}H z7H?AX2L}iJVA7(C+dL6?HoOz0D|-df4xOT6o0nMyedOTh@mrraw{F(G_X>MxYXOzpQ~!3erfmnX)R}f_bRll5anb0!>IwQ)?9HZRi0)pU zJrllYU70Hmsyni?2Lp=h{AYM}${oc?K34@7-04b+migU6BqN+hLHx)(#T^mTx_J`0 z1zv*&APkz>`WIVAMQ)r3I1;dzdzIvDYoVRh{xt@>s`5(lqN|dvcAew|o-Ra%=R*G6 z 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 diff --git a/apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png deleted file mode 100644 index 26deb9725b93d28d1abab5f2ec9fa854347b7a24..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10372 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 diff --git a/apps/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/apps/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png deleted file mode 100644 index fd1a2c712acd1eaf5ffc3ba1ec9edcdc4a96197c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5199 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 ULJ*w>3_FmIhrfIM_Q;I?0&7K2ZU6uP diff --git a/apps/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/apps/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png deleted file mode 100644 index 4d3ac7a4e63d1954fbf72d3bc9633ab895613e00..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6526 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 Q|0*m59V6{3%^MH@2XeGXI|C&+GYoUe^^HYYQ>q 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 T!gB&9sDHtkS)0}z^Sb= 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 Za-wxV!t(TUd!WS@wBOc+(qO|#{9nh>`J4a% diff --git a/apps/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/apps/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png deleted file mode 100644 index 95ac5824e9d715c20b2a4330889120c60bbfcd87..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14257 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 diff --git a/apps/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png b/apps/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png deleted file mode 100644 index f7f1d06908af8ba1320d9aa6474f792883db430a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18064 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 KpUXO@geCyPqIRYL diff --git a/apps/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/apps/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png deleted file mode 100644 index 6508f74207cc3a45391a22e58c598a273d863c3d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22474 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 diff --git a/apps/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/apps/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png deleted file mode 100644 index d54716bfad547896ba03ea9230518d615477fba2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30705 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 diff --git a/apps/example/android/app/src/main/res/values-night/colors.xml b/apps/example/android/app/src/main/res/values-night/colors.xml deleted file mode 100644 index 3c05de5b..00000000 --- a/apps/example/android/app/src/main/res/values-night/colors.xml +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/apps/example/android/app/src/main/res/values/colors.xml b/apps/example/android/app/src/main/res/values/colors.xml deleted file mode 100644 index f387b901..00000000 --- a/apps/example/android/app/src/main/res/values/colors.xml +++ /dev/null @@ -1,6 +0,0 @@ - - #ffffff - #ffffff - #023c69 - #ffffff - \ No newline at end of file diff --git a/apps/example/android/app/src/main/res/values/strings.xml b/apps/example/android/app/src/main/res/values/strings.xml deleted file mode 100644 index cdba88ec..00000000 --- a/apps/example/android/app/src/main/res/values/strings.xml +++ /dev/null @@ -1,5 +0,0 @@ - - react-native-device-activity-example - contain - false - \ No newline at end of file diff --git a/apps/example/android/app/src/main/res/values/styles.xml b/apps/example/android/app/src/main/res/values/styles.xml deleted file mode 100644 index ab7cb49e..00000000 --- a/apps/example/android/app/src/main/res/values/styles.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - \ No newline at end of file diff --git a/apps/example/android/build.gradle b/apps/example/android/build.gradle deleted file mode 100644 index 932bf7b3..00000000 --- a/apps/example/android/build.gradle +++ /dev/null @@ -1,41 +0,0 @@ -// Top-level build file where you can add configuration options common to all sub-projects/modules. - -buildscript { - ext { - buildToolsVersion = findProperty('android.buildToolsVersion') ?: '34.0.0' - minSdkVersion = Integer.parseInt(findProperty('android.minSdkVersion') ?: '23') - compileSdkVersion = Integer.parseInt(findProperty('android.compileSdkVersion') ?: '34') - targetSdkVersion = Integer.parseInt(findProperty('android.targetSdkVersion') ?: '34') - kotlinVersion = findProperty('android.kotlinVersion') ?: '1.9.23' - - ndkVersion = "26.1.10909125" - } - repositories { - google() - mavenCentral() - } - dependencies { - classpath('com.android.tools.build:gradle') - classpath('com.facebook.react:react-native-gradle-plugin') - classpath('org.jetbrains.kotlin:kotlin-gradle-plugin') - } -} - -apply plugin: "com.facebook.react.rootproject" - -allprojects { - repositories { - maven { - // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm - url(new File(['node', '--print', "require.resolve('react-native/package.json')"].execute(null, rootDir).text.trim(), '../android')) - } - maven { - // Android JSC is installed from npm - url(new File(['node', '--print', "require.resolve('jsc-android/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim(), '../dist')) - } - - google() - mavenCentral() - maven { url 'https://www.jitpack.io' } - } -} diff --git a/apps/example/android/gradle.properties b/apps/example/android/gradle.properties deleted file mode 100644 index e56f44c8..00000000 --- a/apps/example/android/gradle.properties +++ /dev/null @@ -1,61 +0,0 @@ -# Project-wide Gradle settings. - -# IDE (e.g. Android Studio) users: -# Gradle settings configured through the IDE *will override* -# any settings specified in this file. - -# For more details on how to configure your build environment visit -# http://www.gradle.org/docs/current/userguide/build_environment.html - -# Specifies the JVM arguments used for the daemon process. -# The setting is particularly useful for tweaking memory settings. -# Default value: -Xmx512m -XX:MaxMetaspaceSize=256m -org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m - -# When configured, Gradle will run in incubating parallel mode. -# This option should only be used with decoupled projects. More details, visit -# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects -# org.gradle.parallel=true - -# AndroidX package structure to make it clearer which packages are bundled with the -# Android operating system, and which are packaged with your app's APK -# https://developer.android.com/topic/libraries/support-library/androidx-rn -android.useAndroidX=true - -# Automatically convert third-party libraries to use AndroidX -android.enableJetifier=true - -# Enable AAPT2 PNG crunching -android.enablePngCrunchInReleaseBuilds=true - -# Use this property to specify which architecture you want to build. -# You can also override it from the CLI using -# ./gradlew -PreactNativeArchitectures=x86_64 -reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64 - -# Use this property to enable support to the new architecture. -# This will allow you to use TurboModules and the Fabric render in -# your application. You should enable this flag either if you want -# to write custom TurboModules/Fabric components OR use libraries that -# are providing them. -newArchEnabled=false - -# Use this property to enable or disable the Hermes JS engine. -# If set to false, you will be using JSC instead. -hermesEnabled=true - -# Enable GIF support in React Native images (~200 B increase) -expo.gif.enabled=true -# Enable webp support in React Native images (~85 KB increase) -expo.webp.enabled=true -# Enable animated webp support (~3.4 MB increase) -# Disabled by default because iOS doesn't support animated webp -expo.webp.animated=false - -# Enable network inspector -EX_DEV_CLIENT_NETWORK_INSPECTOR=true - -# Use legacy packaging to compress native libraries in the resulting APK. -expo.useLegacyPackaging=false - -android.extraMavenRepos=[] \ No newline at end of file diff --git a/apps/example/android/gradle/wrapper/gradle-wrapper.jar b/apps/example/android/gradle/wrapper/gradle-wrapper.jar deleted file mode 100644 index e6441136f3d4ba8a0da8d277868979cfbc8ad796..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43453 zcma&N1CXTcmMvW9vTb(Rwr$&4wr$(C?dmSu>@vG-+vuvg^_??!{yS%8zW-#zn-LkA z5&1^$^{lnmUON?}LBF8_K|(?T0Ra(xUH{($5eN!MR#ZihR#HxkUPe+_R8Cn`RRs(P z_^*#_XlXmGv7!4;*Y%p4nw?{bNp@UZHv1?Um8r6)Fei3p@ClJn0ECfg1hkeuUU@Or zDaPa;U3fE=3L}DooL;8f;P0ipPt0Z~9P0)lbStMS)ag54=uL9ia-Lm3nh|@(Y?B`; zx_#arJIpXH!U{fbCbI^17}6Ri*H<>OLR%c|^mh8+)*h~K8Z!9)DPf zR2h?lbDZQ`p9P;&DQ4F0sur@TMa!Y}S8irn(%d-gi0*WxxCSk*A?3lGh=gcYN?FGl z7D=Js!i~0=u3rox^eO3i@$0=n{K1lPNU zwmfjRVmLOCRfe=seV&P*1Iq=^i`502keY8Uy-WNPwVNNtJFx?IwAyRPZo2Wo1+S(xF37LJZ~%i)kpFQ3Fw=mXfd@>%+)RpYQLnr}B~~zoof(JVm^^&f zxKV^+3D3$A1G;qh4gPVjhrC8e(VYUHv#dy^)(RoUFM?o%W-EHxufuWf(l*@-l+7vt z=l`qmR56K~F|v<^Pd*p~1_y^P0P^aPC##d8+HqX4IR1gu+7w#~TBFphJxF)T$2WEa zxa?H&6=Qe7d(#tha?_1uQys2KtHQ{)Qco)qwGjrdNL7thd^G5i8Os)CHqc>iOidS} z%nFEDdm=GXBw=yXe1W-ShHHFb?Cc70+$W~z_+}nAoHFYI1MV1wZegw*0y^tC*s%3h zhD3tN8b=Gv&rj}!SUM6|ajSPp*58KR7MPpI{oAJCtY~JECm)*m_x>AZEu>DFgUcby z1Qaw8lU4jZpQ_$;*7RME+gq1KySGG#Wql>aL~k9tLrSO()LWn*q&YxHEuzmwd1?aAtI zBJ>P=&$=l1efe1CDU;`Fd+_;&wI07?V0aAIgc(!{a z0Jg6Y=inXc3^n!U0Atk`iCFIQooHqcWhO(qrieUOW8X(x?(RD}iYDLMjSwffH2~tB z)oDgNBLB^AJBM1M^c5HdRx6fBfka`(LD-qrlh5jqH~);#nw|iyp)()xVYak3;Ybik z0j`(+69aK*B>)e_p%=wu8XC&9e{AO4c~O1U`5X9}?0mrd*m$_EUek{R?DNSh(=br# z#Q61gBzEpmy`$pA*6!87 zSDD+=@fTY7<4A?GLqpA?Pb2z$pbCc4B4zL{BeZ?F-8`s$?>*lXXtn*NC61>|*w7J* z$?!iB{6R-0=KFmyp1nnEmLsA-H0a6l+1uaH^g%c(p{iT&YFrbQ$&PRb8Up#X3@Zsk zD^^&LK~111%cqlP%!_gFNa^dTYT?rhkGl}5=fL{a`UViaXWI$k-UcHJwmaH1s=S$4 z%4)PdWJX;hh5UoK?6aWoyLxX&NhNRqKam7tcOkLh{%j3K^4Mgx1@i|Pi&}<^5>hs5 zm8?uOS>%)NzT(%PjVPGa?X%`N2TQCKbeH2l;cTnHiHppPSJ<7y-yEIiC!P*ikl&!B z%+?>VttCOQM@ShFguHVjxX^?mHX^hSaO_;pnyh^v9EumqSZTi+#f&_Vaija0Q-e*| z7ulQj6Fs*bbmsWp{`auM04gGwsYYdNNZcg|ph0OgD>7O}Asn7^Z=eI>`$2*v78;sj-}oMoEj&@)9+ycEOo92xSyY344^ z11Hb8^kdOvbf^GNAK++bYioknrpdN>+u8R?JxG=!2Kd9r=YWCOJYXYuM0cOq^FhEd zBg2puKy__7VT3-r*dG4c62Wgxi52EMCQ`bKgf*#*ou(D4-ZN$+mg&7$u!! z-^+Z%;-3IDwqZ|K=ah85OLwkO zKxNBh+4QHh)u9D?MFtpbl)us}9+V!D%w9jfAMYEb>%$A;u)rrI zuBudh;5PN}_6J_}l55P3l_)&RMlH{m!)ai-i$g)&*M`eN$XQMw{v^r@-125^RRCF0 z^2>|DxhQw(mtNEI2Kj(;KblC7x=JlK$@78`O~>V!`|1Lm-^JR$-5pUANAnb(5}B}JGjBsliK4& zk6y(;$e&h)lh2)L=bvZKbvh@>vLlreBdH8No2>$#%_Wp1U0N7Ank!6$dFSi#xzh|( zRi{Uw%-4W!{IXZ)fWx@XX6;&(m_F%c6~X8hx=BN1&q}*( zoaNjWabE{oUPb!Bt$eyd#$5j9rItB-h*5JiNi(v^e|XKAj*8(k<5-2$&ZBR5fF|JA z9&m4fbzNQnAU}r8ab>fFV%J0z5awe#UZ|bz?Ur)U9bCIKWEzi2%A+5CLqh?}K4JHi z4vtM;+uPsVz{Lfr;78W78gC;z*yTch~4YkLr&m-7%-xc ztw6Mh2d>_iO*$Rd8(-Cr1_V8EO1f*^@wRoSozS) zy1UoC@pruAaC8Z_7~_w4Q6n*&B0AjOmMWa;sIav&gu z|J5&|{=a@vR!~k-OjKEgPFCzcJ>#A1uL&7xTDn;{XBdeM}V=l3B8fE1--DHjSaxoSjNKEM9|U9#m2<3>n{Iuo`r3UZp;>GkT2YBNAh|b z^jTq-hJp(ebZh#Lk8hVBP%qXwv-@vbvoREX$TqRGTgEi$%_F9tZES@z8Bx}$#5eeG zk^UsLBH{bc2VBW)*EdS({yw=?qmevwi?BL6*=12k9zM5gJv1>y#ML4!)iiPzVaH9% zgSImetD@dam~e>{LvVh!phhzpW+iFvWpGT#CVE5TQ40n%F|p(sP5mXxna+Ev7PDwA zamaV4m*^~*xV+&p;W749xhb_X=$|LD;FHuB&JL5?*Y2-oIT(wYY2;73<^#46S~Gx| z^cez%V7x$81}UWqS13Gz80379Rj;6~WdiXWOSsdmzY39L;Hg3MH43o*y8ibNBBH`(av4|u;YPq%{R;IuYow<+GEsf@R?=@tT@!}?#>zIIn0CoyV!hq3mw zHj>OOjfJM3F{RG#6ujzo?y32m^tgSXf@v=J$ELdJ+=5j|=F-~hP$G&}tDZsZE?5rX ztGj`!S>)CFmdkccxM9eGIcGnS2AfK#gXwj%esuIBNJQP1WV~b~+D7PJTmWGTSDrR` zEAu4B8l>NPuhsk5a`rReSya2nfV1EK01+G!x8aBdTs3Io$u5!6n6KX%uv@DxAp3F@{4UYg4SWJtQ-W~0MDb|j-$lwVn znAm*Pl!?Ps&3wO=R115RWKb*JKoexo*)uhhHBncEDMSVa_PyA>k{Zm2(wMQ(5NM3# z)jkza|GoWEQo4^s*wE(gHz?Xsg4`}HUAcs42cM1-qq_=+=!Gk^y710j=66(cSWqUe zklbm8+zB_syQv5A2rj!Vbw8;|$@C!vfNmNV!yJIWDQ>{+2x zKjuFX`~~HKG~^6h5FntRpnnHt=D&rq0>IJ9#F0eM)Y-)GpRjiN7gkA8wvnG#K=q{q z9dBn8_~wm4J<3J_vl|9H{7q6u2A!cW{bp#r*-f{gOV^e=8S{nc1DxMHFwuM$;aVI^ zz6A*}m8N-&x8;aunp1w7_vtB*pa+OYBw=TMc6QK=mbA-|Cf* zvyh8D4LRJImooUaSb7t*fVfih<97Gf@VE0|z>NcBwBQze);Rh!k3K_sfunToZY;f2 z^HmC4KjHRVg+eKYj;PRN^|E0>Gj_zagfRbrki68I^#~6-HaHg3BUW%+clM1xQEdPYt_g<2K+z!$>*$9nQ>; zf9Bei{?zY^-e{q_*|W#2rJG`2fy@{%6u0i_VEWTq$*(ZN37|8lFFFt)nCG({r!q#9 z5VK_kkSJ3?zOH)OezMT{!YkCuSSn!K#-Rhl$uUM(bq*jY? zi1xbMVthJ`E>d>(f3)~fozjg^@eheMF6<)I`oeJYx4*+M&%c9VArn(OM-wp%M<-`x z7sLP1&3^%Nld9Dhm@$3f2}87!quhI@nwd@3~fZl_3LYW-B?Ia>ui`ELg z&Qfe!7m6ze=mZ`Ia9$z|ARSw|IdMpooY4YiPN8K z4B(ts3p%2i(Td=tgEHX z0UQ_>URBtG+-?0E;E7Ld^dyZ;jjw0}XZ(}-QzC6+NN=40oDb2^v!L1g9xRvE#@IBR zO!b-2N7wVfLV;mhEaXQ9XAU+>=XVA6f&T4Z-@AX!leJ8obP^P^wP0aICND?~w&NykJ#54x3_@r7IDMdRNy4Hh;h*!u(Ol(#0bJdwEo$5437-UBjQ+j=Ic>Q2z` zJNDf0yO6@mr6y1#n3)s(W|$iE_i8r@Gd@!DWDqZ7J&~gAm1#~maIGJ1sls^gxL9LLG_NhU!pTGty!TbhzQnu)I*S^54U6Yu%ZeCg`R>Q zhBv$n5j0v%O_j{QYWG!R9W?5_b&67KB$t}&e2LdMvd(PxN6Ir!H4>PNlerpBL>Zvyy!yw z-SOo8caEpDt(}|gKPBd$qND5#a5nju^O>V&;f890?yEOfkSG^HQVmEbM3Ugzu+UtH zC(INPDdraBN?P%kE;*Ae%Wto&sgw(crfZ#Qy(<4nk;S|hD3j{IQRI6Yq|f^basLY; z-HB&Je%Gg}Jt@={_C{L$!RM;$$|iD6vu#3w?v?*;&()uB|I-XqEKqZPS!reW9JkLewLb!70T7n`i!gNtb1%vN- zySZj{8-1>6E%H&=V}LM#xmt`J3XQoaD|@XygXjdZ1+P77-=;=eYpoEQ01B@L*a(uW zrZeZz?HJsw_4g0vhUgkg@VF8<-X$B8pOqCuWAl28uB|@r`19DTUQQsb^pfqB6QtiT z*`_UZ`fT}vtUY#%sq2{rchyfu*pCg;uec2$-$N_xgjZcoumE5vSI{+s@iLWoz^Mf; zuI8kDP{!XY6OP~q5}%1&L}CtfH^N<3o4L@J@zg1-mt{9L`s^z$Vgb|mr{@WiwAqKg zp#t-lhrU>F8o0s1q_9y`gQNf~Vb!F%70f}$>i7o4ho$`uciNf=xgJ>&!gSt0g;M>*x4-`U)ysFW&Vs^Vk6m%?iuWU+o&m(2Jm26Y(3%TL; zA7T)BP{WS!&xmxNw%J=$MPfn(9*^*TV;$JwRy8Zl*yUZi8jWYF>==j~&S|Xinsb%c z2?B+kpet*muEW7@AzjBA^wAJBY8i|#C{WtO_or&Nj2{=6JTTX05}|H>N2B|Wf!*3_ z7hW*j6p3TvpghEc6-wufFiY!%-GvOx*bZrhZu+7?iSrZL5q9}igiF^*R3%DE4aCHZ zqu>xS8LkW+Auv%z-<1Xs92u23R$nk@Pk}MU5!gT|c7vGlEA%G^2th&Q*zfg%-D^=f z&J_}jskj|Q;73NP4<4k*Y%pXPU2Thoqr+5uH1yEYM|VtBPW6lXaetokD0u z9qVek6Q&wk)tFbQ8(^HGf3Wp16gKmr>G;#G(HRBx?F`9AIRboK+;OfHaLJ(P>IP0w zyTbTkx_THEOs%Q&aPrxbZrJlio+hCC_HK<4%f3ZoSAyG7Dn`=X=&h@m*|UYO-4Hq0 z-Bq&+Ie!S##4A6OGoC~>ZW`Y5J)*ouaFl_e9GA*VSL!O_@xGiBw!AF}1{tB)z(w%c zS1Hmrb9OC8>0a_$BzeiN?rkPLc9%&;1CZW*4}CDDNr2gcl_3z+WC15&H1Zc2{o~i) z)LLW=WQ{?ricmC`G1GfJ0Yp4Dy~Ba;j6ZV4r{8xRs`13{dD!xXmr^Aga|C=iSmor% z8hi|pTXH)5Yf&v~exp3o+sY4B^^b*eYkkCYl*T{*=-0HniSA_1F53eCb{x~1k3*`W zr~};p1A`k{1DV9=UPnLDgz{aJH=-LQo<5%+Em!DNN252xwIf*wF_zS^!(XSm(9eoj z=*dXG&n0>)_)N5oc6v!>-bd(2ragD8O=M|wGW z!xJQS<)u70m&6OmrF0WSsr@I%T*c#Qo#Ha4d3COcX+9}hM5!7JIGF>7<~C(Ear^Sn zm^ZFkV6~Ula6+8S?oOROOA6$C&q&dp`>oR-2Ym3(HT@O7Sd5c~+kjrmM)YmgPH*tL zX+znN>`tv;5eOfX?h{AuX^LK~V#gPCu=)Tigtq9&?7Xh$qN|%A$?V*v=&-2F$zTUv z`C#WyIrChS5|Kgm_GeudCFf;)!WH7FI60j^0o#65o6`w*S7R@)88n$1nrgU(oU0M9 zx+EuMkC>(4j1;m6NoGqEkpJYJ?vc|B zOlwT3t&UgL!pX_P*6g36`ZXQ; z9~Cv}ANFnJGp(;ZhS(@FT;3e)0)Kp;h^x;$*xZn*k0U6-&FwI=uOGaODdrsp-!K$Ac32^c{+FhI-HkYd5v=`PGsg%6I`4d9Jy)uW0y%) zm&j^9WBAp*P8#kGJUhB!L?a%h$hJgQrx!6KCB_TRo%9{t0J7KW8!o1B!NC)VGLM5! zpZy5Jc{`r{1e(jd%jsG7k%I+m#CGS*BPA65ZVW~fLYw0dA-H_}O zrkGFL&P1PG9p2(%QiEWm6x;U-U&I#;Em$nx-_I^wtgw3xUPVVu zqSuKnx&dIT-XT+T10p;yjo1Y)z(x1fb8Dzfn8e yu?e%!_ptzGB|8GrCfu%p?(_ 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
NnX)EH+Nua)3Y(c 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 '} - case $link in #( - /*) app_path=$link ;; #( - *) app_path=$APP_HOME$link ;; - esac -done - -# This is normally unused -# shellcheck disable=SC2034 -APP_BASE_NAME=${0##*/} -# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) -APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit - -# Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD=maximum - -warn () { - echo "$*" -} >&2 - -die () { - echo - echo "$*" - echo - exit 1 -} >&2 - -# OS specific support (must be 'true' or 'false'). -cygwin=false -msys=false -darwin=false -nonstop=false -case "$( uname )" in #( - CYGWIN* ) cygwin=true ;; #( - Darwin* ) darwin=true ;; #( - MSYS* | MINGW* ) msys=true ;; #( - NONSTOP* ) nonstop=true ;; -esac - -CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar - - -# Determine the Java command to use to start the JVM. -if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD=$JAVA_HOME/jre/sh/java - else - JAVACMD=$JAVA_HOME/bin/java - fi - if [ ! -x "$JAVACMD" ] ; then - die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -else - JAVACMD=java - if ! command -v java >/dev/null 2>&1 - then - die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -fi - -# Increase the maximum file descriptors if we can. -if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then - case $MAX_FD in #( - max*) - # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC2039,SC3045 - MAX_FD=$( ulimit -H -n ) || - warn "Could not query maximum file descriptor limit" - esac - case $MAX_FD in #( - '' | soft) :;; #( - *) - # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC2039,SC3045 - ulimit -n "$MAX_FD" || - warn "Could not set maximum file descriptor limit to $MAX_FD" - esac -fi - -# Collect all arguments for the java command, stacking in reverse order: -# * args from the command line -# * the main class name -# * -classpath -# * -D...appname settings -# * --module-path (only if needed) -# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. - -# For Cygwin or MSYS, switch paths to Windows format before running java -if "$cygwin" || "$msys" ; then - APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) - CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) - - JAVACMD=$( cygpath --unix "$JAVACMD" ) - - # Now convert the arguments - kludge to limit ourselves to /bin/sh - for arg do - if - case $arg in #( - -*) false ;; # don't mess with options #( - /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath - [ -e "$t" ] ;; #( - *) false ;; - esac - then - arg=$( cygpath --path --ignore --mixed "$arg" ) - fi - # Roll the args list around exactly as many times as the number of - # args, so each arg winds up back in the position where it started, but - # possibly modified. - # - # NB: a `for` loop captures its iteration list before it begins, so - # changing the positional parameters here affects neither the number of - # iterations, nor the values presented in `arg`. - shift # remove old arg - set -- "$@" "$arg" # push replacement arg - done -fi - - -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' - -# Collect all arguments for the java command: -# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, -# and any embedded shellness will be escaped. -# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be -# treated as '${Hostname}' itself on the command line. - -set -- \ - "-Dorg.gradle.appname=$APP_BASE_NAME" \ - -classpath "$CLASSPATH" \ - org.gradle.wrapper.GradleWrapperMain \ - "$@" - -# Stop when "xargs" is not available. -if ! command -v xargs >/dev/null 2>&1 -then - die "xargs is not available" -fi - -# Use "xargs" to parse quoted args. -# -# With -n1 it outputs one arg per line, with the quotes and backslashes removed. -# -# In Bash we could simply go: -# -# readarray ARGS < <( xargs -n1 <<<"$var" ) && -# set -- "${ARGS[@]}" "$@" -# -# but POSIX shell has neither arrays nor command substitution, so instead we -# post-process each arg (as a line of input to sed) to backslash-escape any -# character that might be a shell metacharacter, then use eval to reverse -# that process (while maintaining the separation between arguments), and wrap -# the whole thing up as a single "set" statement. -# -# This will of course break if any of these variables contains a newline or -# an unmatched quote. -# - -eval "set -- $( - printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | - xargs -n1 | - sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | - tr '\n' ' ' - )" '"$@"' - -exec "$JAVACMD" "$@" diff --git a/apps/example/android/gradlew.bat b/apps/example/android/gradlew.bat deleted file mode 100644 index 7101f8e4..00000000 --- a/apps/example/android/gradlew.bat +++ /dev/null @@ -1,92 +0,0 @@ -@rem -@rem Copyright 2015 the original author or authors. -@rem -@rem Licensed under the Apache License, Version 2.0 (the "License"); -@rem you may not use this file except in compliance with the License. -@rem You may obtain a copy of the License at -@rem -@rem https://www.apache.org/licenses/LICENSE-2.0 -@rem -@rem Unless required by applicable law or agreed to in writing, software -@rem distributed under the License is distributed on an "AS IS" BASIS, -@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -@rem See the License for the specific language governing permissions and -@rem limitations under the License. -@rem - -@if "%DEBUG%"=="" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -set DIRNAME=%~dp0 -if "%DIRNAME%"=="" set DIRNAME=. -@rem This is normally unused -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Resolve any "." and ".." in APP_HOME to make it shorter. -for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if %ERRORLEVEL% equ 0 goto execute - -echo. 1>&2 -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 -echo. 1>&2 -echo Please set the JAVA_HOME variable in your environment to match the 1>&2 -echo location of your Java installation. 1>&2 - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto execute - -echo. 1>&2 -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 -echo. 1>&2 -echo Please set the JAVA_HOME variable in your environment to match the 1>&2 -echo location of your Java installation. 1>&2 - -goto fail - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar - - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* - -:end -@rem End local scope for the variables with windows NT shell -if %ERRORLEVEL% equ 0 goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -set EXIT_CODE=%ERRORLEVEL% -if %EXIT_CODE% equ 0 set EXIT_CODE=1 -if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% -exit /b %EXIT_CODE% - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega diff --git a/apps/example/android/react-settings-plugin/build.gradle.kts b/apps/example/android/react-settings-plugin/build.gradle.kts deleted file mode 100644 index b4f6668e..00000000 --- a/apps/example/android/react-settings-plugin/build.gradle.kts +++ /dev/null @@ -1,19 +0,0 @@ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - -plugins { - kotlin("jvm") version "1.9.24" - id("java-gradle-plugin") -} - -repositories { - mavenCentral() -} - -gradlePlugin { - plugins { - create("reactSettingsPlugin") { - id = "com.facebook.react.settings" - implementationClass = "expo.plugins.ReactSettingsPlugin" - } - } -} diff --git a/apps/example/android/react-settings-plugin/src/main/kotlin/expo/plugins/ReactSettingsPlugin.kt b/apps/example/android/react-settings-plugin/src/main/kotlin/expo/plugins/ReactSettingsPlugin.kt deleted file mode 100644 index c54f6c7a..00000000 --- a/apps/example/android/react-settings-plugin/src/main/kotlin/expo/plugins/ReactSettingsPlugin.kt +++ /dev/null @@ -1,10 +0,0 @@ -package expo.plugins - -import org.gradle.api.Plugin -import org.gradle.api.initialization.Settings - -class ReactSettingsPlugin : Plugin { - override fun apply(settings: Settings) { - // Do nothing, just register the plugin. - } -} diff --git a/apps/example/android/settings.gradle b/apps/example/android/settings.gradle deleted file mode 100644 index 219427a1..00000000 --- a/apps/example/android/settings.gradle +++ /dev/null @@ -1,66 +0,0 @@ -pluginManagement { - def version = providers.exec { - commandLine("node", "-e", "console.log(require('react-native/package.json').version);") - }.standardOutput.asText.get().trim() - def (_, reactNativeMinor, reactNativePatch) = version.split("-")[0].tokenize('.').collect { it.toInteger() } - - includeBuild(new File(["node", "--print", "require.resolve('@react-native/gradle-plugin/package.json')"].execute(null, rootDir).text.trim()).getParentFile().toString()) - if(reactNativeMinor == 74 && reactNativePatch <= 3){ - includeBuild("react-settings-plugin") - } -} - -plugins { id("com.facebook.react.settings") } - -def getRNMinorVersion() { - def version = providers.exec { - commandLine("node", "-e", "console.log(require('react-native/package.json').version);") - }.standardOutput.asText.get().trim() - - def coreVersion = version.split("-")[0] - def (major, minor, patch) = coreVersion.tokenize('.').collect { it.toInteger() } - - return minor -} - -if (getRNMinorVersion() >= 75) { - extensions.configure(com.facebook.react.ReactSettingsExtension) { ex -> - if (System.getenv('EXPO_UNSTABLE_CORE_AUTOLINKING') == '1') { - println('\u001B[32mUsing expo-modules-autolinking as core autolinking source\u001B[0m') - def command = [ - 'node', - '--no-warnings', - '--eval', - 'require(require.resolve(\'expo-modules-autolinking\', { paths: [require.resolve(\'expo/package.json\')] }))(process.argv.slice(1))', - 'react-native-config', - '--json', - '--platform', - 'android' - ].toList() - ex.autolinkLibrariesFromCommand(command) - } else { - ex.autolinkLibrariesFromCommand() - } - } -} - -rootProject.name = 'react-native-device-activity-example' - -dependencyResolutionManagement { - versionCatalogs { - reactAndroidLibs { - from(files(new File(["node", "--print", "require.resolve('react-native/package.json')"].execute(null, rootDir).text.trim(), "../gradle/libs.versions.toml"))) - } - } -} - -apply from: new File(["node", "--print", "require.resolve('expo/package.json')"].execute(null, rootDir).text.trim(), "../scripts/autolinking.gradle"); -useExpoModules() - -if (getRNMinorVersion() < 75) { - apply from: new File(["node", "--print", "require.resolve('@react-native-community/cli-platform-android/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim(), "../native_modules.gradle"); - applyNativeModulesSettingsGradle(settings) -} - -include ':app' -includeBuild(new File(["node", "--print", "require.resolve('@react-native/gradle-plugin/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim()).getParentFile()) diff --git a/apps/example/app.config.ts b/apps/example/app.config.ts new file mode 100644 index 00000000..8603b78c --- /dev/null +++ b/apps/example/app.config.ts @@ -0,0 +1,99 @@ +import type { ExpoConfig } from "expo/config"; + +const APPLE_TEAM_ID = process.env.RNDA_APPLE_TEAM_ID ?? "34SE8X7Q58"; +const APP_GROUP = process.env.RNDA_APP_GROUP ?? "group.ActivityMonitor"; +const IOS_BUNDLE_ID = + process.env.RNDA_IOS_BUNDLE_ID ?? "expo.modules.deviceactivity.example"; +const ANDROID_PACKAGE = + process.env.RNDA_ANDROID_PACKAGE ?? "expo.modules.deviceactivity.example"; + +const appExtensions = [ + { + targetName: "ActivityMonitorExtension", + bundleIdentifier: `${IOS_BUNDLE_ID}.ActivityMonitorExtension`, + entitlements: { + "com.apple.developer.family-controls": true, + "com.apple.security.application-groups": [APP_GROUP], + }, + }, + { + targetName: "ShieldConfiguration", + bundleIdentifier: `${IOS_BUNDLE_ID}.ShieldConfiguration`, + entitlements: { + "com.apple.developer.family-controls": true, + "com.apple.security.application-groups": [APP_GROUP], + }, + }, + { + targetName: "ShieldAction", + bundleIdentifier: `${IOS_BUNDLE_ID}.ShieldAction`, + entitlements: { + "com.apple.developer.family-controls": true, + "com.apple.security.application-groups": [APP_GROUP], + }, + }, +] as const; + +const config: ExpoConfig = { + name: "react-native-device-activity-example", + slug: "react-native-device-activity-example", + version: "1.0.0", + scheme: "device-activity", + orientation: "portrait", + icon: "./assets/icon.png", + platforms: ["ios"], + userInterfaceStyle: "light", + splash: { + image: "./assets/splash.png", + resizeMode: "contain", + backgroundColor: "#ffffff", + }, + ios: { + appleTeamId: APPLE_TEAM_ID, + supportsTablet: true, + bundleIdentifier: IOS_BUNDLE_ID, + }, + assetBundlePatterns: ["assets/*"], + android: { + package: ANDROID_PACKAGE, + }, + web: { + favicon: "./assets/favicon.png", + }, + plugins: [ + [ + "expo-build-properties", + { + ios: { + deploymentTarget: "15.1", + }, + }, + ], + [ + "expo-asset", + { + assets: ["./assets/kingstinct.png"], + }, + ], + [ + "react-native-device-activity", + { + appGroup: APP_GROUP, + copyToTargetFolder: false, + }, + ], + ], + extra: { + eas: { + build: { + experimental: { + ios: { + appExtensions, + }, + }, + }, + }, + }, +}; + +export default config; diff --git a/apps/example/app.json b/apps/example/app.json deleted file mode 100644 index 56c5f085..00000000 --- a/apps/example/app.json +++ /dev/null @@ -1,95 +0,0 @@ -{ - "expo": { - "name": "react-native-device-activity-example", - "slug": "react-native-device-activity-example", - "version": "1.0.0", - "scheme": "device-activity", - "orientation": "portrait", - "icon": "./assets/icon.png", - "platforms": ["ios"], - "userInterfaceStyle": "light", - "splash": { - "image": "./assets/splash.png", - "resizeMode": "contain", - "backgroundColor": "#ffffff" - }, - "ios": { - "appleTeamId": "34SE8X7Q58", - "supportsTablet": true, - "bundleIdentifier": "expo.modules.deviceactivity.example" - }, - "assetBundlePatterns": ["assets/*"], - "android": { - "package": "expo.modules.deviceactivity.example" - }, - "web": { - "favicon": "./assets/favicon.png" - }, - "plugins": [ - [ - "expo-build-properties", - { - "ios": { - "deploymentTarget": "15.1" - } - } - ], - - [ - "expo-asset", - { - "assets": ["./assets/kingstinct.png"] - } - ], - [ - "../../packages/react-native-device-activity/app.plugin.js", - { - "appGroup": "group.ActivityMonitor", - "copyToTargetFolder": false - } - ] - ], - "extra": { - "eas": { - "build": { - "experimental": { - "ios": { - "appExtensions": [ - { - "targetName": "ActivityMonitorExtension", - "bundleIdentifier": "expo.modules.deviceactivity.example.ActivityMonitorExtension", - "entitlements": { - "com.apple.developer.family-controls": true, - "com.apple.security.application-groups": [ - "group.ActivityMonitor" - ] - } - }, - { - "targetName": "ShieldConfiguration", - "bundleIdentifier": "expo.modules.deviceactivity.example.ShieldConfiguration", - "entitlements": { - "com.apple.developer.family-controls": true, - "com.apple.security.application-groups": [ - "group.ActivityMonitor" - ] - } - }, - { - "targetName": "ShieldAction", - "bundleIdentifier": "expo.modules.deviceactivity.example.ShieldAction", - "entitlements": { - "com.apple.developer.family-controls": true, - "com.apple.security.application-groups": [ - "group.ActivityMonitor" - ] - } - } - ] - } - } - } - } - } - } -} diff --git a/package.json b/package.json index cc5adffd..6f96a1f8 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "format": "prettier --write .", "format:check": "prettier --check .", "lint": "eslint .", - "pre-push": "bun run typecheck && bun run lint && apps/example/ios/Pods/SwiftLint/swiftlint lint --strict", + "pre-push": "bun run typecheck && bun run lint && packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint lint --strict --config .swiftlint.yml", "typecheck": "cd packages/react-native-device-activity && bun run typecheck && cd ../../apps/example && bun run typecheck", "prepare": "husky", "nail-workspace-dependency-versions": "bun run scripts/nail-workspace-dependency-versions.ts" diff --git a/apps/example/ios/.gitignore b/packages/react-native-device-activity/ios/TestHarness/.gitignore similarity index 100% rename from apps/example/ios/.gitignore rename to packages/react-native-device-activity/ios/TestHarness/.gitignore diff --git a/apps/example/ios/.xcode.env b/packages/react-native-device-activity/ios/TestHarness/.xcode.env similarity index 100% rename from apps/example/ios/.xcode.env rename to packages/react-native-device-activity/ios/TestHarness/.xcode.env diff --git a/apps/example/ios/Podfile b/packages/react-native-device-activity/ios/TestHarness/Podfile similarity index 78% rename from apps/example/ios/Podfile rename to packages/react-native-device-activity/ios/TestHarness/Podfile index 1717e5e9..7c02b598 100644 --- a/apps/example/ios/Podfile +++ b/packages/react-native-device-activity/ios/TestHarness/Podfile @@ -7,11 +7,16 @@ podfile_properties = JSON.parse(File.read(File.join(__dir__, 'Podfile.properties ENV['RCT_NEW_ARCH_ENABLED'] = podfile_properties['newArchEnabled'] == 'true' ? '1' : '0' ENV['EX_DEV_CLIENT_NETWORK_INSPECTOR'] = podfile_properties['EX_DEV_CLIENT_NETWORK_INSPECTOR'] -use_autolinking_method_symbol = ('use' + '_native' + '_modules!').to_sym -origin_autolinking_method = self.method(use_autolinking_method_symbol) -self.define_singleton_method(use_autolinking_method_symbol) do |*args| - if ENV['EXPO_UNSTABLE_CORE_AUTOLINKING'] == '1' - Pod::UI.puts('Using expo-modules-autolinking as core autolinking source'.green) +platform :ios, podfile_properties['ios.deploymentTarget'] || '15.1' +install! 'cocoapods', + :deterministic_uuids => false + +prepare_react_native_project! + +target 'reactnativedeviceactivityexample' do + if ENV['EXPO_USE_COMMUNITY_AUTOLINKING'] == '1' + config_command = ['node', '-e', "process.argv=['', '', 'config'];require('@react-native-community/cli').run()"]; + else config_command = [ 'node', '--no-warnings', @@ -22,37 +27,34 @@ self.define_singleton_method(use_autolinking_method_symbol) do |*args| '--platform', 'ios' ] - origin_autolinking_method.call(config_command) - else - origin_autolinking_method.call() end -end - -platform :ios, podfile_properties['ios.deploymentTarget'] || '15.1' -install! 'cocoapods', - :deterministic_uuids => false -prepare_react_native_project! - -target 'reactnativedeviceactivityexample' do - use_expo_modules! - config = use_native_modules! + app_root = File.expand_path('../../../../apps/example', __dir__) + react_native_path = '../../../../node_modules/react-native' + autolinking = nil + Dir.chdir(app_root) do + use_expo_modules! + autolinking = list_native_modules!(config_command) + end + autolinking[:ios_project_root_path] = __dir__ + autolinking[:react_native_path] = react_native_path + config = link_native_modules!(autolinking) use_frameworks! :linkage => podfile_properties['ios.useFrameworks'].to_sym if podfile_properties['ios.useFrameworks'] use_frameworks! :linkage => ENV['USE_FRAMEWORKS'].to_sym if ENV['USE_FRAMEWORKS'] use_react_native!( - :path => config[:reactNativePath], + :path => react_native_path, :hermes_enabled => podfile_properties['expo.jsEngine'] == nil || podfile_properties['expo.jsEngine'] == 'hermes', # An absolute path to your application root. - :app_path => "#{Pod::Config.instance.installation_root}/..", + :app_path => "#{Pod::Config.instance.installation_root}/../../../../apps/example", :privacy_file_aggregation_enabled => podfile_properties['apple.privacyManifestAggregationEnabled'] != 'false', ) post_install do |installer| react_native_post_install( installer, - config[:reactNativePath], + react_native_path, :mac_catalyst_enabled => false, :ccache_enabled => podfile_properties['apple.ccacheEnabled'] == 'true', ) @@ -82,7 +84,7 @@ end # apple-targets-extension-loader -- Dynamic loading of target configurations -Dir.glob(File.join(__dir__, '..', 'targets', '**', 'pods.rb')).each do |target_file| +Dir.glob(File.join(__dir__, '..', '..', 'targets', '**', 'pods.rb')).each do |target_file| target_name = File.basename(File.dirname(target_file)) target target_name do # Create a new binding with access to necessary methods and variables diff --git a/apps/example/ios/Podfile.lock b/packages/react-native-device-activity/ios/TestHarness/Podfile.lock similarity index 77% rename from apps/example/ios/Podfile.lock rename to packages/react-native-device-activity/ios/TestHarness/Podfile.lock index 40c1cafc..79923f2f 100644 --- a/apps/example/ios/Podfile.lock +++ b/packages/react-native-device-activity/ios/TestHarness/Podfile.lock @@ -1601,7 +1601,7 @@ PODS: - React-logger - React-perflogger - React-utils (= 0.76.9) - - ReactNativeDeviceActivity (0.4.30): + - ReactNativeDeviceActivity (0.5.3): - ExpoModulesCore - RNVectorIcons (10.2.0): - DoubleConversion @@ -1629,86 +1629,86 @@ PODS: - Yoga (0.0.0) DEPENDENCIES: - - boost (from `../../../node_modules/react-native/third-party-podspecs/boost.podspec`) - - DoubleConversion (from `../../../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) - - EXApplication (from `../../../node_modules/expo-application/ios`) - - EXConstants (from `../../../node_modules/expo-constants/ios`) - - EXNotifications (from `../../../node_modules/expo-notifications/ios`) - - Expo (from `../../../node_modules/expo`) - - ExpoAsset (from `../../../node_modules/expo-asset/ios`) - - ExpoFileSystem (from `../../../node_modules/expo-file-system/ios`) - - ExpoFont (from `../../../node_modules/expo-font/ios`) - - ExpoKeepAwake (from `../../../node_modules/expo-keep-awake/ios`) - - ExpoModulesCore (from `../../../node_modules/expo-modules-core`) - - "ExtensionStorage (from `../../../node_modules/@kingstinct/expo-apple-targets/ios`)" - - fast_float (from `../../../node_modules/react-native/third-party-podspecs/fast_float.podspec`) - - FBLazyVector (from `../../../node_modules/react-native/Libraries/FBLazyVector`) - - fmt (from `../../../node_modules/react-native/third-party-podspecs/fmt.podspec`) - - glog (from `../../../node_modules/react-native/third-party-podspecs/glog.podspec`) - - hermes-engine (from `../../../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`) - - RCT-Folly (from `../../../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) - - RCT-Folly/Fabric (from `../../../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) - - RCTDeprecation (from `../../../node_modules/react-native/ReactApple/Libraries/RCTFoundation/RCTDeprecation`) - - RCTRequired (from `../../../node_modules/react-native/Libraries/Required`) - - RCTTypeSafety (from `../../../node_modules/react-native/Libraries/TypeSafety`) - - React (from `../../../node_modules/react-native/`) - - React-callinvoker (from `../../../node_modules/react-native/ReactCommon/callinvoker`) - - React-Core (from `../../../node_modules/react-native/`) - - React-Core/RCTWebSocket (from `../../../node_modules/react-native/`) - - React-CoreModules (from `../../../node_modules/react-native/React/CoreModules`) - - React-cxxreact (from `../../../node_modules/react-native/ReactCommon/cxxreact`) - - React-debug (from `../../../node_modules/react-native/ReactCommon/react/debug`) - - React-defaultsnativemodule (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/defaults`) - - React-domnativemodule (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/dom`) - - React-Fabric (from `../../../node_modules/react-native/ReactCommon`) - - React-FabricComponents (from `../../../node_modules/react-native/ReactCommon`) - - React-FabricImage (from `../../../node_modules/react-native/ReactCommon`) - - React-featureflags (from `../../../node_modules/react-native/ReactCommon/react/featureflags`) - - React-featureflagsnativemodule (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/featureflags`) - - React-graphics (from `../../../node_modules/react-native/ReactCommon/react/renderer/graphics`) - - React-hermes (from `../../../node_modules/react-native/ReactCommon/hermes`) - - React-idlecallbacksnativemodule (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/idlecallbacks`) - - React-ImageManager (from `../../../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios`) - - React-jserrorhandler (from `../../../node_modules/react-native/ReactCommon/jserrorhandler`) - - React-jsi (from `../../../node_modules/react-native/ReactCommon/jsi`) - - React-jsiexecutor (from `../../../node_modules/react-native/ReactCommon/jsiexecutor`) - - React-jsinspector (from `../../../node_modules/react-native/ReactCommon/jsinspector-modern`) - - React-jsitracing (from `../../../node_modules/react-native/ReactCommon/hermes/executor/`) - - React-logger (from `../../../node_modules/react-native/ReactCommon/logger`) - - React-Mapbuffer (from `../../../node_modules/react-native/ReactCommon`) - - React-microtasksnativemodule (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/microtasks`) - - react-native-safe-area-context (from `../../../node_modules/react-native-safe-area-context`) - - React-nativeconfig (from `../../../node_modules/react-native/ReactCommon`) - - React-NativeModulesApple (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios`) - - React-perflogger (from `../../../node_modules/react-native/ReactCommon/reactperflogger`) - - React-performancetimeline (from `../../../node_modules/react-native/ReactCommon/react/performance/timeline`) - - React-RCTActionSheet (from `../../../node_modules/react-native/Libraries/ActionSheetIOS`) - - React-RCTAnimation (from `../../../node_modules/react-native/Libraries/NativeAnimation`) - - React-RCTAppDelegate (from `../../../node_modules/react-native/Libraries/AppDelegate`) - - React-RCTBlob (from `../../../node_modules/react-native/Libraries/Blob`) - - React-RCTFabric (from `../../../node_modules/react-native/React`) - - React-RCTImage (from `../../../node_modules/react-native/Libraries/Image`) - - React-RCTLinking (from `../../../node_modules/react-native/Libraries/LinkingIOS`) - - React-RCTNetwork (from `../../../node_modules/react-native/Libraries/Network`) - - React-RCTSettings (from `../../../node_modules/react-native/Libraries/Settings`) - - React-RCTText (from `../../../node_modules/react-native/Libraries/Text`) - - React-RCTVibration (from `../../../node_modules/react-native/Libraries/Vibration`) - - React-rendererconsistency (from `../../../node_modules/react-native/ReactCommon/react/renderer/consistency`) - - React-rendererdebug (from `../../../node_modules/react-native/ReactCommon/react/renderer/debug`) - - React-rncore (from `../../../node_modules/react-native/ReactCommon`) - - React-RuntimeApple (from `../../../node_modules/react-native/ReactCommon/react/runtime/platform/ios`) - - React-RuntimeCore (from `../../../node_modules/react-native/ReactCommon/react/runtime`) - - React-runtimeexecutor (from `../../../node_modules/react-native/ReactCommon/runtimeexecutor`) - - React-RuntimeHermes (from `../../../node_modules/react-native/ReactCommon/react/runtime`) - - React-runtimescheduler (from `../../../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler`) - - React-timing (from `../../../node_modules/react-native/ReactCommon/react/timing`) - - React-utils (from `../../../node_modules/react-native/ReactCommon/react/utils`) + - boost (from `../../../../node_modules/react-native/third-party-podspecs/boost.podspec`) + - DoubleConversion (from `../../../../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) + - EXApplication (from `../../../../node_modules/expo-application/ios`) + - EXConstants (from `../../../../node_modules/expo-constants/ios`) + - EXNotifications (from `../../../../node_modules/expo-notifications/ios`) + - Expo (from `../../../../node_modules/expo`) + - ExpoAsset (from `../../../../node_modules/expo-asset/ios`) + - ExpoFileSystem (from `../../../../node_modules/expo-file-system/ios`) + - ExpoFont (from `../../../../node_modules/expo-font/ios`) + - ExpoKeepAwake (from `../../../../node_modules/expo-keep-awake/ios`) + - ExpoModulesCore (from `../../../../node_modules/expo-modules-core`) + - "ExtensionStorage (from `../../../../node_modules/@kingstinct/expo-apple-targets/ios`)" + - fast_float (from `../../../../node_modules/react-native/third-party-podspecs/fast_float.podspec`) + - FBLazyVector (from `../../../../node_modules/react-native/Libraries/FBLazyVector`) + - fmt (from `../../../../node_modules/react-native/third-party-podspecs/fmt.podspec`) + - glog (from `../../../../node_modules/react-native/third-party-podspecs/glog.podspec`) + - hermes-engine (from `../../../../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`) + - RCT-Folly (from `../../../../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) + - RCT-Folly/Fabric (from `../../../../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) + - RCTDeprecation (from `../../../../node_modules/react-native/ReactApple/Libraries/RCTFoundation/RCTDeprecation`) + - RCTRequired (from `../../../../node_modules/react-native/Libraries/Required`) + - RCTTypeSafety (from `../../../../node_modules/react-native/Libraries/TypeSafety`) + - React (from `../../../../node_modules/react-native/`) + - React-callinvoker (from `../../../../node_modules/react-native/ReactCommon/callinvoker`) + - React-Core (from `../../../../node_modules/react-native/`) + - React-Core/RCTWebSocket (from `../../../../node_modules/react-native/`) + - React-CoreModules (from `../../../../node_modules/react-native/React/CoreModules`) + - React-cxxreact (from `../../../../node_modules/react-native/ReactCommon/cxxreact`) + - React-debug (from `../../../../node_modules/react-native/ReactCommon/react/debug`) + - React-defaultsnativemodule (from `../../../../node_modules/react-native/ReactCommon/react/nativemodule/defaults`) + - React-domnativemodule (from `../../../../node_modules/react-native/ReactCommon/react/nativemodule/dom`) + - React-Fabric (from `../../../../node_modules/react-native/ReactCommon`) + - React-FabricComponents (from `../../../../node_modules/react-native/ReactCommon`) + - React-FabricImage (from `../../../../node_modules/react-native/ReactCommon`) + - React-featureflags (from `../../../../node_modules/react-native/ReactCommon/react/featureflags`) + - React-featureflagsnativemodule (from `../../../../node_modules/react-native/ReactCommon/react/nativemodule/featureflags`) + - React-graphics (from `../../../../node_modules/react-native/ReactCommon/react/renderer/graphics`) + - React-hermes (from `../../../../node_modules/react-native/ReactCommon/hermes`) + - React-idlecallbacksnativemodule (from `../../../../node_modules/react-native/ReactCommon/react/nativemodule/idlecallbacks`) + - React-ImageManager (from `../../../../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios`) + - React-jserrorhandler (from `../../../../node_modules/react-native/ReactCommon/jserrorhandler`) + - React-jsi (from `../../../../node_modules/react-native/ReactCommon/jsi`) + - React-jsiexecutor (from `../../../../node_modules/react-native/ReactCommon/jsiexecutor`) + - React-jsinspector (from `../../../../node_modules/react-native/ReactCommon/jsinspector-modern`) + - React-jsitracing (from `../../../../node_modules/react-native/ReactCommon/hermes/executor/`) + - React-logger (from `../../../../node_modules/react-native/ReactCommon/logger`) + - React-Mapbuffer (from `../../../../node_modules/react-native/ReactCommon`) + - React-microtasksnativemodule (from `../../../../node_modules/react-native/ReactCommon/react/nativemodule/microtasks`) + - react-native-safe-area-context (from `../../../../node_modules/react-native-safe-area-context`) + - React-nativeconfig (from `../../../../node_modules/react-native/ReactCommon`) + - React-NativeModulesApple (from `../../../../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios`) + - React-perflogger (from `../../../../node_modules/react-native/ReactCommon/reactperflogger`) + - React-performancetimeline (from `../../../../node_modules/react-native/ReactCommon/react/performance/timeline`) + - React-RCTActionSheet (from `../../../../node_modules/react-native/Libraries/ActionSheetIOS`) + - React-RCTAnimation (from `../../../../node_modules/react-native/Libraries/NativeAnimation`) + - React-RCTAppDelegate (from `../../../../node_modules/react-native/Libraries/AppDelegate`) + - React-RCTBlob (from `../../../../node_modules/react-native/Libraries/Blob`) + - React-RCTFabric (from `../../../../node_modules/react-native/React`) + - React-RCTImage (from `../../../../node_modules/react-native/Libraries/Image`) + - React-RCTLinking (from `../../../../node_modules/react-native/Libraries/LinkingIOS`) + - React-RCTNetwork (from `../../../../node_modules/react-native/Libraries/Network`) + - React-RCTSettings (from `../../../../node_modules/react-native/Libraries/Settings`) + - React-RCTText (from `../../../../node_modules/react-native/Libraries/Text`) + - React-RCTVibration (from `../../../../node_modules/react-native/Libraries/Vibration`) + - React-rendererconsistency (from `../../../../node_modules/react-native/ReactCommon/react/renderer/consistency`) + - React-rendererdebug (from `../../../../node_modules/react-native/ReactCommon/react/renderer/debug`) + - React-rncore (from `../../../../node_modules/react-native/ReactCommon`) + - React-RuntimeApple (from `../../../../node_modules/react-native/ReactCommon/react/runtime/platform/ios`) + - React-RuntimeCore (from `../../../../node_modules/react-native/ReactCommon/react/runtime`) + - React-runtimeexecutor (from `../../../../node_modules/react-native/ReactCommon/runtimeexecutor`) + - React-RuntimeHermes (from `../../../../node_modules/react-native/ReactCommon/react/runtime`) + - React-runtimescheduler (from `../../../../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler`) + - React-timing (from `../../../../node_modules/react-native/ReactCommon/react/timing`) + - React-utils (from `../../../../node_modules/react-native/ReactCommon/react/utils`) - ReactCodegen (from `build/generated/ios`) - - ReactCommon/turbomodule/core (from `../../../node_modules/react-native/ReactCommon`) - - ReactNativeDeviceActivity (from `../../../packages/react-native-device-activity/ios`) - - RNVectorIcons (from `../../../node_modules/react-native-vector-icons`) + - ReactCommon/turbomodule/core (from `../../../../node_modules/react-native/ReactCommon`) + - ReactNativeDeviceActivity (from `..`) + - RNVectorIcons (from `../../../../node_modules/react-native-vector-icons`) - SwiftLint - - Yoga (from `../../../node_modules/react-native/ReactCommon/yoga`) + - Yoga (from `../../../../node_modules/react-native/ReactCommon/yoga`) SPEC REPOS: trunk: @@ -1717,160 +1717,160 @@ SPEC REPOS: EXTERNAL SOURCES: boost: - :podspec: "../../../node_modules/react-native/third-party-podspecs/boost.podspec" + :podspec: "../../../../node_modules/react-native/third-party-podspecs/boost.podspec" DoubleConversion: - :podspec: "../../../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec" + :podspec: "../../../../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec" EXApplication: - :path: "../../../node_modules/expo-application/ios" + :path: "../../../../node_modules/expo-application/ios" EXConstants: - :path: "../../../node_modules/expo-constants/ios" + :path: "../../../../node_modules/expo-constants/ios" EXNotifications: - :path: "../../../node_modules/expo-notifications/ios" + :path: "../../../../node_modules/expo-notifications/ios" Expo: - :path: "../../../node_modules/expo" + :path: "../../../../node_modules/expo" ExpoAsset: - :path: "../../../node_modules/expo-asset/ios" + :path: "../../../../node_modules/expo-asset/ios" ExpoFileSystem: - :path: "../../../node_modules/expo-file-system/ios" + :path: "../../../../node_modules/expo-file-system/ios" ExpoFont: - :path: "../../../node_modules/expo-font/ios" + :path: "../../../../node_modules/expo-font/ios" ExpoKeepAwake: - :path: "../../../node_modules/expo-keep-awake/ios" + :path: "../../../../node_modules/expo-keep-awake/ios" ExpoModulesCore: - :path: "../../../node_modules/expo-modules-core" + :path: "../../../../node_modules/expo-modules-core" ExtensionStorage: - :path: "../../../node_modules/@kingstinct/expo-apple-targets/ios" + :path: "../../../../node_modules/@kingstinct/expo-apple-targets/ios" fast_float: - :podspec: "../../../node_modules/react-native/third-party-podspecs/fast_float.podspec" + :podspec: "../../../../node_modules/react-native/third-party-podspecs/fast_float.podspec" FBLazyVector: - :path: "../../../node_modules/react-native/Libraries/FBLazyVector" + :path: "../../../../node_modules/react-native/Libraries/FBLazyVector" fmt: - :podspec: "../../../node_modules/react-native/third-party-podspecs/fmt.podspec" + :podspec: "../../../../node_modules/react-native/third-party-podspecs/fmt.podspec" glog: - :podspec: "../../../node_modules/react-native/third-party-podspecs/glog.podspec" + :podspec: "../../../../node_modules/react-native/third-party-podspecs/glog.podspec" hermes-engine: - :podspec: "../../../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec" + :podspec: "../../../../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec" :tag: hermes-2024-11-12-RNv0.76.2-5b4aa20c719830dcf5684832b89a6edb95ac3d64 RCT-Folly: - :podspec: "../../../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec" + :podspec: "../../../../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec" RCTDeprecation: - :path: "../../../node_modules/react-native/ReactApple/Libraries/RCTFoundation/RCTDeprecation" + :path: "../../../../node_modules/react-native/ReactApple/Libraries/RCTFoundation/RCTDeprecation" RCTRequired: - :path: "../../../node_modules/react-native/Libraries/Required" + :path: "../../../../node_modules/react-native/Libraries/Required" RCTTypeSafety: - :path: "../../../node_modules/react-native/Libraries/TypeSafety" + :path: "../../../../node_modules/react-native/Libraries/TypeSafety" React: - :path: "../../../node_modules/react-native/" + :path: "../../../../node_modules/react-native/" React-callinvoker: - :path: "../../../node_modules/react-native/ReactCommon/callinvoker" + :path: "../../../../node_modules/react-native/ReactCommon/callinvoker" React-Core: - :path: "../../../node_modules/react-native/" + :path: "../../../../node_modules/react-native/" React-CoreModules: - :path: "../../../node_modules/react-native/React/CoreModules" + :path: "../../../../node_modules/react-native/React/CoreModules" React-cxxreact: - :path: "../../../node_modules/react-native/ReactCommon/cxxreact" + :path: "../../../../node_modules/react-native/ReactCommon/cxxreact" React-debug: - :path: "../../../node_modules/react-native/ReactCommon/react/debug" + :path: "../../../../node_modules/react-native/ReactCommon/react/debug" React-defaultsnativemodule: - :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/defaults" + :path: "../../../../node_modules/react-native/ReactCommon/react/nativemodule/defaults" React-domnativemodule: - :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/dom" + :path: "../../../../node_modules/react-native/ReactCommon/react/nativemodule/dom" React-Fabric: - :path: "../../../node_modules/react-native/ReactCommon" + :path: "../../../../node_modules/react-native/ReactCommon" React-FabricComponents: - :path: "../../../node_modules/react-native/ReactCommon" + :path: "../../../../node_modules/react-native/ReactCommon" React-FabricImage: - :path: "../../../node_modules/react-native/ReactCommon" + :path: "../../../../node_modules/react-native/ReactCommon" React-featureflags: - :path: "../../../node_modules/react-native/ReactCommon/react/featureflags" + :path: "../../../../node_modules/react-native/ReactCommon/react/featureflags" React-featureflagsnativemodule: - :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/featureflags" + :path: "../../../../node_modules/react-native/ReactCommon/react/nativemodule/featureflags" React-graphics: - :path: "../../../node_modules/react-native/ReactCommon/react/renderer/graphics" + :path: "../../../../node_modules/react-native/ReactCommon/react/renderer/graphics" React-hermes: - :path: "../../../node_modules/react-native/ReactCommon/hermes" + :path: "../../../../node_modules/react-native/ReactCommon/hermes" React-idlecallbacksnativemodule: - :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/idlecallbacks" + :path: "../../../../node_modules/react-native/ReactCommon/react/nativemodule/idlecallbacks" React-ImageManager: - :path: "../../../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios" + :path: "../../../../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios" React-jserrorhandler: - :path: "../../../node_modules/react-native/ReactCommon/jserrorhandler" + :path: "../../../../node_modules/react-native/ReactCommon/jserrorhandler" React-jsi: - :path: "../../../node_modules/react-native/ReactCommon/jsi" + :path: "../../../../node_modules/react-native/ReactCommon/jsi" React-jsiexecutor: - :path: "../../../node_modules/react-native/ReactCommon/jsiexecutor" + :path: "../../../../node_modules/react-native/ReactCommon/jsiexecutor" React-jsinspector: - :path: "../../../node_modules/react-native/ReactCommon/jsinspector-modern" + :path: "../../../../node_modules/react-native/ReactCommon/jsinspector-modern" React-jsitracing: - :path: "../../../node_modules/react-native/ReactCommon/hermes/executor/" + :path: "../../../../node_modules/react-native/ReactCommon/hermes/executor/" React-logger: - :path: "../../../node_modules/react-native/ReactCommon/logger" + :path: "../../../../node_modules/react-native/ReactCommon/logger" React-Mapbuffer: - :path: "../../../node_modules/react-native/ReactCommon" + :path: "../../../../node_modules/react-native/ReactCommon" React-microtasksnativemodule: - :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/microtasks" + :path: "../../../../node_modules/react-native/ReactCommon/react/nativemodule/microtasks" react-native-safe-area-context: - :path: "../../../node_modules/react-native-safe-area-context" + :path: "../../../../node_modules/react-native-safe-area-context" React-nativeconfig: - :path: "../../../node_modules/react-native/ReactCommon" + :path: "../../../../node_modules/react-native/ReactCommon" React-NativeModulesApple: - :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios" + :path: "../../../../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios" React-perflogger: - :path: "../../../node_modules/react-native/ReactCommon/reactperflogger" + :path: "../../../../node_modules/react-native/ReactCommon/reactperflogger" React-performancetimeline: - :path: "../../../node_modules/react-native/ReactCommon/react/performance/timeline" + :path: "../../../../node_modules/react-native/ReactCommon/react/performance/timeline" React-RCTActionSheet: - :path: "../../../node_modules/react-native/Libraries/ActionSheetIOS" + :path: "../../../../node_modules/react-native/Libraries/ActionSheetIOS" React-RCTAnimation: - :path: "../../../node_modules/react-native/Libraries/NativeAnimation" + :path: "../../../../node_modules/react-native/Libraries/NativeAnimation" React-RCTAppDelegate: - :path: "../../../node_modules/react-native/Libraries/AppDelegate" + :path: "../../../../node_modules/react-native/Libraries/AppDelegate" React-RCTBlob: - :path: "../../../node_modules/react-native/Libraries/Blob" + :path: "../../../../node_modules/react-native/Libraries/Blob" React-RCTFabric: - :path: "../../../node_modules/react-native/React" + :path: "../../../../node_modules/react-native/React" React-RCTImage: - :path: "../../../node_modules/react-native/Libraries/Image" + :path: "../../../../node_modules/react-native/Libraries/Image" React-RCTLinking: - :path: "../../../node_modules/react-native/Libraries/LinkingIOS" + :path: "../../../../node_modules/react-native/Libraries/LinkingIOS" React-RCTNetwork: - :path: "../../../node_modules/react-native/Libraries/Network" + :path: "../../../../node_modules/react-native/Libraries/Network" React-RCTSettings: - :path: "../../../node_modules/react-native/Libraries/Settings" + :path: "../../../../node_modules/react-native/Libraries/Settings" React-RCTText: - :path: "../../../node_modules/react-native/Libraries/Text" + :path: "../../../../node_modules/react-native/Libraries/Text" React-RCTVibration: - :path: "../../../node_modules/react-native/Libraries/Vibration" + :path: "../../../../node_modules/react-native/Libraries/Vibration" React-rendererconsistency: - :path: "../../../node_modules/react-native/ReactCommon/react/renderer/consistency" + :path: "../../../../node_modules/react-native/ReactCommon/react/renderer/consistency" React-rendererdebug: - :path: "../../../node_modules/react-native/ReactCommon/react/renderer/debug" + :path: "../../../../node_modules/react-native/ReactCommon/react/renderer/debug" React-rncore: - :path: "../../../node_modules/react-native/ReactCommon" + :path: "../../../../node_modules/react-native/ReactCommon" React-RuntimeApple: - :path: "../../../node_modules/react-native/ReactCommon/react/runtime/platform/ios" + :path: "../../../../node_modules/react-native/ReactCommon/react/runtime/platform/ios" React-RuntimeCore: - :path: "../../../node_modules/react-native/ReactCommon/react/runtime" + :path: "../../../../node_modules/react-native/ReactCommon/react/runtime" React-runtimeexecutor: - :path: "../../../node_modules/react-native/ReactCommon/runtimeexecutor" + :path: "../../../../node_modules/react-native/ReactCommon/runtimeexecutor" React-RuntimeHermes: - :path: "../../../node_modules/react-native/ReactCommon/react/runtime" + :path: "../../../../node_modules/react-native/ReactCommon/react/runtime" React-runtimescheduler: - :path: "../../../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler" + :path: "../../../../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler" React-timing: - :path: "../../../node_modules/react-native/ReactCommon/react/timing" + :path: "../../../../node_modules/react-native/ReactCommon/react/timing" React-utils: - :path: "../../../node_modules/react-native/ReactCommon/react/utils" + :path: "../../../../node_modules/react-native/ReactCommon/react/utils" ReactCodegen: :path: build/generated/ios ReactCommon: - :path: "../../../node_modules/react-native/ReactCommon" + :path: "../../../../node_modules/react-native/ReactCommon" ReactNativeDeviceActivity: - :path: "../../../packages/react-native-device-activity/ios" + :path: ".." RNVectorIcons: - :path: "../../../node_modules/react-native-vector-icons" + :path: "../../../../node_modules/react-native-vector-icons" Yoga: - :path: "../../../node_modules/react-native/ReactCommon/yoga" + :path: "../../../../node_modules/react-native/ReactCommon/yoga" SPEC CHECKSUMS: boost: 1dca942403ed9342f98334bf4c3621f011aa7946 @@ -1945,14 +1945,14 @@ SPEC CHECKSUMS: React-runtimescheduler: 8ec34cc885281a34696ea16c4fd86892d631f38d React-timing: 331cbf9f2668c67faddfd2e46bb7f41cbd9320b9 React-utils: ed818f19ab445000d6b5c4efa9d462449326cc9f - ReactCodegen: 2a46abb2e345dc8efaff0a724f5f8639230eb974 + ReactCodegen: 8dc03aa9aca0655304d2d8f8b591c468fd1e87cd ReactCommon: 300d8d9c5cb1a6cd79a67cf5d8f91e4d477195f9 - ReactNativeDeviceActivity: 1017837e25b5b5247b85d7a542b5176b27ee85d3 + ReactNativeDeviceActivity: 49c0579e2cbb940f4366b917d9e17491a70c5bd7 RNVectorIcons: 4330d8f8f8f4184f436e0c08ae9950431ffe466e SocketRocket: d4aabe649be1e368d1318fdf28a022d714d65748 SwiftLint: 365bcd9ffc83d0deb874e833556d82549919d6cd Yoga: feb4910aba9742cfedc059e2b2902e22ffe9954a -PODFILE CHECKSUM: 846abd8cafb42863199c6480823d97888c649e24 +PODFILE CHECKSUM: 6676eb3883eb6be7bcf93f0461d7e5bf8b57159b COCOAPODS: 1.16.2 diff --git a/apps/example/ios/Podfile.properties.json b/packages/react-native-device-activity/ios/TestHarness/Podfile.properties.json similarity index 100% rename from apps/example/ios/Podfile.properties.json rename to packages/react-native-device-activity/ios/TestHarness/Podfile.properties.json diff --git a/apps/example/Tests.xctestplan b/packages/react-native-device-activity/ios/TestHarness/Tests.xctestplan similarity index 100% rename from apps/example/Tests.xctestplan rename to packages/react-native-device-activity/ios/TestHarness/Tests.xctestplan diff --git a/apps/example/ios/reactnativedeviceactivityexample.xcodeproj/project.pbxproj b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample.xcodeproj/project.pbxproj similarity index 94% rename from apps/example/ios/reactnativedeviceactivityexample.xcodeproj/project.pbxproj rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample.xcodeproj/project.pbxproj index aaa7cff8..ebe5c38d 100644 --- a/apps/example/ios/reactnativedeviceactivityexample.xcodeproj/project.pbxproj +++ b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample.xcodeproj/project.pbxproj @@ -99,14 +99,14 @@ 6C2E3173556A471DD304B334 /* Pods-reactnativedeviceactivityexample.debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-reactnativedeviceactivityexample.debug.xcconfig"; path = "Target Support Files/Pods-reactnativedeviceactivityexample/Pods-reactnativedeviceactivityexample.debug.xcconfig"; sourceTree = ""; }; 7A4D352CD337FB3A3BF06240 /* Pods-reactnativedeviceactivityexample.release.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-reactnativedeviceactivityexample.release.xcconfig"; path = "Target Support Files/Pods-reactnativedeviceactivityexample/Pods-reactnativedeviceactivityexample.release.xcconfig"; sourceTree = ""; }; 84457EAD9B9F41CDA5B58B4E /* ActivityMonitorExtension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; fileEncoding = 4; includeInIndex = 0; path = ActivityMonitorExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; }; - 86C617632690A9F3C5D768FE /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 1; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = ../targets/ShieldConfiguration/PrivacyInfo.xcprivacy; sourceTree = ""; }; + 86C617632690A9F3C5D768FE /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 1; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = ../../targets/ShieldConfiguration/PrivacyInfo.xcprivacy; sourceTree = ""; }; 98E197012252434F88CCEEB4 /* generated.entitlements */ = {isa = PBXFileReference; explicitFileType = text.plist.entitlements; fileEncoding = 4; includeInIndex = 0; path = generated.entitlements; sourceTree = ""; }; A9A030712CFF142000D9E7E8 /* Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; fileEncoding = 4; includeInIndex = 0; path = Tests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - A9B2DBE72CECAE610001BBAF /* Shared.swift */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = Shared.swift; path = "../../../packages/react-native-device-activity/ios/Shared.swift"; sourceTree = SOURCE_ROOT; }; - A9B2DBFF2CECB91A0001BBAF /* DeviceActivityMonitorExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = DeviceActivityMonitorExtension.swift; path = "../../../packages/react-native-device-activity/targets/ActivityMonitorExtension/DeviceActivityMonitorExtension.swift"; sourceTree = SOURCE_ROOT; }; - A9B2DC012CECB9430001BBAF /* ShieldConfigurationExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = ShieldConfigurationExtension.swift; path = "../../../packages/react-native-device-activity/targets/ShieldConfiguration/ShieldConfigurationExtension.swift"; sourceTree = SOURCE_ROOT; }; - A9B2DC032CECB9600001BBAF /* ShieldActionExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = ShieldActionExtension.swift; path = "../../../packages/react-native-device-activity/targets/ShieldAction/ShieldActionExtension.swift"; sourceTree = SOURCE_ROOT; }; - A9F920792D7988D400A179B2 /* Tests.xctestplan */ = {isa = PBXFileReference; lastKnownFileType = text; name = Tests.xctestplan; path = ../Tests.xctestplan; sourceTree = ""; }; + A9B2DBE72CECAE610001BBAF /* Shared.swift */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = Shared.swift; path = ../Shared.swift; sourceTree = SOURCE_ROOT; }; + A9B2DBFF2CECB91A0001BBAF /* DeviceActivityMonitorExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = DeviceActivityMonitorExtension.swift; path = ../../targets/ActivityMonitorExtension/DeviceActivityMonitorExtension.swift; sourceTree = SOURCE_ROOT; }; + A9B2DC012CECB9430001BBAF /* ShieldConfigurationExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = ShieldConfigurationExtension.swift; path = ../../targets/ShieldConfiguration/ShieldConfigurationExtension.swift; sourceTree = SOURCE_ROOT; }; + A9B2DC032CECB9600001BBAF /* ShieldActionExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = ShieldActionExtension.swift; path = ../../targets/ShieldAction/ShieldActionExtension.swift; sourceTree = SOURCE_ROOT; }; + A9F920792D7988D400A179B2 /* Tests.xctestplan */ = {isa = PBXFileReference; lastKnownFileType = text; name = Tests.xctestplan; path = Tests.xctestplan; sourceTree = ""; }; AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = file.storyboard; name = SplashScreen.storyboard; path = reactnativedeviceactivityexample/SplashScreen.storyboard; sourceTree = ""; }; AEB321985C804DE4AB33EC69 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; BA3FB2A82413462F881AEB5A /* reactnativedeviceactivityexample-Bridging-Header.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = "reactnativedeviceactivityexample-Bridging-Header.h"; path = "reactnativedeviceactivityexample/reactnativedeviceactivityexample-Bridging-Header.h"; sourceTree = ""; }; @@ -121,11 +121,11 @@ /* End PBXFileReference section */ /* Begin PBXFileSystemSynchronizedRootGroup section */ - A9A030722CFF142000D9E7E8 /* Tests */ = { + A9A030722CFF142000D9E7E8 /* ../Tests */ = { isa = PBXFileSystemSynchronizedRootGroup; exceptions = ( ); - path = Tests; + path = ../Tests; sourceTree = ""; }; /* End PBXFileSystemSynchronizedRootGroup section */ @@ -199,7 +199,7 @@ A9B2DC032CECB9600001BBAF /* ShieldActionExtension.swift */, ); name = ShieldAction; - path = ../targets/ShieldAction; + path = ../../targets/ShieldAction; sourceTree = ""; }; 2D16E6871FA4F8E400B85C8A /* Frameworks */ = { @@ -230,7 +230,7 @@ C6BB3FB112304AFCB4071189 /* expo:targets */, 13B07FAE1A68108700A75B9A /* reactnativedeviceactivityexample */, 832341AE1AAA6A7D00B99B32 /* Libraries */, - A9A030722CFF142000D9E7E8 /* Tests */, + A9A030722CFF142000D9E7E8 /* ../Tests */, 83CBBA001A601CBA00E9B192 /* Products */, 2D16E6871FA4F8E400B85C8A /* Frameworks */, D65327D7A22EEC0BE12398D9 /* Pods */, @@ -270,7 +270,7 @@ A9B2DBFF2CECB91A0001BBAF /* DeviceActivityMonitorExtension.swift */, ); name = ActivityMonitorExtension; - path = ../targets/ActivityMonitorExtension; + path = ../../targets/ActivityMonitorExtension; sourceTree = ""; }; AECFFDE3ED4343DCA9CC2989 /* Resources */ = { @@ -307,7 +307,7 @@ A9B2DC012CECB9430001BBAF /* ShieldConfigurationExtension.swift */, ); name = ShieldConfiguration; - path = ../targets/ShieldConfiguration; + path = ../../targets/ShieldConfiguration; sourceTree = ""; }; D65327D7A22EEC0BE12398D9 /* Pods */ = { @@ -404,7 +404,7 @@ A9A030762CFF142000D9E7E8 /* PBXTargetDependency */, ); fileSystemSynchronizedGroups = ( - A9A030722CFF142000D9E7E8 /* Tests */, + A9A030722CFF142000D9E7E8 /* ../Tests */, ); name = Tests; productName = Tests; @@ -542,7 +542,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "if [[ -f \"$PODS_ROOT/../.xcode.env\" ]]; then\n source \"$PODS_ROOT/../.xcode.env\"\nfi\nif [[ -f \"$PODS_ROOT/../.xcode.env.local\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.local\"\nfi\n\n# The project root by default is one level up from the ios directory\nexport PROJECT_ROOT=\"$PROJECT_DIR\"/..\n\nif [[ \"$CONFIGURATION\" = *Debug* ]]; then\n export SKIP_BUNDLING=1\nfi\nif [[ -z \"$ENTRY_FILE\" ]]; then\n # Set the entry JS file using the bundler's entry resolution.\n export ENTRY_FILE=\"$(\"$NODE_BINARY\" -e \"require('expo/scripts/resolveAppEntry')\" \"$PROJECT_ROOT\" ios absolute | tail -n 1)\"\nfi\n\nif [[ -z \"$CLI_PATH\" ]]; then\n # Use Expo CLI\n export CLI_PATH=\"$(\"$NODE_BINARY\" --print \"require.resolve('@expo/cli', { paths: [require.resolve('expo/package.json')] })\")\"\nfi\nif [[ -z \"$BUNDLE_COMMAND\" ]]; then\n # Default Expo CLI command for bundling\n export BUNDLE_COMMAND=\"export:embed\"\nfi\n\n# Source .xcode.env.updates if it exists to allow\n# SKIP_BUNDLING to be unset if needed\nif [[ -f \"$PODS_ROOT/../.xcode.env.updates\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.updates\"\nfi\n# Source local changes to allow overrides\n# if needed\nif [[ -f \"$PODS_ROOT/../.xcode.env.local\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.local\"\nfi\n\n`\"$NODE_BINARY\" --print \"require('path').dirname(require.resolve('react-native/package.json')) + '/scripts/react-native-xcode.sh'\"`\n\n"; + shellScript = "if [[ -f \"$PODS_ROOT/../.xcode.env\" ]]; then\n source \"$PODS_ROOT/../.xcode.env\"\nfi\nif [[ -f \"$PODS_ROOT/../.xcode.env.local\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.local\"\nfi\n\n# The project root by default is one level up from the ios directory\nexport PROJECT_ROOT=\"$PROJECT_DIR\"/../../../../apps/example\n\nif [[ \"$CONFIGURATION\" = *Debug* ]]; then\n export SKIP_BUNDLING=1\nfi\nif [[ -z \"$ENTRY_FILE\" ]]; then\n # Set the entry JS file using the bundler's entry resolution.\n export ENTRY_FILE=\"$(\"$NODE_BINARY\" -e \"require('expo/scripts/resolveAppEntry')\" \"$PROJECT_ROOT\" ios absolute | tail -n 1)\"\nfi\n\nif [[ -z \"$CLI_PATH\" ]]; then\n # Use Expo CLI\n export CLI_PATH=\"$(\"$NODE_BINARY\" --print \"require.resolve('@expo/cli', { paths: [require.resolve('expo/package.json')] })\")\"\nfi\nif [[ -z \"$BUNDLE_COMMAND\" ]]; then\n # Default Expo CLI command for bundling\n export BUNDLE_COMMAND=\"export:embed\"\nfi\n\n# Source .xcode.env.updates if it exists to allow\n# SKIP_BUNDLING to be unset if needed\nif [[ -f \"$PODS_ROOT/../.xcode.env.updates\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.updates\"\nfi\n# Source local changes to allow overrides\n# if needed\nif [[ -f \"$PODS_ROOT/../.xcode.env.local\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.local\"\nfi\n\n`\"$NODE_BINARY\" --print \"require('path').dirname(require.resolve('react-native/package.json')) + '/scripts/react-native-xcode.sh'\"`\n\n"; }; 08A4A3CD28434E44B6B9DE2E /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; @@ -833,7 +833,7 @@ "$(inherited)", " ", ); - REACT_NATIVE_PATH = "${PODS_ROOT}/../../../../node_modules/react-native"; + REACT_NATIVE_PATH = "${PODS_ROOT}/../../../../../node_modules/react-native"; SDKROOT = iphoneos; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) DEBUG"; SWIFT_VERSION = 5.8; @@ -897,7 +897,7 @@ "$(inherited)", " ", ); - REACT_NATIVE_PATH = "${PODS_ROOT}/../../../../node_modules/react-native"; + REACT_NATIVE_PATH = "${PODS_ROOT}/../../../../../node_modules/react-native"; SDKROOT = iphoneos; SWIFT_VERSION = 5.8; USE_HERMES = true; @@ -984,7 +984,7 @@ CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = ../targets/ShieldAction/generated.entitlements; + CODE_SIGN_ENTITLEMENTS = ../../targets/ShieldAction/generated.entitlements; CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; @@ -992,7 +992,7 @@ DEVELOPMENT_TEAM = 34SE8X7Q58; GCC_C_LANGUAGE_STANDARD = gnu11; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = ../targets/ShieldAction/Info.plist; + INFOPLIST_FILE = ../../targets/ShieldAction/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = ShieldAction; INFOPLIST_KEY_NSHumanReadableCopyright = ""; IPHONEOS_DEPLOYMENT_TARGET = 18.0; @@ -1026,7 +1026,7 @@ CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = ../targets/ActivityMonitorExtension/generated.entitlements; + CODE_SIGN_ENTITLEMENTS = ../../targets/ActivityMonitorExtension/generated.entitlements; CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; @@ -1034,7 +1034,7 @@ DEVELOPMENT_TEAM = 34SE8X7Q58; GCC_C_LANGUAGE_STANDARD = gnu11; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = ../targets/ActivityMonitorExtension/Info.plist; + INFOPLIST_FILE = ../../targets/ActivityMonitorExtension/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = ActivityMonitorExtension; INFOPLIST_KEY_NSHumanReadableCopyright = ""; IPHONEOS_DEPLOYMENT_TARGET = 18.0; @@ -1069,7 +1069,7 @@ CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = ../targets/ShieldConfiguration/generated.entitlements; + CODE_SIGN_ENTITLEMENTS = ../../targets/ShieldConfiguration/generated.entitlements; CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; @@ -1077,7 +1077,7 @@ DEVELOPMENT_TEAM = 34SE8X7Q58; GCC_C_LANGUAGE_STANDARD = gnu11; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = ../targets/ShieldConfiguration/Info.plist; + INFOPLIST_FILE = ../../targets/ShieldConfiguration/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = ShieldConfiguration; INFOPLIST_KEY_NSHumanReadableCopyright = ""; IPHONEOS_DEPLOYMENT_TARGET = 18.0; @@ -1110,7 +1110,7 @@ CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = ../targets/ShieldConfiguration/generated.entitlements; + CODE_SIGN_ENTITLEMENTS = ../../targets/ShieldConfiguration/generated.entitlements; CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; @@ -1118,7 +1118,7 @@ DEVELOPMENT_TEAM = 34SE8X7Q58; GCC_C_LANGUAGE_STANDARD = gnu11; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = ../targets/ShieldConfiguration/Info.plist; + INFOPLIST_FILE = ../../targets/ShieldConfiguration/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = ShieldConfiguration; INFOPLIST_KEY_NSHumanReadableCopyright = ""; IPHONEOS_DEPLOYMENT_TARGET = 18.0; @@ -1153,7 +1153,7 @@ CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = ../targets/ActivityMonitorExtension/generated.entitlements; + CODE_SIGN_ENTITLEMENTS = ../../targets/ActivityMonitorExtension/generated.entitlements; CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; @@ -1161,7 +1161,7 @@ DEVELOPMENT_TEAM = 34SE8X7Q58; GCC_C_LANGUAGE_STANDARD = gnu11; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = ../targets/ActivityMonitorExtension/Info.plist; + INFOPLIST_FILE = ../../targets/ActivityMonitorExtension/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = ActivityMonitorExtension; INFOPLIST_KEY_NSHumanReadableCopyright = ""; IPHONEOS_DEPLOYMENT_TARGET = 18.0; @@ -1194,7 +1194,7 @@ CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = ../targets/ShieldAction/generated.entitlements; + CODE_SIGN_ENTITLEMENTS = ../../targets/ShieldAction/generated.entitlements; CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; @@ -1202,7 +1202,7 @@ DEVELOPMENT_TEAM = 34SE8X7Q58; GCC_C_LANGUAGE_STANDARD = gnu11; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = ../targets/ShieldAction/Info.plist; + INFOPLIST_FILE = ../../targets/ShieldAction/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = ShieldAction; INFOPLIST_KEY_NSHumanReadableCopyright = ""; IPHONEOS_DEPLOYMENT_TARGET = 18.0; diff --git a/apps/example/ios/reactnativedeviceactivityexample.xcodeproj/xcshareddata/xcschemes/Tests.xcscheme b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample.xcodeproj/xcshareddata/xcschemes/Tests.xcscheme similarity index 97% rename from apps/example/ios/reactnativedeviceactivityexample.xcodeproj/xcshareddata/xcschemes/Tests.xcscheme rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample.xcodeproj/xcshareddata/xcschemes/Tests.xcscheme index 56614fcc..ddbc6e47 100644 --- a/apps/example/ios/reactnativedeviceactivityexample.xcodeproj/xcshareddata/xcschemes/Tests.xcscheme +++ b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample.xcodeproj/xcshareddata/xcschemes/Tests.xcscheme @@ -14,7 +14,7 @@ shouldUseLaunchSchemeArgsEnv = "YES"> diff --git a/apps/example/ios/reactnativedeviceactivityexample.xcodeproj/xcshareddata/xcschemes/reactnativedeviceactivityexample.xcscheme b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample.xcodeproj/xcshareddata/xcschemes/reactnativedeviceactivityexample.xcscheme similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample.xcodeproj/xcshareddata/xcschemes/reactnativedeviceactivityexample.xcscheme rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample.xcodeproj/xcshareddata/xcschemes/reactnativedeviceactivityexample.xcscheme diff --git a/apps/example/ios/reactnativedeviceactivityexample.xcworkspace/contents.xcworkspacedata b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample.xcworkspace/contents.xcworkspacedata similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample.xcworkspace/contents.xcworkspacedata rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample.xcworkspace/contents.xcworkspacedata diff --git a/apps/example/ios/reactnativedeviceactivityexample/AppDelegate.h b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/AppDelegate.h similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/AppDelegate.h rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/AppDelegate.h diff --git a/apps/example/ios/reactnativedeviceactivityexample/AppDelegate.mm b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/AppDelegate.mm similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/AppDelegate.mm rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/AppDelegate.mm diff --git a/apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/AppIcon.appiconset/App-Icon-1024x1024@1x.png b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/AppIcon.appiconset/App-Icon-1024x1024@1x.png similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/AppIcon.appiconset/App-Icon-1024x1024@1x.png rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/AppIcon.appiconset/App-Icon-1024x1024@1x.png diff --git a/apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/AppIcon.appiconset/Contents.json b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/AppIcon.appiconset/Contents.json rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/AppIcon.appiconset/Contents.json diff --git a/apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/Contents.json b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/Contents.json similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/Contents.json rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/Contents.json diff --git a/apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/SplashScreen.imageset/Contents.json b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/SplashScreen.imageset/Contents.json similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/SplashScreen.imageset/Contents.json rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/SplashScreen.imageset/Contents.json diff --git a/apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/SplashScreen.imageset/image.png b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/SplashScreen.imageset/image.png similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/SplashScreen.imageset/image.png rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/SplashScreen.imageset/image.png diff --git a/apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/SplashScreenBackground.imageset/Contents.json b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/SplashScreenBackground.imageset/Contents.json similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/SplashScreenBackground.imageset/Contents.json rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/SplashScreenBackground.imageset/Contents.json diff --git a/apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/SplashScreenBackground.imageset/image.png b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/SplashScreenBackground.imageset/image.png similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/SplashScreenBackground.imageset/image.png rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/SplashScreenBackground.imageset/image.png diff --git a/apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/kingstinct.imageset/Contents.json b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/kingstinct.imageset/Contents.json similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/kingstinct.imageset/Contents.json rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/kingstinct.imageset/Contents.json diff --git a/apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/kingstinct.imageset/kingstinct.png b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/kingstinct.imageset/kingstinct.png similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/Images.xcassets/kingstinct.imageset/kingstinct.png rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Images.xcassets/kingstinct.imageset/kingstinct.png diff --git a/apps/example/ios/reactnativedeviceactivityexample/Info.plist b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Info.plist similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/Info.plist rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Info.plist diff --git a/apps/example/ios/reactnativedeviceactivityexample/SplashScreen.storyboard b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/SplashScreen.storyboard similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/SplashScreen.storyboard rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/SplashScreen.storyboard diff --git a/apps/example/ios/reactnativedeviceactivityexample/Supporting/Expo.plist b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Supporting/Expo.plist similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/Supporting/Expo.plist rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/Supporting/Expo.plist diff --git a/apps/example/ios/reactnativedeviceactivityexample/main.m b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/main.m similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/main.m rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/main.m diff --git a/apps/example/ios/reactnativedeviceactivityexample/noop-file.swift b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/noop-file.swift similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/noop-file.swift rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/noop-file.swift diff --git a/apps/example/ios/reactnativedeviceactivityexample/reactnativedeviceactivityexample-Bridging-Header.h b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/reactnativedeviceactivityexample-Bridging-Header.h similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/reactnativedeviceactivityexample-Bridging-Header.h rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/reactnativedeviceactivityexample-Bridging-Header.h diff --git a/apps/example/ios/reactnativedeviceactivityexample/reactnativedeviceactivityexample.entitlements b/packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/reactnativedeviceactivityexample.entitlements similarity index 100% rename from apps/example/ios/reactnativedeviceactivityexample/reactnativedeviceactivityexample.entitlements rename to packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample/reactnativedeviceactivityexample.entitlements diff --git a/apps/example/ios/Tests/ComparisonTests.swift b/packages/react-native-device-activity/ios/Tests/ComparisonTests.swift similarity index 100% rename from apps/example/ios/Tests/ComparisonTests.swift rename to packages/react-native-device-activity/ios/Tests/ComparisonTests.swift diff --git a/apps/example/ios/Tests/FamilySelectionIdTests.swift b/packages/react-native-device-activity/ios/Tests/FamilySelectionIdTests.swift similarity index 100% rename from apps/example/ios/Tests/FamilySelectionIdTests.swift rename to packages/react-native-device-activity/ios/Tests/FamilySelectionIdTests.swift diff --git a/apps/example/ios/Tests/IsShieldActiveTests.swift b/packages/react-native-device-activity/ios/Tests/IsShieldActiveTests.swift similarity index 100% rename from apps/example/ios/Tests/IsShieldActiveTests.swift rename to packages/react-native-device-activity/ios/Tests/IsShieldActiveTests.swift diff --git a/apps/example/ios/Tests/SkipTests.swift b/packages/react-native-device-activity/ios/Tests/SkipTests.swift similarity index 100% rename from apps/example/ios/Tests/SkipTests.swift rename to packages/react-native-device-activity/ios/Tests/SkipTests.swift diff --git a/apps/example/ios/Tests/TextReplacementTests.swift b/packages/react-native-device-activity/ios/Tests/TextReplacementTests.swift similarity index 100% rename from apps/example/ios/Tests/TextReplacementTests.swift rename to packages/react-native-device-activity/ios/Tests/TextReplacementTests.swift diff --git a/apps/example/ios/Tests/UnionTests.swift b/packages/react-native-device-activity/ios/Tests/UnionTests.swift similarity index 100% rename from apps/example/ios/Tests/UnionTests.swift rename to packages/react-native-device-activity/ios/Tests/UnionTests.swift diff --git a/packages/react-native-device-activity/package.json b/packages/react-native-device-activity/package.json index 7d370b18..296b2266 100644 --- a/packages/react-native-device-activity/package.json +++ b/packages/react-native-device-activity/package.json @@ -10,10 +10,11 @@ "lint": "expo-module lint", "typecheck": "tsc --noEmit", "test": "expo-module test", + "test:plugin": "expo-module test plugin", "prepublishOnly": "expo-module prepublishOnly && tsc && cp ../../README.md ./README.md", "expo-module": "expo-module", - "open:ios": "xed apps/example/ios", - "open:android": "open -a \"Android Studio\" apps/example/android" + "open:ios": "xed ios/TestHarness", + "open:android": "open -a \"Android Studio\" ../../apps/example/android" }, "keywords": [ "react-native", diff --git a/packages/react-native-device-activity/plugin/__tests__/config-plugin.test.ts b/packages/react-native-device-activity/plugin/__tests__/config-plugin.test.ts new file mode 100644 index 00000000..6e332c73 --- /dev/null +++ b/packages/react-native-device-activity/plugin/__tests__/config-plugin.test.ts @@ -0,0 +1,111 @@ +jest.mock("fs", () => ({ + existsSync: jest.fn(), + mkdirSync: jest.fn(), + cpSync: jest.fn(), + readdirSync: jest.fn(), + lstatSync: jest.fn(), +})); + +const fs = require("fs"); + +const createExpoTargetConfig = require("../../config-plugin/createExpoTargetConfig"); +const getAppGroupFromExpoConfig = require("../../config-plugin/getAppGroupFromExpoConfig"); + +describe("config plugin helpers", () => { + const originalEnv = { ...process.env }; + + beforeEach(() => { + jest.clearAllMocks(); + process.env = { ...originalEnv }; + }); + + afterAll(() => { + process.env = originalEnv; + }); + + describe("getAppGroupFromExpoConfig", () => { + it("extracts appGroup from react-native-device-activity plugin config", () => { + const config = { + plugins: [ + ["react-native-device-activity", { appGroup: "group.primary" }], + ], + }; + + expect(getAppGroupFromExpoConfig(config)).toBe("group.primary"); + }); + + it("extracts appGroup from internal example path when env toggle is enabled", () => { + process.env.INTERNALLY_TEST_EXAMPLE_PROJECT = "true"; + const config = { + plugins: [ + [ + "../../packages/react-native-device-activity/app.plugin.js", + { appGroup: "group.internal" }, + ], + ], + }; + + expect(getAppGroupFromExpoConfig(config)).toBe("group.internal"); + }); + + it("logs and returns undefined when appGroup is missing", () => { + const errorSpy = jest + .spyOn(console, "error") + .mockImplementation(() => {}); + const config = { + plugins: [["react-native-device-activity", {}]], + }; + + expect(getAppGroupFromExpoConfig(config)).toBeUndefined(); + expect(errorSpy).toHaveBeenCalled(); + errorSpy.mockRestore(); + }); + }); + + describe("withCopyTargetFolder", () => { + it("skips copying when copyToTargetFolder is false and env override is absent", () => { + const withCopyTargetFolder = require("../../config-plugin/withCopyTargetFolder"); + const config = { _internal: { projectRoot: "/tmp/example" } }; + + const result = withCopyTargetFolder(config, { + copyToTargetFolder: false, + }); + + expect(result).toBe(config); + expect(fs.cpSync).not.toHaveBeenCalled(); + }); + + it("copies targets when COPY_TO_TARGET_FOLDER is set", () => { + process.env.COPY_TO_TARGET_FOLDER = "true"; + fs.existsSync.mockReturnValue(true); + fs.readdirSync.mockReturnValue(["ShieldAction"]); + fs.lstatSync.mockReturnValue({ isDirectory: () => true }); + + const withCopyTargetFolder = require("../../config-plugin/withCopyTargetFolder"); + const config = { _internal: { projectRoot: "/tmp/example" } }; + + withCopyTargetFolder(config, { copyToTargetFolder: false }); + + expect(fs.cpSync).toHaveBeenCalled(); + }); + }); + + describe("createExpoTargetConfig", () => { + it("returns target config with deterministic entitlements", () => { + const fn = createExpoTargetConfig.createConfig("shield-action"); + const config = { + plugins: [ + ["react-native-device-activity", { appGroup: "group.primary" }], + ], + }; + + expect(fn(config)).toEqual({ + type: "shield-action", + entitlements: { + "com.apple.developer.family-controls": true, + "com.apple.security.application-groups": ["group.primary"], + }, + }); + }); + }); +}); diff --git a/packages/react-native-device-activity/plugin/jest.config.js b/packages/react-native-device-activity/plugin/jest.config.js new file mode 100644 index 00000000..d52d0349 --- /dev/null +++ b/packages/react-native-device-activity/plugin/jest.config.js @@ -0,0 +1 @@ +module.exports = require("expo-module-scripts/jest-preset-plugin"); diff --git a/packages/react-native-device-activity/targets/ActivityMonitorExtension/generated.entitlements b/packages/react-native-device-activity/targets/ActivityMonitorExtension/generated.entitlements new file mode 100644 index 00000000..276c2b42 --- /dev/null +++ b/packages/react-native-device-activity/targets/ActivityMonitorExtension/generated.entitlements @@ -0,0 +1,12 @@ + + + + + com.apple.developer.family-controls + + com.apple.security.application-groups + + group.ActivityMonitor + + + \ No newline at end of file diff --git a/packages/react-native-device-activity/targets/ShieldAction/generated.entitlements b/packages/react-native-device-activity/targets/ShieldAction/generated.entitlements new file mode 100644 index 00000000..276c2b42 --- /dev/null +++ b/packages/react-native-device-activity/targets/ShieldAction/generated.entitlements @@ -0,0 +1,12 @@ + + + + + com.apple.developer.family-controls + + com.apple.security.application-groups + + group.ActivityMonitor + + + \ No newline at end of file diff --git a/packages/react-native-device-activity/targets/ShieldConfiguration/PrivacyInfo.xcprivacy b/packages/react-native-device-activity/targets/ShieldConfiguration/PrivacyInfo.xcprivacy new file mode 100644 index 00000000..49b8ded2 --- /dev/null +++ b/packages/react-native-device-activity/targets/ShieldConfiguration/PrivacyInfo.xcprivacy @@ -0,0 +1,48 @@ + + + + + NSPrivacyAccessedAPITypes + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryFileTimestamp + NSPrivacyAccessedAPITypeReasons + + C617.1 + 0A2A.1 + 3B52.1 + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryUserDefaults + NSPrivacyAccessedAPITypeReasons + + CA92.1 + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryDiskSpace + NSPrivacyAccessedAPITypeReasons + + E174.1 + 85F4.1 + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategorySystemBootTime + NSPrivacyAccessedAPITypeReasons + + 35F9.1 + + + + NSPrivacyCollectedDataTypes + + NSPrivacyTracking + + + diff --git a/packages/react-native-device-activity/targets/ShieldConfiguration/generated.entitlements b/packages/react-native-device-activity/targets/ShieldConfiguration/generated.entitlements new file mode 100644 index 00000000..276c2b42 --- /dev/null +++ b/packages/react-native-device-activity/targets/ShieldConfiguration/generated.entitlements @@ -0,0 +1,12 @@ + + + + + com.apple.developer.family-controls + + com.apple.security.application-groups + + group.ActivityMonitor + + + \ No newline at end of file From 21973010ab78d6ff1fe4ce42bef6d1eefa3b1756 Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 14:27:38 +0100 Subject: [PATCH 08/18] chore: avoid prettier bin shadowing from expo-module-scripts Refs: https://github.com/expo/expo/issues/42994 --- README.md | 1 - package.json | 5 +++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index ef3c0c8b..50b39bc5 100644 --- a/README.md +++ b/README.md @@ -604,7 +604,6 @@ For repository-specific details, see [`CONTRIBUTING.md`](./CONTRIBUTING.md). - Authorization changes outside app not captured When we've asked whether the user has authorized us to use screen time, and the state is changed outside the app, the native API doesn't update until the app restarts, i.e. this flow: - 1. Ask for current permission 2. Change permission outside the app 3. Ask for current permission again will return same as (1) diff --git a/package.json b/package.json index 6f96a1f8..2c06ab56 100644 --- a/package.json +++ b/package.json @@ -4,8 +4,9 @@ "private": true, "description": "Provides access to Apples DeviceActivity API", "scripts": { - "format": "prettier --write .", - "format:check": "prettier --check .", + "format": "node ./node_modules/prettier/bin/prettier.cjs --write .", + "format:check": "node ./node_modules/prettier/bin/prettier.cjs --check .", + "format:version": "node ./node_modules/prettier/bin/prettier.cjs --version && node -e \"console.log(require('./node_modules/prettier/package.json').version)\"", "lint": "eslint .", "pre-push": "bun run typecheck && bun run lint && packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint lint --strict --config .swiftlint.yml", "typecheck": "cd packages/react-native-device-activity && bun run typecheck && cd ../../apps/example && bun run typecheck", From 7340f48790e4a9420866594915200f3d9f666478 Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 15:01:22 +0100 Subject: [PATCH 09/18] chore: untrack generated example targets and align swiftlint paths - ignore apps/example/targets as generated prebuild output to reduce churn - remove tracked example target artifacts from version control - point VS Code and pre-push lint command to TestHarness SwiftLint binary - document one-time pod install setup in CONTRIBUTING --- .gitignore | 1 + .vscode/settings.json | 2 +- CONTRIBUTING.md | 20 ++++++++ .../ActivityMonitorExtension/Info.plist | 16 ------- .../expo-target.config.js | 5 -- .../generated.entitlements | 12 ----- apps/example/targets/ShieldAction/Info.plist | 15 ------ .../ShieldAction/expo-target.config.js | 5 -- .../ShieldAction/generated.entitlements | 12 ----- .../targets/ShieldConfiguration/Info.plist | 15 ------ .../ShieldConfiguration/PrivacyInfo.xcprivacy | 48 ------------------- .../ShieldConfiguration/expo-target.config.js | 5 -- .../generated.entitlements | 12 ----- package.json | 3 +- 14 files changed, 24 insertions(+), 147 deletions(-) delete mode 100644 apps/example/targets/ActivityMonitorExtension/Info.plist delete mode 100644 apps/example/targets/ActivityMonitorExtension/expo-target.config.js delete mode 100644 apps/example/targets/ActivityMonitorExtension/generated.entitlements delete mode 100644 apps/example/targets/ShieldAction/Info.plist delete mode 100644 apps/example/targets/ShieldAction/expo-target.config.js delete mode 100644 apps/example/targets/ShieldAction/generated.entitlements delete mode 100644 apps/example/targets/ShieldConfiguration/Info.plist delete mode 100644 apps/example/targets/ShieldConfiguration/PrivacyInfo.xcprivacy delete mode 100644 apps/example/targets/ShieldConfiguration/expo-target.config.js delete mode 100644 apps/example/targets/ShieldConfiguration/generated.entitlements diff --git a/.gitignore b/.gitignore index 86332136..e12653ea 100644 --- a/.gitignore +++ b/.gitignore @@ -39,6 +39,7 @@ android.iml # Example native output (CNG) apps/example/ios/ apps/example/android/ +apps/example/targets/ # Cocoapods # diff --git a/.vscode/settings.json b/.vscode/settings.json index 7274f9b9..204d1ffc 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,5 +1,5 @@ { "cSpell.words": ["Triggerable"], - "swiftlint.path": "apps/example/ios/Pods/SwiftLint/swiftlint", + "swiftlint.path": "packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint", "swift.SDK": "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS18.2.sdk" } diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b7a8eec5..05795f47 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -22,6 +22,7 @@ If these variables are missing, `app.config.ts` falls back to stable defaults fo ## Example app follows CNG The example app no longer tracks `apps/example/ios` and `apps/example/android`. +The example target folder `apps/example/targets` is also generated during prebuild and should not be committed. Regenerate native folders when needed: @@ -43,6 +44,25 @@ The iOS test runner lives in: - `packages/react-native-device-activity/ios/TestHarness` +## SwiftLint setup + +The repository runs SwiftLint from the iOS test harness CocoaPods installation: + +- `packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint` + +Run this once after cloning (and again if Pod dependencies are cleaned): + +```bash +cd packages/react-native-device-activity/ios/TestHarness +pod install +``` + +Then run repository checks from the root: + +```bash +bun run pre-push +``` + ## Plugin testing In addition to app/prebuild validation, config plugin regression tests are defined under: diff --git a/apps/example/targets/ActivityMonitorExtension/Info.plist b/apps/example/targets/ActivityMonitorExtension/Info.plist deleted file mode 100644 index 411d0e6c..00000000 --- a/apps/example/targets/ActivityMonitorExtension/Info.plist +++ /dev/null @@ -1,16 +0,0 @@ - - - - - REACT_NATIVE_DEVICE_ACTIVITY_APP_GROUP - $(REACT_NATIVE_DEVICE_ACTIVITY_APP_GROUP) - NSExtension - - NSExtensionPointIdentifier - com.apple.deviceactivity.monitor-extension - NSExtensionPrincipalClass - $(PRODUCT_MODULE_NAME).DeviceActivityMonitorExtension - - - - \ No newline at end of file diff --git a/apps/example/targets/ActivityMonitorExtension/expo-target.config.js b/apps/example/targets/ActivityMonitorExtension/expo-target.config.js deleted file mode 100644 index 875e1cc7..00000000 --- a/apps/example/targets/ActivityMonitorExtension/expo-target.config.js +++ /dev/null @@ -1,5 +0,0 @@ -const { - createConfig, -} = require("react-native-device-activity/config-plugin/createExpoTargetConfig"); - -module.exports = createConfig("device-activity-monitor"); diff --git a/apps/example/targets/ActivityMonitorExtension/generated.entitlements b/apps/example/targets/ActivityMonitorExtension/generated.entitlements deleted file mode 100644 index 276c2b42..00000000 --- a/apps/example/targets/ActivityMonitorExtension/generated.entitlements +++ /dev/null @@ -1,12 +0,0 @@ - - - - - com.apple.developer.family-controls - - com.apple.security.application-groups - - group.ActivityMonitor - - - \ No newline at end of file diff --git a/apps/example/targets/ShieldAction/Info.plist b/apps/example/targets/ShieldAction/Info.plist deleted file mode 100644 index ad639962..00000000 --- a/apps/example/targets/ShieldAction/Info.plist +++ /dev/null @@ -1,15 +0,0 @@ - - - - - REACT_NATIVE_DEVICE_ACTIVITY_APP_GROUP - $(REACT_NATIVE_DEVICE_ACTIVITY_APP_GROUP) - NSExtension - - NSExtensionPointIdentifier - com.apple.ManagedSettings.shield-action-service - NSExtensionPrincipalClass - $(PRODUCT_MODULE_NAME).ShieldActionExtension - - - diff --git a/apps/example/targets/ShieldAction/expo-target.config.js b/apps/example/targets/ShieldAction/expo-target.config.js deleted file mode 100644 index da3a98b3..00000000 --- a/apps/example/targets/ShieldAction/expo-target.config.js +++ /dev/null @@ -1,5 +0,0 @@ -const { - createConfig, -} = require("react-native-device-activity/config-plugin/createExpoTargetConfig"); - -module.exports = createConfig("shield-action"); diff --git a/apps/example/targets/ShieldAction/generated.entitlements b/apps/example/targets/ShieldAction/generated.entitlements deleted file mode 100644 index 276c2b42..00000000 --- a/apps/example/targets/ShieldAction/generated.entitlements +++ /dev/null @@ -1,12 +0,0 @@ - - - - - com.apple.developer.family-controls - - com.apple.security.application-groups - - group.ActivityMonitor - - - \ No newline at end of file diff --git a/apps/example/targets/ShieldConfiguration/Info.plist b/apps/example/targets/ShieldConfiguration/Info.plist deleted file mode 100644 index 84601bbf..00000000 --- a/apps/example/targets/ShieldConfiguration/Info.plist +++ /dev/null @@ -1,15 +0,0 @@ - - - - - REACT_NATIVE_DEVICE_ACTIVITY_APP_GROUP - $(REACT_NATIVE_DEVICE_ACTIVITY_APP_GROUP) - NSExtension - - NSExtensionPointIdentifier - com.apple.ManagedSettingsUI.shield-configuration-service - NSExtensionPrincipalClass - $(PRODUCT_MODULE_NAME).ShieldConfigurationExtension - - - diff --git a/apps/example/targets/ShieldConfiguration/PrivacyInfo.xcprivacy b/apps/example/targets/ShieldConfiguration/PrivacyInfo.xcprivacy deleted file mode 100644 index 49b8ded2..00000000 --- a/apps/example/targets/ShieldConfiguration/PrivacyInfo.xcprivacy +++ /dev/null @@ -1,48 +0,0 @@ - - - - - NSPrivacyAccessedAPITypes - - - NSPrivacyAccessedAPIType - NSPrivacyAccessedAPICategoryFileTimestamp - NSPrivacyAccessedAPITypeReasons - - C617.1 - 0A2A.1 - 3B52.1 - - - - NSPrivacyAccessedAPIType - NSPrivacyAccessedAPICategoryUserDefaults - NSPrivacyAccessedAPITypeReasons - - CA92.1 - - - - NSPrivacyAccessedAPIType - NSPrivacyAccessedAPICategoryDiskSpace - NSPrivacyAccessedAPITypeReasons - - E174.1 - 85F4.1 - - - - NSPrivacyAccessedAPIType - NSPrivacyAccessedAPICategorySystemBootTime - NSPrivacyAccessedAPITypeReasons - - 35F9.1 - - - - NSPrivacyCollectedDataTypes - - NSPrivacyTracking - - - diff --git a/apps/example/targets/ShieldConfiguration/expo-target.config.js b/apps/example/targets/ShieldConfiguration/expo-target.config.js deleted file mode 100644 index ccd0685f..00000000 --- a/apps/example/targets/ShieldConfiguration/expo-target.config.js +++ /dev/null @@ -1,5 +0,0 @@ -const { - createConfig, -} = require("react-native-device-activity/config-plugin/createExpoTargetConfig"); - -module.exports = createConfig("shield-configuration"); diff --git a/apps/example/targets/ShieldConfiguration/generated.entitlements b/apps/example/targets/ShieldConfiguration/generated.entitlements deleted file mode 100644 index 276c2b42..00000000 --- a/apps/example/targets/ShieldConfiguration/generated.entitlements +++ /dev/null @@ -1,12 +0,0 @@ - - - - - com.apple.developer.family-controls - - com.apple.security.application-groups - - group.ActivityMonitor - - - \ No newline at end of file diff --git a/package.json b/package.json index 2c06ab56..44102d99 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,8 @@ "format:check": "node ./node_modules/prettier/bin/prettier.cjs --check .", "format:version": "node ./node_modules/prettier/bin/prettier.cjs --version && node -e \"console.log(require('./node_modules/prettier/package.json').version)\"", "lint": "eslint .", - "pre-push": "bun run typecheck && bun run lint && packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint lint --strict --config .swiftlint.yml", + "swiftlint": "[ -x packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint ] || (echo 'SwiftLint pod binary missing. Run: cd packages/react-native-device-activity/ios/TestHarness && pod install' && exit 1); packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint lint --strict --config .swiftlint.yml", + "pre-push": "bun run typecheck && bun run lint && bun run swiftlint", "typecheck": "cd packages/react-native-device-activity && bun run typecheck && cd ../../apps/example && bun run typecheck", "prepare": "husky", "nail-workspace-dependency-versions": "bun run scripts/nail-workspace-dependency-versions.ts" From 030ab3630bf1e25f470b7ad39c8d970680d8ee12 Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 15:32:14 +0100 Subject: [PATCH 10/18] fix: exclude iOS test harness files from pod sources --- .../ios/ReactNativeDeviceActivity.podspec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/react-native-device-activity/ios/ReactNativeDeviceActivity.podspec b/packages/react-native-device-activity/ios/ReactNativeDeviceActivity.podspec index ca80f3cd..79b01576 100644 --- a/packages/react-native-device-activity/ios/ReactNativeDeviceActivity.podspec +++ b/packages/react-native-device-activity/ios/ReactNativeDeviceActivity.podspec @@ -24,4 +24,8 @@ Pod::Spec.new do |s| } s.source_files = "**/*.{h,m,swift}" + s.exclude_files = [ + "Tests/**/*", + "TestHarness/**/*" + ] end From eb099e90b567cb609d7dd4cb0ba68a83546e5169 Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 15:54:06 +0100 Subject: [PATCH 11/18] chore: refine env example and ignore test harness artifacts --- .prettierignore | 4 ++++ apps/example/.env.example | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/.prettierignore b/.prettierignore index fd4bd1d3..2a5e2f0a 100644 --- a/.prettierignore +++ b/.prettierignore @@ -9,3 +9,7 @@ apps/example/ios/build/ # Package build output packages/react-native-device-activity/build/ + +# iOS test harness generated artifacts +packages/react-native-device-activity/ios/TestHarness/Pods/ +packages/react-native-device-activity/ios/TestHarness/build/ diff --git a/apps/example/.env.example b/apps/example/.env.example index ef89bb63..0a40ddfa 100644 --- a/apps/example/.env.example +++ b/apps/example/.env.example @@ -1,4 +1,4 @@ -RNDA_APPLE_TEAM_ID=YOUR_APPLE_TEAM_ID +RNDA_APPLE_TEAM_ID=YOUR_APPLE_TEAM_ID # Found in https://developer.apple.com/account#MembershipDetailsCard RNDA_APP_GROUP=group.your-app-group RNDA_IOS_BUNDLE_ID=com.yourcompany.yourapp RNDA_ANDROID_PACKAGE=com.yourcompany.yourapp From f109bf64666d4781470b8d452d0e1c1cd8733ddb Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 22:26:47 +0100 Subject: [PATCH 12/18] test(ci): split runtime/plugin jest flows and stabilize iOS harness execution --- .github/workflows/test.yml | 6 +- package.json | 3 +- .../ios/Tests/IsShieldActiveTests.swift | 2 + .../jest.runtime.config.js | 14 ++++ .../react-native-device-activity/package.json | 3 +- .../src/index.test.ts | 80 ++++++++++++++----- 6 files changed, 81 insertions(+), 27 deletions(-) create mode 100644 packages/react-native-device-activity/jest.runtime.config.js diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 80e4c5f3..455942cb 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -143,10 +143,6 @@ jobs: - run: bun install - - name: Start bundler - run: bun start & - working-directory: apps/example - - uses: actions/cache@v4 with: path: packages/react-native-device-activity/ios/TestHarness/Pods @@ -174,5 +170,5 @@ jobs: - run: pod install working-directory: packages/react-native-device-activity/ios/TestHarness - - run: xcodebuild test -workspace reactnativedeviceactivityexample.xcworkspace -scheme Tests -destination "platform=iOS Simulator,OS=latest,name=iPhone 17" CODE_SIGNING_ALLOWED=NO CODE_SIGNING_REQUIRED=NO + - run: xcodebuild test -workspace reactnativedeviceactivityexample.xcworkspace -scheme Tests -destination "platform=iOS Simulator,OS=latest,name=iPhone 17" working-directory: packages/react-native-device-activity/ios/TestHarness diff --git a/package.json b/package.json index 44102d99..6e5eaa4e 100644 --- a/package.json +++ b/package.json @@ -8,8 +8,9 @@ "format:check": "node ./node_modules/prettier/bin/prettier.cjs --check .", "format:version": "node ./node_modules/prettier/bin/prettier.cjs --version && node -e \"console.log(require('./node_modules/prettier/package.json').version)\"", "lint": "eslint .", + "test": "cd packages/react-native-device-activity && bun run test", "swiftlint": "[ -x packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint ] || (echo 'SwiftLint pod binary missing. Run: cd packages/react-native-device-activity/ios/TestHarness && pod install' && exit 1); packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint lint --strict --config .swiftlint.yml", - "pre-push": "bun run typecheck && bun run lint && bun run swiftlint", + "pre-push": "bun run typecheck && bun run lint && bun run test && bun run swiftlint", "typecheck": "cd packages/react-native-device-activity && bun run typecheck && cd ../../apps/example && bun run typecheck", "prepare": "husky", "nail-workspace-dependency-versions": "bun run scripts/nail-workspace-dependency-versions.ts" diff --git a/packages/react-native-device-activity/ios/Tests/IsShieldActiveTests.swift b/packages/react-native-device-activity/ios/Tests/IsShieldActiveTests.swift index ba65062b..465ff63e 100644 --- a/packages/react-native-device-activity/ios/Tests/IsShieldActiveTests.swift +++ b/packages/react-native-device-activity/ios/Tests/IsShieldActiveTests.swift @@ -8,6 +8,8 @@ import FamilyControls import ManagedSettings import Testing +// NOTE: These assertions fail on simulator when xcodebuild is run with +// CODE_SIGNING_ALLOWED=NO CODE_SIGNING_REQUIRED=NO. @Suite(.serialized) struct IsShieldActiveTests { @Test func shieldIsNotActive() async throws { diff --git a/packages/react-native-device-activity/jest.runtime.config.js b/packages/react-native-device-activity/jest.runtime.config.js new file mode 100644 index 00000000..0f0f53a2 --- /dev/null +++ b/packages/react-native-device-activity/jest.runtime.config.js @@ -0,0 +1,14 @@ +module.exports = { + testEnvironment: "node", + clearMocks: true, + roots: ["/src"], + testRegex: ".*\\.test\\.ts$", + transform: { + "^.+\\.[jt]sx?$": [ + "babel-jest", + { + configFile: require.resolve("expo-module-scripts/babel.config.cli.js"), + }, + ], + }, +}; diff --git a/packages/react-native-device-activity/package.json b/packages/react-native-device-activity/package.json index 296b2266..a19a6f76 100644 --- a/packages/react-native-device-activity/package.json +++ b/packages/react-native-device-activity/package.json @@ -9,7 +9,8 @@ "clean": "expo-module clean", "lint": "expo-module lint", "typecheck": "tsc --noEmit", - "test": "expo-module test", + "test": "bun run test:runtime && bun run test:plugin", + "test:runtime": "expo-module test --config ./jest.runtime.config.js", "test:plugin": "expo-module test plugin", "prepublishOnly": "expo-module prepublishOnly && tsc && cp ../../README.md ./README.md", "expo-module": "expo-module", diff --git a/packages/react-native-device-activity/src/index.test.ts b/packages/react-native-device-activity/src/index.test.ts index db8d511c..1ca626a1 100644 --- a/packages/react-native-device-activity/src/index.test.ts +++ b/packages/react-native-device-activity/src/index.test.ts @@ -1,24 +1,64 @@ -// todo: skipping for now - -describe("test", () => { - test("Should call stopMonitoring", () => { - const mockStopMonitoring = jest.fn(); - jest.mock("./ReactNativeDeviceActivityModule", () => ({ - stopMonitoring: mockStopMonitoring, - })); - const { stopMonitoring } = require("./"); - stopMonitoring(); - expect(mockStopMonitoring).toHaveBeenCalled(); +const mockNativeModule = { + stopMonitoring: jest.fn(), + startMonitoring: jest.fn(), +}; + +jest.mock("react-native", () => ({ + Platform: { + OS: "ios", + select: (options: Record) => + options.ios ?? options.default, + }, +})); + +jest.mock("expo-modules-core", () => { + class MockEventEmitter { + addListener() { + return { remove: jest.fn() }; + } + + removeAllListeners() {} + } + + return { + EventEmitter: MockEventEmitter, + EventSubscription: class {}, + }; +}); + +jest.mock("./ReactNativeDeviceActivityModule", () => ({ + __esModule: true, + default: mockNativeModule, +})); + +describe("index runtime wrapper", () => { + beforeEach(() => { + jest.clearAllMocks(); + jest.resetModules(); }); - test("Should call startMonitoring", () => { - jest.resetAllMocks(); - const mockStartMonitoring = jest.fn(); - jest.mock("./ReactNativeDeviceActivityModule", () => ({ - startMonitoring: mockStartMonitoring, - })); - const { startMonitoring } = require("./"); - startMonitoring("test", {}, []); - expect(mockStartMonitoring).toHaveBeenCalled(); + test("delegates stopMonitoring to native module", () => { + const { stopMonitoring } = require("./index"); + const activities = ["activity-a"]; + + stopMonitoring(activities); + + expect(mockNativeModule.stopMonitoring).toHaveBeenCalledWith(activities); + }); + + test("delegates startMonitoring to native module", async () => { + mockNativeModule.startMonitoring.mockResolvedValueOnce(undefined); + const { startMonitoring } = require("./index"); + + await startMonitoring( + "activity-a", + { + intervalStart: { hour: 0, minute: 0 }, + intervalEnd: { hour: 23, minute: 59 }, + }, + [], + ); + + expect(mockNativeModule.startMonitoring).toHaveBeenCalled(); }); }); From 76034f11fd75be1e123c331971e617f9548caf5c Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 22:40:11 +0100 Subject: [PATCH 13/18] docs: update contributing references and formatting note --- CONTRIBUTING.md | 4 ++++ README.md | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 05795f47..bd32a6f0 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -63,6 +63,10 @@ Then run repository checks from the root: bun run pre-push ``` +## Formatting setup + +The formatting scripts intentionally call `node ./node_modules/prettier/bin/prettier.cjs` to avoid PATH/bin shadowing from transitive tooling (see [expo/expo#42994](https://github.com/expo/expo/issues/42994)). + ## Plugin testing In addition to app/prebuild validation, config plugin regression tests are defined under: diff --git a/README.md b/README.md index 50b39bc5..f730f11d 100644 --- a/README.md +++ b/README.md @@ -581,7 +581,7 @@ For a complete implementation, see the [example app](https://github.com/Kingstin ## Contributing -Contributions are very welcome! Please refer to guidelines described in the [contributing guide](https://github.com/expo/expo#contributing). +Contributions are very welcome! Please refer to guidelines described in [`CONTRIBUTING.md`](./CONTRIBUTING.md). ### Repository development setup From d9ad3578ad9b7ce995f60483e18a7455dec8990e Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 23:23:00 +0100 Subject: [PATCH 14/18] fix: address stability sweep pre-merge findings - ensure clean example prebuild paths generate Apple targets in local scripts and CI - enforce JS runtime/plugin tests in CI and release gates - restore SwiftLint and Swift format coverage for production iOS module files - exclude dev-only harness/test artifacts from published npm package --- .github/workflows/npm-publish.yml | 2 ++ .github/workflows/test.yml | 17 ++++++++++++++++- .husky/pre-commit | 2 +- .swiftlint.yml | 4 ++++ apps/example/package.json | 4 ++-- .../react-native-device-activity/.npmignore | 7 +++++++ 6 files changed, 32 insertions(+), 4 deletions(-) create mode 100644 packages/react-native-device-activity/.npmignore diff --git a/.github/workflows/npm-publish.yml b/.github/workflows/npm-publish.yml index a54fbf28..7a1979c3 100644 --- a/.github/workflows/npm-publish.yml +++ b/.github/workflows/npm-publish.yml @@ -37,6 +37,8 @@ jobs: - run: bun typecheck + - run: bun run test + publish-to-npm: needs: test runs-on: ubuntu-latest diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 455942cb..316449f2 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -37,6 +37,21 @@ jobs: - run: bun typecheck + test-js: + name: JS Tests + runs-on: ubuntu-latest + timeout-minutes: 10 + steps: + - uses: actions/checkout@v4 + + - uses: oven-sh/setup-bun@v2 + with: + bun-version: latest + + - run: bun install + + - run: bun run test + typecheck-example: name: Typecheck (example project) runs-on: ubuntu-latest @@ -98,7 +113,7 @@ jobs: - run: bun install - - run: bunx expo prebuild + - run: bun run prebuild working-directory: apps/example swift-lint: diff --git a/.husky/pre-commit b/.husky/pre-commit index ee6daa4f..51b6dccb 100644 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1,3 +1,3 @@ swift format -i -p -r ./packages/react-native-device-activity/ios/Tests ./packages/react-native-device-activity/targets ./packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample -swift format -i -p ./packages/react-native-device-activity/ios/Shared.swift +swift format -i -p ./packages/react-native-device-activity/ios/Shared.swift ./packages/react-native-device-activity/ios/ReactNativeDeviceActivityModule.swift ./packages/react-native-device-activity/ios/ReactNativeDeviceActivityView.swift ./packages/react-native-device-activity/ios/ReactNativeDeviceActivityViewPersisted.swift ./packages/react-native-device-activity/ios/ScreenTimeActivityPicker.swift packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint lint --fix --config .swiftlint.yml diff --git a/.swiftlint.yml b/.swiftlint.yml index 53918e29..3fa56772 100644 --- a/.swiftlint.yml +++ b/.swiftlint.yml @@ -12,6 +12,10 @@ disabled_rules: - inclusive_language included: + - packages/react-native-device-activity/ios/ReactNativeDeviceActivityModule.swift + - packages/react-native-device-activity/ios/ReactNativeDeviceActivityView.swift + - packages/react-native-device-activity/ios/ReactNativeDeviceActivityViewPersisted.swift + - packages/react-native-device-activity/ios/ScreenTimeActivityPicker.swift - packages/react-native-device-activity/ios/Tests - packages/react-native-device-activity/ios/Shared.swift - packages/react-native-device-activity/ios/TestHarness/reactnativedeviceactivityexample diff --git a/apps/example/package.json b/apps/example/package.json index 6d2e0ab0..8365938b 100644 --- a/apps/example/package.json +++ b/apps/example/package.json @@ -4,8 +4,8 @@ "main": "index.js", "scripts": { "start": "INTERNALLY_TEST_EXAMPLE_PROJECT=true expo start", - "android": "INTERNALLY_TEST_EXAMPLE_PROJECT=true expo run:android", - "ios": "INTERNALLY_TEST_EXAMPLE_PROJECT=true expo run:ios", + "android": "COPY_TO_TARGET_FOLDER=true INTERNALLY_TEST_EXAMPLE_PROJECT=true expo run:android", + "ios": "COPY_TO_TARGET_FOLDER=true INTERNALLY_TEST_EXAMPLE_PROJECT=true expo run:ios", "web": "INTERNALLY_TEST_EXAMPLE_PROJECT=true expo start --web", "bundle": "INTERNALLY_TEST_EXAMPLE_PROJECT=true expo export", "typecheck": "tsc --noEmit", diff --git a/packages/react-native-device-activity/.npmignore b/packages/react-native-device-activity/.npmignore new file mode 100644 index 00000000..42ad51fe --- /dev/null +++ b/packages/react-native-device-activity/.npmignore @@ -0,0 +1,7 @@ +# Package-local dev/test files +ios/TestHarness/ +ios/Tests/ +plugin/__tests__/ +src/*.test.ts +jest.runtime.config.js +plugin/jest.config.js From b2c8a661b6e518828531a2a9db5a98fb48d36767 Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 23:35:03 +0100 Subject: [PATCH 15/18] fix(test): disable jest watch mode in package test script --- packages/react-native-device-activity/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react-native-device-activity/package.json b/packages/react-native-device-activity/package.json index a19a6f76..b8e9dd4c 100644 --- a/packages/react-native-device-activity/package.json +++ b/packages/react-native-device-activity/package.json @@ -9,7 +9,7 @@ "clean": "expo-module clean", "lint": "expo-module lint", "typecheck": "tsc --noEmit", - "test": "bun run test:runtime && bun run test:plugin", + "test": "CI=1 bun run test:runtime && CI=1 bun run test:plugin", "test:runtime": "expo-module test --config ./jest.runtime.config.js", "test:plugin": "expo-module test plugin", "prepublishOnly": "expo-module prepublishOnly && tsc && cp ../../README.md ./README.md", From 02ada65cfba8152a7b24ccfcf02528afdaa6b2b1 Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 23:45:23 +0100 Subject: [PATCH 16/18] chore(npm): exclude compiled test artifacts from package --- packages/react-native-device-activity/.npmignore | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/react-native-device-activity/.npmignore b/packages/react-native-device-activity/.npmignore index 42ad51fe..4a24c244 100644 --- a/packages/react-native-device-activity/.npmignore +++ b/packages/react-native-device-activity/.npmignore @@ -3,5 +3,6 @@ ios/TestHarness/ ios/Tests/ plugin/__tests__/ src/*.test.ts +build/*.test.* jest.runtime.config.js plugin/jest.config.js From 2fda15f95119e64483f8508598f9eeb0bd014e73 Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Mon, 9 Feb 2026 23:53:21 +0100 Subject: [PATCH 17/18] chore(npm): keep published artifact aligned with current target metadata set --- packages/react-native-device-activity/.npmignore | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/react-native-device-activity/.npmignore b/packages/react-native-device-activity/.npmignore index 4a24c244..ea74b7dd 100644 --- a/packages/react-native-device-activity/.npmignore +++ b/packages/react-native-device-activity/.npmignore @@ -6,3 +6,9 @@ src/*.test.ts build/*.test.* jest.runtime.config.js plugin/jest.config.js + +# Generated target metadata (not currently shipped in npm package) +targets/ActivityMonitorExtension/generated.entitlements +targets/ShieldAction/generated.entitlements +targets/ShieldConfiguration/generated.entitlements +targets/ShieldConfiguration/PrivacyInfo.xcprivacy From 16b0afc3ab2d8e5bd7cb0ed12812a9a29444d203 Mon Sep 17 00:00:00 2001 From: lucamene04 Date: Tue, 10 Feb 2026 00:11:37 +0100 Subject: [PATCH 18/18] fix: harden swiftlint guard and align CI strictness --- .github/workflows/test.yml | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 316449f2..3a4c6e12 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -139,7 +139,7 @@ jobs: - run: pod install working-directory: packages/react-native-device-activity/ios/TestHarness - - run: packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint lint --config .swiftlint.yml + - run: packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint lint --strict --config .swiftlint.yml swift-test: name: Swift Test (iOS harness) diff --git a/package.json b/package.json index 6e5eaa4e..20c0a5a6 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "format:version": "node ./node_modules/prettier/bin/prettier.cjs --version && node -e \"console.log(require('./node_modules/prettier/package.json').version)\"", "lint": "eslint .", "test": "cd packages/react-native-device-activity && bun run test", - "swiftlint": "[ -x packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint ] || (echo 'SwiftLint pod binary missing. Run: cd packages/react-native-device-activity/ios/TestHarness && pod install' && exit 1); packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint lint --strict --config .swiftlint.yml", + "swiftlint": "[ -x packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint ] || { echo 'SwiftLint pod binary missing. Run: cd packages/react-native-device-activity/ios/TestHarness && pod install'; exit 1; }; packages/react-native-device-activity/ios/TestHarness/Pods/SwiftLint/swiftlint lint --strict --config .swiftlint.yml", "pre-push": "bun run typecheck && bun run lint && bun run test && bun run swiftlint", "typecheck": "cd packages/react-native-device-activity && bun run typecheck && cd ../../apps/example && bun run typecheck", "prepare": "husky",