@voltro/plugin-economy 0.87.0 → 0.88.0

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 (143) hide show
  1. package/CHANGELOG.md +169 -6
  2. package/THIRD-PARTY-NOTICES.md +741 -89
  3. package/dist/amount.js +1 -2
  4. package/dist/appleIap.server.js +1 -2
  5. package/dist/appleIapNotifications.server.js +1 -2
  6. package/dist/appleIapTrust.server.js +1 -2
  7. package/dist/bundleValue.server.js +1 -2
  8. package/dist/canonicalDataJson.js +1 -2
  9. package/dist/capture.js +1 -2
  10. package/dist/codePort.fixture.js +1 -2
  11. package/dist/codeStore.server.js +1 -2
  12. package/dist/codeTables.entity.js +1 -2
  13. package/dist/codes.js +1 -2
  14. package/dist/components.js +1 -2
  15. package/dist/consistency.server.js +1 -2
  16. package/dist/containerStore.server.js +1 -2
  17. package/dist/containerStore.testFixtures.js +1 -2
  18. package/dist/containerTables.entity.js +1 -2
  19. package/dist/containers.fixture.js +1 -2
  20. package/dist/containers.js +1 -2
  21. package/dist/containers.server.js +1 -2
  22. package/dist/containersPort.fixture.js +1 -2
  23. package/dist/currency.js +1 -2
  24. package/dist/declarationFixtures.js +1 -2
  25. package/dist/economyPort.fixture.js +1 -2
  26. package/dist/errors.js +1 -2
  27. package/dist/googleIap.server.js +1 -2
  28. package/dist/googleIapNotifications.server.js +1 -2
  29. package/dist/googleIapSubscription.server.js +1 -2
  30. package/dist/iap.js +1 -2
  31. package/dist/iap.testFixtures.js +1 -2
  32. package/dist/iapAccountTables.entity.js +1 -2
  33. package/dist/iapAccounts.server.js +1 -2
  34. package/dist/iapBinding.server.js +1 -2
  35. package/dist/iapCheckout.server.js +1 -2
  36. package/dist/iapCompletion.server.js +1 -2
  37. package/dist/iapCurrentState.server.js +1 -2
  38. package/dist/iapCurrentState.testFixtures.js +1 -2
  39. package/dist/iapCurrentStatePort.fixture.js +1 -2
  40. package/dist/iapEntitlements.js +1 -2
  41. package/dist/iapEntitlements.server.js +1 -2
  42. package/dist/iapEntitlementsBinding.server.js +1 -2
  43. package/dist/iapEntitlementsPort.fixture.js +1 -2
  44. package/dist/iapInstalledEntitlements.testFixtures.js +1 -2
  45. package/dist/iapInstalledNotifications.testFixtures.js +1 -2
  46. package/dist/iapInventoryRefunds.server.js +1 -2
  47. package/dist/iapNotificationCustodyPort.fixture.js +1 -2
  48. package/dist/iapNotificationPort.fixture.js +1 -2
  49. package/dist/iapNotificationProcessor.server.js +1 -2
  50. package/dist/iapNotificationProcessor.testFixtures.js +1 -2
  51. package/dist/iapNotificationProcessorPort.fixture.js +1 -2
  52. package/dist/iapNotificationSchedule.server.js +1 -2
  53. package/dist/iapNotificationStore.server.js +1 -2
  54. package/dist/iapNotificationStore.testFixtures.js +1 -2
  55. package/dist/iapNotificationTables.entity.js +1 -2
  56. package/dist/iapNotificationTarget.server.js +1 -2
  57. package/dist/iapNotificationTarget.testFixtures.js +1 -2
  58. package/dist/iapNotifications.server.js +1 -2
  59. package/dist/iapNotificationsBinding.server.js +1 -2
  60. package/dist/iapNotificationsSystemPort.fixture.js +1 -2
  61. package/dist/iapPlugin.testFixtures.js +1 -2
  62. package/dist/iapPort.fixture.js +1 -2
  63. package/dist/iapProviderCapture.server.js +1 -2
  64. package/dist/iapRecovery.js +1 -2
  65. package/dist/iapRefundEventDelivery.server.js +1 -2
  66. package/dist/iapRefundEvents.js +1 -2
  67. package/dist/iapRefundEventsPort.fixture.js +1 -2
  68. package/dist/iapRefundPort.fixture.js +1 -2
  69. package/dist/iapRefundTables.entity.js +1 -2
  70. package/dist/iapRefunds.server.js +1 -2
  71. package/dist/iapRefunds.testFixtures.js +1 -2
  72. package/dist/iapSpendAdmission.server.js +1 -2
  73. package/dist/iapStore.server.js +1 -2
  74. package/dist/iapStore.testFixtures.js +1 -2
  75. package/dist/iapTables.entity.js +1 -2
  76. package/dist/iapVerification.server.js +1 -2
  77. package/dist/intentionRecovery.js +1 -2
  78. package/dist/ledger.js +1 -2
  79. package/dist/loyalty.fixture.js +1 -2
  80. package/dist/loyalty.js +1 -2
  81. package/dist/loyaltyBinding.server.js +1 -2
  82. package/dist/loyaltyPort.fixture.js +1 -2
  83. package/dist/loyaltyShopSource.server.js +1 -2
  84. package/dist/loyaltyStore.server.js +1 -2
  85. package/dist/loyaltyStore.testFixtures.js +1 -2
  86. package/dist/loyaltyTables.entity.js +1 -2
  87. package/dist/offerMerchandising.fixture.js +1 -2
  88. package/dist/offerMerchandising.js +1 -2
  89. package/dist/offerPolicies.fixture.js +1 -2
  90. package/dist/offerPolicies.js +1 -2
  91. package/dist/piggyBanks.fixture.js +1 -2
  92. package/dist/piggyBanks.js +1 -2
  93. package/dist/piggyBinding.server.js +1 -2
  94. package/dist/piggyPort.fixture.js +1 -2
  95. package/dist/piggyStore.server.js +1 -2
  96. package/dist/piggyStore.testFixtures.js +1 -2
  97. package/dist/piggyTables.entity.js +1 -2
  98. package/dist/plugin.js +1 -2
  99. package/dist/port.js +1 -2
  100. package/dist/price.js +1 -2
  101. package/dist/purchaseRecovery.js +1 -2
  102. package/dist/reports.server.js +1 -2
  103. package/dist/rpc.js +1 -2
  104. package/dist/sanctionsTradeAuthority.server.js +1 -2
  105. package/dist/shop.js +1 -2
  106. package/dist/shop.testFixtures.js +1 -2
  107. package/dist/shopPort.fixture.js +1 -2
  108. package/dist/shopPresentation.js +1 -2
  109. package/dist/shopStore.server.js +1 -2
  110. package/dist/shopTables.entity.js +1 -2
  111. package/dist/shopUiCopy.js +1 -2
  112. package/dist/spendLimits.fixture.js +1 -2
  113. package/dist/spendLimits.js +1 -2
  114. package/dist/spendLimitsPort.fixture.js +1 -2
  115. package/dist/subscriptionBinding.server.js +1 -2
  116. package/dist/subscriptionStore.server.js +1 -2
  117. package/dist/subscriptionStore.testFixtures.js +1 -2
  118. package/dist/subscriptionTables.entity.js +1 -2
  119. package/dist/subscriptions.fixture.js +1 -2
  120. package/dist/subscriptions.js +1 -2
  121. package/dist/subscriptionsPort.fixture.js +1 -2
  122. package/dist/systemFixtures.js +1 -2
  123. package/dist/tables.entity.js +1 -2
  124. package/dist/tradeAuthority.server.js +1 -2
  125. package/dist/tradeBinding.server.js +1 -2
  126. package/dist/tradeComponents.js +1 -2
  127. package/dist/tradeEscrow.server.js +1 -2
  128. package/dist/tradeEscrow.testFixtures.js +1 -2
  129. package/dist/tradeExpiry.server.js +1 -2
  130. package/dist/tradeRecovery.js +1 -2
  131. package/dist/tradeStore.server.js +1 -2
  132. package/dist/tradeStore.testFixtures.js +1 -2
  133. package/dist/tradeTables.entity.js +1 -2
  134. package/dist/tradeUiCopy.js +1 -2
  135. package/dist/trades.fixture.js +1 -2
  136. package/dist/trades.js +1 -2
  137. package/dist/tradesPort.fixture.js +1 -2
  138. package/dist/walletEscrow.js +1 -2
  139. package/dist/walletEscrow.server.js +1 -2
  140. package/dist/walletKeys.server.js +1 -2
  141. package/dist/walletStore.js +1 -2
  142. package/dist/web.js +1 -2
  143. package/package.json +10 -10
