This repository was archived by the owner on Oct 16, 2025. It is now read-only.
chore: update openiap-gql to 1.0.11 with type improvements#17
Merged
Conversation
This version support currentPlanId in ActiveSubscription and Purchase. This also support alternative billing which was supported in openiap-gql 1.0.10
- update openiap-gql from 1.0.9 to 1.0.11 - fix generate-types.sh to properly copy generated files - regenerate Types.swift with new fields and public initializers: • add AlternativeBillingModeAndroid enum • add InitConnectionConfig struct • add currentPlanId, basePlanIdAndroid, purchaseTokenAndroid to ActiveSubscription • rename externalPurchaseUrlOnIOS → externalPurchaseUrl • include 19 public initializers for Input types (openiap-gql improvement) - improve OpenIapModule+ObjC finishTransaction to use actual transaction data: • fetch from pending transactions when available • fall back to minimal PurchaseIOS when not in pending • properly handle currentEntitlements search - add OpenIapSerialization helper methods for cross-module type creation - update all references to use new field names - simplify Example app with direct initialization - all tests passing (10/10) breaking changes: - externalPurchaseUrlOnIOS renamed to externalPurchaseUrl
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Updates openiap-gql dependency from 1.0.9 to 1.0.11, bringing improved type definitions with public initializers and new fields for alternative billing support.
Types.swiftwith 19 new public initializers for Input types, eliminating cross-module initialization issuesAlternativeBillingModeAndroidenum andInitConnectionConfigstructexternalPurchaseUrlOnIOS→externalPurchaseUrlfor consistencyChanges
Dependencies
openiap-gqlfrom 1.0.9 to 1.0.11 inopeniap-versions.jsonCode Generation
generate-types.shscript to properly copy generated filesSources/Models/Types.swiftwith latest schemaNew Types & Fields
AlternativeBillingModeAndroidenum (iOS alternative billing mode support)InitConnectionConfigstruct (connection configuration)ActiveSubscription: AddedcurrentPlanId,basePlanIdAndroid,purchaseTokenAndroidfieldsAPI Changes
externalPurchaseUrlOnIOS→externalPurchaseUrl(breaking change)Implementation Improvements
OpenIapModule+ObjC.swift: EnhancedfinishTransactionWithPurchaseIdto fetch actual transaction data from pending transactions before falling back to minimal dataOpenIapSerialization.swift: Added helper methods for creating Input types:requestSubscriptionIosProps()requestPurchaseIosProps()requestSubscriptionPropsByPlatforms()requestPurchasePropsByPlatforms()Example/AlternativeBillingScreen.swift: Simplified to use direct initialization with new public initializersBreaking Changes
externalPurchaseUrlOnIOS→externalPurchaseUrlUpdate any code using this field:
Test Plan