@oddmaki-protocol/sdk 1.3.0 → 1.4.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.
package/dist/index.mjs CHANGED
@@ -17,14 +17,6 @@ var CONTRACT_ADDRESSES = {
17
17
  subgraph: "https://api.studio.thegraph.com/query/1716020/oddmaki-base/version/latest"
18
18
  }
19
19
  };
20
- var SUBGRAPH_IDS = {
21
- [base.id]: "CxoYVjELrNCMLopAmVshnfVAie7yH6QZyCSKD3r41XSQ",
22
- [baseSepolia.id]: "DCnd3ozSyvYxRg7kmZYiDWGBiJCe6QHwu8M93jMN1Q3b"
23
- };
24
- function buildSubgraphGatewayUrl(chainId, apiKey) {
25
- const id = SUBGRAPH_IDS[chainId];
26
- return id ? `https://gateway.thegraph.com/api/${apiKey}/subgraphs/id/${id}` : void 0;
27
- }
28
20
  var DEFAULT_CHAIN = base;
29
21
  var SubgraphClient = class {
30
22
  constructor(endpoint) {
@@ -401,6 +393,24 @@ var VenueFacet_default = [
401
393
  outputs: [],
402
394
  stateMutability: "nonpayable"
403
395
  },
396
+ {
397
+ type: "function",
398
+ name: "updateVenueMarketCreationFee",
399
+ inputs: [
400
+ {
401
+ name: "venueId",
402
+ type: "uint256",
403
+ internalType: "uint256"
404
+ },
405
+ {
406
+ name: "newFee",
407
+ type: "uint256",
408
+ internalType: "uint256"
409
+ }
410
+ ],
411
+ outputs: [],
412
+ stateMutability: "nonpayable"
413
+ },
404
414
  {
405
415
  type: "function",
406
416
  name: "updateVenueOracleParams",
@@ -505,6 +515,25 @@ var VenueFacet_default = [
505
515
  ],
506
516
  anonymous: false
507
517
  },
518
+ {
519
+ type: "event",
520
+ name: "VenueMarketCreationFeeUpdated",
521
+ inputs: [
522
+ {
523
+ name: "venueId",
524
+ type: "uint256",
525
+ indexed: true,
526
+ internalType: "uint256"
527
+ },
528
+ {
529
+ name: "newFee",
530
+ type: "uint256",
531
+ indexed: false,
532
+ internalType: "uint256"
533
+ }
534
+ ],
535
+ anonymous: false
536
+ },
508
537
  {
509
538
  type: "event",
510
539
  name: "VenueOracleParamsUpdated",
@@ -609,11 +638,6 @@ var VenueFacet_default = [
609
638
  name: "InvalidFeeRecipient",
610
639
  inputs: []
611
640
  },
612
- {
613
- type: "error",
614
- name: "InvalidMarketCreationFee",
615
- inputs: []
616
- },
617
641
  {
618
642
  type: "error",
619
643
  name: "InvalidTickSize",
@@ -7093,21 +7117,24 @@ var UmaOracle_default = [
7093
7117
  // src/modules/venue.ts
7094
7118
  var VenueModule = class extends BaseModule {
7095
7119
  /**
7096
- * Create a new venue
7120
+ * Create a new venue.
7097
7121
  *
7098
- * IMPORTANT: Fee and bond amounts must match your intended collateral token decimals!
7099
- * Most venues use USDC (6 decimals), so amounts should use parseUnits("amount", 6).
7122
+ * IMPORTANT: Fee and bond amounts must match your intended collateral token decimals.
7123
+ * Most venues use USDC (6 decimals), so amounts should use `parseUnits("amount", 6)`.
7100
7124
  *
7101
- * Example for USDC-based venue:
7102
- * - marketCreationFee: parseUnits("10", 6) // 10 USDC
7103
- * - umaRewardAmount: parseUnits("5", 6) // 5 USDC
7104
- * - umaMinBond: parseUnits("1", 6) // 1 USDC
7105
- * - defaultTickSize: parseEther("0.01") // 0.01 per tick (always 18 decimals)
7125
+ * Example for a USDC-based venue:
7126
+ * - marketCreationFee: 0n // free creation, or parseUnits("10", 6) for 10 USDC
7127
+ * - umaRewardAmount: parseUnits("5", 6) // 5 USDC
7128
+ * - umaMinBond: parseUnits("1", 6) // 1 USDC
7129
+ * - defaultTickSize: parseEther("0.01") // 0.01 per tick (always 18 decimals)
7106
7130
  *
7107
- * @param params.marketCreationFee - Upfront fee (min 5e6 for USDC, split 50/50 protocol/venue)
7108
- * @param params.umaRewardAmount - Default reward for UMA asserters (in collateral token units)
7109
- * @param params.umaMinBond - Minimum bond for UMA assertions (in collateral token units)
7110
- * @param params.defaultTickSize - Price increment per tick (always 1e18 scale, e.g., 0.01e18)
7131
+ * @param params.marketCreationFee - Upfront fee in collateral units charged on `createMarket`.
7132
+ * Can be zero. When non-zero, split 50/50 between protocol and venue.
7133
+ * When zero, gate market creation via `creationAccessControl` to deter spam.
7134
+ * Mutable post-creation via `updateMarketCreationFee`.
7135
+ * @param params.umaRewardAmount - Default reward for UMA asserters (in collateral token units).
7136
+ * @param params.umaMinBond - Minimum bond for UMA assertions (in collateral token units).
7137
+ * @param params.defaultTickSize - Price increment per tick (always 1e18 scale, e.g. 0.01e18).
7111
7138
  */
7112
7139
  async createVenue(params) {
7113
7140
  const wallet = this.walletClient;
@@ -7197,6 +7224,27 @@ var VenueModule = class extends BaseModule {
7197
7224
  });
7198
7225
  return wallet.writeContract(request);
7199
7226
  }
7227
+ /**
7228
+ * Update the upfront market creation fee for a venue. Operator-only.
7229
+ *
7230
+ * Affects only markets created after this call — existing markets keep their snapshot.
7231
+ * Pass `0n` for free creation; if you do, gate `createMarket` via `creationAccessControl`
7232
+ * to deter spam.
7233
+ *
7234
+ * @param params.newFee - New fee in collateral token units (e.g. `parseUnits("10", 6)` for 10 USDC).
7235
+ */
7236
+ async updateMarketCreationFee(params) {
7237
+ const wallet = this.walletClient;
7238
+ const account = await this.getSignerAccount();
7239
+ const { request } = await this.publicClient.simulateContract({
7240
+ address: this.config.diamondAddress,
7241
+ abi: VenueFacet_default,
7242
+ functionName: "updateVenueMarketCreationFee",
7243
+ args: [params.venueId, params.newFee],
7244
+ account
7245
+ });
7246
+ return wallet.writeContract(request);
7247
+ }
7200
7248
  /**
7201
7249
  * Update venue oracle parameters (UMA reward and min bond)
7202
7250
  */
@@ -11354,6 +11402,6 @@ function parseMetadata(json) {
11354
11402
  // src/index.ts
11355
11403
  var version = "0.1.0";
11356
11404
 
11357
- export { AccessControlFacet_default as AccessControlFacetABI, AccessControlModule, BatchOrdersFacet_default as BatchOrdersFacetABI, CONTRACT_ADDRESSES, ConditionalTokens_default as ConditionalTokensABI, DEFAULT_CHAIN, ERC20_default as ERC20ABI, FeedProvider, GET_ALL_MARKETS_FEED, GET_ALL_MARKETS_FEED_BY_VOLUME, GET_CHART_TRADES, GET_CHART_TRADES_ALL, GET_GROUP_MARKETS, GET_LEADERBOARD, GET_MARKET, GET_MARKETS, GET_MARKETS_WITH_PRICING, GET_MARKET_GROUP, GET_MARKET_GROUPS, GET_MARKET_GROUP_ITEM, GET_MARKET_TOP_HOLDERS, GET_ORDERS, GET_PROTOCOL_STATS, GET_QUESTION, GET_QUESTIONS, GET_RECENT_MARKETS, GET_RECENT_TRADES, GET_TOP_OF_BOOK, GET_TRADER_CLOSED_POSITIONS, GET_TRADER_FILLS, GET_TRADER_POSITIONS, GET_TRADER_PROFILE, GET_TRADES, GET_UNIFIED_MARKET_FEED, GET_UNIFIED_MARKET_FEED_BY_VOLUME, GET_USER, GET_VENUES, LimitOrdersFacet_default as LimitOrdersFacetABI, MarketGroupFacet_default as MarketGroupFacetABI, MarketModule, MarketOrdersFacet_default as MarketOrdersFacetABI, MarketsFacet_default as MarketsFacetABI, MatchingFacet_default as MatchingFacetABI, MetadataFacet_default as MetadataFacetABI, NegRiskFacet_default as NegRiskFacetABI, OddMakiClient, OrderBookFacet_default as OrderBookFacetABI, PROTOCOL_FEES, PriceMarketFacet_default as PriceMarketFacetABI, PriceMarketModule, ProtocolFacet_default as ProtocolFacetABI, PublicModule, PythResolutionFacet_default as PythResolutionFacetABI, ResolutionFacet_default as ResolutionFacetABI, SUBGRAPH_IDS, SubgraphClient, TICK_SIZE_FINE, TICK_SIZE_STANDARD, TagsFacet_default as TagsFacetABI, TokenModule, TradeModule, UMA_DEFAULTS, UmaModule, UmaOracle_default as UmaOracleABI, VALID_TICK_SIZES, VaultFacet_default as VaultFacetABI, VenueFacet_default as VenueFacetABI, VenueModule, WhitelistAccessControl_default as WhitelistAccessControlABI, buildSubgraphGatewayUrl, calculateChancePercent, clearDecimalsCache, createExpiry, createOddMakiClient, formatAmount, formatAncillaryData, formatTimestamp, getCachedTokenDecimals, getOutcomePrice, getTokenDecimals, isValidTickSize, parseAmount, parseAncillaryData, parseMetadata, parseTokenAmount, priceToTick, resolveIPFSUri, tickToPercentage, tickToPrice, version };
11405
+ export { AccessControlFacet_default as AccessControlFacetABI, AccessControlModule, BatchOrdersFacet_default as BatchOrdersFacetABI, CONTRACT_ADDRESSES, ConditionalTokens_default as ConditionalTokensABI, DEFAULT_CHAIN, ERC20_default as ERC20ABI, FeedProvider, GET_ALL_MARKETS_FEED, GET_ALL_MARKETS_FEED_BY_VOLUME, GET_CHART_TRADES, GET_CHART_TRADES_ALL, GET_GROUP_MARKETS, GET_LEADERBOARD, GET_MARKET, GET_MARKETS, GET_MARKETS_WITH_PRICING, GET_MARKET_GROUP, GET_MARKET_GROUPS, GET_MARKET_GROUP_ITEM, GET_MARKET_TOP_HOLDERS, GET_ORDERS, GET_PROTOCOL_STATS, GET_QUESTION, GET_QUESTIONS, GET_RECENT_MARKETS, GET_RECENT_TRADES, GET_TOP_OF_BOOK, GET_TRADER_CLOSED_POSITIONS, GET_TRADER_FILLS, GET_TRADER_POSITIONS, GET_TRADER_PROFILE, GET_TRADES, GET_UNIFIED_MARKET_FEED, GET_UNIFIED_MARKET_FEED_BY_VOLUME, GET_USER, GET_VENUES, LimitOrdersFacet_default as LimitOrdersFacetABI, MarketGroupFacet_default as MarketGroupFacetABI, MarketModule, MarketOrdersFacet_default as MarketOrdersFacetABI, MarketsFacet_default as MarketsFacetABI, MatchingFacet_default as MatchingFacetABI, MetadataFacet_default as MetadataFacetABI, NegRiskFacet_default as NegRiskFacetABI, OddMakiClient, OrderBookFacet_default as OrderBookFacetABI, PROTOCOL_FEES, PriceMarketFacet_default as PriceMarketFacetABI, PriceMarketModule, ProtocolFacet_default as ProtocolFacetABI, PublicModule, PythResolutionFacet_default as PythResolutionFacetABI, ResolutionFacet_default as ResolutionFacetABI, SubgraphClient, TICK_SIZE_FINE, TICK_SIZE_STANDARD, TagsFacet_default as TagsFacetABI, TokenModule, TradeModule, UMA_DEFAULTS, UmaModule, UmaOracle_default as UmaOracleABI, VALID_TICK_SIZES, VaultFacet_default as VaultFacetABI, VenueFacet_default as VenueFacetABI, VenueModule, WhitelistAccessControl_default as WhitelistAccessControlABI, calculateChancePercent, clearDecimalsCache, createExpiry, createOddMakiClient, formatAmount, formatAncillaryData, formatTimestamp, getCachedTokenDecimals, getOutcomePrice, getTokenDecimals, isValidTickSize, parseAmount, parseAncillaryData, parseMetadata, parseTokenAmount, priceToTick, resolveIPFSUri, tickToPercentage, tickToPrice, version };
11358
11406
  //# sourceMappingURL=index.mjs.map
11359
11407
  //# sourceMappingURL=index.mjs.map