@@ -6,7 +6,7 @@ import { captureTradeExpiryInput as b } from "./tradeExpiry.server.js";
6
6
  import { tradeTables as x } from "./tradeTables.entity.js";
7
7
  import { dataStoreTrades as S, resolveTradeStoreOptions as C } from "./tradeStore.server.js";
8
8
  import { Effect as w, Layer as T } from "effect";
9
- //#region src/tradeBinding.server.ts
9
+ // src/tradeBinding.server.ts
10
10
  var E = () => w.fail(t("unavailable")), D = Object.freeze({
11
11
  propose: E,
12
12
  accept: E,
@@ -197,5 +197,4 @@ var E = () => w.fail(t("unavailable")), D = Object.freeze({
197
197
  }
198
198
  });
199
199
  };
200
- //#endregion
201
200
  export { O as bindTradesSystem, D as unavailableTrades };
@@ -5,7 +5,7 @@ import { tradeUiCopy as c } from "./tradeUiCopy.js";
5
5
  import { useEffect as l, useId as u, useRef as d } from "react";
6
6
  import { Button as f, Dialog as p, DialogDescription as m, DialogFooter as h, DialogHeader as g, DialogTitle as _ } from "@voltro/ui-shadcn";
7
7
  import { jsx as v, jsxs as y } from "react/jsx-runtime";
