├── .github └── workflows │ ├── swift-format.yml │ ├── test.yml │ └── web.yml ├── .gitignore ├── .swift-format ├── CHANGELOG.md ├── ExportOptions.plist ├── Fomalhaut2.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ ├── IDEWorkspaceChecks.plist │ │ ├── WorkspaceSettings.xcsettings │ │ └── swiftpm │ │ └── Package.resolved └── xcshareddata │ ├── IDETemplateMacros.plist │ └── xcschemes │ ├── Fomalhaut2.xcscheme │ └── Shared.xcscheme ├── Fomalhaut2 ├── AppDelegate.swift ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ ├── Contents.json │ │ ├── Icon-128.png │ │ ├── Icon-128@2x.png │ │ ├── Icon-16.png │ │ ├── Icon-16@2x.png │ │ ├── Icon-256.png │ │ ├── Icon-256@2x.png │ │ ├── Icon-32.png │ │ ├── Icon-32@2x.png │ │ ├── Icon-512.png │ │ └── Icon-512@2x.png │ ├── Contents.json │ ├── down.imageset │ │ ├── Contents.json │ │ ├── down.png │ │ └── down@2x.png │ ├── first.imageset │ │ ├── Contents.json │ │ ├── first.png │ │ └── first@2x.png │ ├── left.to.right.imageset │ │ ├── Contents.json │ │ ├── left.to.right.png │ │ └── left.to.right@2x.png │ ├── like.imageset │ │ ├── Contents.json │ │ ├── heart.png │ │ └── heart@2x.png │ ├── right.to.left.imageset │ │ ├── Contents.json │ │ ├── right.to.left.png │ │ └── right.to.left@2x.png │ └── up.imageset │ │ ├── Contents.json │ │ ├── up.png │ │ └── up@2x.png ├── Base.lproj │ ├── Book.storyboard │ ├── BookCollection.storyboard │ ├── FilterList.storyboard │ ├── Localizable.strings │ ├── Main.storyboard │ ├── Preferences.storyboard │ ├── ProgressViewController.xib │ └── WebSharingViewController.xib ├── Book.swift ├── BookCollectionViewController.swift ├── BookCollectionViewItem.swift ├── BookCollectionViewItem.xib ├── BookDocument.swift ├── BookViewStyle.swift ├── BookWindowController.swift ├── Collection.swift ├── CollectionContent.swift ├── CollectionOrder.swift ├── CollectionViewHeaderView.swift ├── CollectionViewHeaderView.xib ├── Credits.rtf ├── Filter.swift ├── FilterListView.swift ├── FilterListViewController.swift ├── Fomalhaut2.entitlements ├── ImageCache.swift ├── Info.plist ├── MainStackViewController.swift ├── MainWindowController.swift ├── NSCollectionView+Realm.swift ├── NSImage+Resize.swift ├── NSOutlineView+Realm.swift ├── NSTableView+Realm.swift ├── Preferences.swift ├── PreferencesViewController.swift ├── ProgressViewController.swift ├── Realm+ThreadLocal.swift ├── Schema.swift ├── ScrollDirection.swift ├── SpreadPageViewController.swift ├── WebSharing.swift ├── WebSharingViewController.swift ├── defaultThumbnail.jpg └── ja.lproj │ ├── Book.strings │ ├── BookCollection.strings │ ├── FilterList.strings │ ├── InfoPlist.strings │ ├── Localizable.strings │ ├── Main.strings │ ├── Preferences.strings │ ├── ProgressViewController.strings │ └── WebSharingViewController.strings ├── Fomalhaut2QuickLook ├── Base.lproj │ └── PreviewViewController.xib ├── Fomalhaut2QuickLook.entitlements ├── Info.plist └── PreviewViewController.swift ├── Fomalhaut2Tests ├── BookTests.swift ├── CollectionContentTests.swift ├── Info.plist └── fixture │ └── empty.zip ├── LICENSE ├── Makefile ├── README.md ├── Shared ├── Archiver.swift ├── ArchiverError.swift ├── ArchiverImage.swift ├── BookImageView.swift ├── FolderArchiver.swift ├── Info.plist ├── Log.swift ├── PageOrder.swift ├── PdfArchiver.swift ├── RarArchiver.swift ├── SevenZipArchiver.swift └── ZipArchiver.swift └── web ├── .eslintrc.cjs ├── .gitignore ├── .husky └── pre-commit ├── .lintstagedrc.json ├── .prettierrc.json ├── favicon.ico ├── index.html ├── package.json ├── pnpm-lock.yaml ├── src ├── components │ ├── AddToCollection.tsx │ ├── App.tsx │ ├── Book.tsx │ ├── Collection.tsx │ ├── Cover.tsx │ ├── Filter.tsx │ ├── HorizontalBookView.tsx │ ├── Layout.tsx │ ├── Library.tsx │ ├── ListItemLink.tsx │ ├── NavigationPage.tsx │ ├── PageSliderDialog.tsx │ ├── Routes.tsx │ └── VerticalBookView.tsx ├── domain │ ├── book.ts │ ├── collection.ts │ └── filter.ts ├── index.tsx ├── message.ts ├── reducer.ts └── theme.ts ├── tsconfig.json └── vite.config.ts /.github/workflows/swift-format.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/.github/workflows/swift-format.yml -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.github/workflows/web.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/.github/workflows/web.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/.gitignore -------------------------------------------------------------------------------- /.swift-format: -------------------------------------------------------------------------------- 1 | { 2 | "lineLength" : 120 3 | } 4 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /ExportOptions.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/ExportOptions.plist -------------------------------------------------------------------------------- /Fomalhaut2.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /Fomalhaut2.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Fomalhaut2.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /Fomalhaut2.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings -------------------------------------------------------------------------------- /Fomalhaut2.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved -------------------------------------------------------------------------------- /Fomalhaut2.xcodeproj/xcshareddata/IDETemplateMacros.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2.xcodeproj/xcshareddata/IDETemplateMacros.plist -------------------------------------------------------------------------------- /Fomalhaut2.xcodeproj/xcshareddata/xcschemes/Fomalhaut2.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2.xcodeproj/xcshareddata/xcschemes/Fomalhaut2.xcscheme -------------------------------------------------------------------------------- /Fomalhaut2.xcodeproj/xcshareddata/xcschemes/Shared.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2.xcodeproj/xcshareddata/xcschemes/Shared.xcscheme -------------------------------------------------------------------------------- /Fomalhaut2/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/AppDelegate.swift -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-128.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-128@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-128@2x.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-16.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-16@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-16@2x.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-256.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-256@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-256@2x.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-32.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-32@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-32@2x.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-512.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-512@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/AppIcon.appiconset/Icon-512@2x.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/down.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/down.imageset/Contents.json -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/down.imageset/down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/down.imageset/down.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/down.imageset/down@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/down.imageset/down@2x.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/first.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/first.imageset/Contents.json -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/first.imageset/first.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/first.imageset/first.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/first.imageset/first@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/first.imageset/first@2x.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/left.to.right.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/left.to.right.imageset/Contents.json -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/left.to.right.imageset/left.to.right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/left.to.right.imageset/left.to.right.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/left.to.right.imageset/left.to.right@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/left.to.right.imageset/left.to.right@2x.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/like.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/like.imageset/Contents.json -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/like.imageset/heart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/like.imageset/heart.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/like.imageset/heart@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/like.imageset/heart@2x.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/right.to.left.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/right.to.left.imageset/Contents.json -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/right.to.left.imageset/right.to.left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/right.to.left.imageset/right.to.left.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/right.to.left.imageset/right.to.left@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/right.to.left.imageset/right.to.left@2x.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/up.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/up.imageset/Contents.json -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/up.imageset/up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/up.imageset/up.png -------------------------------------------------------------------------------- /Fomalhaut2/Assets.xcassets/up.imageset/up@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Assets.xcassets/up.imageset/up@2x.png -------------------------------------------------------------------------------- /Fomalhaut2/Base.lproj/Book.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Base.lproj/Book.storyboard -------------------------------------------------------------------------------- /Fomalhaut2/Base.lproj/BookCollection.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Base.lproj/BookCollection.storyboard -------------------------------------------------------------------------------- /Fomalhaut2/Base.lproj/FilterList.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Base.lproj/FilterList.storyboard -------------------------------------------------------------------------------- /Fomalhaut2/Base.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Base.lproj/Localizable.strings -------------------------------------------------------------------------------- /Fomalhaut2/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /Fomalhaut2/Base.lproj/Preferences.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Base.lproj/Preferences.storyboard -------------------------------------------------------------------------------- /Fomalhaut2/Base.lproj/ProgressViewController.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Base.lproj/ProgressViewController.xib -------------------------------------------------------------------------------- /Fomalhaut2/Base.lproj/WebSharingViewController.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Base.lproj/WebSharingViewController.xib -------------------------------------------------------------------------------- /Fomalhaut2/Book.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Book.swift -------------------------------------------------------------------------------- /Fomalhaut2/BookCollectionViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/BookCollectionViewController.swift -------------------------------------------------------------------------------- /Fomalhaut2/BookCollectionViewItem.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/BookCollectionViewItem.swift -------------------------------------------------------------------------------- /Fomalhaut2/BookCollectionViewItem.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/BookCollectionViewItem.xib -------------------------------------------------------------------------------- /Fomalhaut2/BookDocument.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/BookDocument.swift -------------------------------------------------------------------------------- /Fomalhaut2/BookViewStyle.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/BookViewStyle.swift -------------------------------------------------------------------------------- /Fomalhaut2/BookWindowController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/BookWindowController.swift -------------------------------------------------------------------------------- /Fomalhaut2/Collection.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Collection.swift -------------------------------------------------------------------------------- /Fomalhaut2/CollectionContent.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/CollectionContent.swift -------------------------------------------------------------------------------- /Fomalhaut2/CollectionOrder.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/CollectionOrder.swift -------------------------------------------------------------------------------- /Fomalhaut2/CollectionViewHeaderView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/CollectionViewHeaderView.swift -------------------------------------------------------------------------------- /Fomalhaut2/CollectionViewHeaderView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/CollectionViewHeaderView.xib -------------------------------------------------------------------------------- /Fomalhaut2/Credits.rtf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Credits.rtf -------------------------------------------------------------------------------- /Fomalhaut2/Filter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Filter.swift -------------------------------------------------------------------------------- /Fomalhaut2/FilterListView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/FilterListView.swift -------------------------------------------------------------------------------- /Fomalhaut2/FilterListViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/FilterListViewController.swift -------------------------------------------------------------------------------- /Fomalhaut2/Fomalhaut2.entitlements: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Fomalhaut2.entitlements -------------------------------------------------------------------------------- /Fomalhaut2/ImageCache.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/ImageCache.swift -------------------------------------------------------------------------------- /Fomalhaut2/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Info.plist -------------------------------------------------------------------------------- /Fomalhaut2/MainStackViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/MainStackViewController.swift -------------------------------------------------------------------------------- /Fomalhaut2/MainWindowController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/MainWindowController.swift -------------------------------------------------------------------------------- /Fomalhaut2/NSCollectionView+Realm.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/NSCollectionView+Realm.swift -------------------------------------------------------------------------------- /Fomalhaut2/NSImage+Resize.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/NSImage+Resize.swift -------------------------------------------------------------------------------- /Fomalhaut2/NSOutlineView+Realm.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/NSOutlineView+Realm.swift -------------------------------------------------------------------------------- /Fomalhaut2/NSTableView+Realm.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/NSTableView+Realm.swift -------------------------------------------------------------------------------- /Fomalhaut2/Preferences.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Preferences.swift -------------------------------------------------------------------------------- /Fomalhaut2/PreferencesViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/PreferencesViewController.swift -------------------------------------------------------------------------------- /Fomalhaut2/ProgressViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/ProgressViewController.swift -------------------------------------------------------------------------------- /Fomalhaut2/Realm+ThreadLocal.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Realm+ThreadLocal.swift -------------------------------------------------------------------------------- /Fomalhaut2/Schema.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/Schema.swift -------------------------------------------------------------------------------- /Fomalhaut2/ScrollDirection.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/ScrollDirection.swift -------------------------------------------------------------------------------- /Fomalhaut2/SpreadPageViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/SpreadPageViewController.swift -------------------------------------------------------------------------------- /Fomalhaut2/WebSharing.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/WebSharing.swift -------------------------------------------------------------------------------- /Fomalhaut2/WebSharingViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/WebSharingViewController.swift -------------------------------------------------------------------------------- /Fomalhaut2/defaultThumbnail.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/defaultThumbnail.jpg -------------------------------------------------------------------------------- /Fomalhaut2/ja.lproj/Book.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/ja.lproj/Book.strings -------------------------------------------------------------------------------- /Fomalhaut2/ja.lproj/BookCollection.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/ja.lproj/BookCollection.strings -------------------------------------------------------------------------------- /Fomalhaut2/ja.lproj/FilterList.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/ja.lproj/FilterList.strings -------------------------------------------------------------------------------- /Fomalhaut2/ja.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/ja.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /Fomalhaut2/ja.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/ja.lproj/Localizable.strings -------------------------------------------------------------------------------- /Fomalhaut2/ja.lproj/Main.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/ja.lproj/Main.strings -------------------------------------------------------------------------------- /Fomalhaut2/ja.lproj/Preferences.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/ja.lproj/Preferences.strings -------------------------------------------------------------------------------- /Fomalhaut2/ja.lproj/ProgressViewController.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/ja.lproj/ProgressViewController.strings -------------------------------------------------------------------------------- /Fomalhaut2/ja.lproj/WebSharingViewController.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2/ja.lproj/WebSharingViewController.strings -------------------------------------------------------------------------------- /Fomalhaut2QuickLook/Base.lproj/PreviewViewController.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2QuickLook/Base.lproj/PreviewViewController.xib -------------------------------------------------------------------------------- /Fomalhaut2QuickLook/Fomalhaut2QuickLook.entitlements: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2QuickLook/Fomalhaut2QuickLook.entitlements -------------------------------------------------------------------------------- /Fomalhaut2QuickLook/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2QuickLook/Info.plist -------------------------------------------------------------------------------- /Fomalhaut2QuickLook/PreviewViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2QuickLook/PreviewViewController.swift -------------------------------------------------------------------------------- /Fomalhaut2Tests/BookTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2Tests/BookTests.swift -------------------------------------------------------------------------------- /Fomalhaut2Tests/CollectionContentTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2Tests/CollectionContentTests.swift -------------------------------------------------------------------------------- /Fomalhaut2Tests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2Tests/Info.plist -------------------------------------------------------------------------------- /Fomalhaut2Tests/fixture/empty.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Fomalhaut2Tests/fixture/empty.zip -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/README.md -------------------------------------------------------------------------------- /Shared/Archiver.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Shared/Archiver.swift -------------------------------------------------------------------------------- /Shared/ArchiverError.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Shared/ArchiverError.swift -------------------------------------------------------------------------------- /Shared/ArchiverImage.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Shared/ArchiverImage.swift -------------------------------------------------------------------------------- /Shared/BookImageView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Shared/BookImageView.swift -------------------------------------------------------------------------------- /Shared/FolderArchiver.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Shared/FolderArchiver.swift -------------------------------------------------------------------------------- /Shared/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Shared/Info.plist -------------------------------------------------------------------------------- /Shared/Log.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Shared/Log.swift -------------------------------------------------------------------------------- /Shared/PageOrder.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Shared/PageOrder.swift -------------------------------------------------------------------------------- /Shared/PdfArchiver.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Shared/PdfArchiver.swift -------------------------------------------------------------------------------- /Shared/RarArchiver.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Shared/RarArchiver.swift -------------------------------------------------------------------------------- /Shared/SevenZipArchiver.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Shared/SevenZipArchiver.swift -------------------------------------------------------------------------------- /Shared/ZipArchiver.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/Shared/ZipArchiver.swift -------------------------------------------------------------------------------- /web/.eslintrc.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/.eslintrc.cjs -------------------------------------------------------------------------------- /web/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/.gitignore -------------------------------------------------------------------------------- /web/.husky/pre-commit: -------------------------------------------------------------------------------- 1 | cd web && pnpm exec lint-staged 2 | 3 | -------------------------------------------------------------------------------- /web/.lintstagedrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/.lintstagedrc.json -------------------------------------------------------------------------------- /web/.prettierrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/.prettierrc.json -------------------------------------------------------------------------------- /web/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/favicon.ico -------------------------------------------------------------------------------- /web/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/index.html -------------------------------------------------------------------------------- /web/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/package.json -------------------------------------------------------------------------------- /web/pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/pnpm-lock.yaml -------------------------------------------------------------------------------- /web/src/components/AddToCollection.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/AddToCollection.tsx -------------------------------------------------------------------------------- /web/src/components/App.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/App.tsx -------------------------------------------------------------------------------- /web/src/components/Book.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/Book.tsx -------------------------------------------------------------------------------- /web/src/components/Collection.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/Collection.tsx -------------------------------------------------------------------------------- /web/src/components/Cover.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/Cover.tsx -------------------------------------------------------------------------------- /web/src/components/Filter.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/Filter.tsx -------------------------------------------------------------------------------- /web/src/components/HorizontalBookView.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/HorizontalBookView.tsx -------------------------------------------------------------------------------- /web/src/components/Layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/Layout.tsx -------------------------------------------------------------------------------- /web/src/components/Library.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/Library.tsx -------------------------------------------------------------------------------- /web/src/components/ListItemLink.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/ListItemLink.tsx -------------------------------------------------------------------------------- /web/src/components/NavigationPage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/NavigationPage.tsx -------------------------------------------------------------------------------- /web/src/components/PageSliderDialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/PageSliderDialog.tsx -------------------------------------------------------------------------------- /web/src/components/Routes.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/Routes.tsx -------------------------------------------------------------------------------- /web/src/components/VerticalBookView.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/components/VerticalBookView.tsx -------------------------------------------------------------------------------- /web/src/domain/book.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/domain/book.ts -------------------------------------------------------------------------------- /web/src/domain/collection.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/domain/collection.ts -------------------------------------------------------------------------------- /web/src/domain/filter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/domain/filter.ts -------------------------------------------------------------------------------- /web/src/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/index.tsx -------------------------------------------------------------------------------- /web/src/message.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/message.ts -------------------------------------------------------------------------------- /web/src/reducer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/reducer.ts -------------------------------------------------------------------------------- /web/src/theme.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/src/theme.ts -------------------------------------------------------------------------------- /web/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/tsconfig.json -------------------------------------------------------------------------------- /web/vite.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mtgto/Fomalhaut2/HEAD/web/vite.config.ts --------------------------------------------------------------------------------