Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,51 +1,8 @@
//
// AutoBackupSettingsView.swift
// Core
// Features-Inventory
//
// Apple Configuration:
// Bundle Identifier: com.homeinventory.app
// Display Name: Home Inventory
// Version: 1.0.5
// Build: 5
// Deployment Target: iOS 17.0
// Supported Devices: iPhone & iPad
// Team ID: 2VXBQV4XC9
//
// Makefile Configuration:
// Default Simulator: iPhone 16 Pro Max (DD192264-DFAA-4582-B2FE-D6FC444C9DDF)
// iPad Simulator: iPad Pro 13-inch (M4) (CE6D038C-840B-4BDB-AA63-D61FA0755C4A)
// App Bundle ID: com.homeinventory.app
// Build Path: build/Build/Products/Debug-iphonesimulator/
//
// Google Sign-In Configuration:
// Client ID: 316432172622-6huvbn752v0ep68jkfdftrh8fgpesikg.apps.googleusercontent.com
// URL Scheme: com.googleusercontent.apps.316432172622-6huvbn752v0ep68jkfdftrh8fgpesikg
// OAuth Scope: https://www.googleapis.com/auth/gmail.readonly
// Config Files: GoogleSignIn-Info.plist (project root), GoogleServices.plist (Gmail module)
//
// Key Commands:
// Build and run: make build run
// Fast build (skip module prebuild): make build-fast run
// iPad build and run: make build-ipad run-ipad
// Clean build: make clean build run
// Run tests: make test
//
// Project Structure:
// Main Target: HomeInventoryModular
// Test Targets: HomeInventoryModularTests, HomeInventoryModularUITests
// Swift Version: 5.9 (DO NOT upgrade to Swift 6)
// Minimum iOS Version: 17.0
//
// Architecture: Modular SPM packages with local package dependencies
// Repository: https://github.com/DrunkOnJava/ModularHomeInventory.git
// Module: Core
// Dependencies: SwiftUI
// Testing: CoreTests/AutoBackupSettingsViewTests.swift
//
// Description: Settings view for configuring automatic backup schedules and options
//
// Created by Griffin Long on June 25, 2025
// Copyright © 2025 Home Inventory. All rights reserved.
// Created for ModularHomeInventory
//

import SwiftUI
Expand Down
Original file line number Diff line number Diff line change
@@ -1,54 +1,11 @@
import FoundationModels
//
// BackupDetailsView.swift
// Core
// Features-Inventory
//
// Apple Configuration:
// Bundle Identifier: com.homeinventory.app
// Display Name: Home Inventory
// Version: 1.0.5
// Build: 5
// Deployment Target: iOS 17.0
// Supported Devices: iPhone & iPad
// Team ID: 2VXBQV4XC9
//
// Makefile Configuration:
// Default Simulator: iPhone 16 Pro Max (DD192264-DFAA-4582-B2FE-D6FC444C9DDF)
// iPad Simulator: iPad Pro 13-inch (M4) (CE6D038C-840B-4BDB-AA63-D61FA0755C4A)
// App Bundle ID: com.homeinventory.app
// Build Path: build/Build/Products/Debug-iphonesimulator/
//
// Google Sign-In Configuration:
// Client ID: 316432172622-6huvbn752v0ep68jkfdftrh8fgpesikg.apps.googleusercontent.com
// URL Scheme: com.googleusercontent.apps.316432172622-6huvbn752v0ep68jkfdftrh8fgpesikg
// OAuth Scope: https://www.googleapis.com/auth/gmail.readonly
// Config Files: GoogleSignIn-Info.plist (project root), GoogleServices.plist (Gmail module)
//
// Key Commands:
// Build and run: make build run
// Fast build (skip module prebuild): make build-fast run
// iPad build and run: make build-ipad run-ipad
// Clean build: make clean build run
// Run tests: make test
//
// Project Structure:
// Main Target: HomeInventoryModular
// Test Targets: HomeInventoryModularTests, HomeInventoryModularUITests
// Swift Version: 5.9 (DO NOT upgrade to Swift 6)
// Minimum iOS Version: 17.0
//
// Architecture: Modular SPM packages with local package dependencies
// Repository: https://github.com/DrunkOnJava/ModularHomeInventory.git
// Module: Core
// Dependencies: SwiftUI
// Testing: CoreTests/BackupDetailsViewTests.swift
//
// Description: Detailed view for a specific backup
//
// Created by Griffin Long on June 25, 2025
// Copyright © 2025 Home Inventory. All rights reserved.
// Created for ModularHomeInventory
//


import SwiftUI

