commit 9f02211d6a3db82894e5c6021a532a27236424b2 Author: Brandon Presley Date: Thu Dec 15 16:31:35 2022 +1300 Add basic swipe functionality through videos Still need to work on: 1. Progress meter 2. Pause on tap 3. App icon 4. Dark/light mode detection 5. Height not being centered 6. Slide numbers on the bottom color diff --git a/.buckconfig b/.buckconfig new file mode 100644 index 0000000..934256c --- /dev/null +++ b/.buckconfig @@ -0,0 +1,6 @@ + +[android] + target = Google Inc.:Google APIs:23 + +[maven_repositories] + central = https://repo1.maven.org/maven2 diff --git a/.bundle/config b/.bundle/config new file mode 100644 index 0000000..848943b --- /dev/null +++ b/.bundle/config @@ -0,0 +1,2 @@ +BUNDLE_PATH: "vendor/bundle" +BUNDLE_FORCE_RUBY_PLATFORM: 1 diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..dcf0be0 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,16 @@ +module.exports = { + root: true, + extends: '@react-native-community', + parser: '@typescript-eslint/parser', + plugins: ['@typescript-eslint'], + overrides: [ + { + files: ['*.ts', '*.tsx'], + rules: { + '@typescript-eslint/no-shadow': ['error'], + 'no-shadow': 'off', + 'no-undef': 'off', + }, + }, + ], +}; diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2423126 --- /dev/null +++ b/.gitignore @@ -0,0 +1,64 @@ +# OSX +# +.DS_Store + +# Xcode +# +build/ +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 +xcuserdata +*.xccheckout +*.moved-aside +DerivedData +*.hmap +*.ipa +*.xcuserstate +ios/.xcode.env.local + +# Android/IntelliJ +# +build/ +.idea +.gradle +local.properties +*.iml +*.hprof +.cxx/ + +# node.js +# +node_modules/ +npm-debug.log +yarn-error.log + +# BUCK +buck-out/ +\.buckd/ +*.keystore +!debug.keystore + +# fastlane +# +# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the +# screenshots whenever they are needed. +# For more information about the recommended setup visit: +# https://docs.fastlane.tools/best-practices/source-control/ + +**/fastlane/report.xml +**/fastlane/Preview.html +**/fastlane/screenshots +**/fastlane/test_output + +# Bundle artifact +*.jsbundle + +# Ruby / CocoaPods +/ios/Pods/ +/vendor/bundle/ diff --git a/.node-version b/.node-version new file mode 100644 index 0000000..b6a7d89 --- /dev/null +++ b/.node-version @@ -0,0 +1 @@ +16 diff --git a/.prettierrc.js b/.prettierrc.js new file mode 100644 index 0000000..2b54074 --- /dev/null +++ b/.prettierrc.js @@ -0,0 +1,7 @@ +module.exports = { + arrowParens: 'avoid', + bracketSameLine: true, + bracketSpacing: false, + singleQuote: true, + trailingComma: 'all', +}; diff --git a/.ruby-version b/.ruby-version new file mode 100644 index 0000000..a603bb5 --- /dev/null +++ b/.ruby-version @@ -0,0 +1 @@ +2.7.5 diff --git a/.watchmanconfig b/.watchmanconfig new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/.watchmanconfig @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/App.tsx b/App.tsx new file mode 100644 index 0000000..13cdb2d --- /dev/null +++ b/App.tsx @@ -0,0 +1,49 @@ +import {useState} from 'react'; +import {Button, View} from 'react-native'; +import AppIntroSlider from 'react-native-app-intro-slider'; +import DocumentPicker, { + DocumentPickerResponse, +} from 'react-native-document-picker'; +import {backgroundColor} from './constants'; +import Item from './Item'; + +export default function App() { + const [files, setFiles] = useState([]); + const [slide, setSlide] = useState(0); + + const pick = async () => { + const picked = await DocumentPicker.pickMultiple(); + console.log(`Picked ${picked.length} files.`); + setFiles(picked); + }; + + const renderItem = ({ + item, + index, + }: { + item: DocumentPickerResponse; + index: number; + }) => { + return ; + }; + + const slideChange = (index: number) => { + setSlide(index); + }; + + return ( + + + +