diff --git a/examples/index.js b/examples/index.js
index f3075ea..afc83c4 100644
--- a/examples/index.js
+++ b/examples/index.js
@@ -1,12 +1,11 @@
// @ts-check
-const { Edge } = require('..')
+const edge = require('..').default
const { join } = require('path')
const http = require('http')
-const edge = new Edge()
-
http.createServer((req, res) => {
edge.mount(join(__dirname, './views'))
+ res.writeHead(200, { 'content-type': 'text/html' })
res.end(edge.render('user', { title: 'Hello' }))
}).listen(3000)
diff --git a/examples/views/user.edge b/examples/views/user.edge
index a7436af..059c82b 100644
--- a/examples/views/user.edge
+++ b/examples/views/user.edge
@@ -1,7 +1,17 @@
-@debugger
-@component('alert', title = 'Hey')
- @slot('title', props)
- @include('partial')
- @endslot
-@endcomponent
-@!component('alert', title = 'Wow')
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+ @set('user', { username: 'virk' })
+
+ {{ inspect($state, 1) }}
+
+
diff --git a/index.ts b/index.ts
index dc39201..1eb9f91 100644
--- a/index.ts
+++ b/index.ts
@@ -8,6 +8,7 @@
*/
import { Edge } from './src/Edge'
+import globals from './src/Edge/globals'
export {
LoaderContract,
@@ -29,4 +30,6 @@ export {
export { Edge }
const edge = new Edge()
+globals(edge)
+
export default edge
diff --git a/package-lock.json b/package-lock.json
index 01613d1..ec07dd4 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1561,6 +1561,7 @@
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
"integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
+ "dev": true,
"requires": {
"ms": "^2.1.1"
}
@@ -4369,7 +4370,8 @@
"ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
},
"mustache": {
"version": "3.1.0",
@@ -4435,11 +4437,6 @@
"integrity": "sha512-SrQrok4CATudVzBS7coSz26QRSmlK9TzzoFbeKfcPBUFPjcQM9Rqvr/DlJkOrwI/0KcgvMub1n1g5Jt9EgRn4A==",
"dev": true
},
- "node-exceptions": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/node-exceptions/-/node-exceptions-4.0.1.tgz",
- "integrity": "sha512-KJI+FawYOv74x60H6+zrBPfO2vvp9m0pHZi6SH8BBBuc67Irv11DsqY4Le4EBFq1/T5aXFU3hkLrMgtW7RNXxA=="
- },
"normalize-package-data": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
diff --git a/package.json b/package.json
index 733d936..676acc8 100644
--- a/package.json
+++ b/package.json
@@ -70,14 +70,12 @@
},
"dependencies": {
"@poppinss/utils": "^2.1.2",
- "debug": "^4.1.1",
"edge-error": "^1.0.4",
"edge-parser": "^2.1.1",
"he": "^1.2.0",
"import-fresh": "^3.2.1",
"lodash": "^4.17.15",
- "macroable": "^4.0.2",
- "node-exceptions": "^4.0.1"
+ "macroable": "^4.0.2"
},
"gitHooks": {
"commit-msg": "node ./node_modules/@adonisjs/mrm-preset/validateCommit/conventional/validate.js"
diff --git a/src/Edge/globals/index.ts b/src/Edge/globals/index.ts
new file mode 100644
index 0000000..a4f7b45
--- /dev/null
+++ b/src/Edge/globals/index.ts
@@ -0,0 +1,30 @@
+/**
+ * @module edge
+ */
+
+/*
+* edge
+*
+* (c) Harminder Virk
+*
+* For the full copyright and license information, please view the LICENSE
+* file that was distributed with this source code.
+*/
+
+import { inspect as utilInspect } from 'util'
+import { EdgeContract, ContextContract } from '../../Contracts'
+
+/**
+ * Inspect value.
+ */
+function inspect (ctx: ContextContract, valueToInspect: any, depth: number = 1) {
+ return ctx.safe(`${utilInspect(valueToInspect, {
+ showHidden: true,
+ compact: false,
+ depth: depth,
+ })}
`)
+}
+
+export default function globals (edge: EdgeContract) {
+ edge.global('inspect', inspect)
+}