name: "Setup ts"
description: "Setup ts"
runs:
  using: "composite"
  steps:
      - uses: actions/setup-node@v2
        with:
          node-version: ${{ env.NODE_VERSION }}
      - uses: actions/cache@v2
        name: Cache Typescript node_modules
        id: cache-typescript-node-modules
        with:
          path: |
            ./ts/node_modules/
          key: solana-${{ runner.os }}-v0000-${{ env.NODE_VERSION }}-${{ hashFiles('./ts/**/yarn.lock') }}
      - uses: actions/cache@v2
        name: Cache Typescript Dist
        id: cache-typescript-dist
        with:
          path: |
            ./ts/dist/
          key: solana-${{ runner.os }}-v0000-${{ env.NODE_VERSION }}-${{ hashFiles('./ts/**/*.ts') }}  
      - run: cd ts/packages/anchor && yarn --frozen-lockfile && yarn build:node && yarn link && cd ../../../
        shell: bash
      - run: cd examples/tutorial && yarn link @project-serum/anchor && yarn --frozen-lockfile && cd ../../
        shell: bash
      - run: cd tests && yarn link @project-serum/anchor && yarn --frozen-lockfile && cd ..
        shell: bash
        