@available(iOS 15.0, *)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,54 +1,11 @@
import FoundationModels
//
// BackupManagerView.swift
// Core
// Features-Inventory
//
// Apple Configuration:
// Bundle Identifier: com.homeinventory.app
// Display Name: Home Inventory
// Version: 1.0.5
// Build: 5
// Deployment Target: iOS 17.0
// Supported Devices: iPhone & iPad
// Team ID: 2VXBQV4XC9
//
// Makefile Configuration:
// Default Simulator: iPhone 16 Pro Max (DD192264-DFAA-4582-B2FE-D6FC444C9DDF)
// iPad Simulator: iPad Pro 13-inch (M4) (CE6D038C-840B-4BDB-AA63-D61FA0755C4A)
// App Bundle ID: com.homeinventory.app
// Build Path: build/Build/Products/Debug-iphonesimulator/
//
// Google Sign-In Configuration:
// Client ID: 316432172622-6huvbn752v0ep68jkfdftrh8fgpesikg.apps.googleusercontent.com
// URL Scheme: com.googleusercontent.apps.316432172622-6huvbn752v0ep68jkfdftrh8fgpesikg
// OAuth Scope: https://www.googleapis.com/auth/gmail.readonly
// Config Files: GoogleSignIn-Info.plist (project root), GoogleServices.plist (Gmail module)
//
// Key Commands:
// Build and run: make build run
// Fast build (skip module prebuild): make build-fast run
// iPad build and run: make build-ipad run-ipad
// Clean build: make clean build run
// Run tests: make test
//
// Project Structure:
// Main Target: HomeInventoryModular
// Test Targets: HomeInventoryModularTests, HomeInventoryModularUITests
// Swift Version: 5.9 (DO NOT upgrade to Swift 6)
// Minimum iOS Version: 17.0
//
// Architecture: Modular SPM packages with local package dependencies
// Repository: https://github.com/DrunkOnJava/ModularHomeInventory.git
// Module: Core
// Dependencies: SwiftUI
// Testing: CoreTests/BackupManagerViewTests.swift
//
// Description: Main view for managing backups, creating new backups, and restoring from existing ones
//
// Created by Griffin Long on June 25, 2025
// Copyright © 2025 Home Inventory. All rights reserved.
// Created for ModularHomeInventory
//


import SwiftUI

@available(iOS 15.0, *)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,54 +1,11 @@
import FoundationModels
//
// CreateBackupView.swift
// Core
// Features-Inventory
//
// Apple Configuration:
// Bundle Identifier: com.homeinventory.app
// Display Name: Home Inventory
// Version: 1.0.5
// Build: 5
// Deployment Target: iOS 17.0
// Supported Devices: iPhone & iPad
// Team ID: 2VXBQV4XC9
//
// Makefile Configuration:
// Default Simulator: iPhone 16 Pro Max (DD192264-DFAA-4582-B2FE-D6FC444C9DDF)
// iPad Simulator: iPad Pro 13-inch (M4) (CE6D038C-840B-4BDB-AA63-D61FA0755C4A)
// App Bundle ID: com.homeinventory.app
// Build Path: build/Build/Products/Debug-iphonesimulator/
//
// Google Sign-In Configuration:
// Client ID: 316432172622-6huvbn752v0ep68jkfdftrh8fgpesikg.apps.googleusercontent.com
// URL Scheme: com.googleusercontent.apps.316432172622-6huvbn752v0ep68jkfdftrh8fgpesikg
// OAuth Scope: https://www.googleapis.com/auth/gmail.readonly
// Config Files: GoogleSignIn-Info.plist (project root), GoogleServices.plist (Gmail module)
//
// Key Commands:
// Build and run: make build run
// Fast build (skip module prebuild): make build-fast run
// iPad build and run: make build-ipad run-ipad
// Clean build: make clean build run
// Run tests: make test
//
// Project Structure:
// Main Target: HomeInventoryModular
// Test Targets: HomeInventoryModularTests, HomeInventoryModularUITests
// Swift Version: 5.9 (DO NOT upgrade to Swift 6)
// Minimum iOS Version: 17.0
//
// Architecture: Modular SPM packages with local package dependencies
// Repository: https://github.com/DrunkOnJava/ModularHomeInventory.git
// Module: Core
// Dependencies: SwiftUI, UniformTypeIdentifiers
// Testing: CoreTests/CreateBackupViewTests.swift
//
// Description: View for creating a new backup with customizable options for content inclusion and security
//
// Created by Griffin Long on June 25, 2025
// Copyright © 2025 Home Inventory. All rights reserved.
// Created for ModularHomeInventory
//


import SwiftUI

@available(iOS 15.0, *)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,53 +1,10 @@
import FoundationModels
//
// RestoreBackupView.swift
// Core
// Features-Inventory
//
// View for restoring from backup
// Created for ModularHomeInventory
//

import SwiftUI
import UniformTypeIdentifiers
#if canImport(UIKit)
import UIKit
#endif