8
- //#region src/tradeComponents.tsx
8
+ // src/tradeComponents.tsx
9
9
  var b = (e) => e.copy ?? c[e.locale ?? "en"], x = (e) => Number.isSafeInteger(e) && e >= 0 && e <= 864e13, S = (e, t, n) => x(n) && e.state === "proposed" && n >= e.createdAt && n < e.expiresAt && t !== e.proposerId && (e.toId === null || e.toId === t), C = ({ leg: e, taxes: t, copy: n, ...r }) => /* @__PURE__ */ y("ul", {
10
10
  className: "space-y-2 text-sm leading-relaxed",
11
11
  children: [
@@ -338,5 +338,4 @@ var b = (e) => e.copy ?? c[e.locale ?? "en"], x = (e) => Number.isSafeInteger(e)
338
338
  ]
339
339
  });
340
340
  };
341
- //#endregion
342
341
  export { E as TradeAcceptDialog, D as TradeIntentionRecovery, T as TradeList, w as TradeTerms, c as tradeUiCopy };
@@ -5,7 +5,7 @@ import { captureTradeLeg as s, defaultTradeTaxPolicy as c, defineTradeRules as l
5
5
  import { Effect as d, Result as f } from "effect";
6
6
  import { prepareSqlMutationGroup as p } from "@voltro/database/sql";
7
7
  import { InventoryError as m } from "@voltro/plugin-inventory/errors";
8
- //#region src/tradeEscrow.server.ts
8
+ // src/tradeEscrow.server.ts
9
9
  var h = (n) => n instanceof e ? n : n instanceof m && [
10
10
  "invalid_input",
11
11
  "invalid_record",
@@ -228,5 +228,4 @@ var h = (n) => n instanceof e ? n : n instanceof m && [
228
228
  })
229
229
  });
230
230
  };
231
- //#endregion
232
231
  export { x as tradeEscrowParticipant };
@@ -9,7 +9,7 @@ import { InMemoryDataStore as l } from "@voltro/runtime";
9
9
  import { dataStoreCatalog as u, dataStoreInventory as d, inventorySubjectsTable as f, inventoryTables as p } from "@voltro/plugin-inventory/server";
10
10
  import { inventoryFixture as m } from "@voltro/plugin-inventory/testing";
11
11
  import { defineItem as h, itemContent as g } from "@voltro/plugin-inventory";
12
- //#region src/tradeEscrow.testFixtures.ts
12
+ // src/tradeEscrow.testFixtures.ts
13
13
  var _ = [...e, ...p], v = Date.UTC(2026, 9, 10), y = i("trade.escrow.fixture"), b = async (e = new l(), i = "tenant") => {
14
14
  _.forEach(o);
15
15
  let p = h({
@@ -129,5 +129,4 @@ var _ = [...e, ...p], v = Date.UTC(2026, 9, 10), y = i("trade.escrow.fixture"),
129
129
  })
130
130
  };
