0.0.11 • Published 6 years ago
z-sandbox v0.0.11
A simple Sandbox implementation for JavaScript
Preview

Demo
How to use
Install from the npm
npm install z-sandbox
# or
yarn add z-sandboxUse in your code
import { createSandbox } from 'z-sandbox';
const sandboxOptions = {
    // default: false
    useStrict: false,
    // default: true
    inheritGlobal: true,
    // default: []
    blacklist: ['blacklistContent']
};
const context = {
    blacklistContent: "this content is in the blacklist, you can't get it in the sandbox",
    hello: 'hello z-sandbox'
};
const sandbox = createSandbox(context, sandboxOptions);
sandbox`
    // should be undefined
    console.log(blacklistContent);
    // should be undefined
    console.log(window.blacklistContent);
    // should be undefined
    console.log(this.blacklistContent);
    // should be undefined
    console.log(self.blacklistContent);
    // should be 'hello z-sandbox'
    console.log(hello);
    window.testInject = true;
    // should be true
    console.log(window.testInject);
`;
// should be undefined, false
console.log(window.testInject, 'testInject' in window);