Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

tp-platform

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

tp-platform

Match the current platform and get the platform parameters and execute the initialization process.

  • 1.0.4
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

tp-platform

Build Status Coverage Status npm version monthly downloads code style: prettier semantic-release UNPKG liense

Intro

Match the current platform and get the platform parameters and execute the initialization process.

tp-platform = detect-platform + get-platform-setting + customer-initialize-platform

Example

import { Platform, setupPlatform, mergeConfigs, PLATFORM_CONFIGS } from 'tp-platform';

const plt = setupPlatform({
  // configs
});

plt.platforms(); // ["core", "desktop", "mac", "web"]
plt.settings(); // {mode: "md", hoverCSS: true}
plt.versions(); // {}
console.log(plt.is('ios')); // false
console.log(plt.is('desktop')); // true

Install

NPM Badge

API

All exports here.

import { Platform, setupPlatform, mergeConfigs, PLATFORM_CONFIGS } from 'tp-platform';

new Platform(platformConfigs: PlatformConfigs)

The Platform service can be used to get information about your current device. You can get all of the platforms associated with the device using the platforms method, including whether the app is being viewed from a tablet, if it's on a mobile device or browser, and the exact platform (iOS, Android, Windows, etc). You can also get the orientation of the device, if it uses right-to-left language direction, and much much more. With this information you can completely customize your app to fit any device.

Here is the doc of Instance Members!

setupPlatform(platformConfigs: PlatformConfigs)

Setup platform with default platform configs.

  • @param {PlatformConfigs} platformConfigs - The configs to match platforms
  • @return {Platform} - Return platform instance

The code like this:

function setupPlatform(platformConfigs: PlatformConfigs): Platform {
  const _finalConf = mergeConfigs(PLATFORM_CONFIGS, platformConfigs);
  return new Platform(_finalConf);
}

mergeConfigs(defConfig: PlatformConfigs, custConfig: PlatformConfigs)

Merge Parameters, and the priority is:

  1. Custom parameters have higher priority than the default configuration, such as core configuration, custom priority is higher than the default.
  2. In the plt.platforms() array, the more advanced Platform parameters, the higher the priority is, for example: core < mobile < ios < iphone < cordova.
  3. The plain object will use assign to collect params, other types of parameters will be replaced directly.
  • @param {PlatformConfigs} defConfig - The dist configs
  • @param {PlatformConfigs} custConfig - The customer configs
  • @return {PlatformConfigs}

PLATFORM_CONFIGS

Default parameters for platform configuration, Including the common platform configuration. Here is the code.

Development

  • npm t: Run test suite
  • npm start: Run npm run build in watch mode
  • npm run test:watch: Run test suite in interactive watch mode
  • npm run test:prod: Run linting and generate coverage
  • npm run build: Generate bundles and typings, create docs
  • npm run lint: Lints code
  • npm run commit: Commit using conventional commit style (husky will tell you to use it if you haven't :wink:)

Reference

License

MIT

Keywords

FAQs

Package last updated on 23 Apr 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

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