Package Exports
- @proliance-ai/prefix-ts
Readme
prefix-ts
Get the vendors prefixes of a css properties, according to caniuse data.
Getting Started
Install the module with: npm install prefix-ts or yarn add prefix-ts
Include it in your scripts with: prefixTs = require( "prefix-ts" ); or import * as prefixTs from "prefix-ts";
Documentation
The prefixTs function returns an array with the prefixes to use for the given browser(s) versions (it always returns an array, even empty).
The prefixes are reverse-ordered by length (longest prefix first).
The prefix-ts module exposes a function that can be called by two different options types.
type PrefixTs = (options: SingleBrowserOptions | MultipleBrowserOptions) => string[];Single browser options
type SingleBrowserOptions = {
feature: string;
browser: string;
version_range?: string;
};featureis the name of the feature on caniuse website (look at the feat hash value in the URL).browseris the name of the browser (or it's alias) to examine.version_rangeis a semver version range to examine. Default to'*'.
Multiple browsers options
type MultipleBrowserOptions = {
feature: string;
browsers: Record<string, string>;
};featureis the name of the feature on caniuse website (look at the feat hash value in the URL).browsersis an object of browsers/version to examine, like :
const browsers = {
"Internet Explorer": 9,
"chrome": "<=30",
"firefox": ">28",
"opera": "*"
}browser's aliases
The supported values for browser argument are listed bellow. These are case insensitive.
ie,internet explorer,internet-explorer,internet_explorer,internetexplorerfirefox,ffchromesafarioperaios_saf,ios,ios-safariop_mini,opera-mini,opera_mini,operaminiandroid,android-browserop_mob,opera-mobile,operamobile,opera_mobilebb,blackberry,blackberry-browserand_chr,android-chrome,android_chrome,androidchromeand_ff,android-firefox,android_firefox,androidfirefoxie_mob,ie-mobile,ie_mobile,iemobile
Contributing
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality.
TODO
- Add more browsers aliases
- Add more test cases
- AMD implementation
Release History
prefix-ts
- 1.0.0: Typescript support (07/12/2023)
- Replaced
CoffeeScriptwithTypeScript - Replaced
babelbundling withvite - Replaced deprecated
nodeunittesting library withvitest - Updated dependencies to latest versions
- Removed
lodashdependency
- Replaced
prefix
- 0.3.0: Sorting prefixes by length (14/07/14)
- 0.2.0: Multiple browser form (14/07/14)
- 0.1.0: Initial release (11/07/14)
License
Copyright (c) 2023 Proliance GmbH
Licensed under the MIT license.