pipeline {
    agent any

    tools {
        nodejs 'NodeJS'
    }

    stages {
        stage('Checkout') {
            steps {
                checkout scm
            }
        }

        stage('Install Dependencies') {
            steps {
                dir('birthday_web_ui') {
                    sh 'npm install'
                }
            }
        }

        stage('Lint') {
            steps {
                dir('birthday_web_ui') {
                    sh 'npm run lint'
                }
            }
        }

        stage('Build') {
            steps {
                dir('birthday_web_ui') {
                    sh 'npm run build'
                }
            }
        }
    }

    post {
        success {
            echo 'Build successful!'
        }
        failure {
            echo 'Build failed!'
        }
    }
}
