Skip to content

Commit

Permalink
Merge pull request #37 from canjs/is-web-worker
Browse files Browse the repository at this point in the history
Is web worker
  • Loading branch information
justinbmeyer committed Jan 4, 2018
2 parents 4ea9c8d + 843901d commit b4e29bf
Show file tree
Hide file tree
Showing 5 changed files with 48 additions and 43 deletions.
16 changes: 0 additions & 16 deletions build.js

This file was deleted.

10 changes: 10 additions & 0 deletions is-web-worker/is-web-worker-test.js
@@ -0,0 +1,10 @@
'use strict';

var QUnit = require('../../test-wrapper');
var isWebWorker = require('./is-web-worker');

QUnit.module("can-globals/is-web-worker/is-web-worker");

QUnit.test("basics", function(){
equal(typeof isWebWorker(), "boolean");
});
35 changes: 35 additions & 0 deletions is-web-worker/is-web-worker.js
@@ -0,0 +1,35 @@
'use strict';

var globals = require('can-globals/can-globals-instance');

/* globals WorkerGlobalScope */
// A bit of weirdness to avoid complaining linters
var funcConstructor = Function;


/**
* @module {function} can-globals/is-browser-window/is-web-worker is-web-worker
* @parent can-globals/modules
* @signature `isWebWorker()`
*
* Returns `true` if the code is running within a [web worker](https://developer.mozilla.org/en-US/docs/Web/API/Worker).
*
* ```js
* var isWebWorker = require("can-globals/is-web-worker/is-web-worker");
* var GLOBAL = require("can-globals/global/global");
*
* if(isWebWorker()) {
* ...
* }
* ```
*
* @return {Boolean} True if the environment is a web worker.
*/

globals.define('isWebWorker', function(){
var global = funcConstructor('return this')();
return typeof WorkerGlobalScope !== "undefined" &&
(global instanceof WorkerGlobalScope);
});

module.exports = globals.makeExport('isWebWorker');
29 changes: 2 additions & 27 deletions package.json
Expand Up @@ -4,9 +4,8 @@
"description": "This module provides a dependency injection container. Modules may define a key and specify a default value (which can be static, cached lazy, or dynamic lazy), but other code can set and reset the value as needed. There is also an event system, for alerting on value changes, both specific to a key and for any key.",
"main": "can-globals.js",
"scripts": {
"preversion": "npm test && npm run build",
"version": "git commit -am \"Update dist for release\" && git checkout -b release && git add -f dist/",
"postversion": "git push --tags && git checkout master && git branch -D release && git push",
"preversion": "npm test",
"postpublish": "git push --tags && git push",
"testee": "testee test.html --browsers firefox",
"test": "npm run detect-cycle && npm run jshint && npm run testee",
"jshint": "jshint ./*.js --config",
Expand All @@ -15,7 +14,6 @@
"release:minor": "npm version minor && npm publish",
"release:major": "npm version major && npm publish",
"document": "bit-docs",
"build": "node build.js",
"detect-cycle": "detect-cyclic-packages --ignore done-serve"
},
"repository": {
Expand Down Expand Up @@ -45,35 +43,12 @@
"can-symbol": "^1.0.0"
},
"devDependencies": {
"bit-docs": "0.0.7",
"detect-cyclic-packages": "^1.1.0",
"jshint": "^2.9.5",
"qunitjs": "^2.4.0",
"steal": "^1.5.6",
"steal-qunit": "^1.0.1",
"steal-tools": "^1.7.0",
"testee": "^0.7.0"
},
"bit-docs": {
"dependencies": {
"bit-docs-glob-finder": "^0.0.5",
"bit-docs-dev": "^0.0.3",
"bit-docs-js": "^0.0.3",
"bit-docs-generate-readme": "^0.0.8"
},
"glob": {
"pattern": "**/*.{js,md}",
"ignore": [
"node_modules/**/*",
"**/*{-,_,}{test,qunit}{s,}.js",
"build.js",
"demo.js",
"test-wrapper.js"
]
},
"readme": {
"apis": "./doc/apis.json"
},
"parent": "can-globals"
}
}
1 change: 1 addition & 0 deletions test.js
Expand Up @@ -3,4 +3,5 @@ require('./can-globals-test');
require('./global/global-test');
require('./location/location-test');
require('./is-browser-window/is-browser-window-test');
require('./is-web-worker/is-web-worker-test');
require('./is-node/is-node-test');

0 comments on commit b4e29bf

Please sign in to comment.