name: Set and restore cache
author: Bolt lee
description: 'Prepare js application'
inputs:
  key:
    description: 'Unique key for cache'
    required: false
    default: ${{ github.sha }}

runs:
  using: "composite"
  steps:
  - uses: actions/cache@v4
    with:
      path: ~/.npm
      key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
      restore-keys: |
        ${{ runner.os }}-node-
