expo-iap 3.4.0 → 3.4.1-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/README.md +12 -1
  2. package/coverage/clover.xml +7 -7
  3. package/coverage/coverage-final.json +5 -5
  4. package/coverage/lcov-report/block-navigation.js +1 -1
  5. package/coverage/lcov-report/index.html +1 -1
  6. package/coverage/lcov-report/sorter.js +7 -21
  7. package/coverage/lcov-report/src/ExpoIap.types.ts.html +1396 -0
  8. package/coverage/lcov-report/src/helpers/index.html +116 -0
  9. package/coverage/lcov-report/src/helpers/subscription.ts.html +499 -0
  10. package/coverage/lcov-report/src/index.html +1 -1
  11. package/coverage/lcov-report/src/index.ts.html +1 -1
  12. package/coverage/lcov-report/src/modules/android.ts.html +1 -1
  13. package/coverage/lcov-report/src/modules/index.html +1 -1
  14. package/coverage/lcov-report/src/modules/ios.ts.html +1 -1
  15. package/coverage/lcov-report/src/onside/ExpoOnsideMarketplaceAvailabilityModule.ts.html +145 -0
  16. package/coverage/lcov-report/src/onside/index.html +131 -0
  17. package/coverage/lcov-report/src/onside/index.ts.html +253 -0
  18. package/coverage/lcov-report/src/types/ExpoIapAndroid.types.ts.html +502 -0
  19. package/coverage/lcov-report/src/types/index.html +116 -0
  20. package/coverage/lcov-report/src/useIAP.ts.html +1654 -0
  21. package/coverage/lcov-report/src/utils/constants.ts.html +127 -0
  22. package/coverage/lcov-report/src/utils/debug.ts.html +1 -1
  23. package/coverage/lcov-report/src/utils/errorMapping.ts.html +1 -1
  24. package/coverage/lcov-report/src/utils/index.html +1 -1
  25. package/ios/expoiap.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  26. package/ios/expoiap.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  27. package/package.json +1 -1
  28. package/plugin/build/withIAP.d.ts +19 -1
  29. package/plugin/build/withIAP.js +37 -10
  30. package/plugin/src/withIAP.ts +67 -9
  31. package/plugin/tsconfig.tsbuildinfo +1 -1
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  <div align="center">
4
4
  <img src="https://hyochan.github.io/expo-iap/img/icon.png" alt="Expo IAP Logo" width="150" />
5
5
 
