diff --git a/Package.resolved b/Package.resolved index 82137c4..6d458cc 100644 --- a/Package.resolved +++ b/Package.resolved @@ -1,5 +1,5 @@ { - "originHash" : "39da4f005434f990c0dece54faba957e7edc27104875be011d48221ad538739d", + "originHash" : "d54afbeb9301d3df649cfb4bef5794fb7abe1c6aa826c3651df7253a5656b124", "pins" : [ { "identity" : "async-http-client", @@ -28,6 +28,33 @@ "version" : "4.15.2" } }, + { + "identity" : "fluent", + "kind" : "remoteSourceControl", + "location" : "https://github.com/vapor/fluent.git", + "state" : { + "revision" : "223b27d04ab2b51c25503c9922eecbcdf6c12f89", + "version" : "4.12.0" + } + }, + { + "identity" : "fluent-kit", + "kind" : "remoteSourceControl", + "location" : "https://github.com/vapor/fluent-kit.git", + "state" : { + "revision" : "8baacd7e8f7ebf68886c496b43bbe6cdcc5b57e0", + "version" : "1.52.2" + } + }, + { + "identity" : "fluent-postgres-driver", + "kind" : "remoteSourceControl", + "location" : "https://github.com/vapor/fluent-postgres-driver.git", + "state" : { + "revision" : "095bc5a17ab3363167f4becb270b6f8eb790481c", + "version" : "2.10.1" + } + }, { "identity" : "leaf", "kind" : "remoteSourceControl", diff --git a/Package.swift b/Package.swift index f56d89c..1c388f1 100644 --- a/Package.swift +++ b/Package.swift @@ -2,14 +2,14 @@ import PackageDescription let package = Package( - name: "ManagableUsers", + name: "ManageableUsers", platforms: [ .macOS(.v13) ], products: [ .library( - name: "ManagableUsers", - targets: ["ManagableUsers"] + name: "ManageableUsers", + targets: ["ManageableUsers"] ), ], dependencies: [ @@ -28,7 +28,7 @@ let package = Package( ], targets: [ .target( - name: "ManagableUsers", + name: "ManageableUsers", dependencies: [ .product(name: "Fluent", package: "fluent"), .product(name: "FluentPostgresDriver", package: "fluent-postgres-driver"), @@ -43,7 +43,7 @@ let package = Package( .executableTarget( name: "SampleApp", dependencies: [ - .target(name: "ManagableUsers"), + .target(name: "ManageableUsers"), ], swiftSettings: swiftSettings ), diff --git a/README.md b/README.md index b6e2c8b..99f45e7 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# ManagableUsers +# ManageableUsers A package providing basic user management when using the Vapor web framework and a PostgreSQL database. @@ -76,34 +76,34 @@ Create a new Vapor project, or reuse an existing one. ### Dependencies -Add dependency on `managable-users` by adding the package to `Package.swift` as +Add dependency on `manageable-users` by adding the package to `Package.swift` as ```swift .package(url: "https://git.carlberg.org/public/manageable-users.git", from: "1.0.0"), ``` …and adding to the executable target's dependencies as ```swift - .product(name: "ManagableUsers", package: "managable-users"), + .product(name: "ManageableUsers", package: "manageable-users"), `` -Copy the contents of the `Resources/Views` folder from the `managable-users` into the `Resources/Views` folder +Copy the contents of the `Resources/Views` folder from the `manageable-users` into the `Resources/Views` folder in the new project, and also copy the contents of the `Public` folder into the `Public` folder. In the `configure.swift` file, add the import ```swift -import ManagableUsers +import ManageableUsers ``` …and add ```swift - try await ManagableUsers.configure (app) + try await ManageableUsers.configure (app) ``` into the `configure()` function. In the `routes.swift` file, add the import ```swift -import ManagableUsers +import ManageableUsers ``` …and replace everything in the `routes()` function with @@ -137,13 +137,13 @@ To use a consistent look, use `base.leaf` in your Leaf templates for pages. To add items to the main menu, do that in `configure.swift` by replacing ```swift - try await ManagableUsers.configure (app) + try await ManageableUsers.configure (app) ``` with something like ```swift - try await ManagableUsers.configure(app, mainMenu: [MenuItem (section: "inventory", path: "inventory", name: "Inventory")]) + try await ManageableUsers.configure(app, mainMenu: [MenuItem (section: "inventory", path: "inventory", name: "Inventory")]) ``` For `MenuItem` diff --git a/Sources/ManagableUsers/Authentication/UserAuthenticator.swift b/Sources/ManageableUsers/Authentication/UserAuthenticator.swift similarity index 100% rename from Sources/ManagableUsers/Authentication/UserAuthenticator.swift rename to Sources/ManageableUsers/Authentication/UserAuthenticator.swift diff --git a/Sources/ManagableUsers/Authentication/UserSessionAuthenticator.swift b/Sources/ManageableUsers/Authentication/UserSessionAuthenticator.swift similarity index 100% rename from Sources/ManagableUsers/Authentication/UserSessionAuthenticator.swift rename to Sources/ManageableUsers/Authentication/UserSessionAuthenticator.swift diff --git a/Sources/ManagableUsers/Controllers/.gitkeep b/Sources/ManageableUsers/Controllers/.gitkeep similarity index 100% rename from Sources/ManagableUsers/Controllers/.gitkeep rename to Sources/ManageableUsers/Controllers/.gitkeep diff --git a/Sources/ManagableUsers/Controllers/AdminController.swift b/Sources/ManageableUsers/Controllers/AdminController.swift similarity index 100% rename from Sources/ManagableUsers/Controllers/AdminController.swift rename to Sources/ManageableUsers/Controllers/AdminController.swift diff --git a/Sources/ManagableUsers/Controllers/AuthenticationController.swift b/Sources/ManageableUsers/Controllers/AuthenticationController.swift similarity index 100% rename from Sources/ManagableUsers/Controllers/AuthenticationController.swift rename to Sources/ManageableUsers/Controllers/AuthenticationController.swift diff --git a/Sources/ManagableUsers/ManagableUsers.swift b/Sources/ManageableUsers/ManageableUsers.swift similarity index 97% rename from Sources/ManagableUsers/ManagableUsers.swift rename to Sources/ManageableUsers/ManageableUsers.swift index 0047654..5e7961f 100644 --- a/Sources/ManagableUsers/ManagableUsers.swift +++ b/Sources/ManageableUsers/ManageableUsers.swift @@ -3,7 +3,7 @@ import Fluent import FluentPostgresDriver import SwiftSMTPVapor -public struct ManagableUsers { +public struct ManageableUsers { public static func configure (_ app: Application, mainMenu: [MenuItem] = [], homePageName: String = "Home", userAdminPageName: String = "User Administration") async throws { app.databases.use(DatabaseConfigurationFactory.postgres(configuration: .init( hostname: Environment.get("DATABASE_HOST") ?? "localhost", diff --git a/Sources/ManagableUsers/Middleware/RoleMiddleware.swift b/Sources/ManageableUsers/Middleware/RoleMiddleware.swift similarity index 100% rename from Sources/ManagableUsers/Middleware/RoleMiddleware.swift rename to Sources/ManageableUsers/Middleware/RoleMiddleware.swift diff --git a/Sources/ManagableUsers/Models/AdministeredUser.swift b/Sources/ManageableUsers/Models/AdministeredUser.swift similarity index 100% rename from Sources/ManagableUsers/Models/AdministeredUser.swift rename to Sources/ManageableUsers/Models/AdministeredUser.swift diff --git a/Sources/ManagableUsers/Models/BasicUser.swift b/Sources/ManageableUsers/Models/BasicUser.swift similarity index 100% rename from Sources/ManagableUsers/Models/BasicUser.swift rename to Sources/ManageableUsers/Models/BasicUser.swift diff --git a/Sources/ManagableUsers/Models/ExpiringUserId.swift b/Sources/ManageableUsers/Models/ExpiringUserId.swift similarity index 100% rename from Sources/ManagableUsers/Models/ExpiringUserId.swift rename to Sources/ManageableUsers/Models/ExpiringUserId.swift diff --git a/Sources/ManagableUsers/Models/ManagedUser.swift b/Sources/ManageableUsers/Models/ManagedUser.swift similarity index 100% rename from Sources/ManagableUsers/Models/ManagedUser.swift rename to Sources/ManageableUsers/Models/ManagedUser.swift diff --git a/Sources/ManagableUsers/Models/UserRole.swift b/Sources/ManageableUsers/Models/UserRole.swift similarity index 100% rename from Sources/ManagableUsers/Models/UserRole.swift rename to Sources/ManageableUsers/Models/UserRole.swift diff --git a/Sources/ManagableUsers/Models/UserToken.swift b/Sources/ManageableUsers/Models/UserToken.swift similarity index 100% rename from Sources/ManagableUsers/Models/UserToken.swift rename to Sources/ManageableUsers/Models/UserToken.swift diff --git a/Sources/ManagableUsers/Utilities/BaseURLTag.swift b/Sources/ManageableUsers/Utilities/BaseURLTag.swift similarity index 100% rename from Sources/ManagableUsers/Utilities/BaseURLTag.swift rename to Sources/ManageableUsers/Utilities/BaseURLTag.swift diff --git a/Sources/ManagableUsers/Utilities/Environment+Configuration.swift b/Sources/ManageableUsers/Utilities/Environment+Configuration.swift similarity index 100% rename from Sources/ManagableUsers/Utilities/Environment+Configuration.swift rename to Sources/ManageableUsers/Utilities/Environment+Configuration.swift diff --git a/Sources/ManagableUsers/Utilities/HasRoleTag.swift b/Sources/ManageableUsers/Utilities/HasRoleTag.swift similarity index 100% rename from Sources/ManagableUsers/Utilities/HasRoleTag.swift rename to Sources/ManageableUsers/Utilities/HasRoleTag.swift diff --git a/Sources/ManagableUsers/Utilities/MenuItemsTag.swift b/Sources/ManageableUsers/Utilities/MenuItemsTag.swift similarity index 100% rename from Sources/ManagableUsers/Utilities/MenuItemsTag.swift rename to Sources/ManageableUsers/Utilities/MenuItemsTag.swift diff --git a/Sources/ManagableUsers/Utilities/MockDatabase.swift b/Sources/ManageableUsers/Utilities/MockDatabase.swift similarity index 100% rename from Sources/ManagableUsers/Utilities/MockDatabase.swift rename to Sources/ManageableUsers/Utilities/MockDatabase.swift diff --git a/Sources/ManagableUsers/Utilities/Request+SQLDatabase.swift b/Sources/ManageableUsers/Utilities/Request+SQLDatabase.swift similarity index 100% rename from Sources/ManagableUsers/Utilities/Request+SQLDatabase.swift rename to Sources/ManageableUsers/Utilities/Request+SQLDatabase.swift diff --git a/Sources/ManagableUsers/Utilities/SQLDatabase+Transaction.swift b/Sources/ManageableUsers/Utilities/SQLDatabase+Transaction.swift similarity index 100% rename from Sources/ManagableUsers/Utilities/SQLDatabase+Transaction.swift rename to Sources/ManageableUsers/Utilities/SQLDatabase+Transaction.swift diff --git a/Sources/SampleApp/configure.swift b/Sources/SampleApp/configure.swift index 2b55b38..ac2fbe7 100644 --- a/Sources/SampleApp/configure.swift +++ b/Sources/SampleApp/configure.swift @@ -1,10 +1,10 @@ -import ManagableUsers +import ManageableUsers import Vapor public func configure (_ app: Application) async throws { app.middleware.use(FileMiddleware(publicDirectory: app.directory.publicDirectory)) - try await ManagableUsers.configure (app) + try await ManageableUsers.configure (app) try routes(app) } diff --git a/Sources/SampleApp/routes.swift b/Sources/SampleApp/routes.swift index c0c5546..3d9946f 100644 --- a/Sources/SampleApp/routes.swift +++ b/Sources/SampleApp/routes.swift @@ -1,4 +1,4 @@ -import ManagableUsers +import ManageableUsers import Vapor func routes(_ app: Application) throws { diff --git a/Tests/SampleAppTests/AdminTests.swift b/Tests/SampleAppTests/AdminTests.swift index bcc4a17..69fffe3 100644 --- a/Tests/SampleAppTests/AdminTests.swift +++ b/Tests/SampleAppTests/AdminTests.swift @@ -1,4 +1,4 @@ -import ManagableUsers +import ManageableUsers @testable import SampleApp import VaporTesting import SQLKit diff --git a/Tests/SampleAppTests/AuthorizationTests.swift b/Tests/SampleAppTests/AuthorizationTests.swift index 2f11afd..7e65782 100644 --- a/Tests/SampleAppTests/AuthorizationTests.swift +++ b/Tests/SampleAppTests/AuthorizationTests.swift @@ -1,5 +1,5 @@ @testable import SampleApp -import ManagableUsers +import ManageableUsers import VaporTesting import SQLKit import Testing