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/html/laravel/node_modules/resolve-protobuf-schema/index.js
var schema = require('protocol-buffers-schema')
var fs = require('fs')
var path = require('path')

var merge = function(a, b) {
  a.messages = a.messages.concat(b.messages)
  a.enums = a.enums.concat(b.enums)
  return a
}

var readSync = function(filename) {
  if (!/\.proto$/i.test(filename) && !fs.existsSync(filename)) filename += '.proto'

  var sch = schema(fs.readFileSync(filename, 'utf-8'))
  var imports = [].concat(sch.imports || [])

  imports.forEach(function(i) {
    sch = merge(sch, readSync(path.resolve(path.dirname(filename), i)))
  })

  return sch
}

var read = function(filename, cb) {
  fs.exists(filename, function(exists) {
    if (!exists && !/\.proto$/i.test(filename)) filename += '.proto'

    fs.readFile(filename, 'utf-8', function(err, proto) {
      if (err) return cb(err)

      var sch = schema(proto)
      var imports = [].concat(sch.imports || [])

      var loop = function() {
        if (!imports.length) return cb(null, sch)

        read(path.resolve(path.dirname(filename), imports.shift()), function(err, ch) {
          if (err) return cb(err)
          sch = merge(sch, ch)
          loop()
        })
      }

      loop()
    })
  })
}

module.exports = read
module.exports.sync = readSync