6
- [![Version](http://img.shields.io/npm/v/expo-iap.svg?style=flat-square)](https://npmjs.org/package/expo-iap) [![Download](http://img.shields.io/npm/dm/expo-iap.svg?style=flat-square)](https://npmjs.org/package/expo-iap) [![CI](https://github.com/hyochan/expo-iap/actions/workflows/ci.yml/badge.svg)](https://github.com/hyochan/expo-iap/actions/workflows/ci.yml) [![codecov](https://codecov.io/gh/hyochan/expo-iap/graph/badge.svg?token=47VMTY5NyM)](https://codecov.io/gh/hyochan/expo-iap) [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fhyochan%2Fexpo-iap.svg?type=shield&issueType=license)](https://app.fossa.com/projects/git%2Bgithub.com%2Fhyochan%2Fexpo-iap?ref=badge_shield&issueType=license)
6
+ [![Version](http://img.shields.io/npm/v/expo-iap.svg?style=flat-square)](https://npmjs.org/package/expo-iap) [![Download](http://img.shields.io/npm/dm/expo-iap.svg?style=flat-square)](https://npmjs.org/package/expo-iap) [![OpenIAP](https://img.shields.io/badge/OpenIAP-Compliant-green?style=flat-square)](https://openiap.dev) [![CI](https://github.com/hyochan/expo-iap/actions/workflows/ci.yml/badge.svg)](https://github.com/hyochan/expo-iap/actions/workflows/ci.yml) [![codecov](https://codecov.io/gh/hyochan/expo-iap/graph/badge.svg?token=47VMTY5NyM)](https://codecov.io/gh/hyochan/expo-iap) [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fhyochan%2Fexpo-iap.svg?type=shield&issueType=license)](https://app.fossa.com/projects/git%2Bgithub.com%2Fhyochan%2Fexpo-iap?ref=badge_shield&issueType=license)
7
7
 
8
8
  Expo IAP is a powerful in-app purchase solution for Expo and React Native applications that conforms to the Open IAP specification. It provides a unified API for handling in-app purchases across iOS and Android platforms with comprehensive error handling and modern TypeScript support.
9
9
 
@@ -32,6 +32,17 @@ If you're shipping an app with expo-iap, we’d love to hear about it—please s
32
32
 
33
33
  **[📖 Visit our comprehensive documentation site →](https://hyochan.github.io/expo-iap)**
34
34
 
35
+ ## Using with AI Assistants
36
+
37
+ expo-iap provides AI-friendly documentation for Cursor, GitHub Copilot, Claude, and ChatGPT.
38
+
39
+ **[📖 AI Assistants Guide →](https://hyochan.github.io/expo-iap/guides/ai-assistants)**
40
+
41
+ Quick links:
42
+
43
+ - [llms.txt](https://hyochan.github.io/expo-iap/llms.txt) - Quick reference
44
+ - [llms-full.txt](https://hyochan.github.io/expo-iap/llms-full.txt) - Full API reference
45
+
35
46
  ## Notice
36
47
 
37
48
  The `expo-iap` module has been migrated from [react-native-iap](https://github.com/hyochan/react-native-iap). While we initially considered fully merging everything into `react-native-iap`, we ultimately decided to maintain the two libraries in parallel, each tailored to its own ecosystem.
@@ -1,10 +1,10 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
- <coverage generated="1767017370055" clover="3.2.0">
3
- <project timestamp="1767017370055" name="All files">
2
+ <coverage generated="1767718561825" clover="3.2.0">
3
+ <project timestamp="1767718561825" name="All files">
4
4
  <metrics statements="492" coveredstatements="463" conditionals="270" coveredconditionals="236" methods="103" coveredmethods="82" elements="865" coveredelements="781" complexity="0" loc="492" ncloc="492" packages="3" files="5" classes="5"/>
5
5
  <package name="src">
6
6
  <metrics statements="222" coveredstatements="215" conditionals="116" coveredconditionals="106" methods="46" coveredmethods="36"/>
7
- <file name="index.ts" path="/home/runner/work/expo-iap/expo-iap/src/index.ts">
7
+ <file name="index.ts" path="/Users/crossplatformkorea/Github/hyochan/expo-iap/src/index.ts">
8
8
  <metrics statements="222" coveredstatements="215" conditionals="116" coveredconditionals="106" methods="46" coveredmethods="36"/>
9
9
  <line num="2" count="2" type="stmt"/>
10
10
  <line num="3" count="2" type="stmt"/>
@@ -232,7 +232,7 @@
232
232
  </package>
233
233
  <package name="src.modules">
234
234
  <metrics statements="145" coveredstatements="137" conditionals="57" coveredconditionals="56" methods="33" coveredmethods="27"/>
235
- <file name="android.ts" path="/home/runner/work/expo-iap/expo-iap/src/modules/android.ts">
235
+ <file name="android.ts" path="/Users/crossplatformkorea/Github/hyochan/expo-iap/src/modules/android.ts">
236
236
  <metrics statements="54" coveredstatements="51" conditionals="22" coveredconditionals="21" methods="11" coveredmethods="8"/>
237
237
  <line num="2" count="3" type="stmt"/>
238
238
  <line num="5" count="3" type="stmt"/>
@@ -289,7 +289,7 @@
289
289
  <line num="319" count="3" type="stmt"/>
290
290
  <line num="320" count="3" type="stmt"/>
291
291
  </file>
292
- <file name="ios.ts" path="/home/runner/work/expo-iap/expo-iap/src/modules/ios.ts">
292
+ <file name="ios.ts" path="/Users/crossplatformkorea/Github/hyochan/expo-iap/src/modules/ios.ts">
293
293
  <metrics statements="91" coveredstatements="86" conditionals="35" coveredconditionals="35" methods="22" coveredmethods="19"/>
294
294
  <line num="5" count="3" type="stmt"/>
295
295
  <line num="21" count="3" type="stmt"/>
@@ -386,7 +386,7 @@
386
386
  </package>
387
387
  <package name="src.utils">
388
388
  <metrics statements="125" coveredstatements="111" conditionals="97" coveredconditionals="74" methods="24" coveredmethods="19"/>
389
- <file name="debug.ts" path="/home/runner/work/expo-iap/expo-iap/src/utils/debug.ts">
389
+ <file name="debug.ts" path="/Users/crossplatformkorea/Github/hyochan/expo-iap/src/utils/debug.ts">
390
390
  <metrics statements="16" coveredstatements="8" conditionals="9" coveredconditionals="4" methods="7" coveredmethods="4"/>
391
391
  <line num="9" count="2" type="stmt"/>
392
392
  <line num="14" count="9" type="cond" truecount="0" falsecount="1"/>
@@ -405,7 +405,7 @@
405
405
  <line num="59" count="0" type="stmt"/>
406
406
  <line num="66" count="2" type="stmt"/>
407
407
  </file>
408
- <file name="errorMapping.ts" path="/home/runner/work/expo-iap/expo-iap/src/utils/errorMapping.ts">
408
+ <file name="errorMapping.ts" path="/Users/crossplatformkorea/Github/hyochan/expo-iap/src/utils/errorMapping.ts">
409
409
  <metrics statements="109" coveredstatements="103" conditionals="88" coveredconditionals="70" methods="17" coveredmethods="15"/>
410
410
  <line num="7" count="4" type="stmt"/>
411
411
  <line num="8" count="4" type="stmt"/>