From 72aad7291b3f7f0e7ac4ee24731868b1af62213c Mon Sep 17 00:00:00 2001 From: mroloux Date: Wed, 8 Jan 2025 09:52:12 +0100 Subject: [PATCH] Support extra data (#35) * SeatsioObject exposes extraData * Added .build folder to .gitignore * Fix build * Fix build? * Dropped CocoaPods suppor * Support CocoaPods again * Release CocoaPod again --- .github/workflows/build.yml | 1 + .github/workflows/release.yml | 3 +- .gitignore | 2 + Example/AppDelegate.swift | 42 -- .../AppIcon.appiconset/Contents.json | 98 ---- Example/Assets.xcassets/Contents.json | 6 - Example/Base.lproj/Main.storyboard | 24 - Example/Info.plist | 48 -- Example/SeatingChartSample.swift | 48 -- Package.resolved | 14 + Package.swift | 10 +- README.md | 8 + Seatsio/Sources/JustBridge.swift | 1 - Seatsio/Sources/SeatsioObject.swift | 5 +- seatsio-ios.xcodeproj/project.pbxproj | 551 ------------------ .../contents.xcworkspacedata | 7 - .../xcshareddata/IDEWorkspaceChecks.plist | 8 - .../xcschemes/xcschememanagement.plist | 14 - seatsio.podspec | 23 +- 19 files changed, 50 insertions(+), 863 deletions(-) delete mode 100644 Example/AppDelegate.swift delete mode 100644 Example/Assets.xcassets/AppIcon.appiconset/Contents.json delete mode 100644 Example/Assets.xcassets/Contents.json delete mode 100644 Example/Base.lproj/Main.storyboard delete mode 100644 Example/Info.plist delete mode 100644 Example/SeatingChartSample.swift create mode 100644 Package.resolved delete mode 100644 seatsio-ios.xcodeproj/project.pbxproj delete mode 100644 seatsio-ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata delete mode 100644 seatsio-ios.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist delete mode 100644 seatsio-ios.xcodeproj/xcuserdata/bver.xcuserdatad/xcschemes/xcschememanagement.plist diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index af9464c..a9c4613 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -13,4 +13,5 @@ jobs: steps: - uses: actions/checkout@v2 + - run: swift build - run: pod lib lint diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 71336d5..a20a9c7 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -24,12 +24,11 @@ jobs: - uses: fregante/setup-git-user@v2 - name: Install dependencies run: yarn add -D -E zx@8.1.4 semver@7.6.3 - - name: Run release script + - name: Run release script run: yarn zx ./release.mjs -v $VERSION_TO_BUMP env: VERSION_TO_BUMP: ${{ inputs.versionToBump }} GH_TOKEN: ${{ github.token }} - - run: pod lib lint - run: pod trunk push env: COCOAPODS_TRUNK_TOKEN: ${{ secrets.COCOAPODS_TRUNK_TOKEN }} diff --git a/.gitignore b/.gitignore index 290fc93..39ddee3 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,5 @@ xcuserdata Pods/ .DS_Store +.swiftpm/ +.build/ diff --git a/Example/AppDelegate.swift b/Example/AppDelegate.swift deleted file mode 100644 index bf94aeb..0000000 --- a/Example/AppDelegate.swift +++ /dev/null @@ -1,42 +0,0 @@ -import UIKit - -@UIApplicationMain -class AppDelegate: UIResponder, UIApplicationDelegate { - - var window: UIWindow? - - - func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { - window = UIWindow(frame: UIScreen.main.bounds) - let mainViewController = SeatingChartSample() - mainViewController.view.backgroundColor = UIColor.blue - window!.rootViewController = mainViewController - window!.makeKeyAndVisible() - return true - } - - func applicationWillResignActive(_ application: UIApplication) { - // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. - // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game. - } - - func applicationDidEnterBackground(_ application: UIApplication) { - // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. - // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. - } - - func applicationWillEnterForeground(_ application: UIApplication) { - // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background. - } - - func applicationDidBecomeActive(_ application: UIApplication) { - // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. - } - - func applicationWillTerminate(_ application: UIApplication) { - // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. - } - - -} - diff --git a/Example/Assets.xcassets/AppIcon.appiconset/Contents.json b/Example/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index d8db8d6..0000000 --- a/Example/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,98 +0,0 @@ -{ - "images" : [ - { - "idiom" : "iphone", - "size" : "20x20", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "20x20", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "3x" - }, - { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "83.5x83.5", - "scale" : "2x" - }, - { - "idiom" : "ios-marketing", - "size" : "1024x1024", - "scale" : "1x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/Example/Assets.xcassets/Contents.json b/Example/Assets.xcassets/Contents.json deleted file mode 100644 index da4a164..0000000 --- a/Example/Assets.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/Example/Base.lproj/Main.storyboard b/Example/Base.lproj/Main.storyboard deleted file mode 100644 index f1bcf38..0000000 --- a/Example/Base.lproj/Main.storyboard +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Example/Info.plist b/Example/Info.plist deleted file mode 100644 index 44e870f..0000000 --- a/Example/Info.plist +++ /dev/null @@ -1,48 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - LSRequiresIPhoneOS - - UILaunchStoryboardName - LaunchScreen - UIRequiredDeviceCapabilities - - armv7 - - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - NSAppTransportSecurity - - NSAllowsArbitraryLoads - - - - diff --git a/Example/SeatingChartSample.swift b/Example/SeatingChartSample.swift deleted file mode 100644 index fcf6815..0000000 --- a/Example/SeatingChartSample.swift +++ /dev/null @@ -1,48 +0,0 @@ -import UIKit -import WebKit -import Seatsio - -class SeatingChartSample: UIViewController { - - var seatsio: SeatsioWebView! - - override func loadView() { - let config: SeatingChartConfig = SeatingChartConfig() - .workspaceKey("publicDemoKey") - .event("smallTheatreWithGAEvent") - .mode(.normal) - .pricing([ - Pricing(category: "1", ticketTypes: [ - TicketTypePricing(ticketType: "child", price: 10), - TicketTypePricing(ticketType: "adult", price: 15)]), - Pricing(category: "2", ticketTypes: [ - TicketTypePricing(ticketType: "child", price: 20), - TicketTypePricing(ticketType: "adult", price: 30)]) - ]) - .priceFormatter({ (price) in "\(price)$" }) - .objectTooltip(ObjectTooltip(showAvailability: true)) - .showLegend(true) - .showSeatLabels(true) - .onSelectionInvalid({ (errors) in print(errors) }) - .onObjectSelected({ (object, ticketType) in - print(object, ticketType ?? "nil") - }) - .onObjectDeselected({ (object, ticketType) in - print(object, ticketType ?? "nil") - }) - .selectedObjects([SelectedObject("A-1")]) - .onChartRendered({ (chart) in - print("rendered") - chart.getReportBySelectability({ (report) in print(report)}) - chart.changeConfig(ConfigChange(unavailableCategories: ["Balcony"])) - chart.isObjectInChannel("K-3", "NO_CHANNEL", { (result) in print("Is object in channel NO_CHANNEL? " + String(result)) }) - }) - .categoryFilter(CategoryFilter(enabled: true)) - - seatsio = SeatsioWebView(frame: UIScreen.main.bounds, region: "eu", seatsioConfig: config) - - self.view = seatsio - } - -} - diff --git a/Package.resolved b/Package.resolved new file mode 100644 index 0000000..26d7767 --- /dev/null +++ b/Package.resolved @@ -0,0 +1,14 @@ +{ + "pins" : [ + { + "identity" : "swiftyjson", + "kind" : "remoteSourceControl", + "location" : "https://github.com/SwiftyJSON/SwiftyJSON.git", + "state" : { + "revision" : "af76cf3ef710b6ca5f8c05f3a31307d44a3c5828", + "version" : "5.0.2" + } + } + ], + "version" : 2 +} diff --git a/Package.swift b/Package.swift index 7bcec9b..1bc5d78 100644 --- a/Package.swift +++ b/Package.swift @@ -10,12 +10,18 @@ let package = Package( .library( name: "Seatsio", targets: ["Seatsio"] - ), + ) + ], + dependencies: [ + .package(url: "https://github.com/SwiftyJSON/SwiftyJSON.git", from: "5.0.2"), ], targets: [ .target( name: "Seatsio", + dependencies: [ + .product(name: "SwiftyJSON", package: "SwiftyJSON") + ], path: "Seatsio/Sources" - ), + ) ] ) diff --git a/README.md b/README.md index 2d43903..9bc5f7d 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,14 @@ Add this to your podfile: pod 'seatsio', '18.0.0' ``` +Or if you prefer Swift Package Manager: + +``` +dependencies: [ + .package(url: "https://github.com/seatsio/seatsio-ios", from: "18.0.0") +] +``` + ## Usage ```swift diff --git a/Seatsio/Sources/JustBridge.swift b/Seatsio/Sources/JustBridge.swift index 14d56c3..6a74ffa 100644 --- a/Seatsio/Sources/JustBridge.swift +++ b/Seatsio/Sources/JustBridge.swift @@ -7,7 +7,6 @@ // Copyright (c) 2018 Xiaoye220 <576934532@qq.com> // -import UIKit import WebKit public class JustBridge: NSObject { diff --git a/Seatsio/Sources/SeatsioObject.swift b/Seatsio/Sources/SeatsioObject.swift index 1fb8e93..71aec4b 100644 --- a/Seatsio/Sources/SeatsioObject.swift +++ b/Seatsio/Sources/SeatsioObject.swift @@ -1,4 +1,5 @@ import Foundation +import SwiftyJSON public struct SeatsioObject: Decodable { public let objectType: String @@ -21,6 +22,7 @@ public struct SeatsioObject: Decodable { public let disabledBySocialDistancingRules: Bool? public let parent: SeatParent? public let displayObjectType: String? + public let extraData: JSON? public let capacity: Int? public let numBooked: Int? @@ -36,7 +38,7 @@ public struct SeatsioObject: Decodable { public init(objectType: String, label: String, labels: Labels, id: String, category: Category? = nil, center: Point? = nil, pricing: Pricing? = nil, status: String? = nil, forSale: Bool? = nil, selectable: Bool? = nil, inSelectableChannel: Bool? = nil, selected: Bool? = nil, selectedTicketType: String? = nil, accessible: Bool? = nil, companionSeat: Bool? = nil, restrictedView: Bool? = nil, - disabledBySocialDistancingRules: Bool? = nil, parent: SeatParent?, displayObjectType: String?, capacity: Int? = nil, numBooked: Int? = nil, numFree: Int? = nil, numSelected: Int? = nil, selectionPerTicketType: [String: Int]? = nil, + disabledBySocialDistancingRules: Bool? = nil, parent: SeatParent?, displayObjectType: String?, extraData: JSON?, capacity: Int? = nil, numBooked: Int? = nil, numFree: Int? = nil, numSelected: Int? = nil, selectionPerTicketType: [String: Int]? = nil, sectionCategory: Category? = nil, numberOfSelectableObjects: Int? = nil, numberOfSelectedObjects: Int? = nil, selectableCategories: [Category]? = nil, isInteractive: Bool? = nil) { self.objectType = objectType self.label = label @@ -58,6 +60,7 @@ public struct SeatsioObject: Decodable { self.disabledBySocialDistancingRules = disabledBySocialDistancingRules self.parent = parent self.displayObjectType = displayObjectType + self.extraData = extraData self.capacity = capacity self.numBooked = numBooked diff --git a/seatsio-ios.xcodeproj/project.pbxproj b/seatsio-ios.xcodeproj/project.pbxproj deleted file mode 100644 index 3db373f..0000000 --- a/seatsio-ios.xcodeproj/project.pbxproj +++ /dev/null @@ -1,551 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 70; - objects = { - -/* Begin PBXBuildFile section */ - FE5F65EB2CBD636D005E9013 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE5F65E42CBD636D005E9013 /* AppDelegate.swift */; }; - FE5F65EC2CBD636D005E9013 /* SeatingChartSample.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE5F65E92CBD636D005E9013 /* SeatingChartSample.swift */; }; - FE5F65ED2CBD636D005E9013 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FE5F65E52CBD636D005E9013 /* Assets.xcassets */; }; - FE5F65EE2CBD636D005E9013 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = FE5F65E82CBD636D005E9013 /* Main.storyboard */; }; - FE5F66092CBE92AE005E9013 /* Seatsio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FE5F66032CBE92AE005E9013 /* Seatsio.framework */; }; - FE5F660A2CBE92AE005E9013 /* Seatsio.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FE5F66032CBE92AE005E9013 /* Seatsio.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - FE5F66072CBE92AE005E9013 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 3B40BA2522A7D49C00B9A507 /* Project object */; - proxyType = 1; - remoteGlobalIDString = FE5F66022CBE92AE005E9013; - remoteInfo = Seatsio; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXCopyFilesBuildPhase section */ - FE5F660F2CBE92AE005E9013 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - FE5F660A2CBE92AE005E9013 /* Seatsio.framework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 3B40BA2D22A7D49C00B9A507 /* Seatsio-Example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Seatsio-Example.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - 4EDEA976297E0ADA1A8BE9C8 /* releasing.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; path = releasing.md; sourceTree = ""; }; - FE12BD272CBD5DDC002A845A /* Package.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Package.swift; sourceTree = ""; }; - FE5F65E42CBD636D005E9013 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - FE5F65E52CBD636D005E9013 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - FE5F65E62CBD636D005E9013 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Example/Info.plist; sourceTree = SOURCE_ROOT; }; - FE5F65E72CBD636D005E9013 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - FE5F65E92CBD636D005E9013 /* SeatingChartSample.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SeatingChartSample.swift; sourceTree = ""; }; - FE5F66032CBE92AE005E9013 /* Seatsio.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Seatsio.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - FE5F66B32CBE96A3005E9013 /* seatsio.podspec */ = {isa = PBXFileReference; lastKnownFileType = text; path = seatsio.podspec; sourceTree = ""; }; - FE5F66B62CBE98F2005E9013 /* LICENSE */ = {isa = PBXFileReference; lastKnownFileType = text; path = LICENSE; sourceTree = ""; }; - FE5F66B72CBE98F2005E9013 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFileSystemSynchronizedRootGroup section */ - FE5F66042CBE92AE005E9013 /* Seatsio */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = Seatsio; sourceTree = ""; }; -/* End PBXFileSystemSynchronizedRootGroup section */ - -/* Begin PBXFrameworksBuildPhase section */ - 3B40BA2A22A7D49C00B9A507 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - FE5F66092CBE92AE005E9013 /* Seatsio.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - FE5F66002CBE92AE005E9013 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 3B40BA2422A7D49C00B9A507 = { - isa = PBXGroup; - children = ( - FE5F65EA2CBD636D005E9013 /* Example */, - FE5F66042CBE92AE005E9013 /* Seatsio */, - 3B40BA2E22A7D49C00B9A507 /* Products */, - 8438CC24EAD4C56087A90D9B /* Frameworks */, - FE12BD272CBD5DDC002A845A /* Package.swift */, - FE5F66B32CBE96A3005E9013 /* seatsio.podspec */, - 4EDEA976297E0ADA1A8BE9C8 /* releasing.md */, - FE5F66B62CBE98F2005E9013 /* LICENSE */, - FE5F66B72CBE98F2005E9013 /* README.md */, - ); - sourceTree = ""; - }; - 3B40BA2E22A7D49C00B9A507 /* Products */ = { - isa = PBXGroup; - children = ( - 3B40BA2D22A7D49C00B9A507 /* Seatsio-Example.app */, - FE5F66032CBE92AE005E9013 /* Seatsio.framework */, - ); - name = Products; - sourceTree = ""; - }; - 8438CC24EAD4C56087A90D9B /* Frameworks */ = { - isa = PBXGroup; - children = ( - ); - name = Frameworks; - sourceTree = ""; - }; - FE5F65EA2CBD636D005E9013 /* Example */ = { - isa = PBXGroup; - children = ( - FE5F65E42CBD636D005E9013 /* AppDelegate.swift */, - FE5F65E92CBD636D005E9013 /* SeatingChartSample.swift */, - FE5F65E52CBD636D005E9013 /* Assets.xcassets */, - FE5F65E62CBD636D005E9013 /* Info.plist */, - FE5F65E82CBD636D005E9013 /* Main.storyboard */, - ); - path = Example; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - FE5F65FE2CBE92AE005E9013 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 3B40BA2C22A7D49C00B9A507 /* Seatsio-Example */ = { - isa = PBXNativeTarget; - buildConfigurationList = 3B40BA5522A7D49C00B9A507 /* Build configuration list for PBXNativeTarget "Seatsio-Example" */; - buildPhases = ( - 3B40BA2922A7D49C00B9A507 /* Sources */, - 3B40BA2A22A7D49C00B9A507 /* Frameworks */, - 3B40BA2B22A7D49C00B9A507 /* Resources */, - FE5F660F2CBE92AE005E9013 /* Embed Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - FE5F66082CBE92AE005E9013 /* PBXTargetDependency */, - ); - name = "Seatsio-Example"; - productName = "seatsio-ios"; - productReference = 3B40BA2D22A7D49C00B9A507 /* Seatsio-Example.app */; - productType = "com.apple.product-type.application"; - }; - FE5F66022CBE92AE005E9013 /* Seatsio */ = { - isa = PBXNativeTarget; - buildConfigurationList = FE5F660C2CBE92AE005E9013 /* Build configuration list for PBXNativeTarget "Seatsio" */; - buildPhases = ( - FE5F65FE2CBE92AE005E9013 /* Headers */, - FE5F65FF2CBE92AE005E9013 /* Sources */, - FE5F66002CBE92AE005E9013 /* Frameworks */, - FE5F66012CBE92AE005E9013 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - fileSystemSynchronizedGroups = ( - FE5F66042CBE92AE005E9013 /* Seatsio */, - ); - name = Seatsio; - packageProductDependencies = ( - ); - productName = Seatsio; - productReference = FE5F66032CBE92AE005E9013 /* Seatsio.framework */; - productType = "com.apple.product-type.framework"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 3B40BA2522A7D49C00B9A507 /* Project object */ = { - isa = PBXProject; - attributes = { - LastSwiftUpdateCheck = 1020; - LastUpgradeCheck = 1020; - ORGANIZATIONNAME = Seats.io; - TargetAttributes = { - 3B40BA2C22A7D49C00B9A507 = { - CreatedOnToolsVersion = 10.2.1; - }; - FE5F66022CBE92AE005E9013 = { - CreatedOnToolsVersion = 16.0; - }; - }; - }; - buildConfigurationList = 3B40BA2822A7D49C00B9A507 /* Build configuration list for PBXProject "seatsio-ios" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 3B40BA2422A7D49C00B9A507; - productRefGroup = 3B40BA2E22A7D49C00B9A507 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 3B40BA2C22A7D49C00B9A507 /* Seatsio-Example */, - FE5F66022CBE92AE005E9013 /* Seatsio */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 3B40BA2B22A7D49C00B9A507 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - FE5F65ED2CBD636D005E9013 /* Assets.xcassets in Resources */, - FE5F65EE2CBD636D005E9013 /* Main.storyboard in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - FE5F66012CBE92AE005E9013 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 3B40BA2922A7D49C00B9A507 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - FE5F65EB2CBD636D005E9013 /* AppDelegate.swift in Sources */, - FE5F65EC2CBD636D005E9013 /* SeatingChartSample.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - FE5F65FF2CBE92AE005E9013 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - FE5F66082CBE92AE005E9013 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = FE5F66022CBE92AE005E9013 /* Seatsio */; - targetProxy = FE5F66072CBE92AE005E9013 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - FE5F65E82CBD636D005E9013 /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - FE5F65E72CBD636D005E9013 /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 3B40BA5322A7D49C00B9A507 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = ""; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - PROVISIONING_PROFILE_SPECIFIER = ""; - SDKROOT = iphoneos; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - }; - name = Debug; - }; - 3B40BA5422A7D49C00B9A507 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = ""; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PROVISIONING_PROFILE_SPECIFIER = ""; - SDKROOT = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 3B40BA5622A7D49C00B9A507 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = 5WGUCAYKLS; - INFOPLIST_FILE = Example/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "io.seats.seatsio-ios"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 3B40BA5722A7D49C00B9A507 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = 5WGUCAYKLS; - INFOPLIST_FILE = Example/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "io.seats.seatsio-ios"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Release; - }; - FE5F660D2CBE92AE005E9013 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; - BUILD_LIBRARY_FOR_DISTRIBUTION = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = 5WGUCAYKLS; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_MODULE_VERIFIER = YES; - ENABLE_USER_SCRIPT_SANDBOXING = YES; - GCC_C_LANGUAGE_STANDARD = gnu17; - GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_KEY_NSHumanReadableCopyright = "Copyright © 2024 Seats.io. All rights reserved."; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - LOCALIZATION_PREFERS_STRING_CATALOGS = YES; - MARKETING_VERSION = 1.0; - MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; - MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20"; - PRODUCT_BUNDLE_IDENTIFIER = io.seats.seatsio; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; - SWIFT_EMIT_LOC_STRINGS = YES; - SWIFT_INSTALL_OBJC_HEADER = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - FE5F660E2CBE92AE005E9013 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; - BUILD_LIBRARY_FOR_DISTRIBUTION = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = 5WGUCAYKLS; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_MODULE_VERIFIER = YES; - ENABLE_USER_SCRIPT_SANDBOXING = YES; - GCC_C_LANGUAGE_STANDARD = gnu17; - GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_KEY_NSHumanReadableCopyright = "Copyright © 2024 Seats.io. All rights reserved."; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - LOCALIZATION_PREFERS_STRING_CATALOGS = YES; - MARKETING_VERSION = 1.0; - MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; - MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20"; - PRODUCT_BUNDLE_IDENTIFIER = io.seats.seatsio; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SKIP_INSTALL = YES; - SWIFT_EMIT_LOC_STRINGS = YES; - SWIFT_INSTALL_OBJC_HEADER = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 3B40BA2822A7D49C00B9A507 /* Build configuration list for PBXProject "seatsio-ios" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 3B40BA5322A7D49C00B9A507 /* Debug */, - 3B40BA5422A7D49C00B9A507 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 3B40BA5522A7D49C00B9A507 /* Build configuration list for PBXNativeTarget "Seatsio-Example" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 3B40BA5622A7D49C00B9A507 /* Debug */, - 3B40BA5722A7D49C00B9A507 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - FE5F660C2CBE92AE005E9013 /* Build configuration list for PBXNativeTarget "Seatsio" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - FE5F660D2CBE92AE005E9013 /* Debug */, - FE5F660E2CBE92AE005E9013 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 3B40BA2522A7D49C00B9A507 /* Project object */; -} diff --git a/seatsio-ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/seatsio-ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 8b8e70d..0000000 --- a/seatsio-ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/seatsio-ios.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/seatsio-ios.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d9810..0000000 --- a/seatsio-ios.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/seatsio-ios.xcodeproj/xcuserdata/bver.xcuserdatad/xcschemes/xcschememanagement.plist b/seatsio-ios.xcodeproj/xcuserdata/bver.xcuserdatad/xcschemes/xcschememanagement.plist deleted file mode 100644 index b1cb56f..0000000 --- a/seatsio-ios.xcodeproj/xcuserdata/bver.xcuserdatad/xcschemes/xcschememanagement.plist +++ /dev/null @@ -1,14 +0,0 @@ - - - - - SchemeUserState - - seatsio-ios.xcscheme_^#shared#^_ - - orderHint - 1 - - - - diff --git a/seatsio.podspec b/seatsio.podspec index 7608e91..f309e65 100644 --- a/seatsio.podspec +++ b/seatsio.podspec @@ -1,12 +1,13 @@ Pod::Spec.new do |s| - s.name = 'seatsio' - s.version = '18.0.0' - s.summary = 'The official Seats.io library for iOS' - s.homepage = 'https://github.com/seatsio/seatsio-ios' - s.license = { :type => 'MIT', :file => 'LICENSE' } - s.source = { :git => 'https://github.com/seatsio/seatsio-ios.git', :tag => s.version.to_s } - s.authors = { 'The Seats.io team' => 'dev@seats.io' } - s.ios.deployment_target = '12.0' - s.source_files = 'Seatsio/Sources/*' - s.swift_version = '5.0' -end + s.name = 'seatsio' + s.version = '18.0.0' + s.summary = 'The official Seats.io library for iOS' + s.homepage = 'https://github.com/seatsio/seatsio-ios' + s.license = { :type => 'MIT', :file => 'LICENSE' } + s.source = { :git => 'https://github.com/seatsio/seatsio-ios.git', :tag => s.version.to_s } + s.authors = { 'The Seats.io team' => 'dev@seats.io' } + s.ios.deployment_target = '12.0' + s.source_files = 'Seatsio/Sources/*' + s.swift_version = '5.0' + s.dependency 'SwiftyJSON', '5.0.2' +end \ No newline at end of file