@lunoxjs/core
Version:
Laravel-Flavoured NodeJs framework
2 lines (1 loc) • 1.41 kB
JavaScript
import{j as i,d as p,b as n}from"./ViewFactory-bbd4d106.mjs";import l from"path";import{fileURLToPath as c}from"url";import b from"crypto";import s from"fs";import{isProxy as g}from"util/types";import"pluralize";import"dotenv";import"@kodepandai/node-input-validator";import"cookie";import"express-session";global.get_current_dir=o=>l.dirname(c(o)),global.base_path=o=>app().basePath(o),global.config=(o="",t)=>app("config").get(o,t),global.storage_path=o=>app().storagePath(o),global.redirect=o=>new i(o),global.back=()=>new i("__back"),global.sha1=o=>b.createHash("sha1").update(o).digest("hex"),global.stub_path=(o="")=>l.join(get_current_dir(import.meta.url),"..","stub",o),global.lunox_path=(o="")=>l.join(get_current_dir(import.meta.url),o),global.abort=(o,t="",a={})=>app().abort(o,t,a),global.is_class=o=>typeof o=="function"&&(/^class(\s|\{)/.test(o+"")||g(o)),global.walkDir=async o=>{let t=[];const a=s.readdirSync(o);return await Promise.all(a.map(async r=>{if(s.lstatSync(l.join(o,r)).isDirectory()){const e=await walkDir(l.join(o,r));t=t.concat(e);return}t=t.concat(l.join(o,r))})),t},global.get_class_methods=o=>{let t=o,a=[],r=!0;for(;r;){const e=Object.getOwnPropertyNames(Object.getPrototypeOf(t));r=!e.includes("__proto__"),r&&(a=[...a,...e],t=Object.getPrototypeOf(t))}return[...new Set(a)].filter(e=>e!="constructor")},global.request=()=>app(p.symbol),global.session=()=>app(n.symbol);