131
131
  };
132
- //#endregion
133
132
  export { v as tradeEscrowAt, b as tradeEscrowFixture, y as tradeEscrowMachine, _ as tradeEscrowTables };
@@ -4,7 +4,7 @@ import { shopInteger as i } from "./shop.js";
4
4
  import { Effect as a } from "effect";
5
5
  import { systemSubject as o } from "@voltro/protocol";
6
6
  import { defineSchedule as s } from "@voltro/runtime";
7
- //#region src/tradeExpiry.server.ts
7
+ // src/tradeExpiry.server.ts
8
8
  var c = (e) => {
9
9
  let t = n(e, ["tenantId", "maxTrades"]);
10
10
  return Object.freeze({
@@ -39,5 +39,4 @@ var c = (e) => {
39
39
  })
40
40
  });
41
41
  };
42
- //#endregion
43
42
  export { c as captureTradeExpiryInput, l as tradeExpirySchedule };
@@ -2,7 +2,7 @@ import { economyError as e } from "./errors.js";
2
2
  import { captureBoundMethods as t, dataObject as n, identifier as r } from "./capture.js";
3
3
  import { captureTradeObservation as i, captureTradeProposeIntention as a, tradeAcceptIntent as o, tradeCancelIntent as s } from "./trades.js";
4
4
  import { browserIntentionJournal as c, createIntentionRecovery as l } from "./intentionRecovery.js";
