postcss-normalize-unicode 8.0.0 → 8.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE-MIT +1 -1
- package/README.md +1 -1
- package/package.json +25 -8
- package/src/index.js +15 -11
- package/src/lib/computeBrowsersToSupport.js +37 -0
- package/src/lib/getBrowsersForWebBuild.js +35 -0
- package/types/index.d.ts +6 -20
- package/types/index.d.ts.map +1 -1
- package/types/lib/computeBrowsersToSupport.d.ts +20 -0
- package/types/lib/computeBrowsersToSupport.d.ts.map +1 -0
- package/types/lib/getBrowsersForWebBuild.d.ts +3 -0
- package/types/lib/getBrowsersForWebBuild.d.ts.map +1 -0
package/LICENSE-MIT
CHANGED
package/README.md
CHANGED
package/package.json
CHANGED
|
@@ -1,9 +1,23 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "postcss-normalize-unicode",
|
|
3
|
-
"version": "8.0.
|
|
3
|
+
"version": "8.0.2",
|
|
4
4
|
"description": "Normalize unicode-range descriptors, and can convert to wildcard ranges.",
|
|
5
|
-
"
|
|
6
|
-
|
|
5
|
+
"exports": {
|
|
6
|
+
".": {
|
|
7
|
+
"types": "./types/index.d.ts",
|
|
8
|
+
"default": "./src/index.js"
|
|
9
|
+
},
|
|
10
|
+
"./src": "./src/index.js",
|
|
11
|
+
"./src/index": "./src/index.js",
|
|
12
|
+
"./src/index.js": "./src/index.js",
|
|
13
|
+
"./package.json": "./package.json"
|
|
14
|
+
},
|
|
15
|
+
"imports": {
|
|
16
|
+
"#getBrowsersList": {
|
|
17
|
+
"node": "./src/lib/computeBrowsersToSupport.js",
|
|
18
|
+
"default": "./src/lib/getBrowsersForWebBuild.js"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
7
21
|
"files": [
|
|
8
22
|
"src",
|
|
9
23
|
"LICENSE-MIT",
|
|
@@ -19,11 +33,14 @@
|
|
|
19
33
|
"author": {
|
|
20
34
|
"name": "Ben Briggs",
|
|
21
35
|
"email": "beneb.info@gmail.com",
|
|
22
|
-
"url": "
|
|
36
|
+
"url": "https://beneb.info"
|
|
37
|
+
},
|
|
38
|
+
"repository": {
|
|
39
|
+
"type": "git",
|
|
40
|
+
"url": "cssnano/cssnano"
|
|
23
41
|
},
|
|
24
|
-
"repository": "cssnano/cssnano",
|
|
25
42
|
"dependencies": {
|
|
26
|
-
"browserslist": "^4.28.
|
|
43
|
+
"browserslist": "^4.28.7",
|
|
27
44
|
"postcss-value-parser": "^4.2.0"
|
|
28
45
|
},
|
|
29
46
|
"bugs": {
|
|
@@ -33,9 +50,9 @@
|
|
|
33
50
|
"node": "^22.11.0 || ^24.11.0 || >=26.0"
|
|
34
51
|
},
|
|
35
52
|
"devDependencies": {
|
|
36
|
-
"postcss": "^8.5.
|
|
53
|
+
"postcss": "^8.5.25"
|
|
37
54
|
},
|
|
38
55
|
"peerDependencies": {
|
|
39
|
-
"postcss": "^8.5.
|
|
56
|
+
"postcss": "^8.5.25"
|
|
40
57
|
}
|
|
41
58
|
}
|
package/src/index.js
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
|
-
|
|
3
|
-
const
|
|
2
|
+
|
|
3
|
+
const getBrowsersList = require('#getBrowsersList');
|
|
4
4
|
const valueParser = require('postcss-value-parser');
|
|
5
5
|
|
|
6
|
+
/** @import browserslist from 'browserslist' */
|
|
7
|
+
|
|
6
8
|
const regexLowerCaseUPrefix = /^u(?=\+)/;
|
|
9
|
+
const unicodeRangeRegex = /^unicode-range$/i;
|
|
7
10
|
|
|
8
11
|
/**
|
|
9
12
|
* @param {string} range
|
|
@@ -66,7 +69,7 @@ function mergeRangeBounds(left, right) {
|
|
|
66
69
|
* @return {boolean}
|
|
67
70
|
*/
|
|
68
71
|
function hasLowerCaseUPrefixBug(browser) {
|
|
69
|
-
return
|
|
72
|
+
return getBrowsersList('ie <=11, edge <= 15').includes(browser);
|
|
70
73
|
}
|
|
71
74
|
|
|
72
75
|
/**
|
|
@@ -100,7 +103,7 @@ function transform(value, isLegacy = false) {
|
|
|
100
103
|
* @param {Options} opts
|
|
101
104
|
* @return {import('postcss').Plugin}
|
|
102
105
|
*/
|
|
103
|
-
function pluginCreator(opts = {}) {
|
|
106
|
+
function pluginCreator(/** @type {Options} */ opts = {}) {
|
|
104
107
|
return {
|
|
105
108
|
postcssPlugin: 'postcss-normalize-unicode',
|
|
106
109
|
|
|
@@ -109,18 +112,17 @@ function pluginCreator(opts = {}) {
|
|
|
109
112
|
*/
|
|
110
113
|
prepare(result) {
|
|
111
114
|
const { stats, env, from, file } = result.opts || {};
|
|
112
|
-
const browsers =
|
|
113
|
-
stats: opts.stats || stats,
|
|
114
|
-
path: opts.path || dirname(from || file || __filename),
|
|
115
|
-
env: opts.env || env,
|
|
116
|
-
});
|
|
115
|
+
const browsers = getBrowsersList(null, opts, stats, from, file, env);
|
|
117
116
|
|
|
118
117
|
const cache = new Map();
|
|
119
118
|
const isLegacy = browsers.some(hasLowerCaseUPrefixBug);
|
|
120
119
|
|
|
121
120
|
return {
|
|
121
|
+
/**
|
|
122
|
+
* @param {import('postcss').Root} css
|
|
123
|
+
*/
|
|
122
124
|
OnceExit(css) {
|
|
123
|
-
css.walkDecls(
|
|
125
|
+
css.walkDecls(unicodeRangeRegex, (decl) => {
|
|
124
126
|
const value = decl.value;
|
|
125
127
|
|
|
126
128
|
if (cache.has(value)) {
|
|
@@ -141,4 +143,6 @@ function pluginCreator(opts = {}) {
|
|
|
141
143
|
}
|
|
142
144
|
|
|
143
145
|
pluginCreator.postcss = true;
|
|
144
|
-
module.exports =
|
|
146
|
+
module.exports = /** @type {import('postcss').PluginCreator<Options>}*/ (
|
|
147
|
+
pluginCreator
|
|
148
|
+
);
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const browserslist = require('browserslist');
|
|
4
|
+
const { dirname } = require('node:path');
|
|
5
|
+
|
|
6
|
+
/** @typedef {{overrideBrowserslist?: string | string[] | undefined, stats?: browserslist.Options["stats"], path?: browserslist.Options["path"], env?: browserslist.Options["env"]}} OurOptions
|
|
7
|
+
/**
|
|
8
|
+
* @param {string | null} [query]
|
|
9
|
+
* @param {OurOptions} [options]
|
|
10
|
+
* @param {browserslist.Options["stats"]} [stats]
|
|
11
|
+
* @param {string|undefined} [from]
|
|
12
|
+
* @param {string} [file]
|
|
13
|
+
* @param {browserslist.Options["env"]} [env]
|
|
14
|
+
* @returns {string[]}
|
|
15
|
+
*/
|
|
16
|
+
module.exports = function computeBrowsersToSupport(
|
|
17
|
+
query,
|
|
18
|
+
options,
|
|
19
|
+
stats,
|
|
20
|
+
from,
|
|
21
|
+
file,
|
|
22
|
+
env
|
|
23
|
+
) {
|
|
24
|
+
if (!query) {
|
|
25
|
+
return browserslist(
|
|
26
|
+
/** @type {OurOptions} */ (options).overrideBrowserslist,
|
|
27
|
+
{
|
|
28
|
+
stats: /** @type {OurOptions} */ (options).stats || stats,
|
|
29
|
+
path:
|
|
30
|
+
/** @type {OurOptions} */ (options).path ||
|
|
31
|
+
dirname(from || file || __filename),
|
|
32
|
+
env: /** @type {OurOptions} */ (options).env || env,
|
|
33
|
+
}
|
|
34
|
+
);
|
|
35
|
+
}
|
|
36
|
+
return browserslist(query);
|
|
37
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
module.exports = function () {
|
|
4
|
+
return [
|
|
5
|
+
'and_chr 150',
|
|
6
|
+
'and_ff 152',
|
|
7
|
+
'and_qq 14.9',
|
|
8
|
+
'and_uc 15.5',
|
|
9
|
+
'android 150',
|
|
10
|
+
'chrome 150',
|
|
11
|
+
'chrome 149',
|
|
12
|
+
'chrome 148',
|
|
13
|
+
'chrome 118',
|
|
14
|
+
'chrome 109',
|
|
15
|
+
'edge 150',
|
|
16
|
+
'edge 149',
|
|
17
|
+
'edge 148',
|
|
18
|
+
'firefox 152',
|
|
19
|
+
'firefox 151',
|
|
20
|
+
'firefox 140',
|
|
21
|
+
'ios_saf 26.5',
|
|
22
|
+
'ios_saf 26.4',
|
|
23
|
+
'ios_saf 26.3',
|
|
24
|
+
'ios_saf 18.5-18.7',
|
|
25
|
+
'kaios 3.0-3.1',
|
|
26
|
+
'op_mob 80',
|
|
27
|
+
'opera 131',
|
|
28
|
+
'opera 127',
|
|
29
|
+
'safari 26.5',
|
|
30
|
+
'safari 26.4',
|
|
31
|
+
'safari 26.3',
|
|
32
|
+
'samsung 30',
|
|
33
|
+
'samsung 29',
|
|
34
|
+
];
|
|
35
|
+
};
|
package/types/index.d.ts
CHANGED
|
@@ -1,23 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
* @typedef {AutoprefixerOptions & BrowserslistOptions} Options
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* @type {import('postcss').PluginCreator<Options>}
|
|
9
|
-
* @param {Options} opts
|
|
10
|
-
* @return {import('postcss').Plugin}
|
|
11
|
-
*/
|
|
12
|
-
declare function pluginCreator(opts?: Options): import("postcss").Plugin;
|
|
13
|
-
declare namespace pluginCreator {
|
|
14
|
-
export { postcss, AutoprefixerOptions, BrowserslistOptions, Options };
|
|
15
|
-
}
|
|
16
|
-
declare var postcss: true;
|
|
17
|
-
type AutoprefixerOptions = {
|
|
1
|
+
declare const _exports: import("postcss").PluginCreator<Options>;
|
|
2
|
+
export = _exports;
|
|
3
|
+
import type browserslist from 'browserslist';
|
|
4
|
+
export type AutoprefixerOptions = {
|
|
18
5
|
overrideBrowserslist?: string | string[];
|
|
19
6
|
};
|
|
20
|
-
type BrowserslistOptions = Pick<browserslist.Options,
|
|
21
|
-
type Options = AutoprefixerOptions & BrowserslistOptions;
|
|
22
|
-
import browserslist = require("browserslist");
|
|
7
|
+
export type BrowserslistOptions = Pick<browserslist.Options, 'stats' | 'path' | 'env'>;
|
|
8
|
+
export type Options = AutoprefixerOptions & BrowserslistOptions;
|
|
23
9
|
//# sourceMappingURL=index.d.ts.map
|
package/types/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":";;AAKI,OAAQ,KAAA,YAAY,MAAM,cAAc,CAAA;AA0FzC,YAAwD,mBAAmB,GAAjE;IAAE,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CAAE,CAAqB;AAC3E,YAAgE,mBAAmB,GAAzE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC,CAAqB;AACnF,YAAqD,OAAO,GAAlD,mBAAmB,GAAG,mBAAmB,CAAS"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export = computeBrowsersToSupport;
|
|
2
|
+
/** @typedef {{overrideBrowserslist?: string | string[] | undefined, stats?: browserslist.Options["stats"], path?: browserslist.Options["path"], env?: browserslist.Options["env"]}} OurOptions
|
|
3
|
+
/**
|
|
4
|
+
* @param {string | null} [query]
|
|
5
|
+
* @param {OurOptions} [options]
|
|
6
|
+
* @param {browserslist.Options["stats"]} [stats]
|
|
7
|
+
* @param {string|undefined} [from]
|
|
8
|
+
* @param {string} [file]
|
|
9
|
+
* @param {browserslist.Options["env"]} [env]
|
|
10
|
+
* @returns {string[]}
|
|
11
|
+
*/
|
|
12
|
+
declare function computeBrowsersToSupport(query?: string | null, options?: OurOptions, stats?: browserslist.Options["stats"], from?: string | undefined, file?: string, env?: browserslist.Options["env"]): string[];
|
|
13
|
+
import browserslist = require('browserslist');
|
|
14
|
+
export type OurOptions = {
|
|
15
|
+
overrideBrowserslist?: string | string[] | undefined;
|
|
16
|
+
stats?: browserslist.Options["stats"];
|
|
17
|
+
path?: browserslist.Options["path"];
|
|
18
|
+
env?: browserslist.Options["env"];
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=computeBrowsersToSupport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"computeBrowsersToSupport.d.ts","sourceRoot":"","sources":["../../src/lib/computeBrowsersToSupport.js"],"names":[],"mappings":";AAKA;;;;;;;;;GASG;0CAED,KAAK,AATJ,CACA,EADQ,MAAM,GAAG,IASb,EACL,OAAO,AATN,CACA,EADQ,UASF,EACP,KAAK,AATJ,CACA,EADQ,YAAY,CAAC,OAAO,CAAC,OAAO,CAShC,EACL,IAAI,AATH,CACA,EADQ,MAAM,GAAC,SASZ,EACJ,IAAI,AATH,CACA,EADQ,MASL,EACJ,GAAG,AATF,CACA,EADQ,YAAY,CAAC,OAAO,CAAC,KAAK,CAShC,GARQ,MAAM,EAAE;OAXf,YAAY,WAAW,cAAc;AAGvC,YAAiL,UAAU,GAAjL;IAAC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAAC,IAAI,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAAC,GAAG,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;CAAC,CAEhL"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getBrowsersForWebBuild.d.ts","sourceRoot":"","sources":["../../src/lib/getBrowsersForWebBuild.js"],"names":[],"mappings":""}
|