@available(iOS 15.0, *)
@available(iOS 17.0, macOS 10.15, *)
@available(iOS 17.0, macOS 11.0, *)
public struct RestoreBackupView: View {
@ObservedObject private var backupService: BackupService
@Environment(\.dismiss) private var dismiss

@State private var selectedBackup: BackupService.BackupInfo?
@State private var showingFilePicker = false
@State private var showingPasswordPrompt = false
@State private var password = ""
@State private var showingRestoreOptions = false
@State private var showingRestoreConfirmation = false
@State private var showingRestoreSuccess = false
@State private var showingError = false
@State private var errorMessage = ""

// Restore options
@State private var replaceExisting = true
@State private var mergeData = false
@State private var restorePhotos = true
@State private var restoreDocuments = true
@State private var restoreSettings = true

// Results
@State private var restoredContents: BackupService.BackupContents?
@State private var restoreResults: RestoreResults?

struct RestoreResults {
let itemsRestored: Int
let photosRestored: Int
let documentsRestored: Int
let conflicts: Int
let errors: [String]
}

public init(backupService: any BackupServiceProtocol = BackupService.shared) {
self.backupService = backupService
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,54 +1,11 @@
import FoundationModels
//
// CollaborativeListDetailView.swift
// Core
// Features-Inventory
//
// Apple Configuration:
// Bundle Identifier: com.homeinventory.app
// Display Name: Home Inventory
// Version: 1.0.5
// Build: 5
// Deployment Target: iOS 17.0
// Supported Devices: iPhone & iPad
// Team ID: 2VXBQV4XC9
//
// Makefile Configuration:
// Default Simulator: iPhone 16 Pro Max (DD192264-DFAA-4582-B2FE-D6FC444C9DDF)
// iPad Simulator: iPad Pro 13-inch (M4) (CE6D038C-840B-4BDB-AA63-D61FA0755C4A)
// App Bundle ID: com.homeinventory.app
// Build Path: build/Build/Products/Debug-iphonesimulator/
//
// Google Sign-In Configuration:
// Client ID: 316432172622-6huvbn752v0ep68jkfdftrh8fgpesikg.apps.googleusercontent.com
// URL Scheme: com.googleusercontent.apps.316432172622-6huvbn752v0ep68jkfdftrh8fgpesikg
// OAuth Scope: https://www.googleapis.com/auth/gmail.readonly
// Config Files: GoogleSignIn-Info.plist (project root), GoogleServices.plist (Gmail module)
//
// Key Commands:
// Build and run: make build run
// Fast build (skip module prebuild): make build-fast run
// iPad build and run: make build-ipad run-ipad
// Clean build: make clean build run
// Run tests: make test
//
// Project Structure:
// Main Target: HomeInventoryModular
// Test Targets: HomeInventoryModularTests, HomeInventoryModularUITests
// Swift Version: 5.9 (DO NOT upgrade to Swift 6)
// Minimum iOS Version: 17.0
//
// Architecture: Modular SPM packages with local package dependencies
// Repository: https://github.com/DrunkOnJava/ModularHomeInventory.git
// Module: Core
// Dependencies: SwiftUI
// Testing: CoreTests/CollaborativeListDetailViewTests.swift
//
// Description: Detailed view for managing a collaborative list with item management, filtering, and real-time collaboration
//
// Created by Griffin Long on June 25, 2025
// Copyright © 2025 Home Inventory. All rights reserved.
// Created for ModularHomeInventory
//


import SwiftUI

@available(iOS 15.0, *)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,54 +1,11 @@
import FoundationModels
//
// CollaborativeListsView.swift
// Core
// Features-Inventory
//
// Apple Configuration:
// Bundle Identifier: com.homeinventory.app
// Display Name: Home Inventory
// Version: 1.0.5
// Build: 5
// Deployment Target: iOS 17.0
// Supported Devices: iPhone & iPad
// Team ID: 2VXBQV4XC9
//
// Makefile Configuration:
// Default Simulator: iPhone 16 Pro Max (DD192264-DFAA-4582-B2FE-D6FC444C9DDF)
// iPad Simulator: iPad Pro 13-inch (M4) (CE6D038C-840B-4BDB-AA63-D61FA0755C4A)
// App Bundle ID: com.homeinventory.app
// Build Path: build/Build/Products/Debug-iphonesimulator/
//
// Google Sign-In Configuration:
// Client ID: 316432172622-6huvbn752v0ep68jkfdftrh8fgpesikg.apps.googleusercontent.com
// URL Scheme: com.googleusercontent.apps.316432172622-6huvbn752v0ep68jkfdftrh8fgpesikg
// OAuth Scope: https://www.googleapis.com/auth/gmail.readonly
// Config Files: GoogleSignIn-Info.plist (project root), GoogleServices.plist (Gmail module)
//
// Key Commands:
// Build and run: make build run
// Fast build (skip module prebuild): make build-fast run
// iPad build and run: make build-ipad run-ipad
// Clean build: make clean build run
// Run tests: make test
//
// Project Structure:
// Main Target: HomeInventoryModular
// Test Targets: HomeInventoryModularTests, HomeInventoryModularUITests
// Swift Version: 5.9 (DO NOT upgrade to Swift 6)
// Minimum iOS Version: 17.0
//
// Architecture: Modular SPM packages with local package dependencies
// Repository: https://github.com/DrunkOnJava/ModularHomeInventory.git
// Module: Core
// Dependencies: SwiftUI
// Testing: CoreTests/CollaborativeListsViewTests.swift
//
// Description: Main view for displaying and managing collaborative lists with filtering, templates, and activity tracking
//
// Created by Griffin Long on June 25, 2025
// Copyright © 2025 Home Inventory. All rights reserved.
// Created for ModularHomeInventory
//


import SwiftUI

@available(iOS 15.0, *)
Expand Down
Loading