- keystone-app/app.json +14 -4
- keystone-app/app/(tabs)/index.tsx +3 -1
- keystone-app/eas.json +21 -0
- keystone-app/package-lock.json +0 -0
- keystone-app/package.json +17 -13
keystone-app/app.json
CHANGED
|
@@ -9,9 +9,19 @@
|
|
| 9 |
{
|
| 10 |
"photosPermission": "Allow KeyStone to access your photos to back them up to your private cloud.",
|
| 11 |
"savePhotosPermission": "Allow KeyStone to save photos.",
|
| 12 |
-
"isAccessMediaLocationEnabled": true
|
|
|
|
| 13 |
}
|
| 14 |
-
]
|
| 15 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 16 |
}
|
| 17 |
-
}
|
|
|
|
| 9 |
{
|
| 10 |
"photosPermission": "Allow KeyStone to access your photos to back them up to your private cloud.",
|
| 11 |
"savePhotosPermission": "Allow KeyStone to save photos.",
|
| 12 |
+
"isAccessMediaLocationEnabled": true,
|
| 13 |
+
"granularPermissions": ["photo", "video"]
|
| 14 |
}
|
| 15 |
+
],
|
| 16 |
+
"expo-router"
|
| 17 |
+
],
|
| 18 |
+
"extra": {
|
| 19 |
+
"eas": {
|
| 20 |
+
"projectId": "8267e9d9-6b78-41b2-a1af-2c779a8c4f97"
|
| 21 |
+
}
|
| 22 |
+
},
|
| 23 |
+
"android": {
|
| 24 |
+
"package": "com.dedeep.keystoneapp"
|
| 25 |
+
}
|
| 26 |
}
|
| 27 |
+
}
|
keystone-app/app/(tabs)/index.tsx
CHANGED
|
@@ -35,7 +35,9 @@ type SectionData = {
|
|
| 35 |
};
|
| 36 |
|
| 37 |
export default function PhotosScreen() {
|
| 38 |
-
const [permissionResponse, requestPermission] = MediaLibrary.usePermissions(
|
|
|
|
|
|
|
| 39 |
const [sections, setSections] = useState<SectionData[]>([]);
|
| 40 |
const [allPhotos, setAllPhotos] = useState<MediaLibrary.Asset[]>([]);
|
| 41 |
|
|
|
|
| 35 |
};
|
| 36 |
|
| 37 |
export default function PhotosScreen() {
|
| 38 |
+
const [permissionResponse, requestPermission] = MediaLibrary.usePermissions({
|
| 39 |
+
granularPermissions: ['photo', 'video'],
|
| 40 |
+
});
|
| 41 |
const [sections, setSections] = useState<SectionData[]>([]);
|
| 42 |
const [allPhotos, setAllPhotos] = useState<MediaLibrary.Asset[]>([]);
|
| 43 |
|
keystone-app/eas.json
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"cli": {
|
| 3 |
+
"version": ">= 21.0.1",
|
| 4 |
+
"appVersionSource": "remote"
|
| 5 |
+
},
|
| 6 |
+
"build": {
|
| 7 |
+
"development": {
|
| 8 |
+
"developmentClient": true,
|
| 9 |
+
"distribution": "internal"
|
| 10 |
+
},
|
| 11 |
+
"preview": {
|
| 12 |
+
"distribution": "internal"
|
| 13 |
+
},
|
| 14 |
+
"production": {
|
| 15 |
+
"autoIncrement": true
|
| 16 |
+
}
|
| 17 |
+
},
|
| 18 |
+
"submit": {
|
| 19 |
+
"production": {}
|
| 20 |
+
}
|
| 21 |
+
}
|
keystone-app/package-lock.json
CHANGED
|
The diff for this file is too large to render.
See raw diff
|
|
|
keystone-app/package.json
CHANGED
|
@@ -1,25 +1,29 @@
|
|
| 1 |
{
|
| 2 |
"name": "keystone-app",
|
| 3 |
"version": "1.0.0",
|
| 4 |
-
"main": "
|
| 5 |
"dependencies": {
|
| 6 |
-
"@expo/metro-runtime": "~
|
| 7 |
-
"@expo/ngrok": "^4.1.3",
|
| 8 |
"@react-native-async-storage/async-storage": "2.2.0",
|
| 9 |
"date-fns": "^4.4.0",
|
| 10 |
-
"expo": "
|
| 11 |
-
"expo-
|
| 12 |
-
"expo-
|
| 13 |
-
"expo-
|
| 14 |
-
"expo-
|
| 15 |
-
"
|
| 16 |
-
"
|
| 17 |
-
"react
|
|
|
|
|
|
|
|
|
|
|
|
|
| 18 |
"react-native-web": "^0.21.2"
|
| 19 |
},
|
| 20 |
"devDependencies": {
|
| 21 |
-
"@
|
| 22 |
-
"
|
|
|
|
| 23 |
},
|
| 24 |
"scripts": {
|
| 25 |
"start": "expo start",
|
|
|
|
| 1 |
{
|
| 2 |
"name": "keystone-app",
|
| 3 |
"version": "1.0.0",
|
| 4 |
+
"main": "expo-router/entry",
|
| 5 |
"dependencies": {
|
| 6 |
+
"@expo/metro-runtime": "~6.1.2",
|
|
|
|
| 7 |
"@react-native-async-storage/async-storage": "2.2.0",
|
| 8 |
"date-fns": "^4.4.0",
|
| 9 |
+
"expo": "^54.0.36",
|
| 10 |
+
"expo-dev-client": "~6.0.21",
|
| 11 |
+
"expo-file-system": "~19.0.23",
|
| 12 |
+
"expo-image": "~3.0.11",
|
| 13 |
+
"expo-media-library": "~18.2.1",
|
| 14 |
+
"expo-router": "~6.0.24",
|
| 15 |
+
"expo-status-bar": "~3.0.9",
|
| 16 |
+
"react": "19.1.0",
|
| 17 |
+
"react-dom": "19.1.0",
|
| 18 |
+
"react-native": "0.81.5",
|
| 19 |
+
"react-native-safe-area-context": "~5.6.0",
|
| 20 |
+
"react-native-screens": "~4.16.0",
|
| 21 |
"react-native-web": "^0.21.2"
|
| 22 |
},
|
| 23 |
"devDependencies": {
|
| 24 |
+
"@expo/ngrok": "^4.1.3",
|
| 25 |
+
"@types/react": "~19.1.10",
|
| 26 |
+
"typescript": "~5.9.2"
|
| 27 |
},
|
| 28 |
"scripts": {
|
| 29 |
"start": "expo start",
|