├── .gitignore ├── LICENSE ├── README.md ├── android ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── capacitor.build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── getcapacitor │ │ │ └── myapp │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── assets │ │ │ ├── capacitor.config.json │ │ │ └── capacitor.plugins.json │ │ ├── java │ │ │ └── com │ │ │ │ └── podfriend │ │ │ │ └── MainActivity.java │ │ └── res │ │ │ ├── drawable-anydpi │ │ │ └── ic_player_play.xml │ │ │ ├── drawable-hdpi │ │ │ └── ic_player_play.png │ │ │ ├── drawable-land-hdpi │ │ │ └── splash.png │ │ │ ├── drawable-land-mdpi │ │ │ └── splash.png │ │ │ ├── drawable-land-xhdpi │ │ │ └── splash.png │ │ │ ├── drawable-land-xxhdpi │ │ │ └── splash.png │ │ │ ├── drawable-land-xxxhdpi │ │ │ └── splash.png │ │ │ ├── drawable-mdpi │ │ │ └── ic_player_play.png │ │ │ ├── drawable-port-hdpi │ │ │ └── splash.png │ │ │ ├── drawable-port-mdpi │ │ │ └── splash.png │ │ │ ├── drawable-port-xhdpi │ │ │ └── splash.png │ │ │ ├── drawable-port-xxhdpi │ │ │ └── splash.png │ │ │ ├── drawable-port-xxxhdpi │ │ │ └── splash.png │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable-xhdpi │ │ │ └── ic_player_play.png │ │ │ ├── drawable-xxhdpi │ │ │ └── ic_player_play.png │ │ │ ├── drawable │ │ │ ├── ic_launcher_background.xml │ │ │ └── splash.png │ │ │ ├── ic_launcher-web.png │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_background.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-ldpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_background.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_background.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_background.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_background.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ │ ├── playstore-icon.png │ │ │ ├── values │ │ │ ├── ic_launcher_background.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ │ └── xml │ │ │ ├── config.xml │ │ │ └── file_paths.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── getcapacitor │ │ └── myapp │ │ └── ExampleUnitTest.java ├── build.gradle ├── capacitor.settings.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle └── variables.gradle ├── app ├── components │ ├── AppUI │ │ ├── AppWindow │ │ │ ├── AppWindow.jsx │ │ │ ├── AppWindow.scss │ │ │ ├── TitleBar.jsx │ │ │ ├── TitleBar.scss │ │ │ └── WebContainer.jsx │ │ ├── Modal.jsx │ │ ├── Modal.scss │ │ ├── Page │ │ │ ├── Page.jsx │ │ │ └── Page.scss │ │ ├── PageContent │ │ │ ├── PageContent.jsx │ │ │ └── PageContent.scss │ │ ├── PageHeader │ │ │ ├── PageHeader.jsx │ │ │ └── PageHeader.scss │ │ └── PageHeaderToolbar │ │ │ ├── PageHeaderToolbar.jsx │ │ │ └── PageHeaderToolbar.scss │ ├── CategoryList │ │ └── CategoryList.jsx │ ├── Chat │ │ ├── Chat.scss │ │ ├── ChatMessageInput.jsx │ │ ├── ChatMessagePane.jsx │ │ ├── ChatModal.jsx │ │ └── ChatProvider.jsx │ ├── Episode │ │ ├── Chapters │ │ │ ├── EpisodeChapter.jsx │ │ │ ├── EpisodeChapterList.jsx │ │ │ ├── EpisodeChapterList.scss │ │ │ ├── EpisodeChapters.jsx │ │ │ └── EpisodeChapters.scss │ │ ├── Comments │ │ │ ├── EpisodeCommentList.jsx │ │ │ └── EpisodeCommentList.scss │ │ ├── CurrentlyPlayingPane.jsx │ │ ├── EpisodePane.jsx │ │ ├── EpisodePane.scss │ │ ├── EpisodePlayerControls.jsx │ │ ├── EpisodePlayerControls.scss │ │ ├── Map │ │ │ └── EpisodeMap.jsx │ │ └── Subtitles │ │ │ ├── PodcastSubtitles.jsx │ │ │ ├── PodcastSubtitles.scss │ │ │ ├── SubtitleSearchModal.jsx │ │ │ └── SubtitleSearchModal.scss │ ├── Error │ │ └── PageError.jsx │ ├── Explore │ │ ├── SwipeCard.jsx │ │ ├── SwipeCategoryFilter.jsx │ │ ├── SwipeExplorer.css │ │ └── SwipeExplorer.jsx │ ├── Favorites │ │ ├── FavoriteList.jsx │ │ ├── FavoriteListUI.jsx │ │ └── FavoriteListUI.scss │ ├── Feed │ │ ├── EpisodeCard.jsx │ │ ├── Feed.jsx │ │ ├── FeedCard.jsx │ │ ├── FeedCard.scss │ │ ├── PostForm.jsx │ │ └── PostForm.scss │ ├── Form │ │ ├── TextInput.css │ │ └── TextInput.jsx │ ├── Lists │ │ ├── LatestEpisodes.jsx │ │ ├── LatestVisitedPodcasts.jsx │ │ ├── PodcastMatrix.jsx │ │ └── TrendingPodcasts.jsx │ ├── Loading │ │ └── LoadingSpinner.jsx │ ├── Login │ │ ├── CreateAccountForm.css │ │ ├── CreateAccountForm.jsx │ │ ├── LoginForm.jsx │ │ ├── LoginForm.scss │ │ ├── LoginMessage.js │ │ ├── LoginView.js │ │ ├── PasswordForm.css │ │ ├── PasswordForm.jsx │ │ ├── SignInForm.css │ │ └── SignInForm.jsx │ ├── Navigation │ │ ├── BottomNavigation.jsx │ │ ├── BottomNavigation.scss │ │ └── MainMenu.jsx │ ├── Page │ │ ├── PageHeader.jsx │ │ ├── PageHeader.scss │ │ ├── PodcastPage.jsx │ │ ├── PodcastPage.scss │ │ ├── SectionHeader.css │ │ └── SectionHeader.jsx │ ├── Pages │ │ ├── ContactPage.jsx │ │ └── ForPodcasters.jsx │ ├── Player │ │ ├── AudioSpeedSettingModal.jsx │ │ ├── AudioSpeedSettingModal.scss │ │ ├── OpenPlayerUI.jsx │ │ ├── OpenPlayerUI.scss │ │ ├── Player.jsx │ │ ├── Player.scss │ │ ├── PlayerEpisodeList │ │ │ ├── PlayerEpisodeList.jsx │ │ │ └── PlayerEpisodeList.scss │ │ ├── PlayerProvider.jsx │ │ ├── PlayerUI.jsx │ │ ├── ProgressBar.jsx │ │ ├── ProgressBarSlider.jsx │ │ ├── ProgressBarSlider.scss │ │ ├── ShareModal.jsx │ │ ├── ShareModal.scss │ │ ├── SleepTimerModal.jsx │ │ ├── SleepTimerModal.scss │ │ └── VolumeSlider.jsx │ ├── PodCastClient.jsx │ ├── PodCastClient.scss │ ├── Podcast │ │ ├── EpisodeList.jsx │ │ ├── EpisodeList.scss │ │ ├── EpisodeListItem.jsx │ │ ├── EpisodeListOldWithoutVirtual.jsx │ │ ├── EpisodeListWithVirtualizedList.jsx │ │ ├── EpisodeListeItemSlide-NOTUSED.jsx │ │ ├── FilterBar.css │ │ ├── FilterBar.jsx │ │ ├── PodCastPane.css │ │ ├── PodCastPane.jsx │ │ ├── PodcastExtras.css │ │ ├── PodcastExtras.jsx │ │ ├── PodcastHeader.jsx │ │ ├── PodcastHeader.scss │ │ ├── PodcastMap.jsx │ │ ├── PodcastPaneUI.jsx │ │ ├── PodcastPaneUI_old.jsx │ │ ├── PodcastPersons.jsx │ │ ├── PodcastPersons.scss │ │ ├── ShareButtons.css │ │ ├── ShareButtons.jsx │ │ ├── SubscribeButton.jsx │ │ ├── SubscribeButtonUI.css │ │ └── SubscribeButtonUI.jsx │ ├── PodcastList │ │ └── PodcastList.jsx │ ├── Reviews │ │ ├── ReviewPane.jsx │ │ ├── ReviewPaneUI.jsx │ │ ├── ReviewPaneUI.scss │ │ ├── StarRating.css │ │ ├── StarRating.jsx │ │ ├── WriteReviewForm.jsx │ │ └── WriteReviewForm.scss │ ├── Search │ │ ├── SearchField.css │ │ ├── SearchField.jsx │ │ ├── SearchHint.jsx │ │ ├── SearchHints.jsx │ │ ├── SearchHints.scss │ │ ├── SearchPane.css │ │ ├── SearchPane.jsx │ │ ├── SearchPaneUI.jsx │ │ ├── SearchResult.css │ │ └── SearchResult.jsx │ ├── Settings │ │ └── SettingsModal.jsx │ ├── UI │ │ ├── Avatar │ │ │ └── Avatar.jsx │ │ ├── CategoryList │ │ │ ├── CategoryListUI.css │ │ │ └── CategoryListUI.jsx │ │ ├── Layout │ │ │ ├── InformationModal.scss │ │ │ ├── InformationalModal.jsx │ │ │ ├── Page.jsx │ │ │ ├── Page.scss │ │ │ ├── TitleHeader.jsx │ │ │ └── TitleHeader.scss │ │ ├── PodcastMatrix │ │ │ ├── PodcastMatrixUI.css │ │ │ └── PodcastMatrixUI.jsx │ │ ├── SideBar.jsx │ │ ├── SideBar.scss │ │ └── common │ │ │ ├── DraggablePane.jsx │ │ │ ├── DraggablePane.scss │ │ │ ├── Notice │ │ │ ├── Notice.jsx │ │ │ ├── Notice.scss │ │ │ └── Warning.jsx │ │ │ ├── PodcastImage.jsx │ │ │ ├── PodcastImageFallback.jsx │ │ │ ├── PodcastImageOld-delete.jsx │ │ │ └── QuickMessagePopup.jsx │ ├── Wallet │ │ ├── CreditCard.jsx │ │ ├── CreditCard.scss │ │ ├── IndividualBoostModal.jsx │ │ ├── IndividualBoostModal.scss │ │ ├── Value4ValueModal.jsx │ │ ├── Value4ValueModal.scss │ │ ├── ValueConfigModal │ │ │ ├── SplitRange.jsx │ │ │ ├── SplitRange.scss │ │ │ ├── ValueConfigModal.jsx │ │ │ └── ValueConfigModal.scss │ │ ├── WalletBalance.jsx │ │ ├── WalletBalance.scss │ │ ├── WalletModal.jsx │ │ └── WalletModal.scss │ ├── sass │ │ ├── blueplayer.scss │ │ └── variables.scss │ ├── user │ │ ├── SettingsPage.css │ │ ├── SettingsPage.jsx │ │ ├── userTitleBar.css │ │ └── userTitleBar.jsx │ └── wwt │ │ ├── ContextMenu │ │ ├── ContextMenu.css │ │ └── ContextMenu.jsx │ │ └── Tabs │ │ ├── Tabs.jsx │ │ └── style.Tabs.js ├── cordova │ ├── cordova-plugin-media │ │ ├── .jshintrc │ │ ├── CONTRIBUTING.md │ │ ├── LICENSE │ │ ├── NOTICE │ │ ├── README.md │ │ ├── RELEASENOTES.md │ │ ├── package.json │ │ ├── plugin.xml │ │ ├── src │ │ │ ├── android │ │ │ │ ├── AudioHandler.java │ │ │ │ ├── AudioPlayer.java │ │ │ │ └── FileHelper.java │ │ │ ├── ios │ │ │ │ ├── CDVSound.h │ │ │ │ └── CDVSound.m │ │ │ └── windows │ │ │ │ └── MediaProxy.js │ │ ├── tests │ │ │ ├── package.json │ │ │ ├── plugin.xml │ │ │ └── tests.js │ │ ├── types │ │ │ └── index.d.ts │ │ └── www │ │ │ ├── Media.js │ │ │ ├── MediaError.js │ │ │ └── browser │ │ │ └── Media.js │ └── cordova-plugin-music-controls2 │ │ ├── LICENSE │ │ ├── README.md │ │ ├── package.json │ │ ├── plugin.xml │ │ ├── src │ │ ├── android │ │ │ ├── KillBinder.java │ │ │ ├── MediaSessionCallback.java │ │ │ ├── MusicControls.java │ │ │ ├── MusicControlsBroadcastReceiver.java │ │ │ ├── MusicControlsInfos.java │ │ │ ├── MusicControlsNotification.java │ │ │ ├── MusicControlsNotificationKiller.java │ │ │ └── MusicControlsServiceConnection.java │ │ ├── ios │ │ │ ├── MainViewController+MusicControls.h │ │ │ ├── MainViewController+MusicControls.m │ │ │ ├── MusicControls.h │ │ │ ├── MusicControls.m │ │ │ ├── MusicControlsInfo.h │ │ │ └── MusicControlsInfo.m │ │ └── windows │ │ │ └── MusicControlsProxy.js │ │ └── www │ │ └── MusicControls.js ├── electron.dev.js ├── images │ ├── checkmark_64x64.png │ ├── checkmark_inactive_64x64.png │ ├── design │ │ ├── blue-wave-1.svg │ │ ├── flow-illustrations │ │ │ ├── podfriend-dating.png │ │ │ ├── podfriend-dating.psd │ │ │ ├── podfriend-female.png │ │ │ ├── podfriend-female.psd │ │ │ ├── podfriend-happy.png │ │ │ ├── podfriend-mad.png │ │ │ ├── podfriend-mad.svg │ │ │ ├── podfriend-sad.png │ │ │ ├── podfriend-sad.svg │ │ │ ├── podfriend-sleep.png │ │ │ ├── podfriend-sleep.svg │ │ │ ├── podfriend-wah.png │ │ │ ├── podfriend-wah.svg │ │ │ ├── podfriend-wat.png │ │ │ └── podfriend-wat.svg │ │ ├── icons │ │ │ ├── comment.svg │ │ │ ├── error.svg │ │ │ ├── group.svg │ │ │ ├── information.svg │ │ │ ├── like.svg │ │ │ ├── search.svg │ │ │ ├── send.svg │ │ │ ├── share.svg │ │ │ └── user.svg │ │ ├── loading-hearts.svg │ │ ├── loading-rings.svg │ │ ├── loading │ │ │ ├── loading-circle-white.svg │ │ │ ├── loading-circle.svg │ │ │ └── loading1.svg │ │ ├── noCoverBackgrounds │ │ │ ├── pattern1.webp │ │ │ └── pattern2.webp │ │ ├── onboarding │ │ │ ├── value4value-amount.png │ │ │ ├── value4value-decision.png │ │ │ ├── value4value-donate.png │ │ │ ├── value4value-wallet.png │ │ │ └── value4value.png │ │ ├── player │ │ │ ├── boost.svg │ │ │ ├── chat.svg │ │ │ ├── chromecast.svg │ │ │ ├── clock.svg │ │ │ ├── error.svg │ │ │ ├── forward.svg │ │ │ ├── fullscreen.svg │ │ │ ├── more.svg │ │ │ ├── next.svg │ │ │ ├── pause.svg │ │ │ ├── play.svg │ │ │ ├── prev.svg │ │ │ ├── rewind.svg │ │ │ ├── share.svg │ │ │ ├── skip-backward.svg │ │ │ ├── skip-forward.svg │ │ │ └── speed.svg │ │ ├── podcastpane │ │ │ └── creditcard.svg │ │ └── titlebar │ │ │ └── userProfile.svg │ ├── logo │ │ ├── podfriend_logo.svg │ │ ├── podfriend_logo_128x128.png │ │ ├── podfriend_logo_18x18.png │ │ ├── podfriend_logo_256x256.png │ │ └── podfriend_logo_512x512.png │ ├── play-button-loading-whitebg.png │ ├── play-button-loading.png │ ├── review-0-star.png │ ├── review-5-star.png │ └── social │ │ ├── facebook-logo.png │ │ ├── google-logo.png │ │ ├── share-f.jpg │ │ └── share-t.jpg ├── index.electron.js ├── index.web.js ├── library │ ├── ActivityPub │ │ └── ActivityPub.js │ ├── AudioController │ │ ├── AudioController.js │ │ ├── HybridMobileAudioController.js │ │ ├── NativeMobileAudioController.js │ │ └── WebAudioController.js │ ├── ClientStorage.js │ ├── Events.js │ ├── PodCastService.js │ ├── PodcastFeed.js │ ├── PodcastUtil.js │ ├── PodcastWallet │ │ └── PodcastWallet.js │ ├── RSSFeed.js │ ├── TimeUtil.js │ ├── WindowManager.js │ ├── hooks │ │ └── useWindowDimensions.js │ └── podCastServices │ │ ├── ITunes.js │ │ └── Spotify.js ├── pages │ ├── FeedPage.jsx │ ├── FeedPage.scss │ ├── HeaderTest.jsx │ ├── IonicTest.jsx │ ├── IonicTest2.jsx │ ├── IonicTest3.jsx │ ├── PodcastHistory.jsx │ ├── Welcome.css │ ├── Welcome.jsx │ └── styles.scss ├── podfriend.config.js ├── redux │ ├── actions │ │ ├── audioActions.js │ │ ├── podcastActions.js │ │ ├── settingsActions.js │ │ ├── uiActions.js │ │ └── userActions.js │ ├── constants │ │ ├── action-types.js │ │ ├── podcast-types.js │ │ ├── setting-types.js │ │ ├── ui-types.js │ │ └── user-types.js │ ├── reducers │ │ ├── audioReducer.js │ │ ├── podcastReducer.js │ │ ├── rootReducer.js │ │ ├── settingsReducer.js │ │ ├── uiReducer.js │ │ └── userReducer.js │ └── store.js ├── sounds │ ├── crowd-cheer.wav │ ├── happy-crowd-cheer.wav │ └── party-trumpet.wav ├── theme │ ├── common.js │ └── podfriend.js └── web │ ├── assets │ ├── fonts │ │ ├── roboto-v27-latin-300.woff │ │ ├── roboto-v27-latin-300.woff2 │ │ ├── roboto-v27-latin-500.woff │ │ ├── roboto-v27-latin-500.woff2 │ │ ├── roboto-v27-latin-700.woff │ │ ├── roboto-v27-latin-700.woff2 │ │ ├── roboto-v27-latin-900.woff │ │ ├── roboto-v27-latin-900.woff2 │ │ ├── roboto-v27-latin-italic.woff │ │ ├── roboto-v27-latin-italic.woff2 │ │ ├── roboto-v27-latin-regular.woff │ │ └── roboto-v27-latin-regular.woff2 │ ├── manifest.webmanifest │ ├── podcastDetails.php │ └── serviceworker.js │ ├── index.chromeextension.html │ ├── index.electron.html │ ├── index.template.html │ └── miniwindow.html ├── babel.config.js ├── capacitor.config.json ├── configs ├── mac │ ├── entitlements.mac.inherit.plist │ └── entitlements.mac.plist.txt ├── webpack.config.base.js ├── webpack.config.main.prod.babel.js ├── webpack.config.main.webprod.babel.js ├── webpack.config.renderer.dev.babel.js ├── webpack.config.renderer.dev.dll.babel.js ├── webpack.config.renderer.prod.babel.js ├── webpack.config.web.dev.babel.js └── webpack.config.web.prod.babel.js ├── cordova ├── cordova-plugin-background-mode │ ├── .travis.yml │ ├── CHANGELOG.md │ ├── LICENSE │ ├── README.md │ ├── appbeep.wav │ ├── appbeep.wma │ ├── package.json │ ├── plugin.xml │ ├── src │ │ ├── android │ │ │ ├── BackgroundMode.java │ │ │ ├── BackgroundModeExt.java │ │ │ └── ForegroundService.java │ │ ├── browser │ │ │ └── BackgroundModeProxy.js │ │ └── ios │ │ │ ├── APPBackgroundMode.h │ │ │ ├── APPBackgroundMode.m │ │ │ ├── APPMethodMagic.h │ │ │ └── APPMethodMagic.m │ └── www │ │ └── background-mode.js ├── cordova-plugin-cors │ ├── CHANGELOG.md │ ├── LICENSE │ ├── README.md │ ├── package.json │ ├── plugin.xml │ ├── src │ │ └── ios │ │ │ ├── RCAXMLHttpRequest.h │ │ │ └── RCAXMLHttpRequest.m │ └── www │ │ └── ios │ │ └── xhr.js ├── cordova-plugin-device │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── NOTICE │ ├── README.md │ ├── RELEASENOTES.md │ ├── package.json │ ├── plugin.xml │ ├── src │ │ ├── android │ │ │ └── Device.java │ │ ├── browser │ │ │ └── DeviceProxy.js │ │ ├── ios │ │ │ ├── CDVDevice.h │ │ │ └── CDVDevice.m │ │ ├── osx │ │ │ ├── CDVDevice.h │ │ │ └── CDVDevice.m │ │ └── windows │ │ │ └── DeviceProxy.js │ ├── tests │ │ ├── package.json │ │ ├── plugin.xml │ │ └── tests.js │ ├── types │ │ └── index.d.ts │ └── www │ │ └── device.js ├── cordova-plugin-file │ ├── .jshintrc │ ├── .ratignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── NOTICE │ ├── README.md │ ├── RELEASENOTES.md │ ├── doc │ │ └── plugins.md │ ├── package.json │ ├── plugin.xml │ ├── src │ │ ├── android │ │ │ ├── AssetFilesystem.java │ │ │ ├── ContentFilesystem.java │ │ │ ├── DirectoryManager.java │ │ │ ├── EncodingException.java │ │ │ ├── FileExistsException.java │ │ │ ├── FileUtils.java │ │ │ ├── Filesystem.java │ │ │ ├── InvalidModificationException.java │ │ │ ├── LocalFilesystem.java │ │ │ ├── LocalFilesystemURL.java │ │ │ ├── NoModificationAllowedException.java │ │ │ ├── PendingRequests.java │ │ │ ├── TypeMismatchException.java │ │ │ └── build-extras.gradle │ │ ├── browser │ │ │ └── FileProxy.js │ │ ├── ios │ │ │ ├── CDVAssetLibraryFilesystem.h │ │ │ ├── CDVAssetLibraryFilesystem.m │ │ │ ├── CDVFile.h │ │ │ ├── CDVFile.m │ │ │ ├── CDVLocalFilesystem.h │ │ │ └── CDVLocalFilesystem.m │ │ ├── osx │ │ │ ├── CDVFile.h │ │ │ ├── CDVFile.m │ │ │ ├── CDVLocalFilesystem.h │ │ │ └── CDVLocalFilesystem.m │ │ └── windows │ │ │ └── FileProxy.js │ ├── tests │ │ ├── package.json │ │ ├── plugin.xml │ │ ├── src │ │ │ └── android │ │ │ │ └── TestContentProvider.java │ │ ├── tests.js │ │ └── www │ │ │ └── fixtures │ │ │ └── asset-test │ │ │ └── asset-test.txt │ ├── types │ │ └── index.d.ts │ └── www │ │ ├── DirectoryEntry.js │ │ ├── DirectoryReader.js │ │ ├── Entry.js │ │ ├── File.js │ │ ├── FileEntry.js │ │ ├── FileError.js │ │ ├── FileReader.js │ │ ├── FileSystem.js │ │ ├── FileUploadOptions.js │ │ ├── FileUploadResult.js │ │ ├── FileWriter.js │ │ ├── Flags.js │ │ ├── LocalFileSystem.js │ │ ├── Metadata.js │ │ ├── ProgressEvent.js │ │ ├── android │ │ └── FileSystem.js │ │ ├── browser │ │ ├── FileSystem.js │ │ ├── Preparing.js │ │ └── isChrome.js │ │ ├── fileSystemPaths.js │ │ ├── fileSystems-roots.js │ │ ├── fileSystems.js │ │ ├── ios │ │ └── FileSystem.js │ │ ├── osx │ │ └── FileSystem.js │ │ ├── requestFileSystem.js │ │ └── resolveLocalFileSystemURI.js ├── cordova-plugin-media │ ├── .jshintrc │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── NOTICE │ ├── README.md │ ├── RELEASENOTES.md │ ├── package.json │ ├── plugin.xml │ ├── src │ │ ├── android │ │ │ ├── AudioHandler.java │ │ │ ├── AudioPlayer.java │ │ │ └── FileHelper.java │ │ ├── ios │ │ │ ├── CDVSound.h │ │ │ └── CDVSound.m │ │ └── windows │ │ │ └── MediaProxy.js │ ├── tests │ │ ├── package.json │ │ ├── plugin.xml │ │ └── tests.js │ ├── types │ │ └── index.d.ts │ └── www │ │ ├── Media.js │ │ ├── MediaError.js │ │ └── browser │ │ └── Media.js └── cordova-plugin-music-controls2 │ ├── LICENSE │ ├── README.md │ ├── package.json │ ├── plugin.xml │ ├── src │ ├── android │ │ ├── KillBinder.java │ │ ├── MediaSessionCallback.java │ │ ├── MusicControls.java │ │ ├── MusicControlsBroadcastReceiver.java │ │ ├── MusicControlsInfos.java │ │ ├── MusicControlsNotification.java │ │ └── MusicControlsNotificationKiller.java │ ├── ios │ │ ├── MainViewController+MusicControls.h │ │ ├── MainViewController+MusicControls.m │ │ ├── MusicControls.h │ │ ├── MusicControls.m │ │ ├── MusicControlsInfo.h │ │ └── MusicControlsInfo.m │ └── windows │ │ └── MusicControlsProxy.js │ └── www │ └── MusicControls.js ├── internals ├── guide-debug-ios.txt └── scripts │ ├── CheckBuiltsExist.js │ ├── CheckNodeEnv.js │ ├── CheckPortInUse.js │ ├── copy-files.js │ └── generateIcons.js ├── ios ├── .gitignore └── App │ ├── App.xcodeproj │ ├── project.pbxproj │ └── project.xcworkspace │ │ └── contents.xcworkspacedata │ ├── App.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ ├── IDEWorkspaceChecks.plist │ │ └── WorkspaceSettings.xcsettings │ ├── App │ ├── AppDelegate.swift │ ├── Assets.xcassets │ │ ├── AppIcon.appiconset │ │ │ ├── AppIcon-20x20@1x.png │ │ │ ├── AppIcon-20x20@2x-1.png │ │ │ ├── AppIcon-20x20@2x.png │ │ │ ├── AppIcon-20x20@3x.png │ │ │ ├── AppIcon-29x29@1x.png │ │ │ ├── AppIcon-29x29@2x-1.png │ │ │ ├── AppIcon-29x29@2x.png │ │ │ ├── AppIcon-29x29@3x.png │ │ │ ├── AppIcon-40x40@1x.png │ │ │ ├── AppIcon-40x40@2x-1.png │ │ │ ├── AppIcon-40x40@2x.png │ │ │ ├── AppIcon-40x40@3x.png │ │ │ ├── AppIcon-512@2x.png │ │ │ ├── AppIcon-60x60@2x.png │ │ │ ├── AppIcon-60x60@3x.png │ │ │ ├── AppIcon-76x76@1x.png │ │ │ ├── AppIcon-76x76@2x.png │ │ │ ├── AppIcon-83.5x83.5@2x.png │ │ │ └── Contents.json │ │ ├── Contents.json │ │ └── Splash.imageset │ │ │ ├── Contents.json │ │ │ ├── splash-2732x2732-1.png │ │ │ ├── splash-2732x2732-2.png │ │ │ └── splash-2732x2732.png │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ ├── Info.plist │ ├── capacitor.config.json │ └── config.xml │ ├── Podfile │ └── Podfriend.entitlements ├── package.json ├── resources ├── adaptive-icon.psd ├── android keys │ ├── password for keys.txt │ └── playstore.jks ├── android │ ├── icon │ │ ├── drawable-hdpi-icon.png │ │ ├── drawable-ldpi-icon.png │ │ ├── drawable-mdpi-icon.png │ │ ├── drawable-xhdpi-icon.png │ │ ├── drawable-xxhdpi-icon.png │ │ ├── drawable-xxxhdpi-icon.png │ │ ├── hdpi-background.png │ │ ├── hdpi-foreground.png │ │ ├── ldpi-background.png │ │ ├── ldpi-foreground.png │ │ ├── mdpi-background.png │ │ ├── mdpi-foreground.png │ │ ├── xhdpi-background.png │ │ ├── xhdpi-foreground.png │ │ ├── xxhdpi-background.png │ │ ├── xxhdpi-foreground.png │ │ ├── xxxhdpi-background.png │ │ └── xxxhdpi-foreground.png │ └── splash │ │ ├── drawable-land-hdpi-screen.png │ │ ├── drawable-land-ldpi-screen.png │ │ ├── drawable-land-mdpi-screen.png │ │ ├── drawable-land-xhdpi-screen.png │ │ ├── drawable-land-xxhdpi-screen.png │ │ ├── drawable-land-xxxhdpi-screen.png │ │ ├── drawable-port-hdpi-screen.png │ │ ├── drawable-port-ldpi-screen.png │ │ ├── drawable-port-mdpi-screen.png │ │ ├── drawable-port-xhdpi-screen.png │ │ ├── drawable-port-xxhdpi-screen.png │ │ └── drawable-port-xxxhdpi-screen.png ├── controls │ └── play.svg ├── icon-background.png ├── icon-foreground.png ├── icon-old.ico ├── icon.ico ├── icon.png ├── icon_border.png ├── icons │ ├── 1024x1024.png │ ├── 128x128.png │ ├── 16x16.png │ ├── 192x192.png │ ├── 24x24.png │ ├── 256x256.png │ ├── 32x32.png │ ├── 48x48.png │ ├── 512x512.png │ ├── 64x64.png │ ├── 96x96.png │ ├── AppIcons.zip │ ├── AppIcons │ │ ├── Assets.xcassets │ │ │ └── AppIcon.appiconset │ │ │ │ ├── 100.png │ │ │ │ ├── 1024.png │ │ │ │ ├── 114.png │ │ │ │ ├── 120.png │ │ │ │ ├── 128.png │ │ │ │ ├── 144.png │ │ │ │ ├── 152.png │ │ │ │ ├── 16.png │ │ │ │ ├── 167.png │ │ │ │ ├── 172.png │ │ │ │ ├── 180.png │ │ │ │ ├── 196.png │ │ │ │ ├── 20.png │ │ │ │ ├── 216.png │ │ │ │ ├── 256.png │ │ │ │ ├── 29.png │ │ │ │ ├── 32.png │ │ │ │ ├── 40.png │ │ │ │ ├── 48.png │ │ │ │ ├── 50.png │ │ │ │ ├── 512.png │ │ │ │ ├── 55.png │ │ │ │ ├── 57.png │ │ │ │ ├── 58.png │ │ │ │ ├── 60.png │ │ │ │ ├── 64.png │ │ │ │ ├── 72.png │ │ │ │ ├── 76.png │ │ │ │ ├── 80.png │ │ │ │ ├── 87.png │ │ │ │ ├── 88.png │ │ │ │ └── Contents.json │ │ ├── appstore.png │ │ └── playstore.png │ ├── maskable_1400x1400.png │ ├── maskable_192x192.png │ ├── maskable_256x256.png │ ├── maskable_300x300.png │ ├── maskable_512x512.png │ ├── maskable_closer_512x512.png │ ├── maskable_closer_57x57.png │ ├── podfriend.icns │ └── twitter_1024x1024.png ├── ios keys │ └── podfriend.p12 ├── ios │ ├── icon │ │ ├── icon-1024.png │ │ ├── icon-108@2x.png │ │ ├── icon-20.png │ │ ├── icon-20@2x.png │ │ ├── icon-20@3x.png │ │ ├── icon-24@2x.png │ │ ├── icon-27.5@2x.png │ │ ├── icon-29.png │ │ ├── icon-29@2x.png │ │ ├── icon-29@3x.png │ │ ├── icon-40.png │ │ ├── icon-40@2x.png │ │ ├── icon-40@3x.png │ │ ├── icon-44@2x.png │ │ ├── icon-50.png │ │ ├── icon-50@2x.png │ │ ├── icon-60.png │ │ ├── icon-60@2x.png │ │ ├── icon-60@3x.png │ │ ├── icon-72.png │ │ ├── icon-72@2x.png │ │ ├── icon-76.png │ │ ├── icon-76@2x.png │ │ ├── icon-83.5@2x.png │ │ ├── icon-86@2x.png │ │ ├── icon-98@2x.png │ │ ├── icon.png │ │ └── icon@2x.png │ └── splash │ │ ├── Default-1792h~iphone.png │ │ ├── Default-2436h.png │ │ ├── Default-2688h~iphone.png │ │ ├── Default-568h@2x~iphone.png │ │ ├── Default-667h.png │ │ ├── Default-736h.png │ │ ├── Default-Landscape-1792h~iphone.png │ │ ├── Default-Landscape-2436h.png │ │ ├── Default-Landscape-2688h~iphone.png │ │ ├── Default-Landscape-736h.png │ │ ├── Default-Landscape@2x~ipad.png │ │ ├── Default-Landscape@~ipadpro.png │ │ ├── Default-Landscape~ipad.png │ │ ├── Default-Portrait@2x~ipad.png │ │ ├── Default-Portrait@~ipadpro.png │ │ ├── Default-Portrait~ipad.png │ │ ├── Default@2x~iphone.png │ │ ├── Default@2x~universal~anyany.png │ │ └── Default~iphone.png ├── logo │ ├── PODFRIEND-LOGO.ai │ ├── PODFRIEND-LOGO.svg │ ├── PodFriend.psd │ ├── Podfriend_logo - Copy.svg │ ├── Podfriend_logo.svg │ ├── logo-with-text-below.svg │ ├── podfriend-logo-podcast-app.eps │ ├── podfriend-logo-podcast-app.svg │ ├── podfriend-logo-with-link.svg │ ├── podfriend-logo-with-text.svg │ └── podfriend_logo_128x128.png ├── splash.png ├── splash.psd └── windows │ ├── icon │ ├── SmallTile.scale-100.png │ ├── SmallTile.scale-125.png │ ├── SmallTile.scale-140.png │ ├── SmallTile.scale-150.png │ ├── SmallTile.scale-200.png │ ├── SmallTile.scale-240.png │ ├── SmallTile.scale-400.png │ ├── Square150x150Logo.scale-100.png │ ├── Square150x150Logo.scale-125.png │ ├── Square150x150Logo.scale-140.png │ ├── Square150x150Logo.scale-150.png │ ├── Square150x150Logo.scale-200.png │ ├── Square150x150Logo.scale-240.png │ ├── Square150x150Logo.scale-400.png │ ├── Square310x310Logo.scale-100.png │ ├── Square310x310Logo.scale-125.png │ ├── Square310x310Logo.scale-140.png │ ├── Square310x310Logo.scale-150.png │ ├── Square310x310Logo.scale-180.png │ ├── Square310x310Logo.scale-200.png │ ├── Square310x310Logo.scale-400.png │ ├── Square44x44Logo.scale-100.png │ ├── Square44x44Logo.scale-125.png │ ├── Square44x44Logo.scale-140.png │ ├── Square44x44Logo.scale-150.png │ ├── Square44x44Logo.scale-200.png │ ├── Square44x44Logo.scale-240.png │ ├── Square44x44Logo.scale-400.png │ ├── StoreLogo.scale-100.png │ ├── StoreLogo.scale-125.png │ ├── StoreLogo.scale-140.png │ ├── StoreLogo.scale-150.png │ ├── StoreLogo.scale-180.png │ ├── StoreLogo.scale-200.png │ ├── StoreLogo.scale-240.png │ ├── StoreLogo.scale-400.png │ ├── Wide310x150Logo.scale-100.png │ ├── Wide310x150Logo.scale-125.png │ ├── Wide310x150Logo.scale-140.png │ ├── Wide310x150Logo.scale-150.png │ ├── Wide310x150Logo.scale-180.png │ ├── Wide310x150Logo.scale-200.png │ ├── Wide310x150Logo.scale-240.png │ ├── Wide310x150Logo.scale-400.png │ └── Wide310x150Logo.scale-80.png │ └── splash │ ├── Splash.scale-100.png │ ├── Splash.scale-125.png │ ├── Splash.scale-150.png │ ├── Splash.scale-200.png │ └── Splash.scale-400.png └── yarn.lock /android/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build/* 2 | !/build/.npmkeep 3 | -------------------------------------------------------------------------------- /android/app/capacitor.build.gradle: -------------------------------------------------------------------------------- 1 | // DO NOT EDIT THIS FILE! IT IS GENERATED EACH TIME "capacitor update" IS RUN 2 | 3 | android { 4 | compileOptions { 5 | sourceCompatibility JavaVersion.VERSION_1_8 6 | targetCompatibility JavaVersion.VERSION_1_8 7 | } 8 | } 9 | 10 | apply from: "../capacitor-cordova-android-plugins/cordova.variables.gradle" 11 | dependencies { 12 | implementation project(':capacitor-status-bar') 13 | implementation "com.android.support:support-v4:25.1.1" 14 | } 15 | 16 | 17 | if (hasProperty('postBuildExtras')) { 18 | postBuildExtras() 19 | } 20 | -------------------------------------------------------------------------------- /android/app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile 22 | -------------------------------------------------------------------------------- /android/app/src/androidTest/java/com/getcapacitor/myapp/ExampleInstrumentedTest.java: -------------------------------------------------------------------------------- 1 | package com.getcapacitor.myapp; 2 | 3 | import android.content.Context; 4 | 5 | import androidx.test.platform.app.InstrumentationRegistry; 6 | import androidx.test.ext.junit.runners.AndroidJUnit4; 7 | 8 | import org.junit.Test; 9 | import org.junit.runner.RunWith; 10 | 11 | import static org.junit.Assert.*; 12 | 13 | /** 14 | * Instrumented test, which will execute on an Android device. 15 | * 16 | * @see Testing documentation 17 | */ 18 | @RunWith(AndroidJUnit4.class) 19 | public class ExampleInstrumentedTest { 20 | @Test 21 | public void useAppContext() throws Exception { 22 | // Context of the app under test. 23 | Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); 24 | 25 | assertEquals("com.getcapacitor.app", appContext.getPackageName()); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /android/app/src/main/assets/capacitor.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "appId": "com.podfriend", 3 | "appName": "podfriend", 4 | "bundledWebRuntime": false, 5 | "npmClient": "yarn", 6 | "webDir": "release/web", 7 | "plugins": { 8 | "SplashScreen": { 9 | "launchShowDuration": 0 10 | } 11 | }, 12 | "cordova": {} 13 | } 14 | -------------------------------------------------------------------------------- /android/app/src/main/assets/capacitor.plugins.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "pkg": "@capacitor/status-bar", 4 | "classpath": "com.capacitorjs.plugins.statusbar.StatusBarPlugin" 5 | } 6 | ] 7 | -------------------------------------------------------------------------------- /android/app/src/main/java/com/podfriend/MainActivity.java: -------------------------------------------------------------------------------- 1 | package com.podfriend; 2 | 3 | import android.os.Bundle; 4 | 5 | import com.getcapacitor.BridgeActivity; 6 | import com.getcapacitor.Plugin; 7 | 8 | import java.util.ArrayList; 9 | 10 | public class MainActivity extends BridgeActivity { 11 | @Override 12 | public void onCreate(Bundle savedInstanceState) { 13 | super.onCreate(savedInstanceState); 14 | 15 | // Initializes the Bridge 16 | this.init(savedInstanceState, new ArrayList>() {{ 17 | // Additional plugins you've installed go here 18 | // Ex: add(TotallyAwesomePlugin.class); 19 | }}); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-anydpi/ic_player_play.xml: -------------------------------------------------------------------------------- 1 | 8 | 10 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-hdpi/ic_player_play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-hdpi/ic_player_play.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-land-hdpi/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-land-hdpi/splash.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-land-mdpi/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-land-mdpi/splash.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-land-xhdpi/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-land-xhdpi/splash.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-land-xxhdpi/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-land-xxhdpi/splash.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-land-xxxhdpi/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-land-xxxhdpi/splash.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-mdpi/ic_player_play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-mdpi/ic_player_play.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-port-hdpi/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-port-hdpi/splash.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-port-mdpi/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-port-mdpi/splash.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-port-xhdpi/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-port-xhdpi/splash.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-port-xxhdpi/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-port-xxhdpi/splash.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-port-xxxhdpi/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-port-xxxhdpi/splash.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-xhdpi/ic_player_play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-xhdpi/ic_player_play.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-xxhdpi/ic_player_play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable-xxhdpi/ic_player_play.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/drawable/splash.png -------------------------------------------------------------------------------- /android/app/src/main/res/ic_launcher-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/ic_launcher-web.png -------------------------------------------------------------------------------- /android/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-hdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-hdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-ldpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-ldpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-mdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-mdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xhdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-xhdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxhdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /android/app/src/main/res/playstore-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/app/src/main/res/playstore-icon.png -------------------------------------------------------------------------------- /android/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #00a4ff 4 | -------------------------------------------------------------------------------- /android/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | podfriend 4 | podfriend 5 | com.podfriend 6 | com.podfriend 7 | 8 | -------------------------------------------------------------------------------- /android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 11 | 12 | 17 | 18 | 19 | 22 | -------------------------------------------------------------------------------- /android/app/src/main/res/xml/file_paths.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /android/app/src/test/java/com/getcapacitor/myapp/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package com.getcapacitor.myapp; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * @see Testing documentation 11 | */ 12 | public class ExampleUnitTest { 13 | @Test 14 | public void addition_isCorrect() throws Exception { 15 | assertEquals(4, 2 + 2); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /android/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | 5 | repositories { 6 | google() 7 | jcenter() 8 | } 9 | dependencies { 10 | classpath 'com.android.tools.build:gradle:3.6.1' 11 | classpath 'com.google.gms:google-services:4.3.3' 12 | 13 | // NOTE: Do not place your application dependencies here; they belong 14 | // in the individual module build.gradle files 15 | } 16 | } 17 | 18 | apply from: "variables.gradle" 19 | 20 | allprojects { 21 | repositories { 22 | google() 23 | jcenter() 24 | } 25 | } 26 | 27 | task clean(type: Delete) { 28 | delete rootProject.buildDir 29 | } 30 | -------------------------------------------------------------------------------- /android/capacitor.settings.gradle: -------------------------------------------------------------------------------- 1 | // DO NOT EDIT THIS FILE! IT IS GENERATED EACH TIME "capacitor update" IS RUN 2 | include ':capacitor-android' 3 | project(':capacitor-android').projectDir = new File('../node_modules/@capacitor/android/capacitor') 4 | 5 | include ':capacitor-status-bar' 6 | project(':capacitor-status-bar').projectDir = new File('../node_modules/@capacitor/status-bar/android') 7 | -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/android/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /android/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | include ':capacitor-cordova-android-plugins' 3 | project(':capacitor-cordova-android-plugins').projectDir = new File('./capacitor-cordova-android-plugins/') 4 | 5 | apply from: 'capacitor.settings.gradle' -------------------------------------------------------------------------------- /android/variables.gradle: -------------------------------------------------------------------------------- 1 | ext { 2 | minSdkVersion = 21 3 | compileSdkVersion = 29 4 | targetSdkVersion = 29 5 | androidxAppCompatVersion = '1.1.0' 6 | androidxCoreVersion = '1.2.0' 7 | androidxMaterialVersion = '1.1.0-rc02' 8 | androidxBrowserVersion = '1.2.0' 9 | androidxLocalbroadcastmanagerVersion = '1.0.0' 10 | androidxExifInterfaceVersion = '1.2.0' 11 | firebaseMessagingVersion = '20.1.2' 12 | playServicesLocationVersion = '17.0.0' 13 | junitVersion = '4.12' 14 | androidxJunitVersion = '1.1.1' 15 | androidxEspressoCoreVersion = '3.2.0' 16 | cordovaAndroidVersion = '7.0.0' 17 | } -------------------------------------------------------------------------------- /app/components/AppUI/AppWindow/AppWindow.scss: -------------------------------------------------------------------------------- 1 | .windowFrame, .windowFrameMaximized, .webContainer { 2 | background-color: var(--primary-color-dark); 3 | background-color: #0054a3; 4 | background-color: var(--primary-color-dark); 5 | 6 | /* 7 | background: linear-gradient(90deg, rgba(1,118,229,1) 0%, rgba(12,40,80,1) 47%, rgba(14,71,161,1) 100%); 8 | background: linear-gradient(90deg, rgba(1,98,209,1) 0%, rgba(12,40,80,1) 47%, rgba(14,71,161,1) 100%); 9 | */ 10 | 11 | padding: 0px; 12 | height: 100%; 13 | overflow: hidden; 14 | display: flex; 15 | flex-direction: column; 16 | } 17 | .windowFrame { 18 | border: 1px solid #000000; 19 | border-radius: 10px; 20 | position: relative; 21 | } 22 | .windowFrameMaximized { 23 | border: 0px solid #000000; 24 | } 25 | .webContainer { 26 | border-radius: 0px !important; 27 | } 28 | @media only screen and (max-width: 900px) { 29 | .windowFrame, .windowFrameMaximized, .webContainer { 30 | background: none; 31 | background-color: #0176e5; 32 | } 33 | } -------------------------------------------------------------------------------- /app/components/AppUI/Page/Page.jsx: -------------------------------------------------------------------------------- 1 | import React, { useState } from 'react'; 2 | 3 | import styles from './Page.scss'; 4 | 5 | const Page = ({ children }) => { 6 | const [scrollPosition,setScrollPosition] = useState(0); 7 | const [headerHeight,setHeaderHeight] = useState(0); 8 | 9 | 10 | const onContentScrollChange = (y) => { 11 | setScrollPosition(y); 12 | }; 13 | const onHeaderHeightChange = (height) => { 14 | setHeaderHeight(height); 15 | }; 16 | 17 | 18 | // { React.cloneElement(children, { scrollPosition: scrollPosition }) } 19 | return ( 20 |
21 | { React.Children.map(children, (child => React.cloneElement(child, { headerHeight, onHeaderHeightChange, onContentScrollChange, scrollPosition }))) } 22 |
23 | ); 24 | }; 25 | export default Page; -------------------------------------------------------------------------------- /app/components/AppUI/Page/Page.scss: -------------------------------------------------------------------------------- 1 | .page { 2 | background-color: #FFFFFF; 3 | 4 | height: calc(100% - 90px); 5 | 6 | 7 | @media only screen and (max-width: 570px) { 8 | height: calc(100% - 60px); 9 | } 10 | } -------------------------------------------------------------------------------- /app/components/AppUI/PageContent/PageContent.jsx: -------------------------------------------------------------------------------- 1 | import React, { useEffect, useLayoutEffect, useRef, useState } from 'react'; 2 | 3 | import styles from './PageContent.scss'; 4 | 5 | const PageContent = ({ children, onContentScrollChange, headerHeight = 0 }) => { 6 | const contentRef = useRef(null); 7 | 8 | const [scrollPosition,setScrollPosition] = useState(0); 9 | 10 | useEffect(() => { 11 | const onScroll = () => { 12 | onContentScrollChange(contentRef.current.scrollTop); 13 | }; 14 | if (contentRef && contentRef.current) { 15 | contentRef.current.addEventListener('scroll', onScroll); 16 | return () => { 17 | contentRef.current.removeEventListener('scroll', onScroll); 18 | } 19 | } 20 | },[]); 21 | 22 | return ( 23 |
24 | { children } 25 |
26 | ); 27 | }; 28 | export default PageContent; -------------------------------------------------------------------------------- /app/components/AppUI/PageContent/PageContent.scss: -------------------------------------------------------------------------------- 1 | .pageContent { 2 | padding: 20px; 3 | overflow-y: auto; 4 | 5 | flex: 1; 6 | background-color: #FFFFFF; 7 | } -------------------------------------------------------------------------------- /app/components/AppUI/PageHeader/PageHeader.scss: -------------------------------------------------------------------------------- 1 | .pageHeader { 2 | /* 3 | width: 100%; 4 | @media (any-hover: hover) { 5 | width: calc(100% - 17px); 6 | } 7 | */ 8 | background-color: #ff23aa; 9 | flex: none; 10 | 11 | transition: all 0.2s; 12 | 13 | .pageHeaderTitle { 14 | background-color: #0176e7; 15 | padding: 10px; 16 | 17 | .pageHeaderTitleInner { 18 | text-align: center; 19 | color: #FFFFFF; 20 | font-size: 36px; 21 | font-weight: normal; 22 | margin: 0px; 23 | padding: 0px; 24 | } 25 | } 26 | .waveContainer { 27 | 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /app/components/AppUI/PageHeaderToolbar/PageHeaderToolbar.jsx: -------------------------------------------------------------------------------- 1 | import React, { useState } from 'react'; 2 | 3 | import SVG from 'react-inlinesvg'; 4 | import Wave from 'podfriend-approot/images/design/blue-wave-1.svg'; 5 | 6 | import styles from './PageHeaderToolbar.scss'; 7 | 8 | const PageHeaderToolbar = ({ children }) => { 9 | 10 | 11 | return ( 12 |
13 | {children} 14 |
15 | ); 16 | }; 17 | export default PageHeaderToolbar; -------------------------------------------------------------------------------- /app/components/AppUI/PageHeaderToolbar/PageHeaderToolbar.scss: -------------------------------------------------------------------------------- 1 | .pageHeaderToolbar { 2 | h1 { 3 | font-size: 26px; 4 | margin: 0px; 5 | padding: 0px; 6 | } 7 | } -------------------------------------------------------------------------------- /app/components/Chat/ChatMessageInput.jsx: -------------------------------------------------------------------------------- 1 | import React, { useState } from 'react'; 2 | 3 | import SVG from 'react-inlinesvg'; 4 | const SendIcon = () => ; 5 | 6 | import styles from './Chat.scss'; 7 | 8 | const ChatMessageInput = ({ onMessageSubmit }) => { 9 | const [currentMessage,setCurrentMessage] = useState(''); 10 | 11 | const onChatMessageTextChange = (event) => { 12 | setCurrentMessage(event.target.value); 13 | }; 14 | const sendChatMessage = (event) => { 15 | event.preventDefault(); 16 | onMessageSubmit(currentMessage); 17 | setCurrentMessage(''); 18 | }; 19 | 20 | return ( 21 |
22 | 23 |
0 ? styles.hasMessage : styles.noMessage)} onClick={sendChatMessage}> 24 | 25 |
26 |
27 | ); 28 | }; 29 | export default ChatMessageInput; -------------------------------------------------------------------------------- /app/components/Chat/ChatMessagePane.jsx: -------------------------------------------------------------------------------- 1 | import React, { useRef, useEffect } from 'react'; 2 | 3 | import styles from './Chat.scss'; 4 | 5 | const ChatMessagePane = ({ messages = [] }) => { 6 | const messagePane = useRef(null); 7 | 8 | useEffect(() => { 9 | /* 10 | if (messagePane) { 11 | messagePane.current.scrollTop = messagePane.current.scrollHeight; 12 | } 13 | */ 14 | var bottomSheetContent = document.querySelector('[data-rsbs-content]'); 15 | if (bottomSheetContent) { 16 | // bottomSheetContent.style.maxHeight = '50vh'; 17 | bottomSheetContent.scrollTop = bottomSheetContent.scrollHeight; 18 | } 19 | },[messages]); 20 | 21 | return ( 22 |
23 | { messages.map((message,index) => { 24 | return ( 25 |
26 | {message.name}: 27 | {message.text} 28 |
29 | ); 30 | } ) } 31 |
32 | ); 33 | }; 34 | export default ChatMessagePane; -------------------------------------------------------------------------------- /app/components/Chat/ChatModal.jsx: -------------------------------------------------------------------------------- 1 | import React, { useEffect, useState } from 'react'; 2 | 3 | import Modal from 'podfriend-approot/components/AppUI/Modal'; 4 | 5 | import ChatMessageInput from './ChatMessageInput.jsx'; 6 | import ChatMessagePane from 'podfriend-approot/components/Chat/ChatMessagePane.jsx'; 7 | 8 | const ChatModal = ({ shown, onDismiss, isLoggedIn, activePodcast, activeEpisode, onMessageSubmit, messages }) => { 9 | return ( 10 | maxHeight / 2} 15 | snapPoints={({ maxHeight }) => [ maxHeight / 2, maxHeight - 30 ]} 16 | header={ 17 |

18 | CHAT 19 |

20 | } 21 | footer={ 22 | 23 | } 24 | > 25 | 26 |
27 | ); 28 | } 29 | export default ChatModal; -------------------------------------------------------------------------------- /app/components/Episode/Chapters/EpisodeChapterList.scss: -------------------------------------------------------------------------------- 1 | .chapterList { 2 | min-height: 100%; 3 | 4 | .chapter { 5 | display: flex; 6 | padding: 5px; 7 | border-bottom: 1px solid #EEEEEE; 8 | } 9 | .activeChapter { 10 | background-color: #DDDDDD; 11 | } 12 | .chapterImage { 13 | width: 40px; 14 | height: 40px; 15 | min-width: 40px; 16 | margin-right: 10px; 17 | } 18 | .chapterImage img { 19 | width: 40px; 20 | height: 40px; 21 | border: 1px solid #EEEEEE; 22 | border-radius: 5px; 23 | } 24 | .chapterTime { 25 | margin-right: 10px; 26 | width: 60px; 27 | min-width: 60px; 28 | text-align: right; 29 | color: #999999; 30 | display: flex; 31 | justify-content: flex-end; 32 | align-items: center; 33 | 34 | 35 | } 36 | .chapterTitle { 37 | flex: 1; 38 | color: #000000; 39 | display: flex; 40 | align-items: center; 41 | } 42 | } -------------------------------------------------------------------------------- /app/components/Episode/Comments/EpisodeCommentList.scss: -------------------------------------------------------------------------------- 1 | .commentList { 2 | min-height: 100vh; 3 | 4 | .originalComment { 5 | padding-bottom: 30px; 6 | } 7 | 8 | .writeCommentContainer { 9 | margin-top: 30px; 10 | padding-bottom: 30px; 11 | 12 | textarea { 13 | display: block; 14 | background-color: rgba(0,0,0,0.1); 15 | border: 0px; 16 | width: 100%; 17 | height: 150px; 18 | padding: 10px; 19 | font-size: 16px; 20 | 21 | margin-bottom: 10px; 22 | 23 | border-radius: 5px; 24 | 25 | outline: 1px solid rgba(0,0,0,0); 26 | 27 | transition: 0.2s all; 28 | } 29 | textarea:focus { 30 | outline: 1px solid rgba(0,0,0,0.3); 31 | } 32 | button { 33 | width: 100%; 34 | } 35 | } 36 | } 37 | .comment { 38 | display: flex; 39 | 40 | padding: 6px; 41 | 42 | .avatar { 43 | width: 50px; 44 | height: 50px; 45 | border-radius: 50%; 46 | margin-right: 10px; 47 | border: 1px solid #CCCCCC; 48 | } 49 | .username { 50 | font-weight: bold; 51 | margin-bottom: 5px; 52 | } 53 | .commentContent { 54 | .commentText { 55 | 56 | } 57 | } 58 | } -------------------------------------------------------------------------------- /app/components/Episode/EpisodePlayerControls.scss: -------------------------------------------------------------------------------- 1 | .playerControls { 2 | width: 100%; 3 | 4 | padding-left: 5vw; 5 | padding-right: 5vw; 6 | 7 | .progress { 8 | max-width: 600px; 9 | margin-top: 30px; 10 | margin-bottom: 10px; 11 | 12 | margin-left: auto; 13 | margin-right: auto; 14 | 15 | display: flex; 16 | flex: 1; 17 | } 18 | .progressBarOuter { 19 | flex: 1; 20 | margin-left: 10px; 21 | margin-right: 10px; 22 | } 23 | .progressText { 24 | 25 | } 26 | .durationText { 27 | 28 | } 29 | .playerButtons { 30 | margin-left: auto; 31 | margin-right: auto; 32 | max-width: 300px; 33 | text-align: center; 34 | } 35 | } -------------------------------------------------------------------------------- /app/components/Episode/Map/EpisodeMap.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | const EpisodeMap = () => { 4 | return ( 5 |
6 | Map 7 |
8 | ); 9 | }; 10 | 11 | export default EpisodeMap; -------------------------------------------------------------------------------- /app/components/Episode/Subtitles/PodcastSubtitles.scss: -------------------------------------------------------------------------------- 1 | .subtitleContainer { 2 | display: flex; 3 | align-items: center; 4 | } 5 | .subtitleContainer svg { 6 | width: 30px; 7 | height: 30px; 8 | fill: #FFFFFF; 9 | } 10 | .subtitles { 11 | max-width: 400px; 12 | min-height: 65px; 13 | text-align: center; 14 | margin-left: auto; 15 | margin-right: auto; 16 | } 17 | .subtitleLine { 18 | background-color: rgba(0,0,0,0.6); 19 | padding: 5px; 20 | color: #FFFFFF; 21 | font-size: 18px; 22 | padding-left: 15px; 23 | padding-right: 15px; 24 | line-height: 26px; 25 | } -------------------------------------------------------------------------------- /app/components/Episode/Subtitles/SubtitleSearchModal.scss: -------------------------------------------------------------------------------- 1 | .subtitleSearchPane { 2 | @media (min-width: 900px) { 3 | width: 600px; 4 | } 5 | } 6 | .subtitleSearchPane { 7 | input { 8 | font-size: 18px; 9 | width: 100%; 10 | padding: 10px; 11 | border-radius: 5px; 12 | margin-bottom: 10px; 13 | } 14 | .searchResults { 15 | min-height: 300px; 16 | max-height: 60vh; 17 | overflow: auto; 18 | } 19 | .searchResult { 20 | display: flex; 21 | padding: 10px; 22 | cursor: pointer; 23 | border-radius: 5px; 24 | } 25 | @media (any-hover: hover) { 26 | .searchResult:hover { 27 | background-color: #EEEEEE; 28 | } 29 | } 30 | .searchResult:active { 31 | background-color: rgba(1,118,229,1); 32 | 33 | .time { 34 | color: #FFFFFF; 35 | } 36 | .caption { 37 | color: #FFFFFF; 38 | } 39 | } 40 | .searchResult .time { 41 | min-width: 60px; 42 | text-align: right; 43 | } 44 | .searchResult .caption { 45 | text-align: left; 46 | margin-left: 10px; 47 | color: #000000; 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /app/components/Feed/PostForm.scss: -------------------------------------------------------------------------------- 1 | .postForm { 2 | .userRow { 3 | display: flex; 4 | align-items: center; 5 | margin-bottom: 10px; 6 | 7 | .avatarCell { 8 | margin-right: 10px; 9 | } 10 | .usernameCell { 11 | font-size: 18px; 12 | } 13 | } 14 | .arrowUp { 15 | width: 0; 16 | height: 0; 17 | border-left: 10px solid transparent; 18 | border-right: 10px solid transparent; 19 | 20 | border-bottom: 15px solid rgba(0,0,0,0.1); 21 | 22 | margin-left: 10px; 23 | } 24 | textarea { 25 | display: block; 26 | background-color: rgba(0,0,0,0.1); 27 | border: 0px; 28 | width: 100%; 29 | height: 150px; 30 | padding: 10px; 31 | font-size: 16px; 32 | 33 | border-radius: 5px; 34 | 35 | outline: 1px solid rgba(0,0,0,0); 36 | 37 | transition: 0.2s all; 38 | } 39 | textarea:focus { 40 | outline: 1px solid rgba(0,0,0,0.3); 41 | } 42 | .buttonRow { 43 | margin-top: 10px; 44 | text-align: right; 45 | 46 | button { 47 | 48 | } 49 | } 50 | } -------------------------------------------------------------------------------- /app/components/Form/TextInput.css: -------------------------------------------------------------------------------- 1 | .TextInputContainer { 2 | position: relative; 3 | } 4 | .TextInputContainer input { 5 | z-Index: 1; 6 | 7 | border: 1px solid #d0d0d0; 8 | padding: 10px; 9 | padding-top: 20px; 10 | width: 100%; 11 | } 12 | .TextInputContainerActive { 13 | 14 | } 15 | .TextInputContainerInactive { 16 | 17 | } 18 | .TextInputContainer label { 19 | position: absolute; 20 | top: 15px; 21 | left: 10px; 22 | font-size: 16px; 23 | 24 | z-Index: 2; 25 | 26 | transition: all 0.5s; 27 | 28 | color: rgba(0,0,0,0.7); 29 | } 30 | .TextInputContainerActive label { 31 | position: absolute; 32 | font-size: 11px; 33 | top: 5px; 34 | left: 10px; 35 | } 36 | .TextInputContainerInactive label { 37 | pointer-events: none; 38 | } -------------------------------------------------------------------------------- /app/components/Lists/LatestVisitedPodcasts.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | import { useSelector } from "react-redux"; 4 | 5 | import PodcastMatrix from './PodcastMatrix.jsx'; 6 | 7 | const LatestVisitedPodcasts = () => { 8 | const lastVisitedPodcasts = useSelector((state) => state.podcast.lastVisitedPodcasts); 9 | 10 | if (lastVisitedPodcasts.length > 0) { 11 | return ( 12 |
13 |
14 |
Continue
15 |
Listening
16 |
17 | 18 |
19 | ); 20 | } 21 | else { 22 | return null; 23 | } 24 | } 25 | 26 | export default React.memo(LatestVisitedPodcasts); -------------------------------------------------------------------------------- /app/components/Lists/PodcastMatrix.jsx: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | 3 | import PodcastMatrixUI from 'podfriend-ui/PodcastMatrix/PodcastMatrixUI.jsx'; 4 | 5 | /** 6 | * 7 | */ 8 | const PodcastMatrix = React.memo(({type,podcasts,episodes}) => { 9 | return ( 10 | 15 | ); 16 | }) 17 | export default PodcastMatrix; -------------------------------------------------------------------------------- /app/components/Loading/LoadingSpinner.jsx: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | 3 | import { RingLoader } from 'react-spinners'; 4 | 5 | /** 6 | * 7 | */ 8 | function LoadingSpinner(props) { 9 | return ( 10 |
11 | 12 |
13 | ); 14 | } 15 | export default LoadingSpinner; -------------------------------------------------------------------------------- /app/components/Login/LoginMessage.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | 3 | /** 4 | * 5 | */ 6 | class LoginView extends Component { 7 | /** 8 | * 9 | */ 10 | render() { 11 | return ( 12 |
13 | Press here to login to Google 14 |
15 | ); 16 | } 17 | } 18 | export default LoginView; -------------------------------------------------------------------------------- /app/components/Login/LoginView.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | 3 | /** 4 | * 5 | */ 6 | class LoginView extends Component { 7 | /** 8 | * 9 | */ 10 | constructor(props) { 11 | super(props); 12 | 13 | this.myApiOauth = props.googleAuth; 14 | 15 | this.state = { 16 | 17 | }; 18 | 19 | this.handleLogin = this.handleLogin.bind(this); 20 | } 21 | /** 22 | * 23 | */ 24 | render() { 25 | return ( 26 |
27 | Press here to login to Google 28 |
29 | ); 30 | } 31 | /** 32 | * 33 | */ 34 | handleLogin() { 35 | this.myApiOauth.openAuthWindowAndGetTokens() 36 | .then((token) => { 37 | this.props.onGoogleLogIn(token); 38 | }) 39 | .catch((exception) => { 40 | alert('error: ' + exception); 41 | }); 42 | } 43 | } 44 | export default LoginView; -------------------------------------------------------------------------------- /app/components/Navigation/BottomNavigation.scss: -------------------------------------------------------------------------------- 1 | .bottomNavigation { 2 | display: none; 3 | height: 60px; 4 | flex-direction: row; 5 | justify-content: center; 6 | align-items: center; 7 | background-color: #ffffff; 8 | /* background-color: #0176e5;*/ 9 | 10 | @media only screen and (max-width: 900px) { 11 | display: flex; 12 | 13 | @supports(padding-bottom:env(safe-area-inset-bottom)) { 14 | padding-bottom: env(safe-area-inset-bottom); 15 | height: calc(env(safe-area-inset-bottom) + 60px); 16 | } 17 | } 18 | } 19 | .menuItem { 20 | flex: 1; 21 | text-align: center; 22 | color: #b2b2b4; 23 | /* color: rgba(255,255,255,0.5); */ 24 | text-decoration: none; 25 | font-size: 14px; 26 | } 27 | .menuItem svg { 28 | fill: #b2b2b4; 29 | /* fill: rgba(255,255,255,0.5);*/ 30 | } 31 | .menuItemSelected { 32 | color: #0176e5; 33 | } 34 | .menuItemSelected svg { 35 | fill: #0176e5; 36 | } -------------------------------------------------------------------------------- /app/components/Page/PageHeader.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | import { IonButtons, IonContent, IonSearchbar, IonHeader, IonMenuButton, IonPage, IonTitle, IonToolbar } from '@ionic/react'; 4 | 5 | const PageHeader = ({title}) => { 6 | return ( 7 | 8 | 9 | {title} 10 | 11 | 12 | 13 | 14 | 15 | ); 16 | }; 17 | 18 | export default PageHeader; 19 | 20 | /* 21 | import styles from './PageHeader.scss'; 22 | 23 | const PageHeader = ({title}) => { 24 | return ( 25 |
26 |

{title}

27 |
28 | ); 29 | }; 30 | 31 | export default PageHeader; 32 | */ -------------------------------------------------------------------------------- /app/components/Page/PageHeader.scss: -------------------------------------------------------------------------------- 1 | .titleContainer { 2 | padding: 20px; 3 | 4 | h1 { 5 | font-family: -apple-system,BlinkMacSystemFont,"Helvetica Neue","Roboto",sans-serif; 6 | font-size: 34px; 7 | } 8 | } -------------------------------------------------------------------------------- /app/components/Page/PodcastPage.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | import PageHeader from './PageHeader.jsx'; 4 | 5 | const PodcastPage = ({title, children, pageType = 'contentPage'}) => { 6 | return ( 7 |
8 | { pageType === 'contentPage' && 9 | 10 | } 11 | {children} 12 |
13 | ); 14 | }; 15 | 16 | export default PodcastPage; -------------------------------------------------------------------------------- /app/components/Page/PodcastPage.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/components/Page/PodcastPage.scss -------------------------------------------------------------------------------- /app/components/Page/SectionHeader.css: -------------------------------------------------------------------------------- 1 | .sectionHeader { 2 | font-size: 28px; 3 | color: #75757e; 4 | border-bottom: 1px solid #75757e; 5 | } 6 | .border { 7 | 8 | } -------------------------------------------------------------------------------- /app/components/Page/SectionHeader.jsx: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | 3 | import styles from './SectionHeader.css'; 4 | 5 | /** 6 | * 7 | */ 8 | class SectionHeader extends Component { 9 | /** 10 | * 11 | */ 12 | constructor(props) { 13 | super(props); 14 | } 15 | render() { 16 | return ( 17 |
18 | {this.props.children} 19 |
20 | ); 21 | } 22 | } 23 | export default SectionHeader; -------------------------------------------------------------------------------- /app/components/Player/AudioSpeedSettingModal.scss: -------------------------------------------------------------------------------- 1 | .audioSpeedSettingModal { 2 | min-width: 320px; 3 | max-width: 500px; 4 | text-align: center; 5 | } 6 | .audioSpeedSettingModal h2 { 7 | font-weight: bold; 8 | margin: 0px; 9 | margin-bottom: 5px; 10 | } 11 | .speedRange { 12 | padding: 20px; 13 | display: flex; 14 | align-items: center; 15 | padding: 25px; 16 | } 17 | .speedRange > div { 18 | margin: 5px; 19 | font-weight: bold; 20 | } 21 | .speedButtons { 22 | margin-bottom: 20px; 23 | } 24 | .speedButtonsTitle { 25 | margin-bottom: 5px; 26 | } 27 | .speedButton { 28 | background-color: #DDDDDD; 29 | border-bottom: 4px solid #CCCCCC; 30 | color: #999999; 31 | width: 60px; 32 | margin-right: 5px; 33 | margin-bottom: 5px; 34 | text-align: center; 35 | padding: 10px; 36 | } 37 | .closeButtonContainer { 38 | text-align: right; 39 | } 40 | @media only screen and (min-width: 540px) { 41 | .audioSpeedSettingModal { 42 | width: 80vw; 43 | max-width: 600px; 44 | } 45 | } -------------------------------------------------------------------------------- /app/components/Player/OpenPlayerUI.scss: -------------------------------------------------------------------------------- 1 | .episodeInfo { 2 | width: 100%; 3 | background-color: #FFFFFF; 4 | padding-bottom: 60px; 5 | flex: 2; 6 | } 7 | .description { 8 | padding: 20px; 9 | } 10 | .episodeMasterData { 11 | padding: 20px; 12 | padding-top: 0px; 13 | padding-bottom: 10px; 14 | } 15 | .valueBar { 16 | .streamingSatsContainer * { 17 | color: #FFFFFF; 18 | } 19 | } -------------------------------------------------------------------------------- /app/components/Player/PlayerProvider.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/components/Player/PlayerProvider.jsx -------------------------------------------------------------------------------- /app/components/Player/ProgressBarSlider.scss: -------------------------------------------------------------------------------- 1 | .timePreview { 2 | position: absolute; 3 | top: -55px; 4 | 5 | left: -5px; 6 | z-index: 10; 7 | color: #FFFFFF; 8 | font-size: 18px; 9 | padding: 6px; 10 | padding-left: 10px; 11 | padding-right: 10px; 12 | border-radius: 5px; 13 | background-color: #0176e5; 14 | 15 | border: 1px solid rgba(0,0,0,0.3); 16 | 17 | -webkit-box-shadow: 5px 5px 5px -1px rgba(0,0,0,0.65); 18 | box-shadow: 5px 5px 5px -1px rgba(0,0,0,0.65); 19 | 20 | @media (any-hover: hover) { 21 | top: -40px; 22 | font-size: 16px; 23 | } 24 | } -------------------------------------------------------------------------------- /app/components/Player/SleepTimerModal.scss: -------------------------------------------------------------------------------- 1 | .sleepTimerLine { 2 | padding: 20px; 3 | border-bottom: 1px solid #999999; 4 | width: 100%; 5 | min-width: 250px; 6 | 7 | @media (any-hover: hover) { 8 | &:hover { 9 | background-color: #EEEEEE; 10 | cursor: pointer; 11 | } 12 | } 13 | } 14 | .currentTimer { 15 | padding: 20px; 16 | } -------------------------------------------------------------------------------- /app/components/Podcast/PodcastPersons.scss: -------------------------------------------------------------------------------- 1 | .persons { 2 | width: 100%; 3 | max-height: 150px; 4 | overflow-x: auto; 5 | overflow-y: hidden; 6 | 7 | display: flex; 8 | flex-direction: row; 9 | 10 | .person { 11 | margin-right: 30px; 12 | margin-bottom: 10px; 13 | 14 | cursor: pointer; 15 | 16 | display: flex; 17 | flex-direction: column; 18 | 19 | justify-content: center; 20 | align-items: center; 21 | 22 | .photo { 23 | width: 90px; 24 | height: 90px; 25 | border-radius: 50%; 26 | margin-bottom: 5px; 27 | } 28 | .name { 29 | color: #000000; 30 | } 31 | .role { 32 | font-size: 16px; 33 | } 34 | } 35 | } 36 | .persons::after { 37 | content: ""; 38 | clear: both; 39 | display: table; 40 | } -------------------------------------------------------------------------------- /app/components/Podcast/ShareButtons.css: -------------------------------------------------------------------------------- 1 | .shareButtons { 2 | margin-top: 20px; 3 | display: flex; 4 | } 5 | 6 | .shareButtons .clipBoardButton { 7 | padding-left: 20px; 8 | padding-right: 20px; 9 | line-height: 30px; 10 | color: #FFFFFF; 11 | display: inline-block; 12 | height: 30px; 13 | font-size: 16px; 14 | background-color: #00192f; 15 | text-shadow: 1px 1px #000000; 16 | cursor: pointer; 17 | } 18 | 19 | .shareButton img, .clipBoardButton { 20 | height: 30px; 21 | width: auto; 22 | } -------------------------------------------------------------------------------- /app/components/Podcast/SubscribeButtonUI.css: -------------------------------------------------------------------------------- 1 | .subscribeButton { 2 | background-color: #28bd72; 3 | border: 0px; 4 | padding: 15px; 5 | color: #FFFFFF; 6 | font-size: 16px; 7 | transition: all .2s; 8 | border-radius: 5px; 9 | } 10 | .subscribeButton svg { 11 | fill: #FFFFFF; 12 | position: relative; 13 | top: 2px; 14 | margin-right: 10px; 15 | transition: all 0.5s; 16 | } 17 | @media (any-hover: hover) { 18 | .subscribeButton:hover { 19 | background-color: #11de77; 20 | transform: scale(1.1); 21 | } 22 | .subscribeButton:hover svg { 23 | fill: #FF0000; 24 | } 25 | } 26 | @media only screen and (max-width: 770px) { 27 | .subscribeButton { 28 | width: 100%; 29 | text-align: center; 30 | } 31 | } -------------------------------------------------------------------------------- /app/components/Podcast/SubscribeButtonUI.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | import { FaPlusCircle, FaMinusCircle } from "react-icons/fa"; 4 | 5 | import styles from './SubscribeButtonUI.css'; 6 | 7 | /** 8 | * 9 | */ 10 | class SubscribeButtonUI extends React.Component { 11 | render() { 12 | if (this.props.isSubscribed) { 13 | return ( 14 |
Unfollow
15 | ); 16 | } 17 | else { 18 | return ( 19 |
Follow
20 | ); 21 | } 22 | } 23 | } 24 | 25 | export default SubscribeButtonUI; -------------------------------------------------------------------------------- /app/components/PodcastList/PodcastList.jsx: -------------------------------------------------------------------------------- 1 | import React, { useState, useEffect } from 'react'; 2 | 3 | import { useSelector, useDispatch } from 'react-redux'; 4 | 5 | const PodcastList = () => { 6 | return ( 7 |
8 |   9 |
10 | ); 11 | }; 12 | 13 | export default PodcastList; -------------------------------------------------------------------------------- /app/components/Reviews/StarRating.css: -------------------------------------------------------------------------------- 1 | .starRating { 2 | display: flex; 3 | flex-direction: row; 4 | align-items: center; 5 | } 6 | .reviewBasedOn { 7 | color: #FFFFFF; 8 | margin-left: 10px; 9 | font-size: 14px; 10 | } 11 | .stars { 12 | display: flex; 13 | flex-direction: row; 14 | 15 | align-items: center; 16 | } 17 | .starNormal, .starFilled { 18 | font-size: inherit; 19 | } 20 | .starNormal { 21 | color: #75757e; 22 | opacity: 0.8; 23 | } 24 | .starFilled { 25 | color: #ffcc48; 26 | } 27 | /* 28 | @media (min-width: 1200px) { 29 | .starNormal, .starFilled { 30 | 31 | } 32 | } 33 | */ -------------------------------------------------------------------------------- /app/components/Reviews/WriteReviewForm.scss: -------------------------------------------------------------------------------- 1 | .writeReviewForm { 2 | width: 100%; 3 | padding: 20px; 4 | 5 | h2 { 6 | margin-top: 20px; 7 | } 8 | .writeReviewFormFields { 9 | margin-top: 20px; 10 | flex: 1; 11 | } 12 | button { 13 | width: 100%; 14 | margin-top: 10px; 15 | } 16 | .optionalReviewTitle { 17 | font-size: 35px; 18 | margin-bottom: 10px; 19 | } 20 | .optionalReviewLabel { 21 | margin-bottom: 15px; 22 | } 23 | .reviewWritten { 24 | display: flex; 25 | flex-direction: column; 26 | justify-content: center; 27 | align-items: center; 28 | 29 | .reviewWrittenIllustration img { 30 | max-width: 200px; 31 | } 32 | .reviewWrittenHeadline { 33 | margin-top: 20px; 34 | 35 | h2 { 36 | margin-left: 20px; 37 | color: #333333; 38 | } 39 | } 40 | } 41 | } -------------------------------------------------------------------------------- /app/components/Search/SearchHint.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | import styles from './SearchHints.scss'; 4 | 5 | const SearchHint = ({ hint, Events }) => { 6 | return ( 7 |
{ Events.emit('OnSearch',hint); }} 10 | > 11 |
Podcast
12 |
13 | {hint} 14 |
15 |
16 | ); 17 | }; 18 | export default SearchHint; -------------------------------------------------------------------------------- /app/components/Search/SearchPane.css: -------------------------------------------------------------------------------- 1 | .searchPane { 2 | width: 100%; 3 | overflow: auto; 4 | 5 | /* height: calc(100% - 90px);*/ 6 | 7 | padding-top: 20px; 8 | padding-bottom: 20px; 9 | padding-left: 10px; 10 | 11 | background-color: #FFFFFF; 12 | } 13 | @media only screen and (max-width: 570px) { 14 | .searchPane { 15 | /* height: calc(100% - 60px); */ 16 | } 17 | } 18 | .searchResults:after { 19 | content: ""; 20 | display: table; 21 | clear: both; 22 | } 23 | .searchPane h1 { 24 | padding-left: 10px; 25 | } 26 | .genreSelectArea { 27 | padding: 20px; 28 | padding-bottom: 10px; 29 | padding-top: 0px; 30 | position: relative; 31 | bottom: 10px; 32 | 33 | display: flex; 34 | align-items: center; 35 | justify-items: center; 36 | } 37 | .genreSelect { 38 | margin-left: 20px; 39 | max-width: 500px; 40 | flex: 1; 41 | } -------------------------------------------------------------------------------- /app/components/Search/SearchResult.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/components/Search/SearchResult.css -------------------------------------------------------------------------------- /app/components/Settings/SettingsModal.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | const SettingsModal = () => { 4 | return ( 5 |
6 | SettingsModal 7 |
8 | ); 9 | }; 10 | export default SettingsModal; -------------------------------------------------------------------------------- /app/components/UI/CategoryList/CategoryListUI.css: -------------------------------------------------------------------------------- 1 | /* 2 | moved to sidebar.css 3 | */ -------------------------------------------------------------------------------- /app/components/UI/Layout/InformationModal.scss: -------------------------------------------------------------------------------- 1 | .informationModal { 2 | text-align: center; 3 | } 4 | :global(.informationFooter) { 5 | padding: 20px; 6 | padding-top: 0px; 7 | } 8 | :global(div[data-rsbs-footer="true"] .informationFooter) { 9 | padding: 0px; 10 | } -------------------------------------------------------------------------------- /app/components/UI/Layout/InformationalModal.jsx: -------------------------------------------------------------------------------- 1 | import React, { useEffect, useState } from 'react'; 2 | 3 | import Modal from 'podfriend-approot/components/AppUI/Modal'; 4 | 5 | import styles from './InformationModal.scss'; 6 | 7 | const InformationalModal = ({ title, text, image, footer, shown, onClose }) => { 8 | return ( 9 | maxHeight - 30} 14 | > 15 |
16 | {text} 17 |
18 |
19 | ); 20 | }; 21 | 22 | export default InformationalModal; -------------------------------------------------------------------------------- /app/components/UI/Layout/Page.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | import styles from './Page.scss'; 4 | 5 | const Page = ({ children }) => { 6 | return ( 7 |
8 | {children} 9 |
10 | ); 11 | }; 12 | 13 | export default Page; -------------------------------------------------------------------------------- /app/components/UI/Layout/Page.scss: -------------------------------------------------------------------------------- 1 | .page { 2 | background-color: #FFFFFF; 3 | padding: 20px; 4 | } -------------------------------------------------------------------------------- /app/components/UI/Layout/TitleHeader.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | import styles from './TitleHeader.scss'; 4 | 5 | const TitleHeader = ({children }) => { 6 | return ( 7 |
8 |

{children}

9 |
10 | ); 11 | }; 12 | 13 | export default TitleHeader; -------------------------------------------------------------------------------- /app/components/UI/Layout/TitleHeader.scss: -------------------------------------------------------------------------------- 1 | .titleHeader { 2 | h2 { 3 | font-size: 36px; 4 | font-weight: bold; 5 | color: #1f335e; 6 | margin-bottom: 5px; 7 | } 8 | } -------------------------------------------------------------------------------- /app/components/UI/common/DraggablePane.scss: -------------------------------------------------------------------------------- 1 | .dragHandle { 2 | width: 50px; 3 | height: 2px; 4 | overflow: 'hidden'; 5 | background-color: rgba(255,255,255,0.7); 6 | margin-top: 15px; 7 | } -------------------------------------------------------------------------------- /app/components/UI/common/Notice/Notice.scss: -------------------------------------------------------------------------------- 1 | .notice { 2 | padding: 15px; 3 | 4 | margin: 15px; 5 | border-radius: 5px; 6 | 7 | display: flex; 8 | 9 | color: #022041; 10 | 11 | .headline { 12 | color: #022041; 13 | margin-bottom: 5px; 14 | -webkit-text-stroke: 0.25px; 15 | } 16 | .text { 17 | color: #022041; 18 | p { 19 | margin-top: 0px; 20 | color: #022041; 21 | } 22 | } 23 | .icon { 24 | margin-right: 10px; 25 | 26 | svg { 27 | width: 40px; 28 | height: 40px; 29 | fill: #022041; 30 | } 31 | } 32 | &.notice_warning { 33 | background-color: #ffb52b; 34 | border-bottom: 5px solid #ffdd80; 35 | } 36 | &.notice_error { 37 | background-color: #ffdcdc; 38 | } 39 | } -------------------------------------------------------------------------------- /app/components/UI/common/Notice/Warning.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | import Notice from './Notice.jsx'; 4 | 5 | const Warning = ({ style, title, children, targetClass, targetPlatform }) => { 6 | return ( 7 | 14 | {children} 15 | 16 | ); 17 | }; 18 | export default Warning; -------------------------------------------------------------------------------- /app/components/UI/common/QuickMessagePopup.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | const QuickMessagePopup = () => { 4 | return ReactDOM.createPortal( 5 |
6 | Hell yeah. Jeg er gennemsigtig tekst på sort baggrund med opacity og blur 7 |
8 | ); 9 | }; 10 | export default QuickMessagePopup; -------------------------------------------------------------------------------- /app/components/Wallet/IndividualBoostModal.scss: -------------------------------------------------------------------------------- 1 | .individualBoostModal { 2 | textarea { 3 | height: 200px; 4 | width: 100%; 5 | 6 | font-size: 16px; 7 | padding: 10px; 8 | 9 | margin-bottom: 10px; 10 | } 11 | } -------------------------------------------------------------------------------- /app/components/Wallet/Value4ValueModal.scss: -------------------------------------------------------------------------------- 1 | .valueForValueModal { 2 | .informationImage { 3 | max-width: calc(90vw - 40px); 4 | } 5 | h3 { 6 | font-size: 28px; 7 | font-weight: bold; 8 | } 9 | p { 10 | font-size: 18px; 11 | } 12 | } -------------------------------------------------------------------------------- /app/components/Wallet/ValueConfigModal/SplitRange.scss: -------------------------------------------------------------------------------- 1 | .splitRange { 2 | margin-top: 30px; 3 | margin-bottom: 30px; 4 | 5 | .splitLabel { 6 | display: flex; 7 | 8 | justify-content: center; 9 | align-items: center; 10 | margin-bottom: 5px; 11 | 12 | .splitLabelText { 13 | color: var(--primary-text-color); 14 | flex: 2; 15 | text-align: center; 16 | } 17 | .splitLabel2Text { 18 | color: var(--primary-text-color); 19 | flex: 2; 20 | text-align: center; 21 | } 22 | 23 | input[type="number"] { 24 | border: 0px; 25 | font-size: 28px; 26 | text-align: center; 27 | width: 120px; 28 | outline: 0px; 29 | color: var(--primary-color-dark); 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /app/components/Wallet/ValueConfigModal/ValueConfigModal.scss: -------------------------------------------------------------------------------- 1 | .valueConfigPanel { 2 | padding: 20px; 3 | min-width: 320px; 4 | 5 | transition: all 0.4s; 6 | 7 | table { 8 | width: 100%; 9 | 10 | thead { 11 | background-color: #CECECE; 12 | } 13 | tbody tr { 14 | 15 | } 16 | } 17 | } -------------------------------------------------------------------------------- /app/components/Wallet/WalletBalance.scss: -------------------------------------------------------------------------------- 1 | .walletIndicator { 2 | margin-top: 20px; 3 | margin-left: 10px; 4 | margin-right: 10px; 5 | margin-bottom: 150px; 6 | 7 | cursor: pointer; 8 | } 9 | .walletBalanceLabel { 10 | color: rgba(255,255,255,0.6); 11 | font-size: 13px; 12 | margin-left: 2px; 13 | margin-bottom: 3px; 14 | } 15 | .walletBalance { 16 | background-color: rgba(255,255,255,0.2); 17 | color: rgba(255,255,255,0.8); 18 | border-radius: 10px; 19 | padding: 10px; 20 | text-align: right; 21 | } -------------------------------------------------------------------------------- /app/components/Wallet/WalletModal.scss: -------------------------------------------------------------------------------- 1 | .walletModal { 2 | padding: 20px; 3 | min-width: 320px; 4 | max-width: 500px; 5 | 6 | transition: all 0.4s; 7 | 8 | .walletInvoiceAddressContainer { 9 | display: flex; 10 | 11 | width: 320px; 12 | margin-left: auto; 13 | margin-right: auto; 14 | 15 | justify-content: center; 16 | align-items: center; 17 | 18 | margin-top: 10px; 19 | 20 | .invoiceInput { 21 | background-color: rgba(0,0,0,0.1); 22 | border: 0px; 23 | padding: 10px; 24 | border-radius: 5px; 25 | font-size: 18px; 26 | flex: 1; 27 | margin-right: 5px; 28 | } 29 | svg { 30 | width: 24px; 31 | height: 25px; 32 | } 33 | } 34 | } 35 | .errorMessage { 36 | background-color: #980a0d; 37 | color: #FFFFFF; 38 | padding: 20px; 39 | margin-bottom: 20px; 40 | } -------------------------------------------------------------------------------- /app/components/sass/variables.scss: -------------------------------------------------------------------------------- 1 | // Player 2 | // $theme-light-player-background-color: #EEEEEE; 3 | $theme-dark-player-background-color: #000000; 4 | 5 | $theme-light-player-background-color: #01417f; 6 | // $theme-light-player-background-color: #0e47a1; 7 | -------------------------------------------------------------------------------- /app/components/user/SettingsPage.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/components/user/SettingsPage.css -------------------------------------------------------------------------------- /app/components/user/userTitleBar.css: -------------------------------------------------------------------------------- 1 | .loginSection { 2 | display: flex; 3 | align-items: center; 4 | justify-content: center; 5 | } 6 | .loginSection span { 7 | display: inline-block; 8 | margin-right: 5px; 9 | background-color: #f0f0f0; 10 | } 11 | .username { 12 | -webkit-app-region: no-drag; 13 | 14 | align-items: center; 15 | justify-content: center; 16 | 17 | color: #FFFFFF; 18 | } -------------------------------------------------------------------------------- /app/cordova/cordova-plugin-media/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "browser": true 3 | , "devel": true 4 | , "bitwise": true 5 | , "undef": true 6 | , "trailing": true 7 | , "quotmark": false 8 | , "indent": 4 9 | , "unused": "vars" 10 | , "latedef": "nofunc" 11 | , "globals": { 12 | "module": false, 13 | "exports": false, 14 | "require": false, 15 | "cordova": true 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /app/cordova/cordova-plugin-media/NOTICE: -------------------------------------------------------------------------------- 1 | Apache Cordova 2 | Copyright 2012 The Apache Software Foundation 3 | 4 | This product includes software developed at 5 | The Apache Software Foundation (http://www.apache.org/). 6 | -------------------------------------------------------------------------------- /app/cordova/cordova-plugin-media/tests/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cordova-plugin-media-tests", 3 | "version": "5.0.3", 4 | "description": "", 5 | "cordova": { 6 | "id": "cordova-plugin-media-tests", 7 | "platforms": [] 8 | }, 9 | "keywords": [ 10 | "ecosystem:cordova" 11 | ], 12 | "author": "", 13 | "license": "Apache-2.0" 14 | } 15 | -------------------------------------------------------------------------------- /app/cordova/cordova-plugin-music-controls2/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cordova-plugin-music-controls2", 3 | "version": "3.0.5", 4 | "description": "Music controls for Cordova apps", 5 | "cordova": { 6 | "id": "cordova-plugin-music-controls2", 7 | "platforms": ["android", "windows", "ios"] 8 | }, 9 | "repository": { 10 | "type": "git", 11 | "url": "git+https://github.com/ghenry22/cordova-plugin-music-controls2.git" 12 | }, 13 | "keywords": [ 14 | "cordova", 15 | "music", 16 | "controller", 17 | "controls", 18 | "media", 19 | "plugin", 20 | "notification", 21 | "ecosystem:cordova", 22 | "cordova-android", 23 | "cordova-windows" 24 | ], 25 | "engines": [ 26 | { 27 | "name": "cordova", 28 | "version": ">=4.0.0" 29 | } 30 | ], 31 | "author": "ghenry22", 32 | "license": "MIT", 33 | "bugs": { 34 | "url": "https://github.com/ghenry22/cordova-plugin-music-controls2/issues" 35 | }, 36 | "homepage": 37 | "https://github.com/ghenry22/cordova-plugin-music-controls2#readme" 38 | } 39 | -------------------------------------------------------------------------------- /app/cordova/cordova-plugin-music-controls2/src/android/KillBinder.java: -------------------------------------------------------------------------------- 1 | package com.homerours.musiccontrols; 2 | 3 | import android.app.Service; 4 | import android.os.Binder; 5 | 6 | public class KillBinder extends Binder { 7 | public final MusicControlsNotificationKiller service; 8 | 9 | public KillBinder(MusicControlsNotificationKiller service) { 10 | this.service = service; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /app/cordova/cordova-plugin-music-controls2/src/ios/MainViewController+MusicControls.h: -------------------------------------------------------------------------------- 1 | // 2 | // MainViewController+MusicControls.h 3 | // 4 | // 5 | // Created by Juan Gonzalez on 12/17/16. 6 | // 7 | // 8 | 9 | #ifndef MainViewController_MusicControls_h 10 | #define MainViewController_MusicControls_h 11 | 12 | #import "MainViewController.h" 13 | 14 | @interface MainViewController (MusicControls) 15 | 16 | @end 17 | 18 | 19 | #endif /* MainViewController_MusicControls_h */ 20 | -------------------------------------------------------------------------------- /app/cordova/cordova-plugin-music-controls2/src/ios/MainViewController+MusicControls.m: -------------------------------------------------------------------------------- 1 | // 2 | // MainViewController+MusicControls.m 3 | // 4 | // 5 | // Created by Juan Gonzalez on 12/17/16. 6 | // 7 | // 8 | 9 | #import 10 | 11 | 12 | #import "MainViewController+MusicControls.h" 13 | 14 | @implementation MainViewController (MusicControls) 15 | 16 | - (void) remoteControlReceivedWithEvent: (UIEvent *) receivedEvent { 17 | [[NSNotificationCenter defaultCenter] postNotificationName:@"musicControlsEventNotification" object:receivedEvent]; 18 | } 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /app/cordova/cordova-plugin-music-controls2/src/ios/MusicControlsInfo.h: -------------------------------------------------------------------------------- 1 | // 2 | // MusicControlsInfo.h 3 | // 4 | // 5 | // Created by Juan Gonzalez on 12/17/16. 6 | // 7 | // 8 | 9 | #ifndef MusicControlsInfo_h 10 | #define MusicControlsInfo_h 11 | 12 | #import 13 | 14 | @interface MusicControlsInfo : NSObject {} 15 | 16 | @property NSString * artist; 17 | @property NSString * track; 18 | @property NSString * album; 19 | @property NSString * ticker; 20 | @property NSString * cover; 21 | @property NSUInteger duration; 22 | @property NSUInteger elapsed; 23 | @property bool isPlaying; 24 | @property bool hasPrev; 25 | @property bool hasNext; 26 | @property bool hasSkipForward; 27 | @property bool hasSkipBackward; 28 | @property bool hasScrubbing; 29 | @property NSUInteger skipForwardInterval; 30 | @property NSUInteger skipBackwardInterval; 31 | @property bool dismissable; 32 | 33 | - (id) initWithDictionary: (NSDictionary *) dictionary; 34 | 35 | @end 36 | 37 | #endif /* MusicControlsInfo_h */ 38 | -------------------------------------------------------------------------------- /app/images/checkmark_64x64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/checkmark_64x64.png -------------------------------------------------------------------------------- /app/images/checkmark_inactive_64x64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/checkmark_inactive_64x64.png -------------------------------------------------------------------------------- /app/images/design/blue-wave-1.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/flow-illustrations/podfriend-dating.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/flow-illustrations/podfriend-dating.png -------------------------------------------------------------------------------- /app/images/design/flow-illustrations/podfriend-dating.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/flow-illustrations/podfriend-dating.psd -------------------------------------------------------------------------------- /app/images/design/flow-illustrations/podfriend-female.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/flow-illustrations/podfriend-female.png -------------------------------------------------------------------------------- /app/images/design/flow-illustrations/podfriend-female.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/flow-illustrations/podfriend-female.psd -------------------------------------------------------------------------------- /app/images/design/flow-illustrations/podfriend-happy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/flow-illustrations/podfriend-happy.png -------------------------------------------------------------------------------- /app/images/design/flow-illustrations/podfriend-mad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/flow-illustrations/podfriend-mad.png -------------------------------------------------------------------------------- /app/images/design/flow-illustrations/podfriend-sad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/flow-illustrations/podfriend-sad.png -------------------------------------------------------------------------------- /app/images/design/flow-illustrations/podfriend-sleep.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/flow-illustrations/podfriend-sleep.png -------------------------------------------------------------------------------- /app/images/design/flow-illustrations/podfriend-wah.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/flow-illustrations/podfriend-wah.png -------------------------------------------------------------------------------- /app/images/design/flow-illustrations/podfriend-wat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/flow-illustrations/podfriend-wat.png -------------------------------------------------------------------------------- /app/images/design/icons/comment.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/icons/error.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/icons/information.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/icons/search.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/icons/send.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/icons/user.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/loading-rings.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /app/images/design/loading/loading-circle-white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/images/design/loading/loading-circle.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/images/design/noCoverBackgrounds/pattern1.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/noCoverBackgrounds/pattern1.webp -------------------------------------------------------------------------------- /app/images/design/noCoverBackgrounds/pattern2.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/noCoverBackgrounds/pattern2.webp -------------------------------------------------------------------------------- /app/images/design/onboarding/value4value-amount.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/onboarding/value4value-amount.png -------------------------------------------------------------------------------- /app/images/design/onboarding/value4value-decision.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/onboarding/value4value-decision.png -------------------------------------------------------------------------------- /app/images/design/onboarding/value4value-donate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/onboarding/value4value-donate.png -------------------------------------------------------------------------------- /app/images/design/onboarding/value4value-wallet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/onboarding/value4value-wallet.png -------------------------------------------------------------------------------- /app/images/design/onboarding/value4value.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/design/onboarding/value4value.png -------------------------------------------------------------------------------- /app/images/design/player/boost.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/chromecast.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/clock.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/error.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/forward.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/fullscreen.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/more.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/next.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/pause.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/play.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/prev.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/rewind.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/share.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/skip-backward.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/skip-forward.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/player/speed.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/podcastpane/creditcard.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/design/titlebar/userProfile.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/images/logo/podfriend_logo_128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/logo/podfriend_logo_128x128.png -------------------------------------------------------------------------------- /app/images/logo/podfriend_logo_18x18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/logo/podfriend_logo_18x18.png -------------------------------------------------------------------------------- /app/images/logo/podfriend_logo_256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/logo/podfriend_logo_256x256.png -------------------------------------------------------------------------------- /app/images/logo/podfriend_logo_512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/logo/podfriend_logo_512x512.png -------------------------------------------------------------------------------- /app/images/play-button-loading-whitebg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/play-button-loading-whitebg.png -------------------------------------------------------------------------------- /app/images/play-button-loading.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/play-button-loading.png -------------------------------------------------------------------------------- /app/images/review-0-star.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/review-0-star.png -------------------------------------------------------------------------------- /app/images/review-5-star.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/review-5-star.png -------------------------------------------------------------------------------- /app/images/social/facebook-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/social/facebook-logo.png -------------------------------------------------------------------------------- /app/images/social/google-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/social/google-logo.png -------------------------------------------------------------------------------- /app/images/social/share-f.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/social/share-f.jpg -------------------------------------------------------------------------------- /app/images/social/share-t.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/images/social/share-t.jpg -------------------------------------------------------------------------------- /app/library/ClientStorage.js: -------------------------------------------------------------------------------- 1 | import localForage from "localforage"; 2 | 3 | class ClientStorage { 4 | /** 5 | * 6 | */ 7 | constructor() { 8 | console.log('Default ClientStorage'); 9 | } 10 | /** 11 | * 12 | */ 13 | setItem(key,value) { 14 | return localForage.setItem(key,value); 15 | } 16 | /** 17 | * 18 | */ 19 | getItem(key) { 20 | return localForage.getItem(key); 21 | } 22 | /** 23 | * 24 | */ 25 | removeItem(key) { 26 | return localForage.removeItem(key); 27 | } 28 | /** 29 | * 30 | */ 31 | clear() { 32 | return localForage.clear(); 33 | } 34 | } 35 | 36 | export default ClientStorage; -------------------------------------------------------------------------------- /app/library/PodCastService.js: -------------------------------------------------------------------------------- 1 | var iTunesDriver = require('./podCastServices/ITunes.js').default; 2 | 3 | /** 4 | * 5 | */ 6 | class PodCastService { 7 | /** 8 | * 9 | */ 10 | constructor(driverName,proxyCalls = false,proxyConfig = false) { 11 | this.loadDriver(driverName,proxyCalls,proxyConfig); 12 | } 13 | /** 14 | * 15 | */ 16 | loadDriver(driverName,proxyCalls,proxyConfig) { 17 | // var DriverClass = require('./PodCastServices/' + driverName + '.js').default; 18 | var DriverClass = iTunesDriver; 19 | this.driver = new DriverClass(proxyCalls,proxyConfig); 20 | } 21 | /** 22 | * 23 | */ 24 | search(query,authorId = false,searchType = 'podcast') { 25 | return this.driver.search(query,authorId,searchType); 26 | } 27 | /** 28 | * 29 | */ 30 | getPodcastDetailedInformation(podCastInfo) { 31 | return this.driver.getPodcastDetailedInformation(podCastInfo); 32 | } 33 | } 34 | export default PodCastService; -------------------------------------------------------------------------------- /app/library/PodcastWallet/PodcastWallet.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Podcast Wallet 3 | */ 4 | class PodcastWallet { 5 | constructor() { 6 | 7 | } 8 | /** 9 | * 10 | */ 11 | static sendValue(valueBlock) { 12 | console.log('sendValue: ' + valueBlock); 13 | console.log(valueBlock); 14 | 15 | if (valueBlock.model && valueBlock.model.type === 'lightning') { 16 | if (valueBlock.model.method === 'keysend') { 17 | 18 | } 19 | } 20 | } 21 | } 22 | export default PodcastWallet; -------------------------------------------------------------------------------- /app/library/WindowManager.js: -------------------------------------------------------------------------------- 1 | class WindowManager { 2 | createWindow(config) { 3 | var newWindow = new BrowserWindow(config); 4 | return newWindow; 5 | } 6 | } 7 | export default WindowManager; -------------------------------------------------------------------------------- /app/library/hooks/useWindowDimensions.js: -------------------------------------------------------------------------------- 1 | import { useState, useEffect } from 'react'; 2 | 3 | function getWindowDimensions() { 4 | const { innerWidth: width, innerHeight: height } = window; 5 | return { 6 | width, 7 | height 8 | }; 9 | } 10 | export default function useWindowDimensions() { 11 | const [windowDimensions, setWindowDimensions] = useState(getWindowDimensions()); 12 | 13 | useEffect(() => { 14 | function handleResize() { 15 | setWindowDimensions(getWindowDimensions()); 16 | } 17 | window.addEventListener('resize', handleResize); 18 | return () => window.removeEventListener('resize', handleResize); 19 | }, []); 20 | 21 | return windowDimensions; 22 | } -------------------------------------------------------------------------------- /app/library/podCastServices/Spotify.js: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | */ 4 | class Spotify { 5 | /** 6 | * 7 | */ 8 | constructor(proxyCalls = false) { 9 | this.proxyCalls = proxyCalls; 10 | } 11 | /** 12 | * 13 | */ 14 | search(query) { 15 | return new Promise((request,resolve) => { 16 | return resolve([]); 17 | }); 18 | } 19 | /** 20 | * 21 | */ 22 | getPodcastDetailedInformation() { 23 | return resolve([]); 24 | } 25 | } 26 | export default Spotify; -------------------------------------------------------------------------------- /app/pages/FeedPage.scss: -------------------------------------------------------------------------------- 1 | .page { 2 | background-color: #f0f2f5; 3 | display: flex; 4 | justify-content: center; 5 | padding-top: 20px; 6 | padding-bottom: 60px; 7 | 8 | .postColumn { 9 | margin-right: 20px; 10 | width: 300px; 11 | } 12 | .rightColumn { 13 | width: 300px; 14 | } 15 | } -------------------------------------------------------------------------------- /app/pages/PodcastHistory.jsx: -------------------------------------------------------------------------------- 1 | import React, { useEffect, useState } from 'react'; 2 | 3 | import SVG from 'react-inlinesvg'; 4 | 5 | import { 6 | IonPage, 7 | IonHeader, 8 | IonToolbar, 9 | IonTitle, 10 | IonButtons, 11 | IonButton, 12 | IonIcon, 13 | IonContent, 14 | IonBackButton, 15 | IonMenuButton, 16 | IonSearchbar, 17 | IonSegment, 18 | IonSegmentButton, 19 | IonLabel, 20 | IonReactRouter, 21 | IonRouterOutlet 22 | } from '@ionic/react'; 23 | 24 | const PodcastHistory = ({}) => { 25 | return ( 26 | 27 | 28 | 29 | 30 | History 31 | 32 | 33 | 34 | 35 | 36 | 37 | Your history 38 | 39 | 40 | 41 | 42 | ); 43 | }; 44 | 45 | export default PodcastHistory; -------------------------------------------------------------------------------- /app/pages/Welcome.css: -------------------------------------------------------------------------------- 1 | .homePage { 2 | background-color: #0176e5; 3 | 4 | /* height: calc(100% - 90px);*/ 5 | } 6 | @media only screen and (max-width: 570px) { 7 | .homePage { 8 | /* height: calc(100% - 60px); */ 9 | } 10 | } 11 | .logo { 12 | float: right; 13 | margin-left: 30px; 14 | margin-bottom: 30px; 15 | } 16 | .welcomeMessage { 17 | background-color: #FFFFFF; 18 | padding: 40px; 19 | border: 1px solid #EEEEEE; 20 | text-align: justify; 21 | line-height: 22px; 22 | max-width: 800px; 23 | } 24 | .paragraphHeadline { 25 | -webkit-text-stroke: 0.4px #1f335e; 26 | } 27 | .subHeadline { 28 | color: #1f335e; 29 | -webkit-text-stroke: 0.7px #1f335e; 30 | margin-top: 20px; 31 | margin-bottom: 10px; 32 | clear: both; 33 | } 34 | .podcastLine { 35 | clear: both; 36 | } 37 | .playButton { 38 | display: inline-block; 39 | min-width: 200px; 40 | height: auto; 41 | padding: 15px; 42 | overflow: hidden; 43 | } 44 | @media (max-width: 480px) { 45 | .homePage { 46 | padding: 0px; 47 | } 48 | .logo { 49 | width: 25vw; 50 | } 51 | .title { 52 | padding: 20px; 53 | } 54 | } -------------------------------------------------------------------------------- /app/pages/styles.scss: -------------------------------------------------------------------------------- 1 | .podfriendAvatar { 2 | 3 | } 4 | .pageHeader { 5 | background-color: #FFFFFF; 6 | border-bottom: 1px solid #dddfe2; 7 | box-shadow: 0px -6px 15px -2px rgba(0,0,0,0.45); 8 | margin-bottom: 10px; 9 | } -------------------------------------------------------------------------------- /app/podfriend.config.js: -------------------------------------------------------------------------------- 1 | 2 | module.exports = { 3 | production: { 4 | api: { 5 | serverURL: "https://api.podfriend.com/" 6 | }, 7 | web: { 8 | proxyPodcastVendorRequests: true 9 | }, 10 | desktop: { 11 | proxyPodcastVendorRequests: true 12 | }, 13 | server: { 14 | proxyPodcastVendorRequests: true 15 | } 16 | }, 17 | development: { 18 | api: { 19 | serverURL: "https://api.podfriend.com/" 20 | }, 21 | web: { 22 | proxyPodcastVendorRequests: true 23 | }, 24 | desktop: { 25 | proxyPodcastVendorRequests: true 26 | }, 27 | server: { 28 | proxyPodcastVendorRequests: true 29 | } 30 | }, 31 | }; -------------------------------------------------------------------------------- /app/redux/actions/audioActions.js: -------------------------------------------------------------------------------- 1 | import { 2 | AUDIO_PLAY, 3 | AUDIO_PAUSE, 4 | AUDIO_REWIND, 5 | AUDIO_FORWARD, 6 | AUDIO_CAN_PLAY, 7 | AUDIO_BUFFERING, 8 | AUDIO_REQUEST_PLAY 9 | } from "../constants/action-types"; 10 | 11 | export function audioPlaying() { 12 | return { 13 | type: AUDIO_PLAY, 14 | payload: false 15 | } 16 | } 17 | export function audioPaused() { 18 | return { 19 | type: AUDIO_PAUSE, 20 | payload: false 21 | } 22 | } 23 | export function audioCanPlay() { 24 | return { 25 | type: AUDIO_CAN_PLAY, 26 | payload: { 27 | 28 | } 29 | }; 30 | } 31 | export function audioBuffering() { 32 | return { 33 | type: AUDIO_BUFFERING, 34 | payload: { 35 | 36 | } 37 | }; 38 | } 39 | 40 | export function audioPlayRequested() { 41 | return { 42 | type: AUDIO_REQUEST_PLAY, 43 | payload: { 44 | 45 | } 46 | }; 47 | } -------------------------------------------------------------------------------- /app/redux/actions/settingsActions.js: -------------------------------------------------------------------------------- 1 | import { 2 | SET_AUDIO_PLAYBACK_SPEED, 3 | SET_CONFIG_OPTION 4 | } from "../constants/setting-types"; 5 | 6 | export function setAudioPlaybackSpeed(playbackSpeed) { 7 | return { 8 | type: SET_AUDIO_PLAYBACK_SPEED, 9 | payload: Number.parseFloat(playbackSpeed) 10 | }; 11 | } 12 | 13 | export function setConfigOption(key,value) { 14 | return { 15 | type: SET_CONFIG_OPTION, 16 | payload: { 17 | key: key, 18 | value: value 19 | } 20 | }; 21 | } -------------------------------------------------------------------------------- /app/redux/constants/podcast-types.js: -------------------------------------------------------------------------------- 1 | export const PODCAST_SYNC_COMPLETE = 'PODCAST_SYNC_COMPLETE'; 2 | export const EPISODE_SYNC_COMPLETE = 'EPISODE_SYNC_COMPLETE'; 3 | 4 | 5 | export const PODCAST_CONFIG_UPDATE = 'PODCAST_CONFIG_UPDATE'; -------------------------------------------------------------------------------- /app/redux/constants/setting-types.js: -------------------------------------------------------------------------------- 1 | export const SET_AUDIO_PLAYBACK_SPEED = 'SET_AUDIO_PLAYBACK_SPEED'; 2 | export const SET_CONFIG_OPTION = 'SET_CONFIG_OPTION'; -------------------------------------------------------------------------------- /app/redux/constants/ui-types.js: -------------------------------------------------------------------------------- 1 | export const UI_SHOW_SPEED_SETTING_WINDOW = 'UI_SHOW_SPEED_SETTING_WINDOW'; 2 | export const UI_HIDE_SPEED_SETTING_WINDOW = 'UI_HIDE_SPEED_SETTING_WINDOW'; 3 | export const UI_SHOW_SHARE_WINDOW = 'UI_SHOW_SHARE_WINDOW'; 4 | export const UI_SHOW_SLEEPTIMER_WINDOW = 'UI_SHOW_SLEEPTIMER_WINDOW'; 5 | 6 | 7 | export const UI_SHOW_LOGIN = 'UI_SHOW_LOGIN'; 8 | export const UI_HIDE_LOGIN = 'UI_HIDE_LOGIN'; 9 | export const UI_SHOW_FULLPLAYER = 'UI_SHOW_FULLPLAYER'; 10 | export const UI_HIDE_FULLPLAYER = 'UI_HIDE_FULLPLAYER'; 11 | 12 | export const USER_SYNCING = 'USER_SYNCING'; 13 | 14 | export const WALLET_SYNCING = 'WALLET_SYNCING'; 15 | export const WALLET_SYNC_COMPLETE = 'WALLET_SYNC_COMPLETE'; 16 | 17 | export const WALLET_INVOICE_LOAD = 'WALLET_INVOICE_LOAD'; 18 | export const WALLET_INVOICE_SUCCESS = 'WALLET_INVOICE_SUCCESS'; 19 | export const WALLET_INVOICE_ERROR = 'WALLET_INVOICE_ERROR'; 20 | 21 | export const UI_SHOW_WALLET_WINDOW = 'UI_SHOW_WALLET_WINDOW'; -------------------------------------------------------------------------------- /app/redux/constants/user-types.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/redux/constants/user-types.js -------------------------------------------------------------------------------- /app/redux/reducers/rootReducer.js: -------------------------------------------------------------------------------- 1 | import { combineReducers } from "redux"; 2 | 3 | // import { routerReducer } from 'react-router-redux' 4 | 5 | import podcastReducer from './podcastReducer'; 6 | import audioReducer from './audioReducer'; 7 | import userReducer from './userReducer'; 8 | import settingsReducer from './settingsReducer'; 9 | import uiReducer from './uiReducer'; 10 | 11 | 12 | const rootReducer = combineReducers({ 13 | podcast: podcastReducer, 14 | audio: audioReducer, 15 | user: userReducer, 16 | settings: settingsReducer, 17 | ui: uiReducer 18 | // routing: routerReducer 19 | }); 20 | 21 | 22 | export default rootReducer; -------------------------------------------------------------------------------- /app/redux/reducers/settingsReducer.js: -------------------------------------------------------------------------------- 1 | import { 2 | SET_AUDIO_PLAYBACK_SPEED, 3 | SET_CONFIG_OPTION 4 | } from "../constants/setting-types"; 5 | 6 | const initialState = { 7 | audioPlaybackSpeed: 1, 8 | volumeLevel: 1, 9 | value4ValueEnabled: false, 10 | value4ValueOnboarded: false, 11 | defaultBoost: 500, 12 | defaultStreamPerMinuteAmount: 50 13 | }; 14 | 15 | const settingsReducer = (state = initialState, action) => { 16 | if (action.type === SET_AUDIO_PLAYBACK_SPEED) { 17 | return Object.assign({}, state, { 18 | audioPlaybackSpeed: action.payload 19 | }); 20 | } 21 | else if (action.type === SET_CONFIG_OPTION) { 22 | var newState = Object.assign({}, state, { 23 | 24 | }); 25 | 26 | if (action.payload.key) { 27 | newState[action.payload.key] = action.payload.value; 28 | } 29 | return newState; 30 | } 31 | return state; 32 | }; 33 | export default settingsReducer; -------------------------------------------------------------------------------- /app/sounds/crowd-cheer.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/sounds/crowd-cheer.wav -------------------------------------------------------------------------------- /app/sounds/happy-crowd-cheer.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/sounds/happy-crowd-cheer.wav -------------------------------------------------------------------------------- /app/sounds/party-trumpet.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/sounds/party-trumpet.wav -------------------------------------------------------------------------------- /app/theme/common.js: -------------------------------------------------------------------------------- 1 | export default { 2 | fonts: { 3 | body: 'system-ui, sans-serif', 4 | heading: '"Avenir Next", sans-serif', 5 | monospace: 'Menlo, monospace', 6 | }, 7 | colors: { 8 | text: '#000', 9 | background: '#fff', 10 | primary: '#33e', 11 | }, 12 | } -------------------------------------------------------------------------------- /app/theme/podfriend.js: -------------------------------------------------------------------------------- 1 | import { createMuiTheme } from '@material-ui/core/styles' 2 | 3 | const theme = createMuiTheme({ 4 | palette: { 5 | primary: { 500: '#0176e5' }, 6 | }, 7 | toggle: { 8 | thumbOnColor: 'yellow', 9 | trackOnColor: 'red' 10 | } 11 | }) 12 | export default theme -------------------------------------------------------------------------------- /app/web/assets/fonts/roboto-v27-latin-300.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/web/assets/fonts/roboto-v27-latin-300.woff -------------------------------------------------------------------------------- /app/web/assets/fonts/roboto-v27-latin-300.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/web/assets/fonts/roboto-v27-latin-300.woff2 -------------------------------------------------------------------------------- /app/web/assets/fonts/roboto-v27-latin-500.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/web/assets/fonts/roboto-v27-latin-500.woff -------------------------------------------------------------------------------- /app/web/assets/fonts/roboto-v27-latin-500.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/web/assets/fonts/roboto-v27-latin-500.woff2 -------------------------------------------------------------------------------- /app/web/assets/fonts/roboto-v27-latin-700.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/web/assets/fonts/roboto-v27-latin-700.woff -------------------------------------------------------------------------------- /app/web/assets/fonts/roboto-v27-latin-700.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/web/assets/fonts/roboto-v27-latin-700.woff2 -------------------------------------------------------------------------------- /app/web/assets/fonts/roboto-v27-latin-900.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/web/assets/fonts/roboto-v27-latin-900.woff -------------------------------------------------------------------------------- /app/web/assets/fonts/roboto-v27-latin-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/web/assets/fonts/roboto-v27-latin-900.woff2 -------------------------------------------------------------------------------- /app/web/assets/fonts/roboto-v27-latin-italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/web/assets/fonts/roboto-v27-latin-italic.woff -------------------------------------------------------------------------------- /app/web/assets/fonts/roboto-v27-latin-italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/web/assets/fonts/roboto-v27-latin-italic.woff2 -------------------------------------------------------------------------------- /app/web/assets/fonts/roboto-v27-latin-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/web/assets/fonts/roboto-v27-latin-regular.woff -------------------------------------------------------------------------------- /app/web/assets/fonts/roboto-v27-latin-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/app/web/assets/fonts/roboto-v27-latin-regular.woff2 -------------------------------------------------------------------------------- /capacitor.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "appId": "com.podfriend", 3 | "appName": "podfriend", 4 | "bundledWebRuntime": false, 5 | "npmClient": "yarn", 6 | "webDir": "release/web", 7 | "plugins": { 8 | "SplashScreen": { 9 | "launchAutoHide": false, 10 | "backgroundColor": "#0176e5", 11 | "androidSplashResourceName": "splash", 12 | "androidScaleType": "CENTER_CROP", 13 | "showSpinner": true, 14 | "androidSpinnerStyle": "large", 15 | "iosSpinnerStyle": "small", 16 | "spinnerColor": "#999999", 17 | "splashFullScreen": true, 18 | "splashImmersive": true, 19 | "layoutName": "launch_screen", 20 | "useDialog": false 21 | } 22 | }, 23 | "cordova": {} 24 | } 25 | -------------------------------------------------------------------------------- /configs/mac/entitlements.mac.inherit.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.security.app-sandbox 6 | 7 | com.apple.security.inherit 8 | 9 | 10 | -------------------------------------------------------------------------------- /configs/mac/entitlements.mac.plist.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.security.app-sandbox 6 | 7 | 8 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-background-mode/appbeep.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/cordova/cordova-plugin-background-mode/appbeep.wav -------------------------------------------------------------------------------- /cordova/cordova-plugin-background-mode/appbeep.wma: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/cordova/cordova-plugin-background-mode/appbeep.wma -------------------------------------------------------------------------------- /cordova/cordova-plugin-cors/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cordova-plugin-cors", 3 | "version": "1.2.1", 4 | "author": { 5 | "email": "ddaeke-npmjs@yahoo.com", 6 | "name": "Raphaël Calabro" 7 | }, 8 | "contributors": [ 9 | { 10 | "email": "rory.cn@gmail.com", 11 | "name": "Rory Ye" 12 | } 13 | ], 14 | "description": "Allow CORS requests on iOS with WKWebView.", 15 | "keywords": [ 16 | "cordova", 17 | "cors", 18 | "ecosystem:cordova", 19 | "cordova-ios" 20 | ], 21 | "cordova": { 22 | "id": "cordova-plugin-cors", 23 | "platforms": [ 24 | "ios" 25 | ] 26 | }, 27 | "license": "LGPLv3", 28 | "directories": {}, 29 | "maintainers": [ 30 | { 31 | "email": "ddaeke-npmjs@yahoo.com", 32 | "name": "Raphaël Calabro" 33 | } 34 | ], 35 | "repository": { 36 | "type": "git", 37 | "url": "https://github.com/Raphcal/cordova-plugin-cors" 38 | }, 39 | "scripts": { 40 | "prepare": "tsc" 41 | }, 42 | "devDependencies": { 43 | "typescript": "^2.6.2" 44 | }, 45 | "readme": "ERROR: No README data found!" 46 | } 47 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-cors/plugin.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | CORS 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-cors/src/ios/RCAXMLHttpRequest.h: -------------------------------------------------------------------------------- 1 | // 2 | // RCAXMLHttpRequest.h 3 | // Cordova Plugin CORS 4 | // 5 | // Created by Raphaël Calabro on 12/06/2017. 6 | // 7 | // 8 | 9 | #import 10 | #import 11 | #import 12 | 13 | @interface RCAXMLHttpRequest : CDVPlugin 14 | 15 | - (void)pluginInitialize; 16 | - (void)send:(nonnull CDVInvokedUrlCommand *)command; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-device/NOTICE: -------------------------------------------------------------------------------- 1 | Apache Cordova 2 | Copyright 2012 The Apache Software Foundation 3 | 4 | This product includes software developed at 5 | The Apache Software Foundation (http://www.apache.org/). 6 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-device/src/ios/CDVDevice.h: -------------------------------------------------------------------------------- 1 | /* 2 | Licensed to the Apache Software Foundation (ASF) under one 3 | or more contributor license agreements. See the NOTICE file 4 | distributed with this work for additional information 5 | regarding copyright ownership. The ASF licenses this file 6 | to you under the Apache License, Version 2.0 (the 7 | "License"); you may not use this file except in compliance 8 | with the License. You may obtain a copy of the License at 9 | 10 | http://www.apache.org/licenses/LICENSE-2.0 11 | 12 | Unless required by applicable law or agreed to in writing, 13 | software distributed under the License is distributed on an 14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | KIND, either express or implied. See the License for the 16 | specific language governing permissions and limitations 17 | under the License. 18 | */ 19 | 20 | #import 21 | #import 22 | 23 | @interface CDVDevice : CDVPlugin 24 | {} 25 | 26 | + (NSString*)cordovaVersion; 27 | 28 | - (void)getDeviceInfo:(CDVInvokedUrlCommand*)command; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-device/src/osx/CDVDevice.h: -------------------------------------------------------------------------------- 1 | /* 2 | Licensed to the Apache Software Foundation (ASF) under one 3 | or more contributor license agreements. See the NOTICE file 4 | distributed with this work for additional information 5 | regarding copyright ownership. The ASF licenses this file 6 | to you under the Apache License, Version 2.0 (the 7 | "License"); you may not use this file except in compliance 8 | with the License. You may obtain a copy of the License at 9 | 10 | http://www.apache.org/licenses/LICENSE-2.0 11 | 12 | Unless required by applicable law or agreed to in writing, 13 | software distributed under the License is distributed on an 14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | KIND, either express or implied. See the License for the 16 | specific language governing permissions and limitations 17 | under the License. 18 | */ 19 | 20 | #import 21 | 22 | @interface CDVDevice : CDVPlugin 23 | 24 | + (NSString*) cordovaVersion; 25 | 26 | - (void) getDeviceInfo:(CDVInvokedUrlCommand*)command; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-device/tests/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cordova-plugin-device-tests", 3 | "version": "2.0.3", 4 | "description": "", 5 | "cordova": { 6 | "id": "cordova-plugin-device-tests", 7 | "platforms": [] 8 | }, 9 | "keywords": [ 10 | "ecosystem:cordova" 11 | ], 12 | "author": "", 13 | "license": "Apache 2.0" 14 | } 15 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-file/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "browser": true 3 | , "devel": true 4 | , "bitwise": true 5 | , "undef": true 6 | , "trailing": true 7 | , "quotmark": false 8 | , "indent": 4 9 | , "unused": "vars" 10 | , "latedef": "nofunc" 11 | , "globals": { 12 | "module": false, 13 | "exports": false, 14 | "require": false, 15 | "cordova": false, 16 | "File": true, 17 | "FileSystem": true, 18 | "FileReader": true, 19 | "FileWriter": true, 20 | "FileError": true, 21 | "LocalFileSystem": true, 22 | "Metadata": true, 23 | "Flags": true, 24 | "DirectoryEntry": true, 25 | "resolveLocalFileSystemURL": false, 26 | "requestFileSystem": true, 27 | "FILESYSTEM_PREFIX": true, 28 | "FILESYSTEM_PROTOCOL": true 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-file/.ratignore: -------------------------------------------------------------------------------- 1 | asset-test.txt 2 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-file/NOTICE: -------------------------------------------------------------------------------- 1 | Apache Cordova 2 | Copyright 2012 The Apache Software Foundation 3 | 4 | This product includes software developed at 5 | The Apache Software Foundation (http://www.apache.org/). 6 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-file/tests/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cordova-plugin-file-tests", 3 | "version": "6.0.2", 4 | "description": "", 5 | "cordova": { 6 | "id": "cordova-plugin-file-tests", 7 | "platforms": [ 8 | "android" 9 | ] 10 | }, 11 | "keywords": [ 12 | "ecosystem:cordova", 13 | "cordova-android" 14 | ], 15 | "author": "", 16 | "license": "Apache-2.0" 17 | } 18 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-file/tests/www/fixtures/asset-test/asset-test.txt: -------------------------------------------------------------------------------- 1 | This file is here for testing purposes -------------------------------------------------------------------------------- /cordova/cordova-plugin-file/www/LocalFileSystem.js: -------------------------------------------------------------------------------- 1 | /* 2 | * 3 | * Licensed to the Apache Software Foundation (ASF) under one 4 | * or more contributor license agreements. See the NOTICE file 5 | * distributed with this work for additional information 6 | * regarding copyright ownership. The ASF licenses this file 7 | * to you under the Apache License, Version 2.0 (the 8 | * "License"); you may not use this file except in compliance 9 | * with the License. You may obtain a copy of the License at 10 | * 11 | * http://www.apache.org/licenses/LICENSE-2.0 12 | * 13 | * Unless required by applicable law or agreed to in writing, 14 | * software distributed under the License is distributed on an 15 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 | * KIND, either express or implied. See the License for the 17 | * specific language governing permissions and limitations 18 | * under the License. 19 | * 20 | */ 21 | 22 | exports.TEMPORARY = 0; 23 | exports.PERSISTENT = 1; 24 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-file/www/fileSystems.js: -------------------------------------------------------------------------------- 1 | /* 2 | * 3 | * Licensed to the Apache Software Foundation (ASF) under one 4 | * or more contributor license agreements. See the NOTICE file 5 | * distributed with this work for additional information 6 | * regarding copyright ownership. The ASF licenses this file 7 | * to you under the Apache License, Version 2.0 (the 8 | * "License"); you may not use this file except in compliance 9 | * with the License. You may obtain a copy of the License at 10 | * 11 | * http://www.apache.org/licenses/LICENSE-2.0 12 | * 13 | * Unless required by applicable law or agreed to in writing, 14 | * software distributed under the License is distributed on an 15 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 | * KIND, either express or implied. See the License for the 17 | * specific language governing permissions and limitations 18 | * under the License. 19 | * 20 | */ 21 | 22 | // Overridden by Android, BlackBerry 10 and iOS to populate fsMap. 23 | module.exports.getFs = function (name, callback) { 24 | callback(null); 25 | }; 26 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-media/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "browser": true 3 | , "devel": true 4 | , "bitwise": true 5 | , "undef": true 6 | , "trailing": true 7 | , "quotmark": false 8 | , "indent": 4 9 | , "unused": "vars" 10 | , "latedef": "nofunc" 11 | , "globals": { 12 | "module": false, 13 | "exports": false, 14 | "require": false, 15 | "cordova": true 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-media/NOTICE: -------------------------------------------------------------------------------- 1 | Apache Cordova 2 | Copyright 2012 The Apache Software Foundation 3 | 4 | This product includes software developed at 5 | The Apache Software Foundation (http://www.apache.org/). 6 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-media/tests/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cordova-plugin-media-tests", 3 | "version": "5.0.3", 4 | "description": "", 5 | "cordova": { 6 | "id": "cordova-plugin-media-tests", 7 | "platforms": [] 8 | }, 9 | "keywords": [ 10 | "ecosystem:cordova" 11 | ], 12 | "author": "", 13 | "license": "Apache-2.0" 14 | } 15 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-music-controls2/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cordova-plugin-music-controls2", 3 | "version": "3.0.5", 4 | "description": "Music controls for Cordova apps", 5 | "cordova": { 6 | "id": "cordova-plugin-music-controls2", 7 | "platforms": ["android", "windows", "ios"] 8 | }, 9 | "repository": { 10 | "type": "git", 11 | "url": "git+https://github.com/ghenry22/cordova-plugin-music-controls2.git" 12 | }, 13 | "keywords": [ 14 | "cordova", 15 | "music", 16 | "controller", 17 | "controls", 18 | "media", 19 | "plugin", 20 | "notification", 21 | "ecosystem:cordova", 22 | "cordova-android", 23 | "cordova-windows" 24 | ], 25 | "engines": [ 26 | { 27 | "name": "cordova", 28 | "version": ">=4.0.0" 29 | } 30 | ], 31 | "author": "ghenry22", 32 | "license": "MIT", 33 | "bugs": { 34 | "url": "https://github.com/ghenry22/cordova-plugin-music-controls2/issues" 35 | }, 36 | "homepage": 37 | "https://github.com/ghenry22/cordova-plugin-music-controls2#readme" 38 | } 39 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-music-controls2/src/android/KillBinder.java: -------------------------------------------------------------------------------- 1 | package com.homerours.musiccontrols; 2 | 3 | import android.app.Service; 4 | import android.os.Binder; 5 | 6 | public class KillBinder extends Binder { 7 | public final Service service; 8 | 9 | public KillBinder(Service service) { 10 | this.service = service; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-music-controls2/src/ios/MainViewController+MusicControls.h: -------------------------------------------------------------------------------- 1 | // 2 | // MainViewController+MusicControls.h 3 | // 4 | // 5 | // Created by Juan Gonzalez on 12/17/16. 6 | // 7 | // 8 | 9 | #ifndef MainViewController_MusicControls_h 10 | #define MainViewController_MusicControls_h 11 | 12 | #import "CDVViewController.h" 13 | 14 | @interface CDVViewController (MusicControls) 15 | 16 | @end 17 | 18 | 19 | #endif /* MainViewController_MusicControls_h */ 20 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-music-controls2/src/ios/MainViewController+MusicControls.m: -------------------------------------------------------------------------------- 1 | // 2 | // MainViewController+MusicControls.m 3 | // 4 | // 5 | // Created by Juan Gonzalez on 12/17/16. 6 | // 7 | // 8 | 9 | #import 10 | 11 | 12 | #import "MainViewController+MusicControls.h" 13 | 14 | @implementation CDVViewController (MusicControls) 15 | 16 | - (void) remoteControlReceivedWithEvent: (UIEvent *) receivedEvent { 17 | [[NSNotificationCenter defaultCenter] postNotificationName:@"musicControlsEventNotification" object:receivedEvent]; 18 | } 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /cordova/cordova-plugin-music-controls2/src/ios/MusicControlsInfo.h: -------------------------------------------------------------------------------- 1 | // 2 | // MusicControlsInfo.h 3 | // 4 | // 5 | // Created by Juan Gonzalez on 12/17/16. 6 | // 7 | // 8 | 9 | #ifndef MusicControlsInfo_h 10 | #define MusicControlsInfo_h 11 | 12 | #import 13 | 14 | @interface MusicControlsInfo : NSObject {} 15 | 16 | @property NSString * artist; 17 | @property NSString * track; 18 | @property NSString * album; 19 | @property NSString * ticker; 20 | @property NSString * cover; 21 | @property NSUInteger duration; 22 | @property NSUInteger elapsed; 23 | @property bool isPlaying; 24 | @property bool hasPrev; 25 | @property bool hasNext; 26 | @property bool hasSkipForward; 27 | @property bool hasSkipBackward; 28 | @property bool hasScrubbing; 29 | @property NSUInteger skipForwardInterval; 30 | @property NSUInteger skipBackwardInterval; 31 | @property bool dismissable; 32 | 33 | - (id) initWithDictionary: (NSDictionary *) dictionary; 34 | 35 | @end 36 | 37 | #endif /* MusicControlsInfo_h */ 38 | -------------------------------------------------------------------------------- /internals/guide-debug-ios.txt: -------------------------------------------------------------------------------- 1 | Make sure iTunes is open 2 | Make sure phone is connected through a lightning/usb cable 3 | 4 | # run ios_webkit_debug_proxy 5 | run remotedebug_ios_webkit_adapter --port=9000 6 | 7 | visit chrome://inspect -------------------------------------------------------------------------------- /internals/scripts/CheckBuiltsExist.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | // Check if the renderer and main bundles are built 3 | import path from 'path'; 4 | import chalk from 'chalk'; 5 | import fs from 'fs'; 6 | 7 | function CheckBuildsExist() { 8 | const mainPath = path.join(__dirname, '..', '..', 'app', 'main.prod.js'); 9 | const rendererPath = path.join( 10 | __dirname, 11 | '..', 12 | '..', 13 | 'app', 14 | 'dist', 15 | 'renderer.prod.js' 16 | ); 17 | 18 | if (!fs.existsSync(mainPath)) { 19 | throw new Error( 20 | chalk.whiteBright.bgRed.bold( 21 | 'The main process is not built yet. Build it by running "yarn build-main"' 22 | ) 23 | ); 24 | } 25 | 26 | if (!fs.existsSync(rendererPath)) { 27 | throw new Error( 28 | chalk.whiteBright.bgRed.bold( 29 | 'The renderer process is not built yet. Build it by running "yarn build-renderer"' 30 | ) 31 | ); 32 | } 33 | } 34 | 35 | CheckBuildsExist(); 36 | -------------------------------------------------------------------------------- /internals/scripts/CheckNodeEnv.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | const chalk = require('chalk'); 3 | 4 | module.exports = function CheckNodeEnv(expectedEnv) { 5 | if (!expectedEnv) { 6 | throw new Error('"expectedEnv" not set'); 7 | } 8 | 9 | if (process.env.NODE_ENV !== expectedEnv) { 10 | console.log( 11 | chalk.whiteBright.bgRed.bold( 12 | `"process.env.NODE_ENV" must be "${expectedEnv}" to use this webpack config` 13 | ) 14 | ); 15 | process.exit(2); 16 | } 17 | } -------------------------------------------------------------------------------- /internals/scripts/CheckPortInUse.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | import chalk from 'chalk'; 3 | import detectPort from 'detect-port'; 4 | 5 | (function CheckPortInUse() { 6 | const port: string = process.env.PORT || '1212'; 7 | 8 | detectPort(port, (err: ?Error, availablePort: number) => { 9 | if (port !== String(availablePort)) { 10 | throw new Error( 11 | chalk.whiteBright.bgRed.bold( 12 | `Port "${port}" on "localhost" is already in use. Please use another port. ex: PORT=4343 yarn dev` 13 | ) 14 | ); 15 | } else { 16 | process.exit(0); 17 | } 18 | }); 19 | })(); 20 | -------------------------------------------------------------------------------- /internals/scripts/generateIcons.js: -------------------------------------------------------------------------------- 1 | const run = require('cordova-res'); 2 | 3 | run(); -------------------------------------------------------------------------------- /ios/.gitignore: -------------------------------------------------------------------------------- 1 | # NPM renames .gitignore to .npmignore 2 | # In order to prevent that, we remove the initial "." 3 | # And the CLI then renames it 4 | 5 | App/build 6 | App/Pods 7 | App/public 8 | App/Podfile.lock 9 | xcuserdata 10 | 11 | # Cordova plugins for Capacitor 12 | capacitor-cordova-ios-plugins 13 | 14 | -------------------------------------------------------------------------------- /ios/App/App.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ios/App/App.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ios/App/App.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ios/App/App.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreviewsEnabled 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-20x20@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-20x20@1x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-20x20@2x-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-20x20@2x-1.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-20x20@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-20x20@2x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-20x20@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-20x20@3x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-29x29@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-29x29@1x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-29x29@2x-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-29x29@2x-1.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-29x29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-29x29@2x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-29x29@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-29x29@3x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-40x40@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-40x40@1x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-40x40@2x-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-40x40@2x-1.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-40x40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-40x40@2x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-40x40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-40x40@3x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-60x60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-60x60@2x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-60x60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-60x60@3x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-76x76@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-76x76@1x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-76x76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-76x76@2x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-83.5x83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-83.5x83.5@2x.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/Splash.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "splash-2732x2732-2.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "splash-2732x2732-1.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "splash-2732x2732.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/Splash.imageset/splash-2732x2732-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/Splash.imageset/splash-2732x2732-1.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/Splash.imageset/splash-2732x2732-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/Splash.imageset/splash-2732x2732-2.png -------------------------------------------------------------------------------- /ios/App/App/Assets.xcassets/Splash.imageset/splash-2732x2732.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/ios/App/App/Assets.xcassets/Splash.imageset/splash-2732x2732.png -------------------------------------------------------------------------------- /ios/App/App/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /ios/App/App/capacitor.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "appId": "com.podfriend", 3 | "appName": "podfriend", 4 | "bundledWebRuntime": false, 5 | "npmClient": "yarn", 6 | "webDir": "release/web", 7 | "plugins": { 8 | "SplashScreen": { 9 | "launchShowDuration": 0 10 | } 11 | }, 12 | "cordova": {} 13 | } 14 | -------------------------------------------------------------------------------- /ios/App/App/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /ios/App/Podfile: -------------------------------------------------------------------------------- 1 | platform :ios, '14.0' 2 | use_frameworks! 3 | 4 | # workaround to avoid Xcode caching of Pods that requires 5 | # Product -> Clean Build Folder after new Cordova plugins installed 6 | # Requires CocoaPods 1.6 or newer 7 | install! 'cocoapods', :disable_input_output_paths => true 8 | 9 | def capacitor_pods 10 | # Automatic Capacitor Pod dependencies, do not delete 11 | pod 'Capacitor', :path => '../../node_modules/@capacitor/ios' 12 | pod 'CapacitorCordova', :path => '../../node_modules/@capacitor/ios' 13 | pod 'CapacitorStatusBar', :path => '../../node_modules/@capacitor/status-bar' 14 | pod 'CordovaPlugins', :path => '../capacitor-cordova-ios-plugins' 15 | pod 'CordovaPluginsResources', :path => '../capacitor-cordova-ios-plugins' 16 | # Do not delete 17 | end 18 | 19 | target 'Podfriend' do 20 | capacitor_pods 21 | # Add your Pods here 22 | end 23 | -------------------------------------------------------------------------------- /ios/App/Podfriend.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | aps-environment 6 | development 7 | inter-app-audio 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /resources/adaptive-icon.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/adaptive-icon.psd -------------------------------------------------------------------------------- /resources/android keys/password for keys.txt: -------------------------------------------------------------------------------- 1 | password is your normal nedbrud with money and the name of the store -------------------------------------------------------------------------------- /resources/android keys/playstore.jks: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android keys/playstore.jks -------------------------------------------------------------------------------- /resources/android/icon/drawable-hdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/drawable-hdpi-icon.png -------------------------------------------------------------------------------- /resources/android/icon/drawable-ldpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/drawable-ldpi-icon.png -------------------------------------------------------------------------------- /resources/android/icon/drawable-mdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/drawable-mdpi-icon.png -------------------------------------------------------------------------------- /resources/android/icon/drawable-xhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/drawable-xhdpi-icon.png -------------------------------------------------------------------------------- /resources/android/icon/drawable-xxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/drawable-xxhdpi-icon.png -------------------------------------------------------------------------------- /resources/android/icon/drawable-xxxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/drawable-xxxhdpi-icon.png -------------------------------------------------------------------------------- /resources/android/icon/hdpi-background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/hdpi-background.png -------------------------------------------------------------------------------- /resources/android/icon/hdpi-foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/hdpi-foreground.png -------------------------------------------------------------------------------- /resources/android/icon/ldpi-background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/ldpi-background.png -------------------------------------------------------------------------------- /resources/android/icon/ldpi-foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/ldpi-foreground.png -------------------------------------------------------------------------------- /resources/android/icon/mdpi-background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/mdpi-background.png -------------------------------------------------------------------------------- /resources/android/icon/mdpi-foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/mdpi-foreground.png -------------------------------------------------------------------------------- /resources/android/icon/xhdpi-background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/xhdpi-background.png -------------------------------------------------------------------------------- /resources/android/icon/xhdpi-foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/xhdpi-foreground.png -------------------------------------------------------------------------------- /resources/android/icon/xxhdpi-background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/xxhdpi-background.png -------------------------------------------------------------------------------- /resources/android/icon/xxhdpi-foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/xxhdpi-foreground.png -------------------------------------------------------------------------------- /resources/android/icon/xxxhdpi-background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/xxxhdpi-background.png -------------------------------------------------------------------------------- /resources/android/icon/xxxhdpi-foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/icon/xxxhdpi-foreground.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-land-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/splash/drawable-land-hdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-land-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/splash/drawable-land-ldpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-land-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/splash/drawable-land-mdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-land-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/splash/drawable-land-xhdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-land-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/splash/drawable-land-xxhdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-land-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/splash/drawable-land-xxxhdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-port-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/splash/drawable-port-hdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-port-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/splash/drawable-port-ldpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-port-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/splash/drawable-port-mdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-port-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/splash/drawable-port-xhdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-port-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/splash/drawable-port-xxhdpi-screen.png -------------------------------------------------------------------------------- /resources/android/splash/drawable-port-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/android/splash/drawable-port-xxxhdpi-screen.png -------------------------------------------------------------------------------- /resources/controls/play.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /resources/icon-background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icon-background.png -------------------------------------------------------------------------------- /resources/icon-foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icon-foreground.png -------------------------------------------------------------------------------- /resources/icon-old.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icon-old.ico -------------------------------------------------------------------------------- /resources/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icon.ico -------------------------------------------------------------------------------- /resources/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icon.png -------------------------------------------------------------------------------- /resources/icon_border.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icon_border.png -------------------------------------------------------------------------------- /resources/icons/1024x1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/1024x1024.png -------------------------------------------------------------------------------- /resources/icons/128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/128x128.png -------------------------------------------------------------------------------- /resources/icons/16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/16x16.png -------------------------------------------------------------------------------- /resources/icons/192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/192x192.png -------------------------------------------------------------------------------- /resources/icons/24x24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/24x24.png -------------------------------------------------------------------------------- /resources/icons/256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/256x256.png -------------------------------------------------------------------------------- /resources/icons/32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/32x32.png -------------------------------------------------------------------------------- /resources/icons/48x48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/48x48.png -------------------------------------------------------------------------------- /resources/icons/512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/512x512.png -------------------------------------------------------------------------------- /resources/icons/64x64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/64x64.png -------------------------------------------------------------------------------- /resources/icons/96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/96x96.png -------------------------------------------------------------------------------- /resources/icons/AppIcons.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons.zip -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/100.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/1024.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/114.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/114.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/120.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/128.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/144.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/152.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/16.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/167.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/167.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/172.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/172.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/180.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/196.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/196.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/20.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/216.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/216.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/256.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/29.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/32.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/40.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/48.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/50.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/512.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/55.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/55.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/57.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/57.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/58.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/58.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/60.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/64.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/72.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/76.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/80.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/80.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/87.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/87.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/88.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/Assets.xcassets/AppIcon.appiconset/88.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/appstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/appstore.png -------------------------------------------------------------------------------- /resources/icons/AppIcons/playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/AppIcons/playstore.png -------------------------------------------------------------------------------- /resources/icons/maskable_1400x1400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/maskable_1400x1400.png -------------------------------------------------------------------------------- /resources/icons/maskable_192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/maskable_192x192.png -------------------------------------------------------------------------------- /resources/icons/maskable_256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/maskable_256x256.png -------------------------------------------------------------------------------- /resources/icons/maskable_300x300.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/maskable_300x300.png -------------------------------------------------------------------------------- /resources/icons/maskable_512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/maskable_512x512.png -------------------------------------------------------------------------------- /resources/icons/maskable_closer_512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/maskable_closer_512x512.png -------------------------------------------------------------------------------- /resources/icons/maskable_closer_57x57.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/maskable_closer_57x57.png -------------------------------------------------------------------------------- /resources/icons/podfriend.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/podfriend.icns -------------------------------------------------------------------------------- /resources/icons/twitter_1024x1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/icons/twitter_1024x1024.png -------------------------------------------------------------------------------- /resources/ios keys/podfriend.p12: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios keys/podfriend.p12 -------------------------------------------------------------------------------- /resources/ios/icon/icon-1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-1024.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-108@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-108@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-20.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-20@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-20@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-20@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-20@3x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-24@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-24@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-27.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-27.5@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-29.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-29@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-29@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-29@3x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-40.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-40@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-40@3x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-44@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-44@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-50.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-50@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-50@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-60.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-60@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-60@3x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-72.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-72@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-72@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-76.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-76@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-83.5@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-86@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-86@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon-98@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon-98@2x.png -------------------------------------------------------------------------------- /resources/ios/icon/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon.png -------------------------------------------------------------------------------- /resources/ios/icon/icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/icon/icon@2x.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-1792h~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-1792h~iphone.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-2436h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-2436h.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-2688h~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-2688h~iphone.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-568h@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-568h@2x~iphone.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-667h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-667h.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-736h.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Landscape-1792h~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-Landscape-1792h~iphone.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Landscape-2436h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-Landscape-2436h.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Landscape-2688h~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-Landscape-2688h~iphone.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Landscape-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-Landscape-736h.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Landscape@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-Landscape@2x~ipad.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Landscape@~ipadpro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-Landscape@~ipadpro.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Landscape~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-Landscape~ipad.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Portrait@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-Portrait@2x~ipad.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Portrait@~ipadpro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-Portrait@~ipadpro.png -------------------------------------------------------------------------------- /resources/ios/splash/Default-Portrait~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default-Portrait~ipad.png -------------------------------------------------------------------------------- /resources/ios/splash/Default@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default@2x~iphone.png -------------------------------------------------------------------------------- /resources/ios/splash/Default@2x~universal~anyany.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default@2x~universal~anyany.png -------------------------------------------------------------------------------- /resources/ios/splash/Default~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/ios/splash/Default~iphone.png -------------------------------------------------------------------------------- /resources/logo/PODFRIEND-LOGO.ai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/logo/PODFRIEND-LOGO.ai -------------------------------------------------------------------------------- /resources/logo/PodFriend.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/logo/PodFriend.psd -------------------------------------------------------------------------------- /resources/logo/podfriend_logo_128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/logo/podfriend_logo_128x128.png -------------------------------------------------------------------------------- /resources/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/splash.png -------------------------------------------------------------------------------- /resources/splash.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/splash.psd -------------------------------------------------------------------------------- /resources/windows/icon/SmallTile.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/SmallTile.scale-100.png -------------------------------------------------------------------------------- /resources/windows/icon/SmallTile.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/SmallTile.scale-125.png -------------------------------------------------------------------------------- /resources/windows/icon/SmallTile.scale-140.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/SmallTile.scale-140.png -------------------------------------------------------------------------------- /resources/windows/icon/SmallTile.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/SmallTile.scale-150.png -------------------------------------------------------------------------------- /resources/windows/icon/SmallTile.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/SmallTile.scale-200.png -------------------------------------------------------------------------------- /resources/windows/icon/SmallTile.scale-240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/SmallTile.scale-240.png -------------------------------------------------------------------------------- /resources/windows/icon/SmallTile.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/SmallTile.scale-400.png -------------------------------------------------------------------------------- /resources/windows/icon/Square150x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square150x150Logo.scale-100.png -------------------------------------------------------------------------------- /resources/windows/icon/Square150x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square150x150Logo.scale-125.png -------------------------------------------------------------------------------- /resources/windows/icon/Square150x150Logo.scale-140.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square150x150Logo.scale-140.png -------------------------------------------------------------------------------- /resources/windows/icon/Square150x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square150x150Logo.scale-150.png -------------------------------------------------------------------------------- /resources/windows/icon/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /resources/windows/icon/Square150x150Logo.scale-240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square150x150Logo.scale-240.png -------------------------------------------------------------------------------- /resources/windows/icon/Square150x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square150x150Logo.scale-400.png -------------------------------------------------------------------------------- /resources/windows/icon/Square310x310Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square310x310Logo.scale-100.png -------------------------------------------------------------------------------- /resources/windows/icon/Square310x310Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square310x310Logo.scale-125.png -------------------------------------------------------------------------------- /resources/windows/icon/Square310x310Logo.scale-140.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square310x310Logo.scale-140.png -------------------------------------------------------------------------------- /resources/windows/icon/Square310x310Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square310x310Logo.scale-150.png -------------------------------------------------------------------------------- /resources/windows/icon/Square310x310Logo.scale-180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square310x310Logo.scale-180.png -------------------------------------------------------------------------------- /resources/windows/icon/Square310x310Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square310x310Logo.scale-200.png -------------------------------------------------------------------------------- /resources/windows/icon/Square310x310Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square310x310Logo.scale-400.png -------------------------------------------------------------------------------- /resources/windows/icon/Square44x44Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square44x44Logo.scale-100.png -------------------------------------------------------------------------------- /resources/windows/icon/Square44x44Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square44x44Logo.scale-125.png -------------------------------------------------------------------------------- /resources/windows/icon/Square44x44Logo.scale-140.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square44x44Logo.scale-140.png -------------------------------------------------------------------------------- /resources/windows/icon/Square44x44Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square44x44Logo.scale-150.png -------------------------------------------------------------------------------- /resources/windows/icon/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /resources/windows/icon/Square44x44Logo.scale-240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square44x44Logo.scale-240.png -------------------------------------------------------------------------------- /resources/windows/icon/Square44x44Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Square44x44Logo.scale-400.png -------------------------------------------------------------------------------- /resources/windows/icon/StoreLogo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/StoreLogo.scale-100.png -------------------------------------------------------------------------------- /resources/windows/icon/StoreLogo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/StoreLogo.scale-125.png -------------------------------------------------------------------------------- /resources/windows/icon/StoreLogo.scale-140.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/StoreLogo.scale-140.png -------------------------------------------------------------------------------- /resources/windows/icon/StoreLogo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/StoreLogo.scale-150.png -------------------------------------------------------------------------------- /resources/windows/icon/StoreLogo.scale-180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/StoreLogo.scale-180.png -------------------------------------------------------------------------------- /resources/windows/icon/StoreLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/StoreLogo.scale-200.png -------------------------------------------------------------------------------- /resources/windows/icon/StoreLogo.scale-240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/StoreLogo.scale-240.png -------------------------------------------------------------------------------- /resources/windows/icon/StoreLogo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/StoreLogo.scale-400.png -------------------------------------------------------------------------------- /resources/windows/icon/Wide310x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Wide310x150Logo.scale-100.png -------------------------------------------------------------------------------- /resources/windows/icon/Wide310x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Wide310x150Logo.scale-125.png -------------------------------------------------------------------------------- /resources/windows/icon/Wide310x150Logo.scale-140.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Wide310x150Logo.scale-140.png -------------------------------------------------------------------------------- /resources/windows/icon/Wide310x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Wide310x150Logo.scale-150.png -------------------------------------------------------------------------------- /resources/windows/icon/Wide310x150Logo.scale-180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Wide310x150Logo.scale-180.png -------------------------------------------------------------------------------- /resources/windows/icon/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /resources/windows/icon/Wide310x150Logo.scale-240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Wide310x150Logo.scale-240.png -------------------------------------------------------------------------------- /resources/windows/icon/Wide310x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Wide310x150Logo.scale-400.png -------------------------------------------------------------------------------- /resources/windows/icon/Wide310x150Logo.scale-80.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/icon/Wide310x150Logo.scale-80.png -------------------------------------------------------------------------------- /resources/windows/splash/Splash.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/splash/Splash.scale-100.png -------------------------------------------------------------------------------- /resources/windows/splash/Splash.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/splash/Splash.scale-125.png -------------------------------------------------------------------------------- /resources/windows/splash/Splash.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/splash/Splash.scale-150.png -------------------------------------------------------------------------------- /resources/windows/splash/Splash.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/splash/Splash.scale-200.png -------------------------------------------------------------------------------- /resources/windows/splash/Splash.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinMouritzen/Podfriend/41e79c7a7bb2b8527732e2a495f183912d831bfd/resources/windows/splash/Splash.scale-400.png --------------------------------------------------------------------------------