HEX
Server: nginx/1.18.0
System: Linux test-ipsremont 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
User: ips (1000)
PHP: 8.0.30
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/quadcode/frontend/node_modules/tailwindcss/scripts/build-plugins.js
let fs = require('fs')
let path = require('path')

let plugins = fs.readdirSync(fromRootPath('plugins'))

for (let plugin of plugins) {
  // Cleanup
  let pluginDest = fromRootPath(plugin)
  if (fs.existsSync(pluginDest)) {
    fs.rmdirSync(pluginDest, { recursive: true })
  }

  // Copy plugin over
  copyFolder(fromRootPath('plugins', plugin), pluginDest, (file) => {
    // Ignore test files
    if (file.endsWith('.test.js')) return false
    // Ignore postcss7 files
    if (file.endsWith('.postcss7.js')) return false
    // Ignore postcss8 files
    if (file.endsWith('.postcss8.js')) return false

    return true
  })
}

// ---

function fromRootPath(...paths) {
  return path.resolve(process.cwd(), ...paths)
}

function copy(fromPath, toPath) {
  fs.mkdirSync(path.dirname(toPath), { recursive: true }) // Ensure folder exists
  fs.copyFileSync(fromPath, toPath)
}

function copyFolder(fromPath, toPath, shouldCopy = () => true) {
  let stats = fs.statSync(fromPath)
  if (stats.isDirectory()) {
    let filesAndFolders = fs.readdirSync(fromPath)
    for (let file of filesAndFolders) {
      copyFolder(path.resolve(fromPath, file), path.resolve(toPath, file), shouldCopy)
    }
  } else if (shouldCopy(fromPath)) {
    copy(fromPath, toPath)
  }
}