Socket
Socket
Sign inDemoInstall

universal-env

Package Overview
Dependencies
Maintainers
4
Versions
117
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

universal-env - npm Package Compare versions

Comparing version 1.0.1 to 1.0.2

2

lib/index.d.ts

@@ -6,1 +6,3 @@ export declare const isMiniApp: boolean;

export declare const isReactNative: boolean;
export declare const isAndroid: boolean;
export declare const isIOS: boolean;
"use strict";
exports.__esModule = true;
exports.isReactNative = exports.isWeex = exports.isNode = exports.isWeb = exports.isMiniApp = void 0;
exports.isIOS = exports.isAndroid = exports.isReactNative = exports.isWeex = exports.isNode = exports.isWeb = exports.isMiniApp = void 0;
var isWebPure = typeof navigator === 'object' && (navigator.appCodeName === 'Mozilla' || navigator.product === 'Gecko');

@@ -15,2 +15,35 @@ var isMiniApp = typeof my === 'object' && typeof my.getSystemInfo !== 'undefined';

var isReactNative = typeof __fbBatchedBridgeConfig !== 'undefined';
exports.isReactNative = isReactNative;
exports.isReactNative = isReactNative;
var miniAppSystemInfo = {};
if (isMiniApp) {
miniAppSystemInfo = my.getSystemInfoSync();
}
var isAndroid = function () {
if (isMiniApp) {
return ['Android', 'android'].includes(miniAppSystemInfo.platform);
} else if (isWeex) {
return navigator.platform.toLowerCase() === 'android';
} else if (isWeb) {
return Boolean(navigator.userAgent.match(/android/i));
}
return false;
}();
exports.isAndroid = isAndroid;
var isIOS = function () {
if (isMiniApp) {
return ['iPhone OS', 'iOS'].includes(miniAppSystemInfo.platform);
} else if (isWeex) {
return navigator.platform.toLowerCase() === 'ios';
} else if (isWeb) {
return Boolean(navigator.userAgent.match(/(iphone|ipod|ipad)/i));
}
return false;
}();
exports.isIOS = isIOS;

7

package.json
{
"name": "universal-env",
"author": "rax",
"version": "1.0.1",
"version": "1.0.2",
"license": "BSD-3-Clause",
"main": "lib/index.js",
"types": "lib/index.d.ts",
"miniappConfig": {
"main": "lib/index.js"
},
"scripts": {

@@ -48,3 +45,3 @@ "start": "rax-scripts start --type 'component' -p 8000",

},
"homepage": "https://github.com/alibaba/rax#readme"
"homepage": "https://github.com/raxjs/universal-env"
}

@@ -21,6 +21,6 @@ # universal-env [![npm](https://img.shields.io/npm/v/universal-env.svg)](https://www.npmjs.com/package/universal-env)

### `isWeex: boolean`
校验weex环境
校验 Weex 环境
### `isWeb: boolean`
校验web环境
校验 Web 环境

@@ -31,5 +31,11 @@ ### `isMiniApp: boolean`

### `isReactNative: boolean`
校验React Native环境
校验 React Native 环境
### `isNode: boolean`
校验Node.js环境
校验 Node.js 环境
### `isAndroid: boolean`
校验 Android 环境
### `isIOS: boolean`
校验 iOS 环境

@@ -34,1 +34,7 @@ # universal-env [![npm](https://img.shields.io/npm/v/universal-env.svg)](https://www.npmjs.com/package/universal-env)

Checks if environment is a Node.js environment.
### `isAndroid: boolean`
Checks if environment is a android environment.
### `isIOS: boolean`
Checks if environment is a iOS environment.
// eslint-disable-next-line
(global as any).my = {
getSystemInfo: () => {}
getSystemInfo: () => {},
getSystemInfoSync: () => {
return {
platform: 'android'
};
}
};

@@ -12,2 +17,14 @@

});
it('Is android mini app environment', (): void => {
// eslint-disable-next-line
const { isAndroid } = require('../index');
expect(isAndroid).toBeTruthy();
});
it('Is not iOS mini app environment', (): void => {
// eslint-disable-next-line
const { isIOS } = require('../index');
expect(isIOS).toBe(false);
});
});

@@ -13,1 +13,28 @@ // https://www.w3.org/TR/html5/webappapis.html#dom-navigator-appcodename

export const isReactNative: boolean = typeof __fbBatchedBridgeConfig !== 'undefined';
let miniAppSystemInfo: any = {};
if (isMiniApp) {
miniAppSystemInfo = my.getSystemInfoSync();
}
export const isAndroid = (() => {
if (isMiniApp) {
return ['Android', 'android'].includes(miniAppSystemInfo.platform);
} else if (isWeex) {
return navigator.platform.toLowerCase() === 'android';
} else if (isWeb) {
return Boolean(navigator.userAgent.match(/android/i));
}
return false;
})();
export const isIOS = (() => {
if (isMiniApp) {
return ['iPhone OS', 'iOS'].includes(miniAppSystemInfo.platform);
} else if (isWeex) {
return navigator.platform.toLowerCase() === 'ios';
} else if (isWeb) {
return Boolean(navigator.userAgent.match(/(iphone|ipod|ipad)/i));
}
return false;
})();

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc