@luxexchange/api 1.0.1 → 1.0.3
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/.depcheckrc +16 -0
- package/.eslintrc.js +30 -0
- package/package.json +12 -15
- package/project.json +3 -3
- package/src/clients/auctions/createAuctionServiceClient.ts +2 -2
- package/src/clients/base/SharedQueryClient.ts +1 -1
- package/src/clients/base/auth.ts +1 -1
- package/src/clients/base/createFetchClient.ts +2 -2
- package/src/clients/base/errors.test.ts +1 -1
- package/src/clients/base/types.ts +1 -1
- package/src/clients/base/urls.test.ts +44 -44
- package/src/clients/base/urls.ts +20 -12
- package/src/clients/base/utils.test.ts +2 -2
- package/src/clients/base/utils.ts +1 -1
- package/src/clients/blockaid/createBlockaidApiClient.ts +2 -2
- package/src/clients/compliance/createComplianceApiClient.ts +2 -2
- package/src/clients/content/types.ts +1 -1
- package/src/clients/conversionTracking/api-ConversionProxyService_connectquery.ts +1 -1
- package/src/clients/conversionTracking/api_connect.ts +1 -1
- package/src/clients/conversionTracking/index.ts +3 -3
- package/src/clients/data/createDataServiceApiClient.ts +1 -1
- package/src/clients/dataApi/createDataApiServiceClient.ts +2 -2
- package/src/clients/dataApi/getGetPortfolioQueryOptions.test.ts +3 -3
- package/src/clients/dataApi/getGetPortfolioQueryOptions.ts +3 -3
- package/src/clients/embeddedWallet/createEmbeddedWalletApiClient.ts +5 -5
- package/src/clients/for/createForApiClient.ts +5 -5
- package/src/clients/for/types.ts +1 -1
- package/src/clients/gasService/createGasServiceClient.ts +2 -2
- package/src/clients/graphql/codegen.config.ts +1 -1
- package/src/clients/graphql/fragments.ts +3 -3
- package/src/clients/graphql/generated.ts +3 -0
- package/src/clients/graphql/web/{LuxPrices.graphql → UniswapPrices.graphql} +1 -1
- package/src/clients/jupiter/createJupiterApiClient.ts +3 -3
- package/src/clients/jupiter/utils.ts +1 -1
- package/src/clients/liquidity/createAuctionMutationClient.ts +2 -2
- package/src/clients/liquidity/createLiquidityServiceClient.ts +2 -2
- package/src/clients/lux/createLuxApiClient.ts +4 -4
- package/src/clients/notifications/createNotificationsApiClient.ts +4 -4
- package/src/clients/notifications/types.ts +9 -9
- package/src/clients/trading/createTradingApiClient.ts +6 -6
- package/src/clients/trading/tradeTypes.ts +2 -2
- package/src/clients/trading/types.ts +3 -3
- package/src/clients/uniswap/createUniswapApiClient.ts +83 -0
- package/src/clients/unitags/createUnitagsApiClient.test.ts +7 -7
- package/src/clients/unitags/createUnitagsApiClient.ts +4 -4
- package/src/clients/x/createXVerificationServiceClient.ts +2 -2
- package/src/components/ApiInit.test.tsx +12 -12
- package/src/components/ApiInit.tsx +3 -3
- package/src/connectRpc/utils.ts +4 -4
- package/src/getEntryGatewayUrl.ts +2 -2
- package/src/getWebSocketUrl.ts +2 -2
- package/src/hooks/useIsSessionInitialized.ts +1 -1
- package/src/index.ts +68 -66
- package/src/provideDeviceIdService.ts +3 -3
- package/src/provideLuxIdentifierService.ts +2 -25
- package/src/provideSessionService.native.ts +7 -7
- package/src/provideSessionService.ts +3 -3
- package/src/provideSessionService.web.ts +12 -12
- package/src/provideSessionStorage.ts +3 -3
- package/src/provideUniswapIdentifierService.ts +25 -0
- package/src/session/createSessionTransport.test.ts +2 -2
- package/src/session/createSessionTransport.ts +6 -6
- package/src/session/createWithSessionRetry.ts +1 -1
- package/src/session/index.ts +1 -1
- package/src/storage/createExtensionStorageDriver.ts +1 -1
- package/src/storage/createNativeStorageDriver.ts +1 -1
- package/src/storage/createWebStorageDriver.ts +1 -1
- package/src/storage/getStorageDriver.native.ts +2 -2
- package/src/storage/getStorageDriver.ts +2 -2
- package/src/storage/getStorageDriver.web.ts +3 -3
- package/src/transport.ts +2 -2
- package/stubs/privy-service-connect.d.ts +1 -1
- package/stubs/privy-service-pb.d.ts +1 -1
- package/tsconfig.json +12 -4
- package/dist/client.d.ts +0 -22
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js +0 -56
- package/dist/hooks/index.d.ts +0 -6
- package/dist/hooks/index.d.ts.map +0 -1
- package/dist/hooks/index.js +0 -5
- package/dist/hooks/use-token-list.d.ts +0 -22
- package/dist/hooks/use-token-list.d.ts.map +0 -1
- package/dist/hooks/use-token-list.js +0 -27
- package/dist/hooks/use-token-price.d.ts +0 -15
- package/dist/hooks/use-token-price.d.ts.map +0 -1
- package/dist/hooks/use-token-price.js +0 -63
- package/dist/index.d.ts +0 -6
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -5
- package/src/client.ts +0 -66
- package/src/clients/graphql/__generated__/operations.ts +0 -605
- package/src/clients/graphql/__generated__/react-hooks.ts +0 -4245
- package/src/clients/graphql/__generated__/resolvers.ts +0 -1469
- package/src/clients/graphql/__generated__/schema-types.ts +0 -2099
- package/src/clients/trading/__generated__/core/ApiError.ts +0 -25
- package/src/clients/trading/__generated__/core/ApiRequestOptions.ts +0 -17
- package/src/clients/trading/__generated__/core/ApiResult.ts +0 -11
- package/src/clients/trading/__generated__/core/CancelablePromise.ts +0 -131
- package/src/clients/trading/__generated__/core/OpenAPI.ts +0 -32
- package/src/clients/trading/__generated__/core/request.ts +0 -322
- package/src/clients/trading/__generated__/index.ts +0 -221
- package/src/clients/trading/__generated__/models/Address.ts +0 -5
- package/src/clients/trading/__generated__/models/AggregatedOutput.ts +0 -20
- package/src/clients/trading/__generated__/models/ApprovalRequest.ts +0 -25
- package/src/clients/trading/__generated__/models/ApprovalResponse.ts +0 -18
- package/src/clients/trading/__generated__/models/AutoSlippage.ts +0 -14
- package/src/clients/trading/__generated__/models/BridgeQuote.ts +0 -55
- package/src/clients/trading/__generated__/models/ChainDelegationMap.ts +0 -9
- package/src/clients/trading/__generated__/models/ChainId.ts +0 -29
- package/src/clients/trading/__generated__/models/ChainedQuote.ts +0 -63
- package/src/clients/trading/__generated__/models/CheckApprovalLPRequest.ts +0 -35
- package/src/clients/trading/__generated__/models/CheckApprovalLPResponse.ts +0 -29
- package/src/clients/trading/__generated__/models/ClaimLPFeesRequest.ts +0 -20
- package/src/clients/trading/__generated__/models/ClaimLPFeesResponse.ts +0 -13
- package/src/clients/trading/__generated__/models/ClaimLPRewardsRequest.ts +0 -19
- package/src/clients/trading/__generated__/models/ClaimLPRewardsResponse.ts +0 -13
- package/src/clients/trading/__generated__/models/ClassicGasUseEstimateUSD.ts +0 -8
- package/src/clients/trading/__generated__/models/ClassicInput.ts +0 -11
- package/src/clients/trading/__generated__/models/ClassicOutput.ts +0 -13
- package/src/clients/trading/__generated__/models/ClassicQuote.ts +0 -69
- package/src/clients/trading/__generated__/models/ClientContext.ts +0 -18
- package/src/clients/trading/__generated__/models/CosignerData.ts +0 -21
- package/src/clients/trading/__generated__/models/CreateLPPositionRequest.ts +0 -40
- package/src/clients/trading/__generated__/models/CreateLPPositionResponse.ts +0 -21
- package/src/clients/trading/__generated__/models/CreatePlanRequest.ts +0 -23
- package/src/clients/trading/__generated__/models/CreateSendRequest.ts +0 -22
- package/src/clients/trading/__generated__/models/CreateSendResponse.ts +0 -18
- package/src/clients/trading/__generated__/models/CreateSwap5792Request.ts +0 -17
- package/src/clients/trading/__generated__/models/CreateSwap5792Response.ts +0 -17
- package/src/clients/trading/__generated__/models/CreateSwap7702Request.ts +0 -21
- package/src/clients/trading/__generated__/models/CreateSwap7702Response.ts +0 -13
- package/src/clients/trading/__generated__/models/CreateSwapRequest.ts +0 -42
- package/src/clients/trading/__generated__/models/CreateSwapResponse.ts +0 -16
- package/src/clients/trading/__generated__/models/Curve.ts +0 -9
- package/src/clients/trading/__generated__/models/DEXOrder.ts +0 -35
- package/src/clients/trading/__generated__/models/DecreaseLPPositionRequest.ts +0 -33
- package/src/clients/trading/__generated__/models/DecreaseLPPositionResponse.ts +0 -19
- package/src/clients/trading/__generated__/models/DelegationDetails.ts +0 -19
- package/src/clients/trading/__generated__/models/Distributor.ts +0 -10
- package/src/clients/trading/__generated__/models/DutchInput.ts +0 -13
- package/src/clients/trading/__generated__/models/DutchInputV3.ts +0 -15
- package/src/clients/trading/__generated__/models/DutchOrderInfo.ts +0 -41
- package/src/clients/trading/__generated__/models/DutchOrderInfoV2.ts +0 -27
- package/src/clients/trading/__generated__/models/DutchOrderInfoV3.ts +0 -28
- package/src/clients/trading/__generated__/models/DutchOutput.ts +0 -15
- package/src/clients/trading/__generated__/models/DutchOutputV3.ts +0 -18
- package/src/clients/trading/__generated__/models/DutchQuote.ts +0 -27
- package/src/clients/trading/__generated__/models/DutchQuoteV2.ts +0 -28
- package/src/clients/trading/__generated__/models/DutchQuoteV3.ts +0 -30
- package/src/clients/trading/__generated__/models/Encode7702ResponseBody.ts +0 -11
- package/src/clients/trading/__generated__/models/Err400.ts +0 -9
- package/src/clients/trading/__generated__/models/Err401.ts +0 -9
- package/src/clients/trading/__generated__/models/Err404.ts +0 -17
- package/src/clients/trading/__generated__/models/Err422.ts +0 -9
- package/src/clients/trading/__generated__/models/Err429.ts +0 -9
- package/src/clients/trading/__generated__/models/Err500.ts +0 -9
- package/src/clients/trading/__generated__/models/Err504.ts +0 -9
- package/src/clients/trading/__generated__/models/GasStrategy.ts +0 -46
- package/src/clients/trading/__generated__/models/GetOrdersResponse.ts +0 -12
- package/src/clients/trading/__generated__/models/GetSwappableTokensResponse.ts +0 -29
- package/src/clients/trading/__generated__/models/GetSwapsResponse.ts +0 -18
- package/src/clients/trading/__generated__/models/HooksOptions.ts +0 -12
- package/src/clients/trading/__generated__/models/IncreaseLPPositionRequest.ts +0 -39
- package/src/clients/trading/__generated__/models/IncreaseLPPositionResponse.ts +0 -21
- package/src/clients/trading/__generated__/models/IndependentToken.ts +0 -8
- package/src/clients/trading/__generated__/models/IndicativeQuoteRequest.ts +0 -18
- package/src/clients/trading/__generated__/models/IndicativeQuoteResponse.ts +0 -14
- package/src/clients/trading/__generated__/models/IndicativeQuoteToken.ts +0 -13
- package/src/clients/trading/__generated__/models/LimitOrderQuoteRequest.ts +0 -22
- package/src/clients/trading/__generated__/models/LimitOrderQuoteResponse.ts +0 -19
- package/src/clients/trading/__generated__/models/MigrateLPPositionRequest.ts +0 -41
- package/src/clients/trading/__generated__/models/MigrateLPPositionResponse.ts +0 -13
- package/src/clients/trading/__generated__/models/NullablePermit.ts +0 -13
- package/src/clients/trading/__generated__/models/OrderIds.ts +0 -5
- package/src/clients/trading/__generated__/models/OrderInput.ts +0 -13
- package/src/clients/trading/__generated__/models/OrderOutput.ts +0 -16
- package/src/clients/trading/__generated__/models/OrderRequest.ts +0 -17
- package/src/clients/trading/__generated__/models/OrderResponse.ts +0 -13
- package/src/clients/trading/__generated__/models/OrderStatus.ts +0 -23
- package/src/clients/trading/__generated__/models/OrderType.ts +0 -11
- package/src/clients/trading/__generated__/models/OrderTypeQuery.ts +0 -12
- package/src/clients/trading/__generated__/models/Permit.ts +0 -13
- package/src/clients/trading/__generated__/models/PermitAmount.ts +0 -11
- package/src/clients/trading/__generated__/models/PlanResponse.ts +0 -75
- package/src/clients/trading/__generated__/models/PlanStatus.ts +0 -14
- package/src/clients/trading/__generated__/models/PlanStep.ts +0 -59
- package/src/clients/trading/__generated__/models/PlanStepMethod.ts +0 -12
- package/src/clients/trading/__generated__/models/PlanStepPayloadType.ts +0 -12
- package/src/clients/trading/__generated__/models/PlanStepProof.ts +0 -20
- package/src/clients/trading/__generated__/models/PlanStepStatus.ts +0 -14
- package/src/clients/trading/__generated__/models/PlanStepType.ts +0 -23
- package/src/clients/trading/__generated__/models/Pool.ts +0 -15
- package/src/clients/trading/__generated__/models/PoolInfoRequest.ts +0 -20
- package/src/clients/trading/__generated__/models/PoolInfoResponse.ts +0 -16
- package/src/clients/trading/__generated__/models/PoolInformation.ts +0 -44
- package/src/clients/trading/__generated__/models/PoolParameters.ts +0 -19
- package/src/clients/trading/__generated__/models/PoolReferenceByProtocol.ts +0 -12
- package/src/clients/trading/__generated__/models/Position.ts +0 -11
- package/src/clients/trading/__generated__/models/PriorityInput.ts +0 -12
- package/src/clients/trading/__generated__/models/PriorityOrderInfo.ts +0 -29
- package/src/clients/trading/__generated__/models/PriorityOutput.ts +0 -17
- package/src/clients/trading/__generated__/models/PriorityQuote.ts +0 -31
- package/src/clients/trading/__generated__/models/ProtocolItems.ts +0 -15
- package/src/clients/trading/__generated__/models/Protocols.ts +0 -9
- package/src/clients/trading/__generated__/models/Quote.ts +0 -14
- package/src/clients/trading/__generated__/models/QuoteRequest.ts +0 -41
- package/src/clients/trading/__generated__/models/QuoteResponse.ts +0 -19
- package/src/clients/trading/__generated__/models/RequestId.ts +0 -8
- package/src/clients/trading/__generated__/models/Routing.ts +0 -20
- package/src/clients/trading/__generated__/models/RoutingPreference.ts +0 -16
- package/src/clients/trading/__generated__/models/SafetyLevel.ts +0 -10
- package/src/clients/trading/__generated__/models/ScopeData.ts +0 -28
- package/src/clients/trading/__generated__/models/SettledAmount.ts +0 -14
- package/src/clients/trading/__generated__/models/SortKey.ts +0 -7
- package/src/clients/trading/__generated__/models/SpreadOptimization.ts +0 -11
- package/src/clients/trading/__generated__/models/StepUpdate.ts +0 -25
- package/src/clients/trading/__generated__/models/SwapSafetyMode.ts +0 -10
- package/src/clients/trading/__generated__/models/SwapStatus.ts +0 -11
- package/src/clients/trading/__generated__/models/TokenInRoute.ts +0 -20
- package/src/clients/trading/__generated__/models/TokenProject.ts +0 -13
- package/src/clients/trading/__generated__/models/TokenProjectLogo.ts +0 -8
- package/src/clients/trading/__generated__/models/TradeType.ts +0 -11
- package/src/clients/trading/__generated__/models/TransactionFailureReason.ts +0 -11
- package/src/clients/trading/__generated__/models/TransactionHash.ts +0 -8
- package/src/clients/trading/__generated__/models/TransactionRequest.ts +0 -29
- package/src/clients/trading/__generated__/models/TransactionRequest5792.ts +0 -25
- package/src/clients/trading/__generated__/models/TruncatedPlanStep.ts +0 -21
- package/src/clients/trading/__generated__/models/UniversalRouterVersion.ts +0 -8
- package/src/clients/trading/__generated__/models/UpdatePlanRequest.ts +0 -12
- package/src/clients/trading/__generated__/models/Urgency.ts +0 -12
- package/src/clients/trading/__generated__/models/V2PoolInRoute.ts +0 -19
- package/src/clients/trading/__generated__/models/V2Reserve.ts +0 -16
- package/src/clients/trading/__generated__/models/V3PoolInRoute.ts +0 -24
- package/src/clients/trading/__generated__/models/V4PoolInRoute.ts +0 -30
- package/src/clients/trading/__generated__/models/WalletCheckDelegationRequestBody.ts +0 -17
- package/src/clients/trading/__generated__/models/WalletCheckDelegationResponseBody.ts +0 -14
- package/src/clients/trading/__generated__/models/WalletEncode7702RequestBody.ts +0 -21
- package/src/clients/trading/__generated__/models/WalletExecutionContext.ts +0 -17
- package/src/clients/trading/__generated__/models/WalletInfo.ts +0 -22
- package/src/clients/trading/__generated__/models/WalletProperties.ts +0 -12
- package/src/clients/trading/__generated__/models/WrapUnwrapQuote.ts +0 -31
- package/src/clients/trading/__generated__/models/additionalValidationContract.ts +0 -9
- package/src/clients/trading/__generated__/models/additionalValidationData.ts +0 -9
- package/src/clients/trading/__generated__/models/bps.ts +0 -8
- package/src/clients/trading/__generated__/models/bpsFee.ts +0 -8
- package/src/clients/trading/__generated__/models/bridgeTokenInChainIdParam.ts +0 -6
- package/src/clients/trading/__generated__/models/chainIdParam.ts +0 -6
- package/src/clients/trading/__generated__/models/claimerWalletAddress.ts +0 -8
- package/src/clients/trading/__generated__/models/contractAddress.ts +0 -8
- package/src/clients/trading/__generated__/models/cosignerAddress.ts +0 -8
- package/src/clients/trading/__generated__/models/cursorParam.ts +0 -5
- package/src/clients/trading/__generated__/models/deadline.ts +0 -8
- package/src/clients/trading/__generated__/models/encodedOrder.ts +0 -8
- package/src/clients/trading/__generated__/models/endAmount.ts +0 -8
- package/src/clients/trading/__generated__/models/erc20EthEnabledHeader.ts +0 -8
- package/src/clients/trading/__generated__/models/fillerParam.ts +0 -9
- package/src/clients/trading/__generated__/models/gasFee.ts +0 -8
- package/src/clients/trading/__generated__/models/gasFeeInCurrency.ts +0 -8
- package/src/clients/trading/__generated__/models/gasFeeUSD.ts +0 -8
- package/src/clients/trading/__generated__/models/gasLimit.ts +0 -8
- package/src/clients/trading/__generated__/models/gasPrice.ts +0 -8
- package/src/clients/trading/__generated__/models/generatePermitAsTransaction.ts +0 -8
- package/src/clients/trading/__generated__/models/includeGasInfo.ts +0 -8
- package/src/clients/trading/__generated__/models/inputToken.ts +0 -8
- package/src/clients/trading/__generated__/models/isSpam.ts +0 -8
- package/src/clients/trading/__generated__/models/limitParam.ts +0 -5
- package/src/clients/trading/__generated__/models/liquidity.ts +0 -8
- package/src/clients/trading/__generated__/models/lpPoolFee.ts +0 -8
- package/src/clients/trading/__generated__/models/lpTickCurrent.ts +0 -8
- package/src/clients/trading/__generated__/models/maxFeePerGas.ts +0 -8
- package/src/clients/trading/__generated__/models/maxPriorityFeePerGas.ts +0 -8
- package/src/clients/trading/__generated__/models/minAmount.ts +0 -8
- package/src/clients/trading/__generated__/models/nonce.ts +0 -8
- package/src/clients/trading/__generated__/models/orderId.ts +0 -8
- package/src/clients/trading/__generated__/models/orderIdParam.ts +0 -6
- package/src/clients/trading/__generated__/models/orderIdsParam.ts +0 -9
- package/src/clients/trading/__generated__/models/orderStatusParam.ts +0 -9
- package/src/clients/trading/__generated__/models/orderTypeParam.ts +0 -9
- package/src/clients/trading/__generated__/models/outputToken.ts +0 -8
- package/src/clients/trading/__generated__/models/poolFee.ts +0 -8
- package/src/clients/trading/__generated__/models/portionAmount.ts +0 -8
- package/src/clients/trading/__generated__/models/portionAmountReceiverAddress.ts +0 -8
- package/src/clients/trading/__generated__/models/portionBips.ts +0 -8
- package/src/clients/trading/__generated__/models/quoteId.ts +0 -8
- package/src/clients/trading/__generated__/models/receiverWalletAddress.ts +0 -8
- package/src/clients/trading/__generated__/models/senderWalletAddress.ts +0 -8
- package/src/clients/trading/__generated__/models/slippageTolerance.ts +0 -14
- package/src/clients/trading/__generated__/models/sortKeyParam.ts +0 -9
- package/src/clients/trading/__generated__/models/sortParam.ts +0 -8
- package/src/clients/trading/__generated__/models/sqrtRatioX96.ts +0 -8
- package/src/clients/trading/__generated__/models/startAmount.ts +0 -8
- package/src/clients/trading/__generated__/models/swapperParam.ts +0 -9
- package/src/clients/trading/__generated__/models/tickCurrent.ts +0 -8
- package/src/clients/trading/__generated__/models/tickSpacing.ts +0 -8
- package/src/clients/trading/__generated__/models/tokenAmount.ts +0 -8
- package/src/clients/trading/__generated__/models/tokenInParam.ts +0 -6
- package/src/clients/trading/__generated__/models/tokenSymbol.ts +0 -8
- package/src/clients/trading/__generated__/models/transactionHashesParam.ts +0 -9
- package/src/clients/trading/__generated__/models/universalRouterVersionHeader.ts +0 -9
- package/src/clients/trading/__generated__/services/ApprovalService.ts +0 -39
- package/src/clients/trading/__generated__/services/DefaultService.ts +0 -46
- package/src/clients/trading/__generated__/services/IndicativeQuoteService.ts +0 -39
- package/src/clients/trading/__generated__/services/LimitOrderQuoteService.ts +0 -37
- package/src/clients/trading/__generated__/services/LiquidityService.ts +0 -239
- package/src/clients/trading/__generated__/services/OrderService.ts +0 -131
- package/src/clients/trading/__generated__/services/PlanService.ts +0 -76
- package/src/clients/trading/__generated__/services/QuoteService.ts +0 -58
- package/src/clients/trading/__generated__/services/SendService.ts +0 -37
- package/src/clients/trading/__generated__/services/SwapService.ts +0 -161
- package/src/clients/trading/__generated__/services/SwappableTokensService.ts +0 -42
- package/src/clients/trading/__generated__/services/WalletCheckDelegationService.ts +0 -37
- package/src/clients/trading/__generated__/services/WalletEncode7702Service.ts +0 -37
- package/src/hooks/index.ts +0 -6
- package/src/hooks/use-token-list.ts +0 -52
- package/src/hooks/use-token-price.ts +0 -82
package/src/index.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/** biome-ignore-all assist/source/organizeImports: we want to manually group exports by category */
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
|
-
* @
|
|
4
|
+
* @luxexchange/api - Unified data layer for Uniswap Universe
|
|
5
5
|
*
|
|
6
6
|
* This is the ONLY public entry point for the API package.
|
|
7
7
|
* All exports must be explicitly listed here.
|
|
@@ -9,19 +9,19 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
// Foundations
|
|
12
|
-
export { createFetchClient } from '@
|
|
12
|
+
export { createFetchClient } from '@luxexchange/api/src/clients/base/createFetchClient'
|
|
13
13
|
export {
|
|
14
14
|
FetchError,
|
|
15
15
|
is401Error,
|
|
16
16
|
is404Error,
|
|
17
17
|
isRateLimitFetchError,
|
|
18
|
-
} from '@
|
|
18
|
+
} from '@luxexchange/api/src/clients/base/errors'
|
|
19
19
|
export type {
|
|
20
20
|
CustomOptions,
|
|
21
21
|
FetchClient,
|
|
22
22
|
StandardFetchOptions,
|
|
23
|
-
} from '@
|
|
24
|
-
export { SharedQueryClient } from '@
|
|
23
|
+
} from '@luxexchange/api/src/clients/base/types'
|
|
24
|
+
export { SharedQueryClient } from '@luxexchange/api/src/clients/base/SharedQueryClient'
|
|
25
25
|
|
|
26
26
|
// Constants and URLs
|
|
27
27
|
export {
|
|
@@ -34,46 +34,46 @@ export {
|
|
|
34
34
|
PROD_ENTRY_GATEWAY_API_BASE_URL,
|
|
35
35
|
STAGING_ENTRY_GATEWAY_API_BASE_URL,
|
|
36
36
|
TrafficFlows,
|
|
37
|
-
} from '@
|
|
37
|
+
} from '@luxexchange/api/src/clients/base/urls'
|
|
38
38
|
|
|
39
39
|
// Auth
|
|
40
|
-
export type { AuthData, SignedRequestParams, SignMessageFunc } from '@
|
|
41
|
-
export { createSignedRequestBody, createSignedRequestParams } from '@
|
|
40
|
+
export type { AuthData, SignedRequestParams, SignMessageFunc } from '@luxexchange/api/src/clients/base/auth'
|
|
41
|
+
export { createSignedRequestBody, createSignedRequestParams } from '@luxexchange/api/src/clients/base/auth'
|
|
42
42
|
|
|
43
43
|
// GraphQL API
|
|
44
|
-
export * as GraphQLApi from '@
|
|
44
|
+
export * as GraphQLApi from '@luxexchange/api/src/clients/graphql/generated'
|
|
45
45
|
export {
|
|
46
46
|
useTokenBasicInfoPartsFragment,
|
|
47
47
|
useTokenBasicProjectPartsFragment,
|
|
48
48
|
useTokenMarketPartsFragment,
|
|
49
49
|
useTokenProjectMarketsPartsFragment,
|
|
50
50
|
useTokenProjectUrlsPartsFragment,
|
|
51
|
-
} from '@
|
|
52
|
-
export { GQLQueries } from '@
|
|
53
|
-
export type { GqlResult } from '@
|
|
54
|
-
export { isError, isNonPollingRequestInFlight, isWarmLoadingStatus } from '@
|
|
51
|
+
} from '@luxexchange/api/src/clients/graphql/fragments'
|
|
52
|
+
export { GQLQueries } from '@luxexchange/api/src/clients/graphql/queries'
|
|
53
|
+
export type { GqlResult } from '@luxexchange/api/src/clients/graphql/types'
|
|
54
|
+
export { isError, isNonPollingRequestInFlight, isWarmLoadingStatus } from '@luxexchange/api/src/clients/graphql/utils'
|
|
55
55
|
|
|
56
56
|
// Jupiter API
|
|
57
57
|
export {
|
|
58
58
|
createJupiterApiClient,
|
|
59
59
|
type JupiterApiClient,
|
|
60
|
-
} from '@
|
|
60
|
+
} from '@luxexchange/api/src/clients/jupiter/createJupiterApiClient'
|
|
61
61
|
export type {
|
|
62
62
|
JupiterExecuteResponse,
|
|
63
63
|
JupiterOrderResponse,
|
|
64
64
|
JupiterExecuteUrlParams,
|
|
65
65
|
JupiterOrderUrlParams,
|
|
66
|
-
} from '@
|
|
66
|
+
} from '@luxexchange/api/src/clients/jupiter/types'
|
|
67
67
|
export {
|
|
68
68
|
jupiterExecuteResponseSchema,
|
|
69
69
|
jupiterOrderResponseSchema,
|
|
70
|
-
} from '@
|
|
70
|
+
} from '@luxexchange/api/src/clients/jupiter/types'
|
|
71
71
|
|
|
72
72
|
// Blockaid API
|
|
73
73
|
export {
|
|
74
74
|
createBlockaidApiClient,
|
|
75
75
|
type BlockaidApiClient,
|
|
76
|
-
} from '@
|
|
76
|
+
} from '@luxexchange/api/src/clients/blockaid/createBlockaidApiClient'
|
|
77
77
|
export {
|
|
78
78
|
getBlockaidScanSiteResponseSchema,
|
|
79
79
|
getBlockaidScanTransactionRequestSchema,
|
|
@@ -88,15 +88,15 @@ export {
|
|
|
88
88
|
type BlockaidScanTransactionResponse,
|
|
89
89
|
type BlockaidScanJsonRpcRequest,
|
|
90
90
|
type BlockaidScanJsonRpcResponse,
|
|
91
|
-
} from '@
|
|
91
|
+
} from '@luxexchange/api/src/clients/blockaid/types'
|
|
92
92
|
|
|
93
93
|
// Trading API
|
|
94
|
-
export * as TradingApi from '@
|
|
94
|
+
export * as TradingApi from '@luxexchange/api/src/clients/trading/__generated__'
|
|
95
95
|
export {
|
|
96
96
|
createTradingApiClient,
|
|
97
97
|
type TradingApiClient,
|
|
98
98
|
type TradingClientContext,
|
|
99
|
-
} from '@
|
|
99
|
+
} from '@luxexchange/api/src/clients/trading/createTradingApiClient'
|
|
100
100
|
export {
|
|
101
101
|
type BridgeQuoteResponse,
|
|
102
102
|
type ChainedQuoteResponse,
|
|
@@ -110,10 +110,10 @@ export {
|
|
|
110
110
|
type UnwrapQuoteResponse,
|
|
111
111
|
type UpdatePlanRequestWithPlanId,
|
|
112
112
|
type WrapQuoteResponse,
|
|
113
|
-
} from '@
|
|
113
|
+
} from '@luxexchange/api/src/clients/trading/tradeTypes'
|
|
114
114
|
export {
|
|
115
115
|
FeeType,
|
|
116
|
-
type
|
|
116
|
+
type FormattedLxSwapGasFeeInfo,
|
|
117
117
|
type GasEstimate,
|
|
118
118
|
type GasEstimateEip1559,
|
|
119
119
|
type GasEstimateLegacy,
|
|
@@ -123,36 +123,36 @@ export {
|
|
|
123
123
|
type GasStrategy,
|
|
124
124
|
type TransactionEip1559FeeParams,
|
|
125
125
|
type TransactionLegacyFeeParams,
|
|
126
|
-
} from '@
|
|
126
|
+
} from '@luxexchange/api/src/clients/trading/types'
|
|
127
127
|
|
|
128
128
|
// Liquidity Service API
|
|
129
129
|
export {
|
|
130
130
|
createLiquidityServiceClient,
|
|
131
131
|
type LiquidityServiceClient,
|
|
132
|
-
} from '@
|
|
132
|
+
} from '@luxexchange/api/src/clients/liquidity/createLiquidityServiceClient'
|
|
133
133
|
export {
|
|
134
134
|
createAuctionMutationClient,
|
|
135
135
|
type AuctionMutationClient,
|
|
136
|
-
} from '@
|
|
136
|
+
} from '@luxexchange/api/src/clients/liquidity/createAuctionMutationClient'
|
|
137
137
|
|
|
138
138
|
// Auction Service API
|
|
139
139
|
export {
|
|
140
140
|
createAuctionServiceClient,
|
|
141
141
|
type AuctionServiceClient,
|
|
142
|
-
} from '@
|
|
142
|
+
} from '@luxexchange/api/src/clients/auctions/createAuctionServiceClient'
|
|
143
143
|
|
|
144
144
|
// X Verification Service API
|
|
145
145
|
export {
|
|
146
146
|
createXVerificationServiceClient,
|
|
147
147
|
type XVerificationServiceClient,
|
|
148
|
-
} from '@
|
|
148
|
+
} from '@luxexchange/api/src/clients/x/createXVerificationServiceClient'
|
|
149
149
|
|
|
150
150
|
// Uniswap API
|
|
151
151
|
export {
|
|
152
|
-
|
|
153
|
-
type
|
|
154
|
-
type
|
|
155
|
-
} from '@
|
|
152
|
+
createLxApiClient,
|
|
153
|
+
type LxApiClient,
|
|
154
|
+
type LxApiClientContext,
|
|
155
|
+
} from '@luxexchange/api/src/clients/uniswap/createLxApiClient'
|
|
156
156
|
|
|
157
157
|
// Compliance API
|
|
158
158
|
export {
|
|
@@ -161,7 +161,7 @@ export {
|
|
|
161
161
|
type ComplianceApiClientContext,
|
|
162
162
|
type ScreenRequest,
|
|
163
163
|
type ScreenResponse,
|
|
164
|
-
} from '@
|
|
164
|
+
} from '@luxexchange/api/src/clients/compliance/createComplianceApiClient'
|
|
165
165
|
|
|
166
166
|
// Unitags API
|
|
167
167
|
export {
|
|
@@ -186,30 +186,30 @@ export {
|
|
|
186
186
|
type UnitagUpdateMetadataResponse,
|
|
187
187
|
type UnitagUsernameRequest,
|
|
188
188
|
type UnitagUsernameResponse,
|
|
189
|
-
} from '@
|
|
190
|
-
export { createUnitagsApiClient } from '@
|
|
189
|
+
} from '@luxexchange/api/src/clients/unitags/types'
|
|
190
|
+
export { createUnitagsApiClient } from '@luxexchange/api/src/clients/unitags/createUnitagsApiClient'
|
|
191
191
|
|
|
192
192
|
// Gas Service API (ConnectRPC - estimateGasFee via UniRPC v2)
|
|
193
193
|
export {
|
|
194
194
|
createGasServiceClient,
|
|
195
195
|
type GasServiceClient,
|
|
196
196
|
type GasServiceClientContext,
|
|
197
|
-
} from '@
|
|
197
|
+
} from '@luxexchange/api/src/clients/gasService/createGasServiceClient'
|
|
198
198
|
export type {
|
|
199
199
|
EstimateGasFeeRequest as GasServiceEstimateRequest,
|
|
200
200
|
EstimateGasFeeResponse as GasServiceEstimateResponse,
|
|
201
|
-
} from '@
|
|
201
|
+
} from '@luxamm/client-unirpc-v2/dist/uniswap/unirpc/v2/service_pb'
|
|
202
202
|
|
|
203
203
|
// Data API Service (ConnectRPC - listTopTokens, listTopPools, getPortfolio, etc.)
|
|
204
204
|
export {
|
|
205
205
|
createDataApiServiceClient,
|
|
206
206
|
type DataApiServiceClient,
|
|
207
207
|
type DataApiServiceClientContext,
|
|
208
|
-
} from '@
|
|
208
|
+
} from '@luxexchange/api/src/clients/dataApi/createDataApiServiceClient'
|
|
209
209
|
export {
|
|
210
210
|
getGetPortfolioQueryOptions,
|
|
211
211
|
type GetPortfolioQueryParams,
|
|
212
|
-
} from '@
|
|
212
|
+
} from '@luxexchange/api/src/clients/dataApi/getGetPortfolioQueryOptions'
|
|
213
213
|
export {
|
|
214
214
|
TopPoolsOrderBy,
|
|
215
215
|
TokensOrderBy,
|
|
@@ -217,9 +217,9 @@ export {
|
|
|
217
217
|
type GetPortfolioResponse,
|
|
218
218
|
type ListTopPoolsResponse,
|
|
219
219
|
type ListTokensResponse,
|
|
220
|
-
} from '@
|
|
221
|
-
export { ProtocolVersion } from '@
|
|
222
|
-
export { type Pool as DataApiPool, type Token as DataApiToken } from '@
|
|
220
|
+
} from '@luxamm/client-data-api/dist/data/v1/api_pb'
|
|
221
|
+
export { ProtocolVersion } from '@luxamm/client-data-api/dist/data/v1/poolTypes_pb'
|
|
222
|
+
export { type Pool as DataApiPool, type Token as DataApiToken } from '@luxamm/client-data-api/dist/data/v1/types_pb'
|
|
223
223
|
|
|
224
224
|
// Data Service API
|
|
225
225
|
export {
|
|
@@ -228,11 +228,11 @@ export {
|
|
|
228
228
|
type DataServiceApiClientContext,
|
|
229
229
|
TokenReportEventType,
|
|
230
230
|
ReportAssetType,
|
|
231
|
-
} from '@
|
|
231
|
+
} from '@luxexchange/api/src/clients/data/createDataServiceApiClient'
|
|
232
232
|
|
|
233
233
|
// Notifications API
|
|
234
|
-
export { createNotificationsApiClient } from '@
|
|
235
|
-
export { BackgroundType, ContentStyle, OnClickAction } from '@
|
|
234
|
+
export { createNotificationsApiClient } from '@luxexchange/api/src/clients/notifications/createNotificationsApiClient'
|
|
235
|
+
export { BackgroundType, ContentStyle, OnClickAction } from '@luxexchange/api/src/clients/notifications/types'
|
|
236
236
|
export type {
|
|
237
237
|
AckNotificationRequest,
|
|
238
238
|
AckNotificationResponse,
|
|
@@ -241,14 +241,14 @@ export type {
|
|
|
241
241
|
InAppNotification,
|
|
242
242
|
NotificationsApiClient,
|
|
243
243
|
NotificationsClientContext,
|
|
244
|
-
} from '@
|
|
244
|
+
} from '@luxexchange/api/src/clients/notifications/types'
|
|
245
245
|
|
|
246
246
|
// FOR (Fiat On-Ramp) API
|
|
247
247
|
export {
|
|
248
248
|
createForApiClient,
|
|
249
249
|
type ForApiClient,
|
|
250
|
-
} from '@
|
|
251
|
-
export { transformPaymentMethods } from '@
|
|
250
|
+
} from '@luxexchange/api/src/clients/for/createForApiClient'
|
|
251
|
+
export { transformPaymentMethods } from '@luxexchange/api/src/clients/for/utils'
|
|
252
252
|
export type {
|
|
253
253
|
FORCountry,
|
|
254
254
|
FORLogo,
|
|
@@ -258,7 +258,7 @@ export type {
|
|
|
258
258
|
FORSupportedFiatCurrency,
|
|
259
259
|
FORSupportedToken,
|
|
260
260
|
FORTransaction,
|
|
261
|
-
} from '@
|
|
261
|
+
} from '@luxexchange/api/src/clients/for/types'
|
|
262
262
|
// Re-export FOR protobuf types for consumer packages
|
|
263
263
|
export {
|
|
264
264
|
RampDirection,
|
|
@@ -280,24 +280,24 @@ export {
|
|
|
280
280
|
TransferWidgetUrlRequest,
|
|
281
281
|
WidgetUrlRequest,
|
|
282
282
|
WidgetUrlResponse,
|
|
283
|
-
} from '@
|
|
283
|
+
} from '@luxamm/client-for/dist/for/v1/api_pb'
|
|
284
284
|
|
|
285
285
|
// ConnectRPC API
|
|
286
286
|
export {
|
|
287
287
|
ALL_NETWORKS_ARG,
|
|
288
288
|
createConnectTransportWithDefaults,
|
|
289
289
|
type ConnectRpcContext,
|
|
290
|
-
} from '@
|
|
290
|
+
} from '@luxexchange/api/src/connectRpc/base'
|
|
291
291
|
export {
|
|
292
292
|
parseProtectionInfo,
|
|
293
293
|
parseRestProtocolVersion,
|
|
294
294
|
parseSafetyLevel,
|
|
295
295
|
transformInput,
|
|
296
296
|
type WithoutWalletAccount,
|
|
297
|
-
} from '@
|
|
297
|
+
} from '@luxexchange/api/src/connectRpc/utils'
|
|
298
298
|
|
|
299
299
|
// Conversion Tracking API
|
|
300
|
-
export * as ConversionTrackingApi from '@
|
|
300
|
+
export * as ConversionTrackingApi from '@luxexchange/api/src/clients/conversionTracking'
|
|
301
301
|
|
|
302
302
|
// Embedded Wallet API
|
|
303
303
|
export {
|
|
@@ -306,40 +306,42 @@ export {
|
|
|
306
306
|
type EmbeddedWalletClientContext,
|
|
307
307
|
type RecoveryMethod,
|
|
308
308
|
type SignAuth,
|
|
309
|
-
} from '@
|
|
309
|
+
} from '@luxexchange/api/src/clients/embeddedWallet/createEmbeddedWalletApiClient'
|
|
310
310
|
|
|
311
311
|
// Other Utilities
|
|
312
312
|
export {
|
|
313
313
|
createFetcher,
|
|
314
314
|
objectToQueryString,
|
|
315
|
-
} from '@
|
|
315
|
+
} from '@luxexchange/api/src/clients/base/utils'
|
|
316
316
|
|
|
317
317
|
// Session API
|
|
318
|
-
export { ApiInit, reinitializeSession, SESSION_INIT_QUERY_KEY } from '@
|
|
319
|
-
export { provideSessionService } from '@
|
|
320
|
-
export { useIsSessionInitialized } from '@
|
|
318
|
+
export { ApiInit, reinitializeSession, SESSION_INIT_QUERY_KEY } from '@luxexchange/api/src/components/ApiInit'
|
|
319
|
+
export { provideSessionService } from '@luxexchange/api/src/provideSessionService'
|
|
320
|
+
export { useIsSessionInitialized } from '@luxexchange/api/src/hooks/useIsSessionInitialized'
|
|
321
321
|
|
|
322
322
|
// Session Transport (pure factory, no platform detection)
|
|
323
|
-
export { createSessionTransport, type CreateSessionTransportOptions } from '@
|
|
324
|
-
export { createWithSessionRetry } from '@
|
|
323
|
+
export { createSessionTransport, type CreateSessionTransportOptions } from '@luxexchange/api/src/session'
|
|
324
|
+
export { createWithSessionRetry } from '@luxexchange/api/src/session/createWithSessionRetry'
|
|
325
325
|
|
|
326
326
|
export type {
|
|
327
327
|
UseQueryApiHelperHookArgs,
|
|
328
328
|
UseQueryWithImmediateGarbageCollectionApiHelperHookArgs,
|
|
329
|
-
} from '@
|
|
330
|
-
export { useQueryWithImmediateGarbageCollection } from '@
|
|
329
|
+
} from '@luxexchange/api/src/hooks/shared/types'
|
|
330
|
+
export { useQueryWithImmediateGarbageCollection } from '@luxexchange/api/src/hooks/shared/useQueryWithImmediateGarbageCollection'
|
|
331
331
|
|
|
332
332
|
// Other Types
|
|
333
333
|
export {
|
|
334
334
|
CustomRankingType,
|
|
335
335
|
RankingType,
|
|
336
336
|
SpamCode,
|
|
337
|
-
} from '@
|
|
337
|
+
} from '@luxexchange/api/src/clients/content/types'
|
|
338
338
|
|
|
339
|
-
export { getTransport } from '@
|
|
339
|
+
export { getTransport } from '@luxexchange/api/src/transport'
|
|
340
340
|
|
|
341
|
-
export { getEntryGatewayUrl, getMigratedForApiUrl } from '@
|
|
341
|
+
export { getEntryGatewayUrl, getMigratedForApiUrl } from '@luxexchange/api/src/getEntryGatewayUrl'
|
|
342
342
|
|
|
343
|
-
export { getWebSocketUrl } from '@
|
|
343
|
+
export { getWebSocketUrl } from '@luxexchange/api/src/getWebSocketUrl'
|
|
344
344
|
|
|
345
|
-
export {
|
|
345
|
+
export { provideLxIdentifierService } from '@luxexchange/api/src/provideLxIdentifierService'
|
|
346
|
+
|
|
347
|
+
export const provideLuxIdentifierService = provideLxIdentifierService
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { getStorageDriver } from '@
|
|
2
|
-
import { createDeviceIdService, DeviceIdService } from '@
|
|
1
|
+
import { getStorageDriver } from '@luxexchange/api/src/storage/getStorageDriver'
|
|
2
|
+
import { createDeviceIdService, DeviceIdService } from '@luxexchange/sessions'
|
|
3
3
|
|
|
4
|
-
const DEVICE_ID_KEY = '
|
|
4
|
+
const DEVICE_ID_KEY = 'LX_DEVICE_ID'
|
|
5
5
|
|
|
6
6
|
function provideDeviceIdService(): DeviceIdService {
|
|
7
7
|
const driver = getStorageDriver()
|
|
@@ -1,25 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const LUX_IDENTIFIER_KEY = 'LUX_IDENTIFIER'
|
|
5
|
-
|
|
6
|
-
function provideLuxIdentifierService(): LuxIdentifierService {
|
|
7
|
-
const driver = getStorageDriver()
|
|
8
|
-
|
|
9
|
-
const service = createLuxIdentifierService({
|
|
10
|
-
getLuxIdentifier: async () => {
|
|
11
|
-
const identifier = await driver.get(LUX_IDENTIFIER_KEY)
|
|
12
|
-
return identifier || null
|
|
13
|
-
},
|
|
14
|
-
setLuxIdentifier: async (identifier: string) => {
|
|
15
|
-
await driver.set(LUX_IDENTIFIER_KEY, identifier)
|
|
16
|
-
},
|
|
17
|
-
removeLuxIdentifier: async () => {
|
|
18
|
-
await driver.remove(LUX_IDENTIFIER_KEY)
|
|
19
|
-
},
|
|
20
|
-
})
|
|
21
|
-
|
|
22
|
-
return service
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
export { provideLuxIdentifierService }
|
|
1
|
+
// Re-export for Lux branding — delegates to the upstream implementation
|
|
2
|
+
export { provideLxIdentifierService as provideLuxIdentifierService } from '@luxexchange/api/src/provideLxIdentifierService'
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { provideDeviceIdService } from '@
|
|
2
|
-
import { provideSessionStorage } from '@
|
|
3
|
-
import {
|
|
4
|
-
import { getTransport } from '@
|
|
1
|
+
import { provideDeviceIdService } from '@luxexchange/api/src/provideDeviceIdService'
|
|
2
|
+
import { provideSessionStorage } from '@luxexchange/api/src/provideSessionStorage'
|
|
3
|
+
import { provideLxIdentifierService } from '@luxexchange/api/src/provideLxIdentifierService'
|
|
4
|
+
import { getTransport } from '@luxexchange/api/src/transport'
|
|
5
5
|
import {
|
|
6
6
|
createNoopSessionService,
|
|
7
7
|
createSessionClient,
|
|
8
8
|
createSessionRepository,
|
|
9
9
|
createSessionService,
|
|
10
10
|
type SessionService,
|
|
11
|
-
} from '@
|
|
11
|
+
} from '@luxexchange/sessions'
|
|
12
12
|
import type { Logger } from 'utilities/src/logger/logger'
|
|
13
13
|
import { REQUEST_SOURCE } from 'utilities/src/platform/requestSource'
|
|
14
14
|
|
|
@@ -33,12 +33,12 @@ function getMobileSessionService(ctx: { getBaseUrl: () => string; getLogger?: ()
|
|
|
33
33
|
|
|
34
34
|
const sessionStorage = provideSessionStorage()
|
|
35
35
|
const deviceIdService = provideDeviceIdService()
|
|
36
|
-
const
|
|
36
|
+
const lxIdentifierService = provideLxIdentifierService()
|
|
37
37
|
const sessionRepository = createSessionRepository({ client: sessionClient, getLogger: ctx.getLogger })
|
|
38
38
|
return createSessionService({
|
|
39
39
|
sessionStorage,
|
|
40
40
|
deviceIdService,
|
|
41
|
-
|
|
41
|
+
lxIdentifierService,
|
|
42
42
|
sessionRepository,
|
|
43
43
|
})
|
|
44
44
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { SessionService,
|
|
1
|
+
import type { SessionService, LxIdentifierService } from '@luxexchange/sessions'
|
|
2
2
|
import { PlatformSplitStubError } from 'utilities/src/errors'
|
|
3
3
|
import type { Logger } from 'utilities/src/logger/logger'
|
|
4
4
|
|
|
@@ -6,8 +6,8 @@ export function provideSessionService(_ctx: {
|
|
|
6
6
|
getBaseUrl: () => string
|
|
7
7
|
getIsSessionServiceEnabled: () => boolean
|
|
8
8
|
getLogger?: () => Logger
|
|
9
|
-
/** Optional custom
|
|
10
|
-
|
|
9
|
+
/** Optional custom LxIdentifierService. If not provided, uses default localStorage-based service. */
|
|
10
|
+
lxIdentifierService?: LxIdentifierService
|
|
11
11
|
}): SessionService {
|
|
12
12
|
throw new PlatformSplitStubError('provideSessionService')
|
|
13
13
|
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { provideDeviceIdService } from '@
|
|
2
|
-
import { provideSessionStorage } from '@
|
|
3
|
-
import {
|
|
4
|
-
import { getTransport } from '@
|
|
1
|
+
import { provideDeviceIdService } from '@luxexchange/api/src/provideDeviceIdService'
|
|
2
|
+
import { provideSessionStorage } from '@luxexchange/api/src/provideSessionStorage'
|
|
3
|
+
import { provideLxIdentifierService } from '@luxexchange/api/src/provideLxIdentifierService'
|
|
4
|
+
import { getTransport } from '@luxexchange/api/src/transport'
|
|
5
5
|
import {
|
|
6
6
|
createNoopSessionService,
|
|
7
7
|
createSessionClient,
|
|
8
8
|
createSessionRepository,
|
|
9
9
|
createSessionService,
|
|
10
10
|
type SessionService,
|
|
11
|
-
type
|
|
12
|
-
} from '@
|
|
11
|
+
type LxIdentifierService,
|
|
12
|
+
} from '@luxexchange/sessions'
|
|
13
13
|
import type { Logger } from 'utilities/src/logger/logger'
|
|
14
14
|
import { isWebApp } from 'utilities/src/platform'
|
|
15
15
|
import { REQUEST_SOURCE } from 'utilities/src/platform/requestSource'
|
|
@@ -18,8 +18,8 @@ function provideSessionService(ctx: {
|
|
|
18
18
|
getBaseUrl: () => string
|
|
19
19
|
getIsSessionServiceEnabled: () => boolean
|
|
20
20
|
getLogger?: () => Logger
|
|
21
|
-
/** Optional custom
|
|
22
|
-
|
|
21
|
+
/** Optional custom LxIdentifierService. If not provided, uses default localStorage-based service. */
|
|
22
|
+
lxIdentifierService?: LxIdentifierService
|
|
23
23
|
}): SessionService {
|
|
24
24
|
if (!ctx.getIsSessionServiceEnabled()) {
|
|
25
25
|
return createNoopSessionService()
|
|
@@ -40,7 +40,7 @@ function provideSessionService(ctx: {
|
|
|
40
40
|
function getWebAppSessionService(ctx: {
|
|
41
41
|
getBaseUrl: () => string
|
|
42
42
|
getLogger?: () => Logger
|
|
43
|
-
|
|
43
|
+
lxIdentifierService?: LxIdentifierService
|
|
44
44
|
}): SessionService {
|
|
45
45
|
const sessionClient = createSessionClient({
|
|
46
46
|
transport: getTransport({
|
|
@@ -57,7 +57,7 @@ function getWebAppSessionService(ctx: {
|
|
|
57
57
|
return createSessionService({
|
|
58
58
|
sessionStorage: provideSessionStorage(),
|
|
59
59
|
deviceIdService: provideDeviceIdService(),
|
|
60
|
-
|
|
60
|
+
lxIdentifierService: ctx.lxIdentifierService ?? provideLxIdentifierService(),
|
|
61
61
|
sessionRepository,
|
|
62
62
|
})
|
|
63
63
|
}
|
|
@@ -65,7 +65,7 @@ function getWebAppSessionService(ctx: {
|
|
|
65
65
|
function getExtensionSessionService(ctx: {
|
|
66
66
|
getBaseUrl: () => string
|
|
67
67
|
getLogger?: () => Logger
|
|
68
|
-
|
|
68
|
+
lxIdentifierService?: LxIdentifierService
|
|
69
69
|
}): SessionService {
|
|
70
70
|
const sessionClient = createSessionClient({
|
|
71
71
|
transport: getTransport({
|
|
@@ -79,7 +79,7 @@ function getExtensionSessionService(ctx: {
|
|
|
79
79
|
return createSessionService({
|
|
80
80
|
sessionStorage: provideSessionStorage(),
|
|
81
81
|
deviceIdService: provideDeviceIdService(),
|
|
82
|
-
|
|
82
|
+
lxIdentifierService: ctx.lxIdentifierService ?? provideLxIdentifierService(),
|
|
83
83
|
sessionRepository,
|
|
84
84
|
})
|
|
85
85
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { getStorageDriver } from '@
|
|
2
|
-
import { createSessionStorage, type SessionStorage } from '@
|
|
1
|
+
import { getStorageDriver } from '@luxexchange/api/src/storage/getStorageDriver'
|
|
2
|
+
import { createSessionStorage, type SessionStorage } from '@luxexchange/sessions'
|
|
3
3
|
|
|
4
|
-
const SESSION_ID_KEY = '
|
|
4
|
+
const SESSION_ID_KEY = 'LX_SESSION_ID'
|
|
5
5
|
|
|
6
6
|
function provideSessionStorage(): SessionStorage {
|
|
7
7
|
const driver = getStorageDriver()
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { getStorageDriver } from '@luxexchange/api/src/storage/getStorageDriver'
|
|
2
|
+
import { createLxIdentifierService, LxIdentifierService } from '@luxexchange/sessions'
|
|
3
|
+
|
|
4
|
+
const LX_IDENTIFIER_KEY = 'LX_IDENTIFIER'
|
|
5
|
+
|
|
6
|
+
function provideLxIdentifierService(): LxIdentifierService {
|
|
7
|
+
const driver = getStorageDriver()
|
|
8
|
+
|
|
9
|
+
const service = createLxIdentifierService({
|
|
10
|
+
getLxIdentifier: async () => {
|
|
11
|
+
const identifier = await driver.get(LX_IDENTIFIER_KEY)
|
|
12
|
+
return identifier || null
|
|
13
|
+
},
|
|
14
|
+
setLxIdentifier: async (identifier: string) => {
|
|
15
|
+
await driver.set(LX_IDENTIFIER_KEY, identifier)
|
|
16
|
+
},
|
|
17
|
+
removeLxIdentifier: async () => {
|
|
18
|
+
await driver.remove(LX_IDENTIFIER_KEY)
|
|
19
|
+
},
|
|
20
|
+
})
|
|
21
|
+
|
|
22
|
+
return service
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export { provideLxIdentifierService }
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createSessionTransport } from '@
|
|
1
|
+
import { createSessionTransport } from '@luxexchange/api/src/session/createSessionTransport'
|
|
2
2
|
import { describe, expect, it } from 'vitest'
|
|
3
3
|
|
|
4
4
|
describe('createSessionTransport', () => {
|
|
@@ -35,7 +35,7 @@ describe('createSessionTransport', () => {
|
|
|
35
35
|
baseUrl: 'https://api.example.com',
|
|
36
36
|
headers: {
|
|
37
37
|
'x-request-source': 'test',
|
|
38
|
-
'x-
|
|
38
|
+
'x-uniswap-timezone': 'UTC',
|
|
39
39
|
},
|
|
40
40
|
cookie: 'session=abc123',
|
|
41
41
|
credentials: 'include',
|
|
@@ -8,7 +8,7 @@ export interface CreateSessionTransportOptions {
|
|
|
8
8
|
/** Entry gateway URL */
|
|
9
9
|
baseUrl: string
|
|
10
10
|
|
|
11
|
-
/** Static headers to include in all requests (e.g., x-request-source, x-
|
|
11
|
+
/** Static headers to include in all requests (e.g., x-request-source, x-uniswap-timezone) */
|
|
12
12
|
headers?: Record<string, string>
|
|
13
13
|
|
|
14
14
|
/** Cookie header for SSR forwarding */
|
|
@@ -40,8 +40,8 @@ export interface CreateSessionTransportOptions {
|
|
|
40
40
|
* baseUrl: entryGatewayUrl,
|
|
41
41
|
* credentials: 'include',
|
|
42
42
|
* headers: {
|
|
43
|
-
* 'x-request-source': '
|
|
44
|
-
* 'x-
|
|
43
|
+
* 'x-request-source': 'lx-web',
|
|
44
|
+
* 'x-uniswap-timezone': Intl.DateTimeFormat().resolvedOptions().timeZone,
|
|
45
45
|
* },
|
|
46
46
|
* })
|
|
47
47
|
*
|
|
@@ -51,8 +51,8 @@ export interface CreateSessionTransportOptions {
|
|
|
51
51
|
* baseUrl: config.entryGatewayUrl,
|
|
52
52
|
* cookie: request.headers.get('Cookie'),
|
|
53
53
|
* headers: {
|
|
54
|
-
* 'x-request-source': '
|
|
55
|
-
* 'x-
|
|
54
|
+
* 'x-request-source': 'lx-web',
|
|
55
|
+
* 'x-uniswap-timezone': timezone,
|
|
56
56
|
* },
|
|
57
57
|
* })
|
|
58
58
|
*
|
|
@@ -60,7 +60,7 @@ export interface CreateSessionTransportOptions {
|
|
|
60
60
|
* // Mobile - uses headers for session/device IDs
|
|
61
61
|
* const transport = createSessionTransport({
|
|
62
62
|
* baseUrl: entryGatewayUrl,
|
|
63
|
-
* headers: { 'x-request-source': '
|
|
63
|
+
* headers: { 'x-request-source': 'uniswap-mobile' },
|
|
64
64
|
* getSessionId: () => sessionStorage.get().then(s => s?.sessionId ?? null),
|
|
65
65
|
* getDeviceId: () => deviceIdService.getDeviceId(),
|
|
66
66
|
* })
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { is401Error } from '@
|
|
1
|
+
import { is401Error } from '@luxexchange/api/src/clients/base/errors'
|
|
2
2
|
|
|
3
3
|
/** Creates a function that will attempt to reinitialize the app session and retry the input function once, if the first invocation of the function fails. */
|
|
4
4
|
export function createWithSessionRetry(ctx: {
|
package/src/session/index.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { StorageDriver } from '@
|
|
1
|
+
import type { StorageDriver } from '@luxexchange/api/src/storage/types'
|
|
2
2
|
import { getChromeWithThrow } from 'utilities/src/chrome/chrome'
|
|
3
3
|
|
|
4
4
|
export function createExtensionStorageDriver(): StorageDriver {
|