0.0.3 • Published 4 months ago

@environment-safe/execution v0.0.3

Weekly downloads
-
License
MIT
Repository
github
Last release
4 months ago

@environment-safe/execution

This is for cross environment js code execution, and should best be avoided.

Exports are intentionally cryptic to discourage usage.

Usage

Function

import { ᝪ as Function } from '@environment-safe/execution';
const fn = new Function('return 5');
const value = fn();
// value === 5

Script

import { ଠ as Script } from '@environment-safe/execution';
const script = new Script('foo = 5');
const context = {};
script.run(context);
//context.foo === 5

createWorker

import { ᱛ as createWorker } from '@environment-safe/execution';
const worker = createWorker(`
    self.onmessage = function(e) {
        self.postMessage('pong:' + e.data);
    };
`);
worker.onmessage = (e)=>{
    // e.data === 'pong: ping';
};
worker.postMessage('ping');

global

import { ↂ as globals } from '@environment-safe/execution';
// globals is window in the browser and global in node

Testing

Run the es module tests to test the root modules

npm run import-test

to run the same test inside the browser:

npm run browser-test

to run the same test headless in chrome:

npm run headless-browser-test

to run the same test inside docker:

npm run container-test

Run the commonjs tests against the /dist commonjs source (generated with the build-commonjs target).

npm run require-test

Development

All work is done in the .mjs files and will be transpiled on commit to commonjs and tested.

If the above tests pass, then attempt a commit which will generate .d.ts files alongside the src files and commonjs classes in dist

0.0.3

4 months ago

0.0.2

4 months ago

0.0.1

9 months ago