Skip to content

Commit

Permalink
Update NPM_TOKEN handling in workflows and Docker build (#3919)
Browse files Browse the repository at this point in the history
* adding `NPM_TOKEN`

* adding `NPM_TOKEN` to more GH Actions workflows

* fixing build workflow

* making `NPM_TOKEN` available to docker build

* updated to private packages

* Added new env NPM_TOKEN to set global token for installing private npm packages

* bump once again

* updated imports

* Fixed lint

* updated lock

* Updated readme

---------

Co-authored-by: cristidas <[email protected]>
  • Loading branch information
piotrwitek and cristidas authored Jun 3, 2024
1 parent 4676e97 commit 8653602
Show file tree
Hide file tree
Showing 34 changed files with 110 additions and 82 deletions.
5 changes: 5 additions & 0 deletions .env.template
Original file line number Diff line number Diff line change
Expand Up @@ -67,3 +67,8 @@ AAVE_OPTIMISM_SUBGRAPH_URL=""
MAINNET_CACHE_URL="https://cache-mainnet-staging.staging.summer.fi/api/v1"

GROOVE_WIDGET_ID=

# Your personal NPM access token, to install private npm packages
# ask techops to get your personal npm access token, and set it here
# then just run source .env to load it into your environment and install will just work
export NPM_TOKEN=
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,4 @@ coverage
jest.config.js
setup.js
lambdas
.gen
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,11 @@ git clone https://github.com/OasisDEX/oasis-borrow.git

Navigate to the project folder and install all dependencies

NOTE: to install private packages from NPM you need to have an env variable called `NPM_TOKEN` containing your personal NPM access token.
We recommend to set `NPM_TOKEN` in your `.env` file using our `.env.template`, this way you can just `source .env` before install.

```sh
source .env
yarn
```

Expand Down
16 changes: 8 additions & 8 deletions features/refinance/contexts/RefinanceGeneralContext.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
import type { RiskRatio } from '@oasisdex/dma-library'
import type { TxStatus } from '@oasisdex/transactions'
import type {
AddressValue,
ChainInfo,
IPoolId,
ITokenAmount,
PositionId,
PositionType,
} from '@summer_fi/summerfi-sdk-common'
import type { GasEstimationContext } from 'components/context/GasEstimationContextProvider'
import type { OmniGeneralContextTx } from 'features/omni-kit/contexts'
import type { OmniValidations } from 'features/omni-kit/types'
Expand All @@ -11,14 +19,6 @@ import type { RefinanceSidebarStep } from 'features/refinance/types'
import type { LendingProtocol } from 'lendingProtocols'
import type { Dispatch, FC, SetStateAction } from 'react'
import React, { useContext, useState } from 'react'
import type {
AddressValue,
ChainInfo,
IPoolId,
ITokenAmount,
PositionId,
PositionType,
} from 'summerfi-sdk-common'

export interface RefinanceSteps {
currentStep: RefinanceSidebarStep
Expand Down
8 changes: 6 additions & 2 deletions features/refinance/helpers/getAaveLikePoolId.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
import {
AaveV3LendingPoolId,
type EmodeType,
SparkLendingPoolId,
} from '@summer_fi/summerfi-sdk-client'
import { type ChainInfo, type IToken, ProtocolName } from '@summer_fi/summerfi-sdk-common'
import { LendingProtocol } from 'lendingProtocols'
import { AaveV3LendingPoolId, type EmodeType, SparkLendingPoolId } from 'summerfi-sdk-client'
import { type ChainInfo, type IToken, ProtocolName } from 'summerfi-sdk-common'

export const getAaveLikePoolId = (
lendingProtocol: LendingProtocol,
Expand Down
2 changes: 1 addition & 1 deletion features/refinance/helpers/getAaveLikePositionId.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { AaveV3PositionId, SparkPositionId } from '@summer_fi/summerfi-sdk-client'
import { LendingProtocol } from 'lendingProtocols'
import { AaveV3PositionId, SparkPositionId } from 'summerfi-sdk-client'

export const getAaveLikePositionId = (lendingProtocol: LendingProtocol, vaultId: string) => {
switch (lendingProtocol) {
Expand Down
4 changes: 2 additions & 2 deletions features/refinance/helpers/getEmode.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { EmodeType } from 'summerfi-sdk-client'
import type { IToken } from 'summerfi-sdk-common'
import { EmodeType } from '@summer_fi/summerfi-sdk-client'
import type { IToken } from '@summer_fi/summerfi-sdk-common'

const stablecoinTokens = [
'ADAI',
Expand Down
4 changes: 2 additions & 2 deletions features/refinance/helpers/getMakerPoolId.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { MakerLendingPoolId } from 'summerfi-sdk-client'
import { type ChainInfo, type IToken, ProtocolName } from 'summerfi-sdk-common'
import { MakerLendingPoolId } from '@summer_fi/summerfi-sdk-client'
import { type ChainInfo, type IToken, ProtocolName } from '@summer_fi/summerfi-sdk-common'

export const getMakerPoolId = (
chainInfo: ChainInfo,
Expand Down
2 changes: 1 addition & 1 deletion features/refinance/helpers/getMakerPositionId.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { MakerPositionId } from 'summerfi-sdk-client'
import { MakerPositionId } from '@summer_fi/summerfi-sdk-client'

export const getMakerPositionId = (vaultId: string) => {
return MakerPositionId.createFrom({
Expand Down
4 changes: 2 additions & 2 deletions features/refinance/helpers/getMorphoPoolId.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { MorphoLendingPoolId } from 'summerfi-sdk-client'
import { type ChainInfo, ProtocolName } from 'summerfi-sdk-common'
import { MorphoLendingPoolId } from '@summer_fi/summerfi-sdk-client'
import { type ChainInfo, ProtocolName } from '@summer_fi/summerfi-sdk-common'

export const getMorphoPoolId = (chainInfo: ChainInfo, marketId: string) => {
return MorphoLendingPoolId.createFrom({
Expand Down
2 changes: 1 addition & 1 deletion features/refinance/helpers/getMorphoPositionId.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { MorphoPositionId } from 'summerfi-sdk-client'
import { MorphoPositionId } from '@summer_fi/summerfi-sdk-client'

export const getMorphoPositionId = (vaultId: string) => {
return MorphoPositionId.createFrom({
Expand Down
9 changes: 7 additions & 2 deletions features/refinance/helpers/getPosition.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
import { AaveV3Position, MakerPosition, MorphoPosition, SparkPosition } from 'summerfi-sdk-client'
import { type IPosition, ProtocolName } from 'summerfi-sdk-common'
import {
AaveV3Position,
MakerPosition,
MorphoPosition,
SparkPosition,
} from '@summer_fi/summerfi-sdk-client'
import { type IPosition, ProtocolName } from '@summer_fi/summerfi-sdk-common'

export const getPosition = (protocolName: ProtocolName, position: IPosition): IPosition => {
switch (protocolName) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { ProtocolName } from '@summer_fi/summerfi-sdk-common'
import { LendingProtocol } from 'lendingProtocols'
import { ProtocolName } from 'summerfi-sdk-common'

const ProtocolNameByLendingProtocol: Record<LendingProtocol, ProtocolName> = {
[LendingProtocol.AaveV2]: ProtocolName.AaveV2,
Expand Down
2 changes: 1 addition & 1 deletion features/refinance/helpers/getRefinanceContextInput.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { RiskRatio } from '@oasisdex/dma-library'
import type { ILendingPoolId, IPositionId, PositionType } from '@summer_fi/summerfi-sdk-common'
import BigNumber from 'bignumber.js'
import type { NetworkNames } from 'blockchain/networks'
import { networkNameToIdMap } from 'blockchain/networks'
Expand All @@ -7,7 +8,6 @@ import type {
RefinanceContextInputAutomations,
} from 'features/refinance/contexts'
import type { DpmRefinanceFormState } from 'features/refinance/state/refinanceFormReducto.types'
import type { ILendingPoolId, IPositionId, PositionType } from 'summerfi-sdk-common'

import { getLendingProtocolByProtocolName } from './protocolNameToLendingProtocol'

Expand Down
8 changes: 6 additions & 2 deletions features/refinance/helpers/getTargetPoolId.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,15 @@
import {
AaveV3LendingPoolId,
MorphoLendingPoolId,
SparkLendingPoolId,
} from '@summer_fi/summerfi-sdk-client'
import { type IPoolId, type IProtocol, ProtocolName } from '@summer_fi/summerfi-sdk-common'
import { morphoMarkets } from 'features/omni-kit/protocols/morpho-blue/settings'
import type { RefinanceGeneralContextBase } from 'features/refinance/contexts'
import { getEmode } from 'features/refinance/helpers/getEmode'
import { mapTokenToSdkToken } from 'features/refinance/helpers/mapTokenToSdkToken'
import { replaceTokenSymbolETHWithWETH } from 'features/refinance/helpers/replaceETHwithWETH'
import { getTokenDisplayName } from 'helpers/getTokenDisplayName'
import { AaveV3LendingPoolId, MorphoLendingPoolId, SparkLendingPoolId } from 'summerfi-sdk-client'
import { type IPoolId, type IProtocol, ProtocolName } from 'summerfi-sdk-common'

export const getTargetPoolId = (protocol: IProtocol, ctx: RefinanceGeneralContextBase): IPoolId => {
const {
Expand Down
2 changes: 1 addition & 1 deletion features/refinance/helpers/mapTokenToSdkToken.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { Address, AddressType, type ChainInfo, Token } from '@summer_fi/summerfi-sdk-common'
import { getNetworkContracts } from 'blockchain/contracts'
import type { NetworkIds } from 'blockchain/networks'
import { getTokenMetaData } from 'features/exchange/exchange'
import { Address, AddressType, type ChainInfo, Token } from 'summerfi-sdk-common'

export function mapTokenToSdkToken(chainInfo: ChainInfo, token: string): Token {
const contracts = (getNetworkContracts(chainInfo.chainId as NetworkIds) as any).tokens
Expand Down
2 changes: 1 addition & 1 deletion features/refinance/helpers/mapTxInfoToOmniTxData.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import type { TransactionInfo } from '@summer_fi/summerfi-sdk-common'
import type { OmniTxData } from 'features/omni-kit/hooks'
import type { TransactionInfo } from 'summerfi-sdk-common'

export function mapTxInfoToOmniTxData(txInfo: TransactionInfo | undefined): OmniTxData | undefined {
if (txInfo == null) {
Expand Down
2 changes: 1 addition & 1 deletion features/refinance/helpers/omniProductTypeToSDKType.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { PositionType } from '@summer_fi/summerfi-sdk-common'
import { OmniProductType } from 'features/omni-kit/types'
import { PositionType } from 'summerfi-sdk-common'

export const omniProductTypeToSDKType = (type: OmniProductType): PositionType => {
switch (type) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { PositionType } from '@summer_fi/summerfi-sdk-common'
import { OmniProductType } from 'features/omni-kit/types'
import { PositionType } from 'summerfi-sdk-common'

export const positionTypeToOmniProductType = (vaultType: PositionType): OmniProductType => {
switch (vaultType) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { ProtocolName } from '@summer_fi/summerfi-sdk-common'
import { LendingProtocol } from 'lendingProtocols'
import { ProtocolName } from 'summerfi-sdk-common'

export function getLendingProtocolByProtocolName(name: ProtocolName) {
return {
Expand Down
8 changes: 4 additions & 4 deletions features/refinance/helpers/replaceETHwithWETH.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { mapTokenToSdkToken } from 'features/refinance/helpers/mapTokenToSdkToken'
import type { MakerLendingPoolId } from 'summerfi-sdk-client'
import type { MakerLendingPoolId } from '@summer_fi/summerfi-sdk-client'
import {
isAaveV3LendingPoolId,
isMakerLendingPoolId,
isSparkLendingPoolId,
} from 'summerfi-sdk-client'
import { type IPoolId, type ITokenAmount, TokenAmount } from 'summerfi-sdk-common'
} from '@summer_fi/summerfi-sdk-client'
import { type IPoolId, type ITokenAmount, TokenAmount } from '@summer_fi/summerfi-sdk-common'
import { mapTokenToSdkToken } from 'features/refinance/helpers/mapTokenToSdkToken'

export const replaceTokenAmountETHWithWETH = (tokenAmount: ITokenAmount): ITokenAmount => {
if (tokenAmount.token.symbol === 'ETH') {
Expand Down
2 changes: 1 addition & 1 deletion features/refinance/helpers/vaultTypeToSDKType.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { PositionType } from '@summer_fi/summerfi-sdk-common'
import { VaultType } from 'features/generalManageVault/vaultType.types'
import { PositionType } from 'summerfi-sdk-common'

export const vaultTypeToSDKType = (vaultType: VaultType): PositionType => {
switch (vaultType) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import type { AaveLikePositionV2, LendingPosition } from '@oasisdex/dma-library'
import { getChainInfoByChainId, type PositionType } from '@summer_fi/summerfi-sdk-common'
import type { NetworkIds } from 'blockchain/networks'
import { getNetworkById } from 'blockchain/networks'
import type { RefinanceContextInput } from 'features/refinance/contexts/RefinanceGeneralContext'
Expand All @@ -11,7 +12,6 @@ import { getEmode } from 'features/refinance/helpers/getEmode'
import { mapTokenToSdkToken } from 'features/refinance/helpers/mapTokenToSdkToken'
import type { GetTriggersResponse } from 'helpers/lambda/triggers'
import { LendingProtocol } from 'lendingProtocols'
import { getChainInfoByChainId, type PositionType } from 'summerfi-sdk-common'

export const useAaveLikeRefinanceContextInputs = ({
address,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import { type AddressValue, TokenAmount } from '@summer_fi/summerfi-sdk-common'
import type { GasEstimationContext } from 'components/context/GasEstimationContextProvider'
import {
getOmniTxStatuses,
Expand All @@ -20,7 +21,6 @@ import { useAppConfig } from 'helpers/config'
import type { TxDetails } from 'helpers/handleTransaction'
import { LendingProtocol } from 'lendingProtocols'
import { useState } from 'react'
import { type AddressValue, TokenAmount } from 'summerfi-sdk-common'

export const useInitializeRefinanceContextBase = ({
contextInput,
Expand Down
2 changes: 1 addition & 1 deletion features/refinance/hooks/useMakerRefinanceContextInputs.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import { getChainInfoByChainId, type PositionType } from '@summer_fi/summerfi-sdk-common'
import type { NetworkIds } from 'blockchain/networks'
import { getNetworkById } from 'blockchain/networks'
import { useAutomationContext } from 'components/context/AutomationContextProvider'
Expand All @@ -6,7 +7,6 @@ import { getRefinanceContextInput } from 'features/refinance/helpers'
import { getMakerPoolId } from 'features/refinance/helpers/getMakerPoolId'
import { getMakerPositionId } from 'features/refinance/helpers/getMakerPositionId'
import { mapTokenToSdkToken } from 'features/refinance/helpers/mapTokenToSdkToken'
import { getChainInfoByChainId, type PositionType } from 'summerfi-sdk-common'

export const useMakerRefinanceContextInputs = ({
address,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import type { LendingPosition, MorphoBluePosition } from '@oasisdex/dma-library'
import { getChainInfoByChainId, type PositionType } from '@summer_fi/summerfi-sdk-common'
import type { NetworkIds } from 'blockchain/networks'
import { getNetworkById } from 'blockchain/networks'
import type { RefinanceContextInput } from 'features/refinance/contexts/RefinanceGeneralContext'
import { getMorphoPositionId, getRefinanceContextInput } from 'features/refinance/helpers'
import { getMorphoPoolId } from 'features/refinance/helpers/getMorphoPoolId'
import type { GetTriggersResponse } from 'helpers/lambda/triggers'
import { getChainInfoByChainId, type PositionType } from 'summerfi-sdk-common'

export const useMorphoRefinanceContextInputs = ({
address,
Expand Down
2 changes: 1 addition & 1 deletion features/refinance/hooks/useRefinanceTxHandler.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { type TxMeta, type TxState, TxStatus } from '@oasisdex/transactions'
import type { TransactionInfo } from '@summer_fi/summerfi-sdk-common'
import BigNumber from 'bignumber.js'
import { useMainContext } from 'components/context/MainContextProvider'
import { estimateOmniGas$, sendOmniTransaction$ } from 'features/omni-kit/observables'
Expand All @@ -9,7 +10,6 @@ import { RefinanceSidebarStep } from 'features/refinance/types'
import { handleTransaction } from 'helpers/handleTransaction'
import { useObservable } from 'helpers/observableHook'
import { useEffect, useMemo } from 'react'
import type { TransactionInfo } from 'summerfi-sdk-common'

export const useRefinanceTxHandler = () => {
const { connectedContext$ } = useMainContext()
Expand Down
29 changes: 17 additions & 12 deletions features/refinance/hooks/useSdkSimulation.tsx
Original file line number Diff line number Diff line change
@@ -1,3 +1,20 @@
import type { Chain, ProtocolClient, User } from '@summer_fi/summerfi-sdk-client'
import { makeSDK, PositionUtils } from '@summer_fi/summerfi-sdk-client'
import type {
IImportPositionParameters,
ILendingPoolInfo,
IPosition,
IRefinanceParameters,
ISimulation,
Maybe,
SimulationType,
} from '@summer_fi/summerfi-sdk-common'
import {
Address,
ExternalPositionType,
Percentage,
ProtocolName,
} from '@summer_fi/summerfi-sdk-common'
import { getTokenPrice } from 'blockchain/prices'
import { tokenPriceStore } from 'blockchain/prices.constants'
import { useRefinanceGeneralContext } from 'features/refinance/contexts'
Expand All @@ -10,18 +27,6 @@ import {
} from 'features/refinance/helpers/replaceETHwithWETH'
import { RefinanceSidebarStep } from 'features/refinance/types'
import { useEffect, useMemo, useState } from 'react'
import type { Chain, ProtocolClient, User } from 'summerfi-sdk-client'
import { makeSDK, PositionUtils } from 'summerfi-sdk-client'
import type {
IImportPositionParameters,
ILendingPoolInfo,
IPosition,
IRefinanceParameters,
ISimulation,
Maybe,
SimulationType,
} from 'summerfi-sdk-common'
import { Address, ExternalPositionType, Percentage, ProtocolName } from 'summerfi-sdk-common'

export type SDKSimulation = {
error: string | null
Expand Down
6 changes: 3 additions & 3 deletions features/refinance/hooks/useSdkTransaction.tsx
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { makeSDK } from '@summer_fi/summerfi-sdk-client'
import type { ISimulation, Order, SimulationType } from '@summer_fi/summerfi-sdk-common'
import { Address, AddressType, Wallet } from '@summer_fi/summerfi-sdk-common'
import { useRefinanceContext } from 'features/refinance/contexts'
import { RefinanceSidebarStep } from 'features/refinance/types'
import { LendingProtocol } from 'lendingProtocols'
import { useEffect, useMemo, useState } from 'react'
import { makeSDK } from 'summerfi-sdk-client'
import type { ISimulation, Order, SimulationType } from 'summerfi-sdk-common'
import { Address, AddressType, Wallet } from 'summerfi-sdk-common'

export function useSdkRefinanceTransaction({
refinanceSimulation,
Expand Down
2 changes: 1 addition & 1 deletion features/refinance/hooks/useSimulationPositionData.tsx
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { PositionUtils } from '@summer_fi/summerfi-sdk-client'
import BigNumber from 'bignumber.js'
import { getTokenPrice } from 'blockchain/prices'
import { tokenPriceStore } from 'blockchain/prices.constants'
import type { RefinancePositionViewProps } from 'features/refinance/components'
import { useRefinanceContext } from 'features/refinance/contexts'
import type { RefinancePositionViewType } from 'features/refinance/types'
import { PositionUtils } from 'summerfi-sdk-client'

export const useSimulationPositionData = () => {
const { simulation } = useRefinanceContext()
Expand Down
2 changes: 1 addition & 1 deletion handlers/portfolio/positions/handlers/maker/index.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { decodeTriggerDataAsJson } from '@oasisdex/automation'
import { RiskRatio } from '@oasisdex/dma-library'
import { getChainInfoByChainId } from '@summer_fi/summerfi-sdk-common'
import BigNumber from 'bignumber.js'
import { NetworkIds, NetworkNames } from 'blockchain/networks'
import { amountFromRay } from 'blockchain/utils'
Expand All @@ -19,7 +20,6 @@ import type { AutomationResponse } from 'handlers/portfolio/positions/helpers/ge
import type { PortfolioPosition, PortfolioPositionsHandler } from 'handlers/portfolio/types'
import { one, zero } from 'helpers/zero'
import { LendingProtocol } from 'lendingProtocols'
import { getChainInfoByChainId } from 'summerfi-sdk-common'

export const makerPositionsHandler: PortfolioPositionsHandler = async ({
apiVaults,
Expand Down
2 changes: 1 addition & 1 deletion handlers/portfolio/types.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import type { Vault } from '@prisma/client'
import type { IPoolId, IPositionId } from '@summer_fi/summerfi-sdk-common'
import type { NetworkNames } from 'blockchain/networks'
import type { OmniProductType } from 'features/omni-kit/types'
import type { TokensPricesList } from 'handlers/portfolio/positions/helpers'
import type { DpmSubgraphData } from 'handlers/portfolio/positions/helpers/getAllDpmsForWallet'
import type { HistoryResponse } from 'handlers/portfolio/positions/helpers/getHistoryData'
import type { LendingProtocol } from 'lendingProtocols'
import type { IPoolId, IPositionId } from 'summerfi-sdk-common'

type AutomationType = {
enabled: boolean
Expand Down
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -113,8 +113,8 @@
"rxjs-take-while-inclusive": "^2.1.0",
"sass": "^1.49.4",
"snowflake-sdk": "^1.6.10",
"summerfi-sdk-client": "^0.2.7",
"summerfi-sdk-common": "^0.2.6",
"@summer_fi/summerfi-sdk-client": "^0.2.8",
"@summer_fi/summerfi-sdk-common": "^0.2.7",
"terser-webpack-plugin": "^5.3.9",
"text-mask-addons": "^3.7.2",
"theme-ui": "^0.16.1",
Expand Down
Loading

0 comments on commit 8653602

Please sign in to comment.