@sudobility/consumables_client 0.0.2

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 (66) hide show
  1. package/CLAUDE.md +69 -0
  2. package/dist/adapters/index.d.ts +3 -0
  3. package/dist/adapters/index.d.ts.map +1 -0
  4. package/dist/adapters/index.js +3 -0
  5. package/dist/adapters/index.js.map +1 -0
  6. package/dist/adapters/revenuecat-rn.d.ts +7 -0
  7. package/dist/adapters/revenuecat-rn.d.ts.map +1 -0
  8. package/dist/adapters/revenuecat-rn.js +129 -0
  9. package/dist/adapters/revenuecat-rn.js.map +1 -0
  10. package/dist/adapters/revenuecat-web.d.ts +7 -0
  11. package/dist/adapters/revenuecat-web.d.ts.map +1 -0
  12. package/dist/adapters/revenuecat-web.js +143 -0
  13. package/dist/adapters/revenuecat-web.js.map +1 -0
  14. package/dist/core/index.d.ts +3 -0
  15. package/dist/core/index.d.ts.map +1 -0
  16. package/dist/core/index.js +3 -0
  17. package/dist/core/index.js.map +1 -0
  18. package/dist/core/service.d.ts +31 -0
  19. package/dist/core/service.d.ts.map +1 -0
  20. package/dist/core/service.js +92 -0
  21. package/dist/core/service.js.map +1 -0
  22. package/dist/core/singleton.d.ts +18 -0
  23. package/dist/core/singleton.d.ts.map +1 -0
  24. package/dist/core/singleton.js +74 -0
  25. package/dist/core/singleton.js.map +1 -0
  26. package/dist/hooks/index.d.ts +6 -0
  27. package/dist/hooks/index.d.ts.map +1 -0
  28. package/dist/hooks/index.js +6 -0
  29. package/dist/hooks/index.js.map +1 -0
  30. package/dist/hooks/useBalance.d.ts +9 -0
  31. package/dist/hooks/useBalance.d.ts.map +1 -0
  32. package/dist/hooks/useBalance.js +53 -0
  33. package/dist/hooks/useBalance.js.map +1 -0
  34. package/dist/hooks/useConsumableProducts.d.ts +9 -0
  35. package/dist/hooks/useConsumableProducts.d.ts.map +1 -0
  36. package/dist/hooks/useConsumableProducts.js +32 -0
  37. package/dist/hooks/useConsumableProducts.js.map +1 -0
  38. package/dist/hooks/usePurchaseCredits.d.ts +7 -0
  39. package/dist/hooks/usePurchaseCredits.d.ts.map +1 -0
  40. package/dist/hooks/usePurchaseCredits.js +29 -0
  41. package/dist/hooks/usePurchaseCredits.js.map +1 -0
  42. package/dist/hooks/usePurchaseHistory.d.ts +10 -0
  43. package/dist/hooks/usePurchaseHistory.d.ts.map +1 -0
  44. package/dist/hooks/usePurchaseHistory.js +48 -0
  45. package/dist/hooks/usePurchaseHistory.js.map +1 -0
  46. package/dist/hooks/useUsageHistory.d.ts +10 -0
  47. package/dist/hooks/useUsageHistory.d.ts.map +1 -0
  48. package/dist/hooks/useUsageHistory.js +48 -0
  49. package/dist/hooks/useUsageHistory.js.map +1 -0
  50. package/dist/index.d.ts +7 -0
  51. package/dist/index.d.ts.map +1 -0
  52. package/dist/index.js +5 -0
  53. package/dist/index.js.map +1 -0
  54. package/dist/network/ConsumablesApiClient.d.ts +28 -0
  55. package/dist/network/ConsumablesApiClient.d.ts.map +1 -0
  56. package/dist/network/ConsumablesApiClient.js +55 -0
  57. package/dist/network/ConsumablesApiClient.js.map +1 -0
  58. package/dist/types/adapter.d.ts +25 -0
  59. package/dist/types/adapter.d.ts.map +1 -0
  60. package/dist/types/adapter.js +2 -0
  61. package/dist/types/adapter.js.map +1 -0
  62. package/dist/types/index.d.ts +22 -0
  63. package/dist/types/index.d.ts.map +1 -0
  64. package/dist/types/index.js +2 -0
  65. package/dist/types/index.js.map +1 -0
  66. package/package.json +65 -0
