@tamagui/normalize-css-color 1.1.11 → 1.1.13
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/dist/cjs/index.js +6 -3
- package/dist/cjs/index.js.map +3 -3
- package/dist/cjs/names.js +5 -2
- package/dist/cjs/names.js.map +2 -2
- package/dist/esm/index.js +5 -3
- package/dist/esm/index.js.map +3 -3
- package/dist/esm/names.js +5 -2
- package/dist/esm/names.js.map +2 -2
- package/package.json +2 -2
- package/src/index.ts +5 -4
- package/src/names.ts +7 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -0
- package/types/names.d.ts +2 -0
- package/types/names.d.ts.map +1 -0
- package/types/names.native.d.ts.map +1 -0
package/dist/cjs/index.js
CHANGED
|
@@ -19,13 +19,18 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
19
19
|
var src_exports = {};
|
|
20
20
|
__export(src_exports, {
|
|
21
21
|
default: () => src_default,
|
|
22
|
+
names: () => import_names2.names,
|
|
22
23
|
normalizeCSSColor: () => normalizeCSSColor,
|
|
23
24
|
rgba: () => rgba
|
|
24
25
|
});
|
|
25
26
|
module.exports = __toCommonJS(src_exports);
|
|
26
27
|
var import_names = require("./names");
|
|
28
|
+
var import_names2 = require("./names");
|
|
27
29
|
function normalizeCSSColor(color) {
|
|
28
30
|
let match = null;
|
|
31
|
+
if (color in import_names.names) {
|
|
32
|
+
return import_names.names[color];
|
|
33
|
+
}
|
|
29
34
|
if (typeof color === "number") {
|
|
30
35
|
if (color >>> 0 === color && color >= 0 && color <= 4294967295) {
|
|
31
36
|
return color;
|
|
@@ -35,9 +40,6 @@ function normalizeCSSColor(color) {
|
|
|
35
40
|
if (match = matchers.hex6.exec(color)) {
|
|
36
41
|
return parseInt(match[1] + "ff", 16) >>> 0;
|
|
37
42
|
}
|
|
38
|
-
if (color in import_names.names) {
|
|
39
|
-
return import_names.names[color];
|
|
40
|
-
}
|
|
41
43
|
if (match = matchers.rgb.exec(color)) {
|
|
42
44
|
return (parse255(match[1]) << 24 | // r
|
|
43
45
|
parse255(match[2]) << 16 | // g
|
|
@@ -189,6 +191,7 @@ function rgba(colorInt) {
|
|
|
189
191
|
var src_default = normalizeCSSColor;
|
|
190
192
|
// Annotate the CommonJS export names for ESM import in node:
|
|
191
193
|
0 && (module.exports = {
|
|
194
|
+
names,
|
|
192
195
|
normalizeCSSColor,
|
|
193
196
|
rgba
|
|
194
197
|
});
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/index.ts"],
|
|
4
|
-
"sourcesContent": ["/*\n * Copyright (c) 2015-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n */\n\nimport { names } from './names'\n\nexport function normalizeCSSColor(color: string): number | null {\n let match: RegExpExecArray | null = null\n\n if (typeof color === 'number') {\n if (color >>> 0 === color && color >= 0 && color <= 0xffffffff) {\n return color\n }\n return null\n }\n\n // Ordered based on occurrences on Facebook codebase\n if ((match = matchers.hex6.exec(color))) {\n return parseInt(match[1] + 'ff', 16) >>> 0\n }\n\n if (
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,mBAAsB;AAEf,SAAS,kBAAkB,OAA8B;AAC9D,MAAI,QAAgC;AAEpC,MAAI,OAAO,UAAU,UAAU;AAC7B,QAAI,UAAU,MAAM,SAAS,SAAS,KAAK,SAAS,YAAY;AAC9D,aAAO;AAAA,IACT;AACA,WAAO;AAAA,EACT;AAGA,MAAK,QAAQ,SAAS,KAAK,KAAK,KAAK,GAAI;AACvC,WAAO,SAAS,MAAM,CAAC,IAAI,MAAM,EAAE,MAAM;AAAA,EAC3C;AAEA,
|
|
6
|
-
"names": []
|
|
4
|
+
"sourcesContent": ["/*\n * Copyright (c) 2015-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n */\n\nimport { names } from './names'\nexport { names } from './names'\n\nexport function normalizeCSSColor(color: string): number | null {\n let match: RegExpExecArray | null = null\n\n if (color in names) {\n return names[color]\n }\n\n if (typeof color === 'number') {\n if (color >>> 0 === color && color >= 0 && color <= 0xffffffff) {\n return color\n }\n return null\n }\n\n // Ordered based on occurrences on Facebook codebase\n if ((match = matchers.hex6.exec(color))) {\n return parseInt(match[1] + 'ff', 16) >>> 0\n }\n\n if ((match = matchers.rgb.exec(color))) {\n return (\n ((parse255(match[1]) << 24) | // r\n (parse255(match[2]) << 16) | // g\n (parse255(match[3]) << 8) | // b\n 0x000000ff) >>> // a\n 0\n )\n }\n\n if ((match = matchers.rgba.exec(color))) {\n return (\n ((parse255(match[1]) << 24) | // r\n (parse255(match[2]) << 16) | // g\n (parse255(match[3]) << 8) | // b\n parse1(match[4])) >>> // a\n 0\n )\n }\n\n if ((match = matchers.hex3.exec(color))) {\n return (\n parseInt(\n match[1] +\n match[1] + // r\n match[2] +\n match[2] + // g\n match[3] +\n match[3] + // b\n 'ff', // a\n 16\n ) >>> 0\n )\n }\n\n // https://drafts.csswg.org/css-color-4/#hex-notation\n if ((match = matchers.hex8.exec(color))) {\n return parseInt(match[1], 16) >>> 0\n }\n\n if ((match = matchers.hex4.exec(color))) {\n return (\n parseInt(\n match[1] +\n match[1] + // r\n match[2] +\n match[2] + // g\n match[3] +\n match[3] + // b\n match[4] +\n match[4], // a\n 16\n ) >>> 0\n )\n }\n\n if ((match = matchers.hsl.exec(color))) {\n return (\n (hslToRgb(\n parse360(match[1]), // h\n parsePercentage(match[2]), // s\n parsePercentage(match[3]) // l\n ) |\n 0x000000ff) >>> // a\n 0\n )\n }\n\n if ((match = matchers.hsla.exec(color))) {\n return (\n (hslToRgb(\n parse360(match[1]), // h\n parsePercentage(match[2]), // s\n parsePercentage(match[3]) // l\n ) |\n parse1(match[4])) >>> // a\n 0\n )\n }\n\n return null\n}\n\nfunction hue2rgb(p, q, t) {\n if (t < 0) {\n t += 1\n }\n if (t > 1) {\n t -= 1\n }\n if (t < 1 / 6) {\n return p + (q - p) * 6 * t\n }\n if (t < 1 / 2) {\n return q\n }\n if (t < 2 / 3) {\n return p + (q - p) * (2 / 3 - t) * 6\n }\n return p\n}\n\nfunction hslToRgb(h, s, l) {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s\n var p = 2 * l - q\n var r = hue2rgb(p, q, h + 1 / 3)\n var g = hue2rgb(p, q, h)\n var b = hue2rgb(p, q, h - 1 / 3)\n\n return (\n (Math.round(r * 255) << 24) | (Math.round(g * 255) << 16) | (Math.round(b * 255) << 8)\n )\n}\n\n// var INTEGER = '[-+]?\\\\d+';\nvar NUMBER = '[-+]?\\\\d*\\\\.?\\\\d+'\nvar PERCENTAGE = NUMBER + '%'\n\nfunction call(...args) {\n return '\\\\(\\\\s*(' + args.join(')\\\\s*,\\\\s*(') + ')\\\\s*\\\\)'\n}\n\nvar matchers = {\n rgb: new RegExp('rgb' + call(NUMBER, NUMBER, NUMBER)),\n rgba: new RegExp('rgba' + call(NUMBER, NUMBER, NUMBER, NUMBER)),\n hsl: new RegExp('hsl' + call(NUMBER, PERCENTAGE, PERCENTAGE)),\n hsla: new RegExp('hsla' + call(NUMBER, PERCENTAGE, PERCENTAGE, NUMBER)),\n hex3: /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex4: /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#([0-9a-fA-F]{6})$/,\n hex8: /^#([0-9a-fA-F]{8})$/,\n}\n\nfunction parse255(str) {\n var int = parseInt(str, 10)\n if (int < 0) {\n return 0\n }\n if (int > 255) {\n return 255\n }\n return int\n}\n\nfunction parse360(str) {\n var int = parseFloat(str)\n return (((int % 360) + 360) % 360) / 360\n}\n\nfunction parse1(str) {\n var num = parseFloat(str)\n if (num < 0) {\n return 0\n }\n if (num > 1) {\n return 255\n }\n return Math.round(num * 255)\n}\n\nfunction parsePercentage(str) {\n // parseFloat conveniently ignores the final %\n // @ts-ignore\n const int = parseFloat(str, 10)\n if (int < 0) {\n return 0\n }\n if (int > 100) {\n return 1\n }\n return int / 100\n}\n\nexport function rgba(colorInt: number) {\n var r = Math.round((colorInt & 0xff000000) >>> 24)\n var g = Math.round((colorInt & 0x00ff0000) >>> 16)\n var b = Math.round((colorInt & 0x0000ff00) >>> 8)\n var a = ((colorInt & 0x000000ff) >>> 0) / 255\n return {\n r,\n g,\n b,\n a,\n }\n}\n\nexport default normalizeCSSColor\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,mBAAsB;AACtB,IAAAA,gBAAsB;AAEf,SAAS,kBAAkB,OAA8B;AAC9D,MAAI,QAAgC;AAEpC,MAAI,SAAS,oBAAO;AAClB,WAAO,mBAAM,KAAK;AAAA,EACpB;AAEA,MAAI,OAAO,UAAU,UAAU;AAC7B,QAAI,UAAU,MAAM,SAAS,SAAS,KAAK,SAAS,YAAY;AAC9D,aAAO;AAAA,IACT;AACA,WAAO;AAAA,EACT;AAGA,MAAK,QAAQ,SAAS,KAAK,KAAK,KAAK,GAAI;AACvC,WAAO,SAAS,MAAM,CAAC,IAAI,MAAM,EAAE,MAAM;AAAA,EAC3C;AAEA,MAAK,QAAQ,SAAS,IAAI,KAAK,KAAK,GAAI;AACtC,YACI,SAAS,MAAM,CAAC,CAAC,KAAK;AAAA,IACrB,SAAS,MAAM,CAAC,CAAC,KAAK;AAAA,IACtB,SAAS,MAAM,CAAC,CAAC,KAAK;AAAA,IACvB;AAAA,IACF;AAAA,EAEJ;AAEA,MAAK,QAAQ,SAAS,KAAK,KAAK,KAAK,GAAI;AACvC,YACI,SAAS,MAAM,CAAC,CAAC,KAAK;AAAA,IACrB,SAAS,MAAM,CAAC,CAAC,KAAK;AAAA,IACtB,SAAS,MAAM,CAAC,CAAC,KAAK;AAAA,IACvB,OAAO,MAAM,CAAC,CAAC;AAAA,IACjB;AAAA,EAEJ;AAEA,MAAK,QAAQ,SAAS,KAAK,KAAK,KAAK,GAAI;AACvC,WACE;AAAA,MACE,MAAM,CAAC,IACL,MAAM,CAAC;AAAA,MACP,MAAM,CAAC,IACP,MAAM,CAAC;AAAA,MACP,MAAM,CAAC,IACP,MAAM,CAAC;AAAA,MACP;AAAA;AAAA,MACF;AAAA,IACF,MAAM;AAAA,EAEV;AAGA,MAAK,QAAQ,SAAS,KAAK,KAAK,KAAK,GAAI;AACvC,WAAO,SAAS,MAAM,CAAC,GAAG,EAAE,MAAM;AAAA,EACpC;AAEA,MAAK,QAAQ,SAAS,KAAK,KAAK,KAAK,GAAI;AACvC,WACE;AAAA,MACE,MAAM,CAAC,IACL,MAAM,CAAC;AAAA,MACP,MAAM,CAAC,IACP,MAAM,CAAC;AAAA,MACP,MAAM,CAAC,IACP,MAAM,CAAC;AAAA,MACP,MAAM,CAAC,IACP,MAAM,CAAC;AAAA;AAAA,MACT;AAAA,IACF,MAAM;AAAA,EAEV;AAEA,MAAK,QAAQ,SAAS,IAAI,KAAK,KAAK,GAAI;AACtC,YACG;AAAA,MACC,SAAS,MAAM,CAAC,CAAC;AAAA;AAAA,MACjB,gBAAgB,MAAM,CAAC,CAAC;AAAA;AAAA,MACxB,gBAAgB,MAAM,CAAC,CAAC;AAAA;AAAA,IAC1B,IACE;AAAA,IACF;AAAA,EAEJ;AAEA,MAAK,QAAQ,SAAS,KAAK,KAAK,KAAK,GAAI;AACvC,YACG;AAAA,MACC,SAAS,MAAM,CAAC,CAAC;AAAA;AAAA,MACjB,gBAAgB,MAAM,CAAC,CAAC;AAAA;AAAA,MACxB,gBAAgB,MAAM,CAAC,CAAC;AAAA;AAAA,IAC1B,IACE,OAAO,MAAM,CAAC,CAAC;AAAA,IACjB;AAAA,EAEJ;AAEA,SAAO;AACT;AAEA,SAAS,QAAQ,GAAG,GAAG,GAAG;AACxB,MAAI,IAAI,GAAG;AACT,SAAK;AAAA,EACP;AACA,MAAI,IAAI,GAAG;AACT,SAAK;AAAA,EACP;AACA,MAAI,IAAI,IAAI,GAAG;AACb,WAAO,KAAK,IAAI,KAAK,IAAI;AAAA,EAC3B;AACA,MAAI,IAAI,IAAI,GAAG;AACb,WAAO;AAAA,EACT;AACA,MAAI,IAAI,IAAI,GAAG;AACb,WAAO,KAAK,IAAI,MAAM,IAAI,IAAI,KAAK;AAAA,EACrC;AACA,SAAO;AACT;AAEA,SAAS,SAAS,GAAG,GAAG,GAAG;AACzB,MAAI,IAAI,IAAI,MAAM,KAAK,IAAI,KAAK,IAAI,IAAI,IAAI;AAC5C,MAAI,IAAI,IAAI,IAAI;AAChB,MAAI,IAAI,QAAQ,GAAG,GAAG,IAAI,IAAI,CAAC;AAC/B,MAAI,IAAI,QAAQ,GAAG,GAAG,CAAC;AACvB,MAAI,IAAI,QAAQ,GAAG,GAAG,IAAI,IAAI,CAAC;AAE/B,SACG,KAAK,MAAM,IAAI,GAAG,KAAK,KAAO,KAAK,MAAM,IAAI,GAAG,KAAK,KAAO,KAAK,MAAM,IAAI,GAAG,KAAK;AAExF;AAGA,IAAI,SAAS;AACb,IAAI,aAAa,SAAS;AAE1B,SAAS,QAAQ,MAAM;AACrB,SAAO,aAAa,KAAK,KAAK,aAAa,IAAI;AACjD;AAEA,IAAI,WAAW;AAAA,EACb,KAAK,IAAI,OAAO,QAAQ,KAAK,QAAQ,QAAQ,MAAM,CAAC;AAAA,EACpD,MAAM,IAAI,OAAO,SAAS,KAAK,QAAQ,QAAQ,QAAQ,MAAM,CAAC;AAAA,EAC9D,KAAK,IAAI,OAAO,QAAQ,KAAK,QAAQ,YAAY,UAAU,CAAC;AAAA,EAC5D,MAAM,IAAI,OAAO,SAAS,KAAK,QAAQ,YAAY,YAAY,MAAM,CAAC;AAAA,EACtE,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AACR;AAEA,SAAS,SAAS,KAAK;AACrB,MAAI,MAAM,SAAS,KAAK,EAAE;AAC1B,MAAI,MAAM,GAAG;AACX,WAAO;AAAA,EACT;AACA,MAAI,MAAM,KAAK;AACb,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAEA,SAAS,SAAS,KAAK;AACrB,MAAI,MAAM,WAAW,GAAG;AACxB,UAAU,MAAM,MAAO,OAAO,MAAO;AACvC;AAEA,SAAS,OAAO,KAAK;AACnB,MAAI,MAAM,WAAW,GAAG;AACxB,MAAI,MAAM,GAAG;AACX,WAAO;AAAA,EACT;AACA,MAAI,MAAM,GAAG;AACX,WAAO;AAAA,EACT;AACA,SAAO,KAAK,MAAM,MAAM,GAAG;AAC7B;AAEA,SAAS,gBAAgB,KAAK;AAG5B,QAAM,MAAM,WAAW,KAAK,EAAE;AAC9B,MAAI,MAAM,GAAG;AACX,WAAO;AAAA,EACT;AACA,MAAI,MAAM,KAAK;AACb,WAAO;AAAA,EACT;AACA,SAAO,MAAM;AACf;AAEO,SAAS,KAAK,UAAkB;AACrC,MAAI,IAAI,KAAK,OAAO,WAAW,gBAAgB,EAAE;AACjD,MAAI,IAAI,KAAK,OAAO,WAAW,cAAgB,EAAE;AACjD,MAAI,IAAI,KAAK,OAAO,WAAW,WAAgB,CAAC;AAChD,MAAI,MAAM,WAAW,SAAgB,KAAK;AAC1C,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAEA,IAAO,cAAQ;",
|
|
6
|
+
"names": ["import_names"]
|
|
7
7
|
}
|
package/dist/cjs/names.js
CHANGED
|
@@ -22,9 +22,12 @@ __export(names_exports, {
|
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(names_exports);
|
|
24
24
|
const names = {
|
|
25
|
-
|
|
25
|
+
// keep the basics
|
|
26
|
+
transparent: 0,
|
|
27
|
+
white: 4294967295,
|
|
28
|
+
black: 255
|
|
26
29
|
};
|
|
27
|
-
if (process.env.INCLUDE_CSS_COLOR_NAMES) {
|
|
30
|
+
if (process.env.INCLUDE_CSS_COLOR_NAMES || process.env.TAMAGUI_TARGET === "native") {
|
|
28
31
|
const allNames = require("./names.native").names;
|
|
29
32
|
Object.assign(names, allNames);
|
|
30
33
|
}
|
package/dist/cjs/names.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/names.ts"],
|
|
4
|
-
"sourcesContent": ["export const names = {\n transparent: 0x00000000,\n}\n\nif (process.env.INCLUDE_CSS_COLOR_NAMES) {\n const allNames = require('./names.native').names\n Object.assign(names, allNames)\n}\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,QAAQ;AAAA,
|
|
4
|
+
"sourcesContent": ["export const names = {\n // keep the basics\n transparent: 0x00000000,\n white: 0xffffffff,\n black: 0x000000ff,\n}\n\nif (\n process.env.INCLUDE_CSS_COLOR_NAMES ||\n process.env.TAMAGUI_TARGET === 'native'\n) {\n const allNames = require('./names.native').names\n Object.assign(names, allNames)\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,QAAQ;AAAA;AAAA,EAEnB,aAAa;AAAA,EACb,OAAO;AAAA,EACP,OAAO;AACT;AAEA,IACE,QAAQ,IAAI,2BACZ,QAAQ,IAAI,mBAAmB,UAC/B;AACA,QAAM,WAAW,QAAQ,gBAAgB,EAAE;AAC3C,SAAO,OAAO,OAAO,QAAQ;AAC/B;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { names } from "./names";
|
|
2
|
+
import { names as names2 } from "./names";
|
|
2
3
|
function normalizeCSSColor(color) {
|
|
3
4
|
let match = null;
|
|
5
|
+
if (color in names) {
|
|
6
|
+
return names[color];
|
|
7
|
+
}
|
|
4
8
|
if (typeof color === "number") {
|
|
5
9
|
if (color >>> 0 === color && color >= 0 && color <= 4294967295) {
|
|
6
10
|
return color;
|
|
@@ -10,9 +14,6 @@ function normalizeCSSColor(color) {
|
|
|
10
14
|
if (match = matchers.hex6.exec(color)) {
|
|
11
15
|
return parseInt(match[1] + "ff", 16) >>> 0;
|
|
12
16
|
}
|
|
13
|
-
if (color in names) {
|
|
14
|
-
return names[color];
|
|
15
|
-
}
|
|
16
17
|
if (match = matchers.rgb.exec(color)) {
|
|
17
18
|
return (parse255(match[1]) << 24 | // r
|
|
18
19
|
parse255(match[2]) << 16 | // g
|
|
@@ -164,6 +165,7 @@ function rgba(colorInt) {
|
|
|
164
165
|
var src_default = normalizeCSSColor;
|
|
165
166
|
export {
|
|
166
167
|
src_default as default,
|
|
168
|
+
names2 as names,
|
|
167
169
|
normalizeCSSColor,
|
|
168
170
|
rgba
|
|
169
171
|
};
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/index.ts"],
|
|
4
|
-
"sourcesContent": ["/*\n * Copyright (c) 2015-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n */\n\nimport { names } from './names'\n\nexport function normalizeCSSColor(color: string): number | null {\n let match: RegExpExecArray | null = null\n\n if (typeof color === 'number') {\n if (color >>> 0 === color && color >= 0 && color <= 0xffffffff) {\n return color\n }\n return null\n }\n\n // Ordered based on occurrences on Facebook codebase\n if ((match = matchers.hex6.exec(color))) {\n return parseInt(match[1] + 'ff', 16) >>> 0\n }\n\n if (
|
|
5
|
-
"mappings": "AAUA,SAAS,aAAa;AAEf,SAAS,kBAAkB,OAA8B;AAC9D,MAAI,QAAgC;AAEpC,MAAI,OAAO,UAAU,UAAU;AAC7B,QAAI,UAAU,MAAM,SAAS,SAAS,KAAK,SAAS,YAAY;AAC9D,aAAO;AAAA,IACT;AACA,WAAO;AAAA,EACT;AAGA,MAAK,QAAQ,SAAS,KAAK,KAAK,KAAK,GAAI;AACvC,WAAO,SAAS,MAAM,CAAC,IAAI,MAAM,EAAE,MAAM;AAAA,EAC3C;AAEA,
|
|
6
|
-
"names": []
|
|
4
|
+
"sourcesContent": ["/*\n * Copyright (c) 2015-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n */\n\nimport { names } from './names'\nexport { names } from './names'\n\nexport function normalizeCSSColor(color: string): number | null {\n let match: RegExpExecArray | null = null\n\n if (color in names) {\n return names[color]\n }\n\n if (typeof color === 'number') {\n if (color >>> 0 === color && color >= 0 && color <= 0xffffffff) {\n return color\n }\n return null\n }\n\n // Ordered based on occurrences on Facebook codebase\n if ((match = matchers.hex6.exec(color))) {\n return parseInt(match[1] + 'ff', 16) >>> 0\n }\n\n if ((match = matchers.rgb.exec(color))) {\n return (\n ((parse255(match[1]) << 24) | // r\n (parse255(match[2]) << 16) | // g\n (parse255(match[3]) << 8) | // b\n 0x000000ff) >>> // a\n 0\n )\n }\n\n if ((match = matchers.rgba.exec(color))) {\n return (\n ((parse255(match[1]) << 24) | // r\n (parse255(match[2]) << 16) | // g\n (parse255(match[3]) << 8) | // b\n parse1(match[4])) >>> // a\n 0\n )\n }\n\n if ((match = matchers.hex3.exec(color))) {\n return (\n parseInt(\n match[1] +\n match[1] + // r\n match[2] +\n match[2] + // g\n match[3] +\n match[3] + // b\n 'ff', // a\n 16\n ) >>> 0\n )\n }\n\n // https://drafts.csswg.org/css-color-4/#hex-notation\n if ((match = matchers.hex8.exec(color))) {\n return parseInt(match[1], 16) >>> 0\n }\n\n if ((match = matchers.hex4.exec(color))) {\n return (\n parseInt(\n match[1] +\n match[1] + // r\n match[2] +\n match[2] + // g\n match[3] +\n match[3] + // b\n match[4] +\n match[4], // a\n 16\n ) >>> 0\n )\n }\n\n if ((match = matchers.hsl.exec(color))) {\n return (\n (hslToRgb(\n parse360(match[1]), // h\n parsePercentage(match[2]), // s\n parsePercentage(match[3]) // l\n ) |\n 0x000000ff) >>> // a\n 0\n )\n }\n\n if ((match = matchers.hsla.exec(color))) {\n return (\n (hslToRgb(\n parse360(match[1]), // h\n parsePercentage(match[2]), // s\n parsePercentage(match[3]) // l\n ) |\n parse1(match[4])) >>> // a\n 0\n )\n }\n\n return null\n}\n\nfunction hue2rgb(p, q, t) {\n if (t < 0) {\n t += 1\n }\n if (t > 1) {\n t -= 1\n }\n if (t < 1 / 6) {\n return p + (q - p) * 6 * t\n }\n if (t < 1 / 2) {\n return q\n }\n if (t < 2 / 3) {\n return p + (q - p) * (2 / 3 - t) * 6\n }\n return p\n}\n\nfunction hslToRgb(h, s, l) {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s\n var p = 2 * l - q\n var r = hue2rgb(p, q, h + 1 / 3)\n var g = hue2rgb(p, q, h)\n var b = hue2rgb(p, q, h - 1 / 3)\n\n return (\n (Math.round(r * 255) << 24) | (Math.round(g * 255) << 16) | (Math.round(b * 255) << 8)\n )\n}\n\n// var INTEGER = '[-+]?\\\\d+';\nvar NUMBER = '[-+]?\\\\d*\\\\.?\\\\d+'\nvar PERCENTAGE = NUMBER + '%'\n\nfunction call(...args) {\n return '\\\\(\\\\s*(' + args.join(')\\\\s*,\\\\s*(') + ')\\\\s*\\\\)'\n}\n\nvar matchers = {\n rgb: new RegExp('rgb' + call(NUMBER, NUMBER, NUMBER)),\n rgba: new RegExp('rgba' + call(NUMBER, NUMBER, NUMBER, NUMBER)),\n hsl: new RegExp('hsl' + call(NUMBER, PERCENTAGE, PERCENTAGE)),\n hsla: new RegExp('hsla' + call(NUMBER, PERCENTAGE, PERCENTAGE, NUMBER)),\n hex3: /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex4: /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#([0-9a-fA-F]{6})$/,\n hex8: /^#([0-9a-fA-F]{8})$/,\n}\n\nfunction parse255(str) {\n var int = parseInt(str, 10)\n if (int < 0) {\n return 0\n }\n if (int > 255) {\n return 255\n }\n return int\n}\n\nfunction parse360(str) {\n var int = parseFloat(str)\n return (((int % 360) + 360) % 360) / 360\n}\n\nfunction parse1(str) {\n var num = parseFloat(str)\n if (num < 0) {\n return 0\n }\n if (num > 1) {\n return 255\n }\n return Math.round(num * 255)\n}\n\nfunction parsePercentage(str) {\n // parseFloat conveniently ignores the final %\n // @ts-ignore\n const int = parseFloat(str, 10)\n if (int < 0) {\n return 0\n }\n if (int > 100) {\n return 1\n }\n return int / 100\n}\n\nexport function rgba(colorInt: number) {\n var r = Math.round((colorInt & 0xff000000) >>> 24)\n var g = Math.round((colorInt & 0x00ff0000) >>> 16)\n var b = Math.round((colorInt & 0x0000ff00) >>> 8)\n var a = ((colorInt & 0x000000ff) >>> 0) / 255\n return {\n r,\n g,\n b,\n a,\n }\n}\n\nexport default normalizeCSSColor\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["names"]
|
|
7
7
|
}
|
package/dist/esm/names.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
const names = {
|
|
2
|
-
|
|
2
|
+
// keep the basics
|
|
3
|
+
transparent: 0,
|
|
4
|
+
white: 4294967295,
|
|
5
|
+
black: 255
|
|
3
6
|
};
|
|
4
|
-
if (process.env.INCLUDE_CSS_COLOR_NAMES) {
|
|
7
|
+
if (process.env.INCLUDE_CSS_COLOR_NAMES || process.env.TAMAGUI_TARGET === "native") {
|
|
5
8
|
const allNames = require("./names.native").names;
|
|
6
9
|
Object.assign(names, allNames);
|
|
7
10
|
}
|
package/dist/esm/names.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/names.ts"],
|
|
4
|
-
"sourcesContent": ["export const names = {\n transparent: 0x00000000,\n}\n\nif (process.env.INCLUDE_CSS_COLOR_NAMES) {\n const allNames = require('./names.native').names\n Object.assign(names, allNames)\n}\n"],
|
|
5
|
-
"mappings": "AAAO,MAAM,QAAQ;AAAA,
|
|
4
|
+
"sourcesContent": ["export const names = {\n // keep the basics\n transparent: 0x00000000,\n white: 0xffffffff,\n black: 0x000000ff,\n}\n\nif (\n process.env.INCLUDE_CSS_COLOR_NAMES ||\n process.env.TAMAGUI_TARGET === 'native'\n) {\n const allNames = require('./names.native').names\n Object.assign(names, allNames)\n}\n"],
|
|
5
|
+
"mappings": "AAAO,MAAM,QAAQ;AAAA;AAAA,EAEnB,aAAa;AAAA,EACb,OAAO;AAAA,EACP,OAAO;AACT;AAEA,IACE,QAAQ,IAAI,2BACZ,QAAQ,IAAI,mBAAmB,UAC/B;AACA,QAAM,WAAW,QAAQ,gBAAgB,EAAE;AAC3C,SAAO,OAAO,OAAO,QAAQ;AAC/B;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/normalize-css-color",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.13",
|
|
4
4
|
"sideEffects": [
|
|
5
5
|
"*.css"
|
|
6
6
|
],
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"clean:build": "tamagui-build clean:build"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"@tamagui/build": "^1.1.
|
|
25
|
+
"@tamagui/build": "^1.1.13"
|
|
26
26
|
},
|
|
27
27
|
"exports": {
|
|
28
28
|
"./package.json": "./package.json",
|
package/src/index.ts
CHANGED
|
@@ -9,10 +9,15 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import { names } from './names'
|
|
12
|
+
export { names } from './names'
|
|
12
13
|
|
|
13
14
|
export function normalizeCSSColor(color: string): number | null {
|
|
14
15
|
let match: RegExpExecArray | null = null
|
|
15
16
|
|
|
17
|
+
if (color in names) {
|
|
18
|
+
return names[color]
|
|
19
|
+
}
|
|
20
|
+
|
|
16
21
|
if (typeof color === 'number') {
|
|
17
22
|
if (color >>> 0 === color && color >= 0 && color <= 0xffffffff) {
|
|
18
23
|
return color
|
|
@@ -25,10 +30,6 @@ export function normalizeCSSColor(color: string): number | null {
|
|
|
25
30
|
return parseInt(match[1] + 'ff', 16) >>> 0
|
|
26
31
|
}
|
|
27
32
|
|
|
28
|
-
if (color in names) {
|
|
29
|
-
return names[color]
|
|
30
|
-
}
|
|
31
|
-
|
|
32
33
|
if ((match = matchers.rgb.exec(color))) {
|
|
33
34
|
return (
|
|
34
35
|
((parse255(match[1]) << 24) | // r
|
package/src/names.ts
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
export const names = {
|
|
2
|
+
// keep the basics
|
|
2
3
|
transparent: 0x00000000,
|
|
4
|
+
white: 0xffffffff,
|
|
5
|
+
black: 0x000000ff,
|
|
3
6
|
}
|
|
4
7
|
|
|
5
|
-
if (
|
|
8
|
+
if (
|
|
9
|
+
process.env.INCLUDE_CSS_COLOR_NAMES ||
|
|
10
|
+
process.env.TAMAGUI_TARGET === 'native'
|
|
11
|
+
) {
|
|
6
12
|
const allNames = require('./names.native').names
|
|
7
13
|
Object.assign(names, allNames)
|
|
8
14
|
}
|
package/types/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAE/B,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAoG9D;AA4FD,wBAAgB,IAAI,CAAC,QAAQ,EAAE,MAAM;;;;;EAWpC;AAED,eAAe,iBAAiB,CAAA"}
|
package/types/names.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"names.d.ts","sourceRoot":"","sources":["../src/names.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,KAAK;;;;CAKjB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"names.native.d.ts","sourceRoot":"","sources":["../src/names.native.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwJjB,CAAA"}
|