5
- //#region src/tradeRecovery.ts
5
+ // src/tradeRecovery.ts
6
6
  var u = (t) => {
7
7
  let r = n(t, ["kind", "input"]);
8
8
  if (r.kind === "propose") return Object.freeze({
@@ -44,5 +44,4 @@ var u = (t) => {
44
44
  resolve: d
45
45
  });
46
46
  }, p = (e, t) => c(e, t, "voltro:trade-intention:v1:", 32768, u);
47
- //#endregion
48
47
  export { p as browserTradeIntentionJournal, u as captureTradeIntention, f as createTradeRecovery };
@@ -14,7 +14,7 @@ import { and as T, eq as E, queryFor as D } from "@voltro/database";
14
14
  import { executeSqlMutations as ae, prepareSqlMutation as oe, prepareSqlMutationGroup as O } from "@voltro/database/sql";
15
15
  import { InventoryError as se } from "@voltro/plugin-inventory/errors";
16
16
  import { SanctionsError as k } from "@voltro/plugin-sanctions/errors";
17
- //#region src/tradeStore.server.ts
17
+ // src/tradeStore.server.ts
18
18
  var ce = (e) => {
19
19
  let c = i(e, [
20
20
  "currencies",
@@ -746,5 +746,4 @@ var ce = (e) => {
746
746
  });
747
747
  return Ee;
748
748
  };
749
- //#endregion
750
749
  export { B as dataStoreTrades, ce as resolveTradeStoreOptions };
@@ -6,7 +6,7 @@ import { Effect as o } from "effect";
6
6
  import { and as s, ensureTableRegistered as c, eq as l, queryFor as u } from "@voltro/database";
7
7
  import { prepareSqlMutation as d } from "@voltro/database/sql";
8
8
  import { inventoryItemsTable as f, inventorySubjectsTable as p } from "@voltro/plugin-inventory/server";
9
- //#region src/tradeStore.testFixtures.ts
9
+ // src/tradeStore.testFixtures.ts
10
10
  var m = async (m, h = "tenant") => {
11
11
  t.forEach(c);
12
12
  let g = await i(m, h), _ = {
@@ -69,5 +69,4 @@ var m = async (m, h = "tenant") => {
69
69
  accept: x
70
70
  };
71
71
  };
72
- //#endregion
73
72
  export { m as tradeStoreFixture };
@@ -1,5 +1,5 @@
1
1
  import { boolean as e, id as t, integer as n, json as r, table as i, text as a, timestamp as o } from "@voltro/database";
2
- //#region src/tradeTables.entity.ts
2
+ // src/tradeTables.entity.ts
3
3
  var s = () => a().maxLength(120).externalId().sensitive("pii"), c = i("_voltro_eco_trade_tenants", {
4
4
  id: t({ prefix: "ett" }),
5
5
  tenantId: s(),
@@ -62,5 +62,4 @@ var s = () => a().maxLength(120).externalId().sensitive("pii"), c = i("_voltro_e
62
62
  u,
63
63
  d
64
64
  ];
65
- //#endregion
66
65
  export { d as tradeOperationsTable, l as tradeSubjectsTable, f as tradeTables, c as tradeTenantsTable, u as tradesTable };
@@ -1,4 +1,4 @@
1
- //#region src/tradeUiCopy.ts
1
+ // src/tradeUiCopy.ts
2
2
  var e = Object.freeze({
3
3
  en: Object.freeze({
4
4
  title: "Trades",
@@ -75,5 +75,4 @@ var e = Object.freeze({
75
75
  payment: (e, t, n, r) => `${e} ${r} angeboten · ${t} empfangen · ${n} Steuer`
76
76
  })
77
77
  });
78
- //#endregion
79
78
  export { e as tradeUiCopy };
@@ -1,6 +1,6 @@
1
1
  import { captureTradeLeg as e, defaultTradeEligibilityPolicy as t, defaultTradeTaxPolicy as n, defineTradeRules as r, resolveTradeEligibility as i, resolveTradeTax as a } from "./trades.js";
2
2
  import { Effect as o } from "effect";
3
- //#region src/trades.fixture.ts
3
+ // src/trades.fixture.ts
4
4
  var s = () => {
5
5
  let t = [{
6
6
  id: "test.gold",
@@ -99,5 +99,4 @@ var s = () => {
99
99
  expected: !1
100
100
  }
101
101
  });
102
- //#endregion
103
102
  export { u as tradeEligibilitySystemFixture, s as tradeFixture, l as tradeTaxSystemFixture };
package/dist/trades.js CHANGED
@@ -4,7 +4,7 @@ import { nonNegativeAmount as a, positiveAmount as o } from "./amount.js";
4
4
  import { captureCurrencies as s } from "./currency.js";
5
5
  import { shopInteger as c } from "./shop.js";
6
6
  import { Context as l } from "effect";
7
- //#region src/trades.ts
7
+ // src/trades.ts
8
8
  var u = (t) => {
9
9
  let n = r(t, [
10
10
  "version",
@@ -285,5 +285,4 @@ var u = (t) => {
285
285
  receipt: o
286
286
  });
287
287
  };
288
- //#endregion
289
288
  export { w as TradesPort, f as captureTradeLeg, O as captureTradeObservation, S as captureTradeParticipantAuthority, p as captureTradeProposeIntention, D as captureTradeReceipt, E as captureTradeView, T as captureTradesService, x as defaultTradeEligibilityPolicy, v as defaultTradeTaxPolicy, u as defineTradeRules, C as resolveTradeEligibility, y as resolveTradeTax, g as tradeAcceptIntent, _ as tradeCancelIntent, m as tradeProposeIntent };
@@ -5,7 +5,7 @@ import { tradeEscrowAt as r } from "./tradeEscrow.testFixtures.js";
5
5
  import { tradeStoreFixture as i } from "./tradeStore.testFixtures.js";
6
6
  import { Effect as a, Layer as o } from "effect";
7
7
  import { InMemoryDataStore as s } from "@voltro/runtime";
8
- //#region src/tradesPort.fixture.ts
8
+ // src/tradesPort.fixture.ts
9
9
  var c = {
10
10
  app: {
11
11
  name: "trades-fixture",
@@ -90,5 +90,4 @@ var c = {
90
90
  }
91
91
  }
92
92
  });
93
- //#endregion
94
93
  export { u as tradesFakeLayer, l as tradesPortFixture, d as tradesPortSystemFixture };
@@ -2,7 +2,7 @@ import { economyError as e } from "./errors.js";
2
2
  import { dataObject as t, identifier as n } from "./capture.js";
3
3
  import { nonNegativeAmount as r, positiveAmount as i } from "./amount.js";
4
4
  import { captureAccount as a } from "./ledger.js";
5
- //#region src/walletEscrow.ts
5
+ // src/walletEscrow.ts
6
6
  var o = (t) => {
7
7
  let n = a(t);
8
8
  if (n.kind !== "wallet") throw e("invalid_input");
@@ -102,5 +102,4 @@ var o = (t) => {
102
102
  amount: o
103
103
  });
104
104
  };
105
- //#endregion
106
105
  export { o as captureEscrowWallet, s as captureWalletEscrowInput, c as captureWalletEscrowReserveInput, d as captureWalletEscrowReserveTaxSettleInput, l as captureWalletEscrowSettleInput, u as captureWalletEscrowTaxSettleInput };
@@ -8,7 +8,7 @@ import { captureWalletEscrowInput as u, captureWalletEscrowReserveInput as d, ca
8
8
  import { Effect as h, Result as g } from "effect";
9
9
  import { eq as _, queryFor as v } from "@voltro/database";
10
10
  import { prepareSqlMutation as y, prepareSqlMutationGroup as b } from "@voltro/database/sql";
11
- //#region src/walletEscrow.server.ts
11
+ // src/walletEscrow.server.ts
12
12
  var x = (x, S) => {
13
13
  let C = new Set(S.allowedServices), w = (n) => h.tryPromise({
14
14
  try: n,
@@ -372,5 +372,4 @@ var x = (x, S) => {
372
372
  taxTransactionIds: G
373
373
  });
374
374
  };
375
- //#endregion
376
375
  export { x as walletEscrowParticipant };
@@ -1,5 +1,4 @@
1
1
  import { createHash as e } from "node:crypto";
2
- //#region src/walletKeys.server.ts
2
+ // src/walletKeys.server.ts
3
3
  var t = (t) => e("sha256").update(JSON.stringify(t)).digest("hex"), n = (e, ...n) => e + t(n).slice(0, 56);
4
- //#endregion
5
4
  export { t as walletHash, n as walletKey };
@@ -11,7 +11,7 @@ import { assertSpendBudget as ee, captureSpendLimitsOptions as E, projectSpend a
11
11
  import { Effect as D, Result as re, Schema as O } from "effect";
12
12
  import { and as k, eq as A, inSet as j, queryFor as M } from "@voltro/database";
13
13
  import { executeSqlMutations as ie, prepareSqlMutation as ae } from "@voltro/database/sql";
14
- //#region src/walletStore.ts
14
+ // src/walletStore.ts
15
15
  var N = (n) => n instanceof e ? n : t("unavailable"), P = (e) => D.tryPromise({
16
16
  try: e,
17
17
  catch: N
@@ -567,5 +567,4 @@ var N = (n) => n instanceof e ? n : t("unavailable"), P = (e) => D.tryPromise({
567
567
  eraseSubject: me
568
568
  });
569
569
  };
570
- //#endregion
571
570
  export { B as dataStoreEconomy, F as economyLedgerAt, R as economyWalletKey, z as readEconomyTransferEvidence, oe as resolveEconomyStoreOptions };
package/dist/web.js CHANGED
@@ -3,7 +3,6 @@ import { browserShopPurchaseJournal as t, createShopPurchaseRecovery as n } from
3
3
  import { browserTradeIntentionJournal as r, captureTradeIntention as i, createTradeRecovery as a } from "./tradeRecovery.js";
4
4
  import { pluginTag as o } from "@voltro/protocol";
5
5
  import { useAction as s, useSubscription as c } from "@voltro/client";
6
- //#region src/web.ts
6
+ // src/web.ts
7
7
  var l = (t = "app") => c(t, o(e, "mine"), {}), u = (e = "app") => s(e, "economy.iap.account"), d = (e = "app") => s(e, "economy.iap.redeem"), f = (e = "app") => s(e, "economy.iap.checkout"), p = (e = "app") => s(e, "economy.iap.manage"), m = (e = "app") => s(e, "economy.iap.complete"), h = (e, t = "app") => c(t, "economy.iap.receipt", e ?? {}, { skip: e === void 0 }), g = (e, t = "app") => c(t, "economy.iap.entitled", e ?? {}, { skip: e === void 0 }), _ = (e = "app") => s(e, "economy.iap.checkEntitlement"), v = (e = "app") => c(e, "shop.offers", {}), y = (e = "app") => s(e, "shop.buy"), b = (e, t = "app") => c(t, "shop.receipt", e ?? {}, { skip: e === void 0 }), x = (e = "app") => s(e, "economy.redeem"), S = (e, t = "app") => c(t, "economy.codes.receipt", e ?? {}, { skip: e === void 0 }), C = (e = "app") => c(e, "economy.containers", {}), w = (e = "app") => s(e, "economy.openContainer"), T = (e, t = "app") => c(t, "economy.containers.receipt", e ?? {}, { skip: e === void 0 }), E = (e = "app") => c(e, "economy.subscriptions", {}), D = (e = "app") => c(e, "economy.subscriptions.active", {}), O = (e = "app") => s(e, "economy.subscriptions.start"), k = (e = "app") => s(e, "economy.subscriptions.claimDaily"), A = (e = "app") => s(e, "economy.subscriptions.cancel"), j = (e, t = "app") => c(t, "economy.subscriptions.receipt", e ?? {}, { skip: e === void 0 }), M = (e = "app") => c(e, "economy.loyalty", {}), N = (e, t = "app") => c(t, "economy.loyalty.mine", e ?? {}, { skip: e === void 0 }), P = (e, t = "app") => c(t, "economy.loyalty.receipt", e ?? {}, { skip: e === void 0 }), F = (e = "app") => c(e, "economy.piggyBanks", {}), I = (e = "app") => s(e, "economy.piggyBanks.unlock"), L = (e, t = "app") => c(t, "economy.piggyBanks.receipt", e ?? {}, { skip: e === void 0 }), R = (e = "app") => c(e, "economy.trades.mine", {}), z = (e = "app") => s(e, "economy.trades.propose"), B = (e = "app") => s(e, "economy.trades.accept"), V = (e = "app") => s(e, "economy.trades.cancel"), H = (e, t = "app") => c(t, "economy.trades.receipt", e ?? {}, { skip: e === void 0 });
8
- //#endregion
9
8
  export { t as browserShopPurchaseJournal, r as browserTradeIntentionJournal, i as captureTradeIntention, n as createShopPurchaseRecovery, a as createTradeRecovery, B as useAcceptTrade, D as useActiveSubscriptions, A as useCancelSubscription, V as useCancelTrade, _ as useCheckIapEntitlement, k as useClaimSubscriptionDaily, S as useCodeReceipt, m as useCompleteIap, T as useContainerReceipt, C as useContainers, u as useIapAccount, g as useIapEntitlement, h as useIapReceipt, N as useLoyalty, M as useLoyaltyPrograms, P as useLoyaltyReceipt, w as useOpenContainer, p as useOpenIapManagement, L as usePiggyBankReceipt, F as usePiggyBanks, z as useProposeTrade, x as useRedeemCode, d as useRedeemIap, y as useShopBuy, v as useShopOffers, b as useShopReceipt, f as useStartIapCheckout, O as useStartSubscription, j as useSubscriptionReceipt, E as useSubscriptions, H as useTradeReceipt, R as useTrades, I as useUnlockPiggyBank, l as useWallets };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@voltro/plugin-economy",
3
- "version": "0.87.0",
3
+ "version": "0.88.0",
4
4
  "description": "Game-currency wallets with borrowed SQL ownership, exact double-entry transfers, durable receipts, bounded rebuilds and captured pricing.",
5
5
  "keywords": [
6
6
  "voltro",
@@ -143,18 +143,18 @@
143
143
  "node": ">=24.0.0"
144
144
  },
145
145
  "dependencies": {
146
- "@voltro/database": "0.87.0",
147
- "@voltro/protocol": "0.87.0",
148
- "@voltro/client": "0.87.0",
149
- "@voltro/plugin-inventory": "0.87.0",
150
- "@voltro/ui-shadcn": "0.87.0",
151
- "@voltro/runtime": "0.87.0",
152
- "@voltro/plugin-sanctions": "0.87.0",
146
+ "@voltro/database": "0.88.0",
147
+ "@voltro/protocol": "0.88.0",
148
+ "@voltro/client": "0.88.0",
149
+ "@voltro/plugin-inventory": "0.88.0",
150
+ "@voltro/ui-shadcn": "0.88.0",
151
+ "@voltro/runtime": "0.88.0",
152
+ "@voltro/plugin-sanctions": "0.88.0",
153
153
  "@apple/app-store-server-library": "3.1.0",
154
- "@voltro/plugin-licensing": "0.87.0"
154
+ "@voltro/plugin-licensing": "0.88.0"
155
155
  },
156
156
  "peerDependencies": {
157
- "effect": "4.0.1",
157
+ "effect": "4.1.0",
158
158
  "react": "^19.0.0"
159
159
  },
160
160
  "publishConfig": {