@@ -0,0 +1,22 @@
1
+ export * from "./adapter";
2
+ export type { ConsumableSource, ConsumableBalanceResponse, ConsumablePurchaseRequest, ConsumableUseRequest, ConsumableUseResponse, ConsumablePurchaseRecord, ConsumableUsageRecord, } from "@sudobility/types";
3
+ export type { ConsumablePurchaseRecord as CreditPurchaseRecord, ConsumableUsageRecord as CreditUsageRecord, } from "@sudobility/types";
4
+ export interface CreditPackage {
5
+ packageId: string;
6
+ productId: string;
7
+ title: string;
8
+ description: string | null;
9
+ credits: number;
10
+ price: number;
11
+ priceString: string;
12
+ currencyCode: string;
13
+ }
14
+ export interface CreditOffering {
15
+ offeringId: string;
16
+ packages: CreditPackage[];
17
+ }
18
+ export interface CreditBalance {
19
+ balance: number;
20
+ initialCredits: number;
21
+ }
22
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAG1B,YAAY,EACV,gBAAgB,EAChB,yBAAyB,EACzB,yBAAyB,EACzB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EACV,wBAAwB,IAAI,oBAAoB,EAChD,qBAAqB,IAAI,iBAAiB,GAC3C,MAAM,mBAAmB,CAAC;AAK3B,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAGD,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;AAGD,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;CACxB"}
@@ -0,0 +1,2 @@
1
+ export * from "./adapter";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC","sourcesContent":["export * from \"./adapter\";\n\n// Shared types from @sudobility/types (re-exported for convenience)\nexport type {\n ConsumableSource,\n ConsumableBalanceResponse,\n ConsumablePurchaseRequest,\n ConsumableUseRequest,\n ConsumableUseResponse,\n ConsumablePurchaseRecord,\n ConsumableUsageRecord,\n} from \"@sudobility/types\";\n\n// Backward-compat aliases used throughout the client and consumers\nexport type {\n ConsumablePurchaseRecord as CreditPurchaseRecord,\n ConsumableUsageRecord as CreditUsageRecord,\n} from \"@sudobility/types\";\n\n// === Client-only types ===\n\n/** A purchasable credit package from RevenueCat */\nexport interface CreditPackage {\n packageId: string;\n productId: string;\n title: string;\n description: string | null;\n credits: number;\n price: number;\n priceString: string;\n currencyCode: string;\n}\n\n/** An offering containing credit packages */\nexport interface CreditOffering {\n offeringId: string;\n packages: CreditPackage[];\n}\n\n/** Balance info from API (client-side camelCase mapping) */\nexport interface CreditBalance {\n balance: number;\n initialCredits: number;\n}\n"]}
package/package.json ADDED
@@ -0,0 +1,65 @@
1
+ {
2
+ "name": "@sudobility/consumables_client",
3
+ "version": "0.0.2",
4
+ "description": "Cross-platform consumable credits client with RevenueCat adapter pattern",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "module": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "import": "./dist/index.js",
12
+ "types": "./dist/index.d.ts"
13
+ }
14
+ },
15
+ "files": [
16
+ "dist",
17
+ "CLAUDE.md"
18
+ ],
19
+ "scripts": {
20
+ "build": "tsc",
21
+ "dev": "tsc --watch",
22
+ "clean": "rm -rf dist",
23
+ "typecheck": "bunx tsc --noEmit",
24
+ "lint": "bunx eslint src",
25
+ "lint:fix": "bunx eslint src --fix",
26
+ "format": "bunx prettier --write \"src/**/*.{ts,tsx,js,jsx,json}\"",
27
+ "test": "vitest run",
28
+ "test:watch": "vitest",
29
+ "prepublishOnly": "bun run build"
30
+ },
31
+ "peerDependencies": {
32
+ "@sudobility/types": "^1.9.51",
33
+ "react": "^18.0.0 || ^19.0.0",
34
+ "@revenuecat/purchases-js": "^1.0.0",
35
+ "react-native-purchases": ">=7.0.0"
36
+ },
37
+ "peerDependenciesMeta": {
38
+ "@revenuecat/purchases-js": {
39
+ "optional": true
40
+ },
41
+ "react-native-purchases": {
42
+ "optional": true
43
+ }
44
+ },
45
+ "devDependencies": {
46
+ "@eslint/js": "^10.0.1",
47
+ "@revenuecat/purchases-js": "^1.1.3",
48
+ "@sudobility/types": "^1.9.51",
49
+ "@types/bun": "^1.2.8",
50
+ "@types/node": "^22.0.0",
51
+ "@types/react": "^19.2.5",
52
+ "@typescript-eslint/eslint-plugin": "^8.0.0",
53
+ "@typescript-eslint/parser": "^8.0.0",
54
+ "eslint": "^9.0.0",
55
+ "eslint-config-prettier": "^10.1.8",
56
+ "eslint-plugin-prettier": "^5.5.5",
57
+ "prettier": "^3.0.0",
58
+ "typescript": "~5.9.3",
59
+ "vitest": "^4.0.4"
60
+ },
61
+ "publishConfig": {
62
+ "access": "public"
63
+ },
64
+ "license": "BUSL-1.1"
65
+ }