Fix eas build and add expo dev client

This commit is contained in:
Zoe Roux 2022-12-30 01:59:39 +09:00
parent 162891ba1d
commit e741b5aa6d
8 changed files with 227 additions and 56 deletions

View File

@ -21,6 +21,7 @@
"supportsTablet": true
},
"android": {
"package": "moe.sdg.kyoo",
"adaptiveIcon": {
"foregroundImage": "./assets/adaptive-icon.png",
"backgroundColor": "#FFFFFF"
@ -28,6 +29,21 @@
},
"web": {
"favicon": "./assets/favicon.png"
}
},
"extra": {
"eas": {
"projectId": "55de6b52-c649-4a15-9a45-569ff5ed036c"
}
},
"plugins": [
[
"expo-build-properties",
{
"android": {
"compileSdkVersion": 31
}
}
]
]
}
}

View File

@ -0,0 +1,18 @@
{
"cli": {
"version": ">= 3.0.0"
},
"build": {
"development": {
"developmentClient": true,
"distribution": "internal"
},
"preview": {
"distribution": "internal"
},
"production": {}
},
"submit": {
"production": {}
}
}

View File

@ -16,10 +16,11 @@
"@tanstack/react-query": "^4.19.1",
"babel-plugin-transform-inline-environment-variables": "^0.4.4",
"expo": "^47.0.0",
"expo-av": "file:///home/anonymus-raccoon/projects/expo/packages/expo-av/",
"expo-build-properties": "~0.4.1",
"expo-constants": "~14.0.2",
"expo-dev-client": "~2.0.1",
"expo-linear-gradient": "~12.0.1",
"expo-linking": "~3.2.3",
"expo-linking": "~3.3.0",
"expo-localization": "~14.0.0",
"expo-navigation-bar": "~2.0.1",
"expo-router": "^0.0.36",
@ -36,6 +37,7 @@
"react-native-safe-area-context": "4.4.1",
"react-native-screens": "~3.18.0",
"react-native-svg": "13.4.0",
"react-native-video": "alpha",
"yoshiki": "0.3.2"
},
"devDependencies": {
@ -45,5 +47,8 @@
"react-native-svg-transformer": "^1.0.0",
"typescript": "^4.6.3"
},
"installConfig": {
"hoistingLimits": "workspaces"
},
"private": true
}

View File

@ -24,7 +24,6 @@
"@tanstack/react-query": "^4.19.1",
"clsx": "^1.2.1",
"csstype": "^3.1.1",
"expo-av": "file:///home/anonymus-raccoon/projects/expo/packages/expo-av/",
"expo-linear-gradient": "^12.0.1",
"hls.js": "^1.2.8",
"i18next": "^22.0.6",
@ -40,6 +39,7 @@
"react-i18next": "^12.0.0",
"react-native-reanimated": "^2.13.0",
"react-native-svg": "13.4.0",
"react-native-video": "alpha",
"react-native-web": "^0.18.10",
"solito": "^2.0.5",
"superjson": "^1.11.0",
@ -51,6 +51,7 @@
"@types/node": "18.11.9",
"@types/react": "18.0.25",
"@types/react-dom": "18.0.9",
"@types/react-native-video": "^5.0.14",
"copy-webpack-plugin": "^11.0.0",
"eslint": "^8.30.0",
"eslint-config-next": "13.0.5",

18
front/eas.json Normal file
View File

@ -0,0 +1,18 @@
{
"cli": {
"version": ">= 3.1.1"
},
"build": {
"development": {
"developmentClient": true,
"distribution": "internal"
},
"preview": {
"distribution": "internal"
},
"production": {}
},
"submit": {
"production": {}
}
}

View File

@ -21,8 +21,10 @@
import { Platform } from "react-native";
import { z } from "zod";
export const imageFn = (url: string) =>
Platform.OS === "web" ? `/api/${url}` : process.env.PUBLIC_BACK_URL + url;
export const imageFn = (url: string) => {
console.log(process.env.PUBLIC_BACK_URL)
return Platform.OS === "web" ? `/api/${url}` : process.env.PUBLIC_BACK_URL + url;
}
export const ImagesP = z.object({
/**

View File

@ -22,7 +22,7 @@ import { Font, Track, WatchItem } from "@kyoo/models";
import { atom, useAtom, useAtomValue, useSetAtom } from "jotai";
import { RefObject, useEffect, useLayoutEffect, useRef, useState } from "react";
import { createParam } from "solito";
import { ResizeMode, Video as NativeVideo, VideoProps } from "expo-av";
import NativeVideo, { VideoProperties as VideoProps } from "react-native-video";
import SubtitleOctopus from "libass-wasm";
import Hls from "hls.js";
import { bakedAtom } from "../jotai-utils";
@ -92,9 +92,9 @@ export const Video = ({
const setPrivateProgress = useSetAtom(privateProgressAtom);
const setBuffered = useSetAtom(bufferedAtom);
const setDuration = useSetAtom(durationAtom);
useEffect(() => {
ref.current?.setStatusAsync({ positionMillis: publicProgress });
}, [publicProgress]);
// useEffect(() => {
// ref.current?.setStatusAsync({ positionMillis: publicProgress });
// }, [publicProgress]);
const volume = useAtomValue(volumeAtom);
const isMuted = useAtomValue(mutedAtom);
@ -144,22 +144,24 @@ export const Video = ({
<NativeVideo
ref={ref}
{...props}
source={links ? { uri: links.direct } : undefined}
shouldPlay={isPlaying}
isMuted={isMuted}
source={{ uri: links?.direct }}
paused={!isPlaying}
muted={isMuted}
volume={volume}
onPlaybackStatusUpdate={(status) => {
if (!status.isLoaded) {
setLoad(true);
if (status.error) setError(status.error);
return;
}
// resizeMode={ResizeMode.CONTAIN}
// onPlaybackStatusUpdate={(status) => {
// if (!status.isLoaded) {
// setLoad(true);
// if (status.error) setError(status.error);
// return;
// }
// setLoad(status.isPlaying !== status.shouldPlay);
// setPrivateProgress(status.positionMillis);
// setBuffered(status.playableDurationMillis ?? 0);
// setDuration(status.durationMillis);
// }}
setLoad(status.isPlaying !== status.shouldPlay);
setPrivateProgress(status.positionMillis);
setBuffered(status.playableDurationMillis ?? 0);
setDuration(status.durationMillis);
}}
// ref: player,
// shouldPlay: isPlaying,
// onDoubleClick: () => {
@ -186,7 +188,6 @@ export const Video = ({
// setVolume(player.current.volume * 100);
// setMuted(player?.current.muted);
// },
resizeMode={ResizeMode.CONTAIN}
useNativeControls={false}
/>
);

View File

@ -3434,6 +3434,13 @@ __metadata:
languageName: node
linkType: hard
"@react-native/normalize-color@npm:*, @react-native/normalize-color@npm:^2.0.0":
version: 2.1.0
resolution: "@react-native/normalize-color@npm:2.1.0"
checksum: 8ccbd40b3c7629f1dc97b3e9aadd95fd3507fcf2e37535a6299a70436ab891c34cbdc4240b07380553d6e85dd909e23d5773b5be1da2906b026312e0b0768838
languageName: node
linkType: hard
"@react-native/normalize-color@npm:2.0.0":
version: 2.0.0
resolution: "@react-native/normalize-color@npm:2.0.0"
@ -3441,13 +3448,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native/normalize-color@npm:^2.0.0":
version: 2.1.0
resolution: "@react-native/normalize-color@npm:2.1.0"
checksum: 8ccbd40b3c7629f1dc97b3e9aadd95fd3507fcf2e37535a6299a70436ab891c34cbdc4240b07380553d6e85dd909e23d5773b5be1da2906b026312e0b0768838
languageName: node
linkType: hard
"@react-native/polyfills@npm:2.0.0":
version: 2.0.0
resolution: "@react-native/polyfills@npm:2.0.0"
@ -3978,7 +3978,17 @@ __metadata:
languageName: node
linkType: hard
"@types/react-native@npm:>= 0.70.0, @types/react-native@npm:~0.70.6":
"@types/react-native-video@npm:^5.0.14":
version: 5.0.14
resolution: "@types/react-native-video@npm:5.0.14"
dependencies:
"@types/react": "*"
"@types/react-native": "*"
checksum: 9b58ab6651d541172dd8f91387165c16c2081b6c5eb4719eaf205aec4f38903dd3e1689aefb7dab34feefb9f5d9feee35ff8d190bc0538ed183a985aae2ee6eb
languageName: node
linkType: hard
"@types/react-native@npm:*, @types/react-native@npm:>= 0.70.0, @types/react-native@npm:~0.70.6":
version: 0.70.8
resolution: "@types/react-native@npm:0.70.8"
dependencies:
@ -4471,7 +4481,7 @@ __metadata:
languageName: node
linkType: hard
"ajv@npm:^8.0.0, ajv@npm:^8.8.0":
"ajv@npm:^8.0.0, ajv@npm:^8.11.0, ajv@npm:^8.8.0":
version: 8.11.2
resolution: "ajv@npm:8.11.2"
dependencies:
@ -6164,6 +6174,17 @@ __metadata:
languageName: node
linkType: hard
"deprecated-react-native-prop-types@npm:^2.2.0":
version: 2.3.0
resolution: "deprecated-react-native-prop-types@npm:2.3.0"
dependencies:
"@react-native/normalize-color": "*"
invariant: "*"
prop-types: "*"
checksum: d14f4be1dfe780a7fa9197a31b4a9a2b409c8cf1bf677713fd92d06733dee1043578662d1a8858541cf06164ae91d295db6e595f29bf13e808d9fb37bc58c90b
languageName: node
linkType: hard
"dequal@npm:^2.0.0":
version: 2.0.3
resolution: "dequal@npm:2.0.3"
@ -6934,21 +6955,15 @@ __metadata:
languageName: node
linkType: hard
"expo-av@file:///home/anonymus-raccoon/projects/expo/packages/expo-av/::locator=mobile%40workspace%3Aapps%2Fmobile":
version: 13.0.1
resolution: "expo-av@file:///home/anonymus-raccoon/projects/expo/packages/expo-av/#///home/anonymus-raccoon/projects/expo/packages/expo-av/::hash=6acf81&locator=mobile%40workspace%3Aapps%2Fmobile"
"expo-build-properties@npm:~0.4.1":
version: 0.4.1
resolution: "expo-build-properties@npm:0.4.1"
dependencies:
ajv: ^8.11.0
semver: ^7.3.5
peerDependencies:
expo: "*"
checksum: 89c23346fcf8cc3ed50b523969dad76c14e9bb3f526c7cc0032783fca9aeacc1c14a1aca86b84cb5ebd51d4ee2142f7fb507ed47d7430e12b71733858a70acc9
languageName: node
linkType: hard
"expo-av@file:///home/anonymus-raccoon/projects/expo/packages/expo-av/::locator=web%40workspace%3Aapps%2Fweb":
version: 13.0.1
resolution: "expo-av@file:///home/anonymus-raccoon/projects/expo/packages/expo-av/#///home/anonymus-raccoon/projects/expo/packages/expo-av/::hash=6acf81&locator=web%40workspace%3Aapps%2Fweb"
peerDependencies:
expo: "*"
checksum: 89c23346fcf8cc3ed50b523969dad76c14e9bb3f526c7cc0032783fca9aeacc1c14a1aca86b84cb5ebd51d4ee2142f7fb507ed47d7430e12b71733858a70acc9
checksum: c62f994cb995c62a9e358eb192f7a43caceac25c0a36913f8d31bad70b8cd5f4f23c4169b340c60c651bb4c7487910e0b9911562cc6a15c208fa44b7ee271bc5
languageName: node
linkType: hard
@ -6964,6 +6979,55 @@ __metadata:
languageName: node
linkType: hard
"expo-dev-client@npm:~2.0.1":
version: 2.0.1
resolution: "expo-dev-client@npm:2.0.1"
dependencies:
expo-dev-launcher: 2.0.2
expo-dev-menu: 2.0.2
expo-dev-menu-interface: 1.0.0
expo-manifests: ~0.4.0
expo-updates-interface: ~0.8.0
peerDependencies:
expo: "*"
checksum: 017b8056e9cd708ea35093386bfb39ad6220bf5db4f3f9a0576380ce97896965c657d31a480b2b57e7e6b215b337da4a994e08e350fe1bf0fd6ab6125d1e7e88
languageName: node
linkType: hard
"expo-dev-launcher@npm:2.0.2":
version: 2.0.2
resolution: "expo-dev-launcher@npm:2.0.2"
dependencies:
expo-dev-menu: 2.0.2
resolve-from: ^5.0.0
semver: ^7.3.5
peerDependencies:
expo: "*"
checksum: 919342c5e372f4440922e7b39d0d989a3e1a7998c9e74bb30648d86846efb2bf750d776845f2dac5470d7d9beab695222615b213f5711e2b827b2891a32d0f79
languageName: node
linkType: hard
"expo-dev-menu-interface@npm:1.0.0":
version: 1.0.0
resolution: "expo-dev-menu-interface@npm:1.0.0"
peerDependencies:
expo: "*"
checksum: e138e7362d3210c3ef66b9c263752442fd36c48f17d62e73314305d5318fdf7a3ca0f21ffa62b9221c07966798372ca49177597a87546820450d9f829a57ab04
languageName: node
linkType: hard
"expo-dev-menu@npm:2.0.2":
version: 2.0.2
resolution: "expo-dev-menu@npm:2.0.2"
dependencies:
expo-dev-menu-interface: 1.0.0
semver: ^7.3.5
peerDependencies:
expo: "*"
checksum: 3bf510a267ed952b88ec671d40c67a2921efb8e83f3dccfa2f7a52788cc6b4941d4046f334cc88737806b36c9390fb9eca94e23473fc496a85bb99e02a8c6d83
languageName: node
linkType: hard
"expo-error-recovery@npm:~4.0.1":
version: 4.0.1
resolution: "expo-error-recovery@npm:4.0.1"
@ -6995,6 +7059,13 @@ __metadata:
languageName: node
linkType: hard
"expo-json-utils@npm:~0.4.0":
version: 0.4.0
resolution: "expo-json-utils@npm:0.4.0"
checksum: fd8713f2040dcdac5cbe6f9dab186012c57fdcd2a3ed243d1d07dc2ccf2654eff3f98dc2e3e3a0bc1b5b9bbe68e94c633095a9112428d371da28d61265b61047
languageName: node
linkType: hard
"expo-keep-awake@npm:~11.0.1":
version: 11.0.1
resolution: "expo-keep-awake@npm:11.0.1"
@ -7013,16 +7084,16 @@ __metadata:
languageName: node
linkType: hard
"expo-linking@npm:~3.2.3":
version: 3.2.3
resolution: "expo-linking@npm:3.2.3"
"expo-linking@npm:~3.3.0":
version: 3.3.0
resolution: "expo-linking@npm:3.3.0"
dependencies:
"@types/qs": ^6.5.3
expo-constants: ~14.0.0
invariant: ^2.2.4
qs: ^6.9.1
url-parse: ^1.5.9
checksum: 248b09b9ee38def1666bb1e221617c67329387f7f1e5214a427526b574495cf8d9b7204c6b69b8dde0bc5c32ff6d0ecb20e25606a04f16de609fddaf4c21a6e7
checksum: ff4beff24a971fce24baa5423bab7ef0caabda64f87c9c55d32c409cd8f0e48ea46cc08ab1e54978e51476d7a6dadca05a5ba4ab74e982063d64ddfc8230cb5e
languageName: node
linkType: hard
@ -7037,6 +7108,15 @@ __metadata:
languageName: node
linkType: hard
"expo-manifests@npm:~0.4.0":
version: 0.4.0
resolution: "expo-manifests@npm:0.4.0"
dependencies:
expo-json-utils: ~0.4.0
checksum: 4d0f5ca50f4d659a752de11139cc358564071699455945d5b86c5f3f59464435c66fbccbc269449f1ecbad74401fa7dbccf66b57c022e33ba01be3a1f378b176
languageName: node
linkType: hard
"expo-modules-autolinking@npm:*, expo-modules-autolinking@npm:1.0.0":
version: 1.0.0
resolution: "expo-modules-autolinking@npm:1.0.0"
@ -7135,6 +7215,15 @@ __metadata:
languageName: node
linkType: hard
"expo-updates-interface@npm:~0.8.0":
version: 0.8.1
resolution: "expo-updates-interface@npm:0.8.1"
peerDependencies:
expo: "*"
checksum: 5a626fb60e06fac00c81caef19d6b0e16e46950fc4b08a484339c6c461cc7106c25c93c110108fd367b23a13ccb06a3c03da518a6d43dfb2a5f8c7f28f94b5b9
languageName: node
linkType: hard
"expo@npm:*, expo@npm:^47.0.0":
version: 47.0.8
resolution: "expo@npm:47.0.8"
@ -8342,7 +8431,7 @@ __metadata:
languageName: node
linkType: hard
"invariant@npm:^2.2.4":
"invariant@npm:*, invariant@npm:^2.2.4":
version: 2.2.4
resolution: "invariant@npm:2.2.4"
dependencies:
@ -9151,6 +9240,13 @@ __metadata:
languageName: node
linkType: hard
"keymirror@npm:^0.1.1":
version: 0.1.1
resolution: "keymirror@npm:0.1.1"
checksum: be8f0bc5ff7d561d729f935ef55b4dbbea7b56a4714f044a2212088730f4d52f73935c38c5a9604e0f1157611725ee493cb7d08d1f3eb34151c0aa999236206a
languageName: node
linkType: hard
"kind-of@npm:^3.0.2, kind-of@npm:^3.0.3, kind-of@npm:^3.2.0":
version: 3.2.2
resolution: "kind-of@npm:3.2.2"
@ -10369,10 +10465,11 @@ __metadata:
"@types/react-native": ~0.70.6
babel-plugin-transform-inline-environment-variables: ^0.4.4
expo: ^47.0.0
expo-av: "file:///home/anonymus-raccoon/projects/expo/packages/expo-av/"
expo-build-properties: ~0.4.1
expo-constants: ~14.0.2
expo-dev-client: ~2.0.1
expo-linear-gradient: ~12.0.1
expo-linking: ~3.2.3
expo-linking: ~3.3.0
expo-localization: ~14.0.0
expo-navigation-bar: ~2.0.1
expo-router: ^0.0.36
@ -10390,6 +10487,7 @@ __metadata:
react-native-screens: ~3.18.0
react-native-svg: 13.4.0
react-native-svg-transformer: ^1.0.0
react-native-video: alpha
typescript: ^4.6.3
yoshiki: 0.3.2
languageName: unknown
@ -11439,7 +11537,7 @@ __metadata:
languageName: node
linkType: hard
"prop-types@npm:15.8.1, prop-types@npm:^15.6.2, prop-types@npm:^15.8.1":
"prop-types@npm:*, prop-types@npm:15.8.1, prop-types@npm:^15.6.2, prop-types@npm:^15.7.2, prop-types@npm:^15.8.1":
version: 15.8.1
resolution: "prop-types@npm:15.8.1"
dependencies:
@ -11758,6 +11856,17 @@ __metadata:
languageName: node
linkType: hard
"react-native-video@npm:alpha":
version: 6.0.0-alpha.4
resolution: "react-native-video@npm:6.0.0-alpha.4"
dependencies:
deprecated-react-native-prop-types: ^2.2.0
keymirror: ^0.1.1
prop-types: ^15.7.2
checksum: 0dcd4a0eb4ba5d92a5a2ad2a0b75a195f1ce2f97bc472264295ff8879df1b835c4d849eedc8be45b900013eaf5ba40de0d021300716c14fb8d72252cdeb1bc6d
languageName: node
linkType: hard
"react-native-web@npm:^0.18.10":
version: 0.18.10
resolution: "react-native-web@npm:0.18.10"
@ -14146,12 +14255,12 @@ __metadata:
"@types/node": 18.11.9
"@types/react": 18.0.25
"@types/react-dom": 18.0.9
"@types/react-native-video": ^5.0.14
clsx: ^1.2.1
copy-webpack-plugin: ^11.0.0
csstype: ^3.1.1
eslint: ^8.30.0
eslint-config-next: 13.0.5
expo-av: "file:///home/anonymus-raccoon/projects/expo/packages/expo-av/"
expo-linear-gradient: ^12.0.1
hls.js: ^1.2.8
i18next: ^22.0.6
@ -14167,6 +14276,7 @@ __metadata:
react-i18next: ^12.0.0
react-native-reanimated: ^2.13.0
react-native-svg: 13.4.0
react-native-video: alpha
react-native-web: ^0.18.10
solito: ^2.0.5
superjson: ^1.11.0