@webstudio-is/fonts 0.1.1 → 0.2.0

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.
Files changed (42) hide show
  1. package/lib/cjs/constants.cjs +19 -0
  2. package/lib/cjs/constants.d.ts +6 -0
  3. package/lib/cjs/constants.d.ts.map +1 -0
  4. package/lib/cjs/font-data.cjs +53 -0
  5. package/lib/cjs/font-data.d.ts +23 -0
  6. package/lib/cjs/font-data.d.ts.map +1 -0
  7. package/lib/cjs/font-data.test.cjs +67 -0
  8. package/lib/cjs/font-data.test.d.ts +2 -0
  9. package/lib/cjs/font-data.test.d.ts.map +1 -0
  10. package/lib/cjs/font-weights.cjs +50 -0
  11. package/lib/cjs/font-weights.d.ts +50 -0
  12. package/lib/cjs/font-weights.d.ts.map +1 -0
  13. package/lib/cjs/get-font-faces.cjs +34 -0
  14. package/lib/cjs/get-font-faces.d.ts +16 -0
  15. package/lib/cjs/get-font-faces.d.ts.map +1 -0
  16. package/lib/cjs/get-font-faces.test.cjs +74 -0
  17. package/lib/cjs/get-font-faces.test.d.ts +2 -0
  18. package/lib/cjs/get-font-faces.test.d.ts.map +1 -0
  19. package/lib/cjs/index.cjs +20 -0
  20. package/lib/cjs/index.d.ts +5 -0
  21. package/lib/cjs/index.d.ts.map +1 -0
  22. package/lib/cjs/index.server.cjs +20 -0
  23. package/lib/cjs/index.server.d.ts +3 -0
  24. package/lib/cjs/index.server.d.ts.map +1 -0
  25. package/lib/cjs/schema.cjs +10 -0
  26. package/lib/cjs/schema.d.ts +16 -0
  27. package/lib/cjs/schema.d.ts.map +1 -0
  28. package/lib/cjs/types.cjs +2 -0
  29. package/lib/cjs/types.d.ts +2 -0
  30. package/lib/cjs/types.d.ts.map +1 -0
  31. package/lib/constants.js +4 -7
  32. package/lib/font-data.js +13 -22
  33. package/lib/font-data.test.js +17 -19
  34. package/lib/font-weights.js +1 -4
  35. package/lib/get-font-faces.js +3 -7
  36. package/lib/get-font-faces.test.js +4 -6
  37. package/lib/index.js +4 -20
  38. package/lib/index.server.js +2 -20
  39. package/lib/schema.js +6 -9
  40. package/lib/tsconfig.tsbuildinfo +1 -0
  41. package/lib/types.js +1 -2
  42. package/package.json +17 -7
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FONT_MIME_TYPES = exports.FONT_FORMATS = exports.DEFAULT_FONT_FALLBACK = exports.SYSTEM_FONTS = void 0;
4
+ exports.SYSTEM_FONTS = new Map([
5
+ ["Arial", ["sans-serif"]],
6
+ ["Times New Roman", ["sans"]],
7
+ ["Courier New", ["monospace"]],
8
+ ["system-ui", []],
9
+ ]);
10
+ exports.DEFAULT_FONT_FALLBACK = "sans-serif";
11
+ exports.FONT_FORMATS = new Map([
12
+ ["woff", "woff"],
13
+ ["woff2", "woff2"],
14
+ ["ttf", "truetype"],
15
+ ["otf", "opentype"],
16
+ ]);
17
+ exports.FONT_MIME_TYPES = Array.from(exports.FONT_FORMATS.keys())
18
+ .map((format) => `.${format}`)
19
+ .join(", ");
@@ -0,0 +1,6 @@
1
+ import type { FontFormat } from "./types";
2
+ export declare const SYSTEM_FONTS: Map<string, string[]>;
3
+ export declare const DEFAULT_FONT_FALLBACK = "sans-serif";
4
+ export declare const FONT_FORMATS: Map<FontFormat, string>;
5
+ export declare const FONT_MIME_TYPES: string;
6
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,eAAO,MAAM,YAAY,uBAKvB,CAAC;AAEH,eAAO,MAAM,qBAAqB,eAAe,CAAC;AAElD,eAAO,MAAM,YAAY,EAAE,GAAG,CAAC,UAAU,EAAE,MAAM,CAK/C,CAAC;AAEH,eAAO,MAAM,eAAe,QAEf,CAAC"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getFontData = exports.normalizeFamily = exports.parseSubfamily = exports.styles = void 0;
4
+ const fontkit_1 = require("fontkit");
5
+ const font_weights_1 = require("./font-weights");
6
+ exports.styles = ["normal", "italic", "oblique"];
7
+ const parseSubfamily = (subfamily) => {
8
+ const subfamilyLow = subfamily.toLowerCase();
9
+ let style = "normal";
10
+ for (const possibleStyle of exports.styles) {
11
+ if (subfamilyLow.includes(possibleStyle)) {
12
+ style = possibleStyle;
13
+ break;
14
+ }
15
+ }
16
+ let weight = "400";
17
+ for (weight in font_weights_1.fontWeights) {
18
+ const { name } = font_weights_1.fontWeights[weight];
19
+ const { alt } = font_weights_1.fontWeights[weight];
20
+ if (subfamilyLow.includes(name) || subfamilyLow.includes(alt)) {
21
+ break;
22
+ }
23
+ }
24
+ return { style, weight: Number(weight) };
25
+ };
26
+ exports.parseSubfamily = parseSubfamily;
27
+ const splitAndTrim = (string) => string
28
+ .split(" ")
29
+ .map((part) => part.trim())
30
+ .filter(Boolean);
31
+ // Family name can contain additional information like "Roboto Black" or "Roboto Bold", though we need pure family name "Roboto", because the rest is already encoded in weight and style.
32
+ // We need a name we can reference in CSS font-family property, while CSS matches it with the right font-face considering the weight and style.
33
+ const normalizeFamily = (family, subfamily) => {
34
+ const familyParts = splitAndTrim(family);
35
+ const subfamilyParts = splitAndTrim(subfamily.toLowerCase());
36
+ const familyPartsNormalized = familyParts.filter((familyPart) => subfamilyParts.includes(familyPart.toLowerCase()) === false);
37
+ return familyPartsNormalized.join(" ");
38
+ };
39
+ exports.normalizeFamily = normalizeFamily;
40
+ const getFontData = (data) => {
41
+ const font = (0, fontkit_1.create)(data);
42
+ const format = font.type.toLowerCase();
43
+ const originalFamily = font.getName("fontFamily");
44
+ const subfamily = font.getName("preferredSubfamily") ?? font.getName("fontSubfamily");
45
+ const parsedSubfamily = (0, exports.parseSubfamily)(subfamily);
46
+ const family = (0, exports.normalizeFamily)(originalFamily, subfamily);
47
+ return {
48
+ format,
49
+ family,
50
+ ...parsedSubfamily,
51
+ };
52
+ };
53
+ exports.getFontData = getFontData;
@@ -0,0 +1,23 @@
1
+ import type { FontFormat } from "./types";
2
+ declare module "fontkit" {
3
+ interface Font {
4
+ type: string;
5
+ getName: (name: string) => string;
6
+ }
7
+ }
8
+ export declare const styles: readonly ["normal", "italic", "oblique"];
9
+ declare type Style = typeof styles[number];
10
+ export declare const parseSubfamily: (subfamily: string) => {
11
+ style: "normal" | "italic" | "oblique";
12
+ weight: number;
13
+ };
14
+ export declare const normalizeFamily: (family: string, subfamily: string) => string;
15
+ declare type FontData = {
16
+ format: FontFormat;
17
+ family: string;
18
+ style: Style;
19
+ weight: number;
20
+ };
21
+ export declare const getFontData: (data: Uint8Array) => FontData;
22
+ export {};
23
+ //# sourceMappingURL=font-data.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"font-data.d.ts","sourceRoot":"","sources":["../../src/font-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAK1C,OAAO,QAAQ,SAAS,CAAC;IACvB,UAAiB,IAAI;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;KACnC;CACF;AAED,eAAO,MAAM,MAAM,0CAA2C,CAAC;AAC/D,aAAK,KAAK,GAAG,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;AAEnC,eAAO,MAAM,cAAc,cAAe,MAAM;;;CAmB/C,CAAC;AAUF,eAAO,MAAM,eAAe,WAAY,MAAM,aAAa,MAAM,WAOhE,CAAC;AAEF,aAAK,QAAQ,GAAG;IACd,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,WAAW,SAAU,UAAU,KAAG,QAa9C,CAAC"}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const font_data_1 = require("./font-data");
4
+ describe("font-data", () => {
5
+ describe("parseSubfamily()", () => {
6
+ test("Black Italic", () => {
7
+ expect((0, font_data_1.parseSubfamily)("Black Italic")).toEqual({
8
+ style: "italic",
9
+ weight: 900,
10
+ });
11
+ });
12
+ test("Bold", () => {
13
+ expect((0, font_data_1.parseSubfamily)("Bold")).toEqual({
14
+ style: "normal",
15
+ weight: 700,
16
+ });
17
+ });
18
+ test("Demi Bold Italic", () => {
19
+ expect((0, font_data_1.parseSubfamily)("Demi Bold Italic")).toEqual({
20
+ style: "italic",
21
+ weight: 600,
22
+ });
23
+ });
24
+ test("Light", () => {
25
+ expect((0, font_data_1.parseSubfamily)("Light")).toEqual({
26
+ style: "normal",
27
+ weight: 300,
28
+ });
29
+ });
30
+ test("Extra Light", () => {
31
+ expect((0, font_data_1.parseSubfamily)("Extra Light")).toEqual({
32
+ style: "normal",
33
+ weight: 200,
34
+ });
35
+ });
36
+ test("Extra Light Italic", () => {
37
+ expect((0, font_data_1.parseSubfamily)("Extra Light Italic")).toEqual({
38
+ style: "italic",
39
+ weight: 200,
40
+ });
41
+ });
42
+ test("Heavy Italic", () => {
43
+ expect((0, font_data_1.parseSubfamily)("Heavy Italic")).toEqual({
44
+ style: "italic",
45
+ weight: 900,
46
+ });
47
+ });
48
+ test("Medium Italic", () => {
49
+ expect((0, font_data_1.parseSubfamily)("Medium Italic")).toEqual({
50
+ style: "italic",
51
+ weight: 500,
52
+ });
53
+ });
54
+ });
55
+ describe("normalizeFamily()", () => {
56
+ test("basic", () => {
57
+ expect((0, font_data_1.normalizeFamily)("Roboto Black", "Black")).toBe("Roboto");
58
+ expect((0, font_data_1.normalizeFamily)("Roboto Light", "Light Italic")).toBe("Roboto");
59
+ expect((0, font_data_1.normalizeFamily)("Robolder Bold", "Bold")).toBe("Robolder");
60
+ expect((0, font_data_1.normalizeFamily)(" Roboto X Bold ", "Bold")).toBe("Roboto X");
61
+ expect((0, font_data_1.normalizeFamily)(" 'Roboto X' Bold ", "Bold")).toBe("'Roboto X'");
62
+ expect((0, font_data_1.normalizeFamily)(` "Roboto X" Bold `, "Bold")).toBe(`"Roboto X"`);
63
+ expect((0, font_data_1.normalizeFamily)(`"Roboto Bold"`, "Bold")).toBe(`"Roboto Bold"`);
64
+ expect((0, font_data_1.normalizeFamily)(`"Roboto Bold" Bold`, "Bold")).toBe(`"Roboto Bold"`);
65
+ });
66
+ });
67
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=font-data.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"font-data.test.d.ts","sourceRoot":"","sources":["../../src/font-data.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fontWeights = void 0;
4
+ exports.fontWeights = {
5
+ "100": {
6
+ label: "Thin",
7
+ name: "thin",
8
+ alt: "hairline",
9
+ },
10
+ "200": {
11
+ label: "Extra Light",
12
+ name: "extra light",
13
+ alt: "ultra light",
14
+ },
15
+ "300": {
16
+ label: "Light",
17
+ name: "light",
18
+ alt: "light",
19
+ },
20
+ "400": {
21
+ label: "Normal",
22
+ name: "normal",
23
+ alt: "normal",
24
+ },
25
+ "500": {
26
+ label: "Medium",
27
+ name: "medium",
28
+ alt: "medium",
29
+ },
30
+ "600": {
31
+ label: "Semi Bold",
32
+ name: "semi bold",
33
+ alt: "demi bold",
34
+ },
35
+ "700": {
36
+ label: "Bold",
37
+ name: "bold",
38
+ alt: "bold",
39
+ },
40
+ "800": {
41
+ label: "Extra Bold",
42
+ name: "extra bold",
43
+ alt: "ultra bold",
44
+ },
45
+ "900": {
46
+ label: "Black",
47
+ name: "black",
48
+ alt: "heavy",
49
+ },
50
+ };
@@ -0,0 +1,50 @@
1
+ export declare const fontWeights: {
2
+ readonly "100": {
3
+ readonly label: "Thin";
4
+ readonly name: "thin";
5
+ readonly alt: "hairline";
6
+ };
7
+ readonly "200": {
8
+ readonly label: "Extra Light";
9
+ readonly name: "extra light";
10
+ readonly alt: "ultra light";
11
+ };
12
+ readonly "300": {
13
+ readonly label: "Light";
14
+ readonly name: "light";
15
+ readonly alt: "light";
16
+ };
17
+ readonly "400": {
18
+ readonly label: "Normal";
19
+ readonly name: "normal";
20
+ readonly alt: "normal";
21
+ };
22
+ readonly "500": {
23
+ readonly label: "Medium";
24
+ readonly name: "medium";
25
+ readonly alt: "medium";
26
+ };
27
+ readonly "600": {
28
+ readonly label: "Semi Bold";
29
+ readonly name: "semi bold";
30
+ readonly alt: "demi bold";
31
+ };
32
+ readonly "700": {
33
+ readonly label: "Bold";
34
+ readonly name: "bold";
35
+ readonly alt: "bold";
36
+ };
37
+ readonly "800": {
38
+ readonly label: "Extra Bold";
39
+ readonly name: "extra bold";
40
+ readonly alt: "ultra bold";
41
+ };
42
+ readonly "900": {
43
+ readonly label: "Black";
44
+ readonly name: "black";
45
+ readonly alt: "heavy";
46
+ };
47
+ };
48
+ export declare type FontWeight = keyof typeof fontWeights;
49
+ export declare type FontWeightKeyword = typeof fontWeights[FontWeight]["name"] | typeof fontWeights[FontWeight]["alt"];
50
+ //# sourceMappingURL=font-weights.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"font-weights.d.ts","sourceRoot":"","sources":["../../src/font-weights.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Cd,CAAC;AAEX,oBAAY,UAAU,GAAG,MAAM,OAAO,WAAW,CAAC;AAClD,oBAAY,iBAAiB,GACzB,OAAO,WAAW,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,GACtC,OAAO,WAAW,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getFontFaces = void 0;
4
+ const constants_1 = require("./constants");
5
+ const formatFace = (asset, format) => {
6
+ return {
7
+ fontFamily: asset.meta.family,
8
+ fontStyle: asset.meta.style,
9
+ fontWeight: asset.meta.weight,
10
+ fontDisplay: "swap",
11
+ src: `url('${asset.path}') format('${format}')`,
12
+ };
13
+ };
14
+ const getKey = (asset) => asset.meta.family + asset.meta.style + asset.meta.weight;
15
+ const getFontFaces = (assets) => {
16
+ const faces = new Map();
17
+ for (const asset of assets) {
18
+ const face = faces.get(getKey(asset));
19
+ const format = constants_1.FONT_FORMATS.get(asset.format);
20
+ if (format === undefined) {
21
+ // Should never happen since we allow only uploading formats we support
22
+ continue;
23
+ }
24
+ if (face === undefined) {
25
+ const face = formatFace(asset, format);
26
+ faces.set(getKey(asset), face);
27
+ continue;
28
+ }
29
+ // We already have that font face, so we need to add the new src
30
+ face.src += `, url('${asset.path}') format('${format}')`;
31
+ }
32
+ return Array.from(faces.values());
33
+ };
34
+ exports.getFontFaces = getFontFaces;
@@ -0,0 +1,16 @@
1
+ import type { FontMeta } from "./schema";
2
+ import type { FontFormat } from "./types";
3
+ export declare type PartialFontAsset = {
4
+ format: FontFormat;
5
+ meta: FontMeta;
6
+ path: string;
7
+ };
8
+ export declare type FontFace = {
9
+ fontFamily: string;
10
+ fontStyle: FontMeta["style"];
11
+ fontWeight: number;
12
+ fontDisplay: "swap" | "auto" | "block" | "fallback" | "optional";
13
+ src: string;
14
+ };
15
+ export declare const getFontFaces: (assets: Array<PartialFontAsset>) => Array<FontFace>;
16
+ //# sourceMappingURL=get-font-faces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-font-faces.d.ts","sourceRoot":"","sources":["../../src/get-font-faces.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,oBAAY,gBAAgB,GAAG;IAC7B,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,oBAAY,QAAQ,GAAG;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,CAAC;IACjE,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAeF,eAAO,MAAM,YAAY,WACf,MAAM,gBAAgB,CAAC,KAC9B,MAAM,QAAQ,CAoBhB,CAAC"}
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const get_font_faces_1 = require("./get-font-faces");
4
+ describe("getFontFaces()", () => {
5
+ test("different formats", () => {
6
+ const assets = [
7
+ {
8
+ format: "woff",
9
+ meta: {
10
+ family: "Roboto",
11
+ style: "normal",
12
+ weight: 400,
13
+ },
14
+ path: "/fonts/roboto.woff",
15
+ },
16
+ {
17
+ format: "ttf",
18
+ meta: {
19
+ family: "Roboto",
20
+ style: "normal",
21
+ weight: 400,
22
+ },
23
+ path: "/fonts/roboto.ttf",
24
+ },
25
+ ];
26
+ expect((0, get_font_faces_1.getFontFaces)(assets)).toMatchSnapshot();
27
+ });
28
+ test("different style", () => {
29
+ const assets = [
30
+ {
31
+ format: "ttf",
32
+ meta: {
33
+ family: "Roboto",
34
+ style: "normal",
35
+ weight: 400,
36
+ },
37
+ path: "/fonts/roboto.ttf",
38
+ },
39
+ {
40
+ format: "ttf",
41
+ meta: {
42
+ family: "Roboto",
43
+ style: "italic",
44
+ weight: 400,
45
+ },
46
+ path: "/fonts/roboto-italic.ttf",
47
+ },
48
+ ];
49
+ expect((0, get_font_faces_1.getFontFaces)(assets)).toMatchSnapshot();
50
+ });
51
+ test("different weight", () => {
52
+ const assets = [
53
+ {
54
+ format: "ttf",
55
+ meta: {
56
+ family: "Roboto",
57
+ style: "normal",
58
+ weight: 400,
59
+ },
60
+ path: "/fonts/roboto.ttf",
61
+ },
62
+ {
63
+ format: "ttf",
64
+ meta: {
65
+ family: "Roboto",
66
+ style: "normal",
67
+ weight: 500,
68
+ },
69
+ path: "/fonts/roboto-bold.ttf",
70
+ },
71
+ ];
72
+ expect((0, get_font_faces_1.getFontFaces)(assets)).toMatchSnapshot();
73
+ });
74
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=get-font-faces.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-font-faces.test.d.ts","sourceRoot":"","sources":["../../src/get-font-faces.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./constants"), exports);
18
+ __exportStar(require("./get-font-faces"), exports);
19
+ __exportStar(require("./types"), exports);
20
+ __exportStar(require("./font-weights"), exports);
@@ -0,0 +1,5 @@
1
+ export * from "./constants";
2
+ export * from "./get-font-faces";
3
+ export * from "./types";
4
+ export * from "./font-weights";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.getFontData = void 0;
18
+ var font_data_1 = require("./font-data");
19
+ Object.defineProperty(exports, "getFontData", { enumerable: true, get: function () { return font_data_1.getFontData; } });
20
+ __exportStar(require("./schema"), exports);
@@ -0,0 +1,3 @@
1
+ export { getFontData } from "./font-data";
2
+ export * from "./schema";
3
+ //# sourceMappingURL=index.server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.server.d.ts","sourceRoot":"","sources":["../../src/index.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,cAAc,UAAU,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FontMeta = void 0;
4
+ const zod_1 = require("zod");
5
+ const font_data_1 = require("./font-data");
6
+ exports.FontMeta = zod_1.z.object({
7
+ family: zod_1.z.string(),
8
+ style: zod_1.z.enum(font_data_1.styles),
9
+ weight: zod_1.z.number(),
10
+ });
@@ -0,0 +1,16 @@
1
+ import { z } from "zod";
2
+ export declare const FontMeta: z.ZodObject<{
3
+ family: z.ZodString;
4
+ style: z.ZodEnum<["normal", "italic", "oblique"]>;
5
+ weight: z.ZodNumber;
6
+ }, "strip", z.ZodTypeAny, {
7
+ family: string;
8
+ style: "normal" | "italic" | "oblique";
9
+ weight: number;
10
+ }, {
11
+ family: string;
12
+ style: "normal" | "italic" | "oblique";
13
+ weight: number;
14
+ }>;
15
+ export declare type FontMeta = z.infer<typeof FontMeta>;
16
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,QAAQ;;;;;;;;;;;;EAInB,CAAC;AACH,oBAAY,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,2 @@
1
+ export declare type FontFormat = "ttf" | "woff" | "woff2" | "otf";
2
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC"}
package/lib/constants.js CHANGED
@@ -1,19 +1,16 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FONT_MIME_TYPES = exports.FONT_FORMATS = exports.DEFAULT_FONT_FALLBACK = exports.SYSTEM_FONTS = void 0;
4
- exports.SYSTEM_FONTS = new Map([
1
+ export const SYSTEM_FONTS = new Map([
5
2
  ["Arial", ["sans-serif"]],
6
3
  ["Times New Roman", ["sans"]],
7
4
  ["Courier New", ["monospace"]],
8
5
  ["system-ui", []],
9
6
  ]);
10
- exports.DEFAULT_FONT_FALLBACK = "sans-serif";
11
- exports.FONT_FORMATS = new Map([
7
+ export const DEFAULT_FONT_FALLBACK = "sans-serif";
8
+ export const FONT_FORMATS = new Map([
12
9
  ["woff", "woff"],
13
10
  ["woff2", "woff2"],
14
11
  ["ttf", "truetype"],
15
12
  ["otf", "opentype"],
16
13
  ]);
17
- exports.FONT_MIME_TYPES = Array.from(exports.FONT_FORMATS.keys())
14
+ export const FONT_MIME_TYPES = Array.from(FONT_FORMATS.keys())
18
15
  .map((format) => `.${format}`)
19
16
  .join(", ");
package/lib/font-data.js CHANGED
@@ -1,56 +1,47 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getFontData = exports.normalizeFamily = exports.parseSubfamily = exports.styles = void 0;
7
- const fontkit_1 = __importDefault(require("fontkit"));
8
- const font_weights_1 = require("./font-weights");
9
- exports.styles = ["normal", "italic", "oblique"];
10
- const parseSubfamily = (subfamily) => {
1
+ import { create as createFontKit } from "fontkit";
2
+ import { fontWeights } from "./font-weights";
3
+ export const styles = ["normal", "italic", "oblique"];
4
+ export const parseSubfamily = (subfamily) => {
11
5
  const subfamilyLow = subfamily.toLowerCase();
12
6
  let style = "normal";
13
- for (const possibleStyle of exports.styles) {
7
+ for (const possibleStyle of styles) {
14
8
  if (subfamilyLow.includes(possibleStyle)) {
15
9
  style = possibleStyle;
16
10
  break;
17
11
  }
18
12
  }
19
13
  let weight = "400";
20
- for (weight in font_weights_1.fontWeights) {
21
- const { name } = font_weights_1.fontWeights[weight];
22
- const { alt } = font_weights_1.fontWeights[weight];
14
+ for (weight in fontWeights) {
15
+ const { name } = fontWeights[weight];
16
+ const { alt } = fontWeights[weight];
23
17
  if (subfamilyLow.includes(name) || subfamilyLow.includes(alt)) {
24
18
  break;
25
19
  }
26
20
  }
27
21
  return { style, weight: Number(weight) };
28
22
  };
29
- exports.parseSubfamily = parseSubfamily;
30
23
  const splitAndTrim = (string) => string
31
24
  .split(" ")
32
25
  .map((part) => part.trim())
33
26
  .filter(Boolean);
34
27
  // Family name can contain additional information like "Roboto Black" or "Roboto Bold", though we need pure family name "Roboto", because the rest is already encoded in weight and style.
35
28
  // We need a name we can reference in CSS font-family property, while CSS matches it with the right font-face considering the weight and style.
36
- const normalizeFamily = (family, subfamily) => {
29
+ export const normalizeFamily = (family, subfamily) => {
37
30
  const familyParts = splitAndTrim(family);
38
31
  const subfamilyParts = splitAndTrim(subfamily.toLowerCase());
39
32
  const familyPartsNormalized = familyParts.filter((familyPart) => subfamilyParts.includes(familyPart.toLowerCase()) === false);
40
33
  return familyPartsNormalized.join(" ");
41
34
  };
42
- exports.normalizeFamily = normalizeFamily;
43
- const getFontData = (data) => {
44
- const font = fontkit_1.default.create(data);
35
+ export const getFontData = (data) => {
36
+ const font = createFontKit(data);
45
37
  const format = font.type.toLowerCase();
46
38
  const originalFamily = font.getName("fontFamily");
47
39
  const subfamily = font.getName("preferredSubfamily") ?? font.getName("fontSubfamily");
48
- const parsedSubfamily = (0, exports.parseSubfamily)(subfamily);
49
- const family = (0, exports.normalizeFamily)(originalFamily, subfamily);
40
+ const parsedSubfamily = parseSubfamily(subfamily);
41
+ const family = normalizeFamily(originalFamily, subfamily);
50
42
  return {
51
43
  format,
52
44
  family,
53
45
  ...parsedSubfamily,
54
46
  };
55
47
  };
56
- exports.getFontData = getFontData;
@@ -1,52 +1,50 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const font_data_1 = require("./font-data");
1
+ import { parseSubfamily, normalizeFamily } from "./font-data";
4
2
  describe("font-data", () => {
5
3
  describe("parseSubfamily()", () => {
6
4
  test("Black Italic", () => {
7
- expect((0, font_data_1.parseSubfamily)("Black Italic")).toEqual({
5
+ expect(parseSubfamily("Black Italic")).toEqual({
8
6
  style: "italic",
9
7
  weight: 900,
10
8
  });
11
9
  });
12
10
  test("Bold", () => {
13
- expect((0, font_data_1.parseSubfamily)("Bold")).toEqual({
11
+ expect(parseSubfamily("Bold")).toEqual({
14
12
  style: "normal",
15
13
  weight: 700,
16
14
  });
17
15
  });
18
16
  test("Demi Bold Italic", () => {
19
- expect((0, font_data_1.parseSubfamily)("Demi Bold Italic")).toEqual({
17
+ expect(parseSubfamily("Demi Bold Italic")).toEqual({
20
18
  style: "italic",
21
19
  weight: 600,
22
20
  });
23
21
  });
24
22
  test("Light", () => {
25
- expect((0, font_data_1.parseSubfamily)("Light")).toEqual({
23
+ expect(parseSubfamily("Light")).toEqual({
26
24
  style: "normal",
27
25
  weight: 300,
28
26
  });
29
27
  });
30
28
  test("Extra Light", () => {
31
- expect((0, font_data_1.parseSubfamily)("Extra Light")).toEqual({
29
+ expect(parseSubfamily("Extra Light")).toEqual({
32
30
  style: "normal",
33
31
  weight: 200,
34
32
  });
35
33
  });
36
34
  test("Extra Light Italic", () => {
37
- expect((0, font_data_1.parseSubfamily)("Extra Light Italic")).toEqual({
35
+ expect(parseSubfamily("Extra Light Italic")).toEqual({
38
36
  style: "italic",
39
37
  weight: 200,
40
38
  });
41
39
  });
42
40
  test("Heavy Italic", () => {
43
- expect((0, font_data_1.parseSubfamily)("Heavy Italic")).toEqual({
41
+ expect(parseSubfamily("Heavy Italic")).toEqual({
44
42
  style: "italic",
45
43
  weight: 900,
46
44
  });
47
45
  });
48
46
  test("Medium Italic", () => {
49
- expect((0, font_data_1.parseSubfamily)("Medium Italic")).toEqual({
47
+ expect(parseSubfamily("Medium Italic")).toEqual({
50
48
  style: "italic",
51
49
  weight: 500,
52
50
  });
@@ -54,14 +52,14 @@ describe("font-data", () => {
54
52
  });
55
53
  describe("normalizeFamily()", () => {
56
54
  test("basic", () => {
57
- expect((0, font_data_1.normalizeFamily)("Roboto Black", "Black")).toBe("Roboto");
58
- expect((0, font_data_1.normalizeFamily)("Roboto Light", "Light Italic")).toBe("Roboto");
59
- expect((0, font_data_1.normalizeFamily)("Robolder Bold", "Bold")).toBe("Robolder");
60
- expect((0, font_data_1.normalizeFamily)(" Roboto X Bold ", "Bold")).toBe("Roboto X");
61
- expect((0, font_data_1.normalizeFamily)(" 'Roboto X' Bold ", "Bold")).toBe("'Roboto X'");
62
- expect((0, font_data_1.normalizeFamily)(` "Roboto X" Bold `, "Bold")).toBe(`"Roboto X"`);
63
- expect((0, font_data_1.normalizeFamily)(`"Roboto Bold"`, "Bold")).toBe(`"Roboto Bold"`);
64
- expect((0, font_data_1.normalizeFamily)(`"Roboto Bold" Bold`, "Bold")).toBe(`"Roboto Bold"`);
55
+ expect(normalizeFamily("Roboto Black", "Black")).toBe("Roboto");
56
+ expect(normalizeFamily("Roboto Light", "Light Italic")).toBe("Roboto");
57
+ expect(normalizeFamily("Robolder Bold", "Bold")).toBe("Robolder");
58
+ expect(normalizeFamily(" Roboto X Bold ", "Bold")).toBe("Roboto X");
59
+ expect(normalizeFamily(" 'Roboto X' Bold ", "Bold")).toBe("'Roboto X'");
60
+ expect(normalizeFamily(` "Roboto X" Bold `, "Bold")).toBe(`"Roboto X"`);
61
+ expect(normalizeFamily(`"Roboto Bold"`, "Bold")).toBe(`"Roboto Bold"`);
62
+ expect(normalizeFamily(`"Roboto Bold" Bold`, "Bold")).toBe(`"Roboto Bold"`);
65
63
  });
66
64
  });
67
65
  });
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fontWeights = void 0;
4
- exports.fontWeights = {
1
+ export const fontWeights = {
5
2
  "100": {
6
3
  label: "Thin",
7
4
  name: "thin",
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFontFaces = void 0;
4
- const constants_1 = require("./constants");
1
+ import { FONT_FORMATS } from "./constants";
5
2
  const formatFace = (asset, format) => {
6
3
  return {
7
4
  fontFamily: asset.meta.family,
@@ -12,11 +9,11 @@ const formatFace = (asset, format) => {
12
9
  };
13
10
  };
14
11
  const getKey = (asset) => asset.meta.family + asset.meta.style + asset.meta.weight;
15
- const getFontFaces = (assets) => {
12
+ export const getFontFaces = (assets) => {
16
13
  const faces = new Map();
17
14
  for (const asset of assets) {
18
15
  const face = faces.get(getKey(asset));
19
- const format = constants_1.FONT_FORMATS.get(asset.format);
16
+ const format = FONT_FORMATS.get(asset.format);
20
17
  if (format === undefined) {
21
18
  // Should never happen since we allow only uploading formats we support
22
19
  continue;
@@ -31,4 +28,3 @@ const getFontFaces = (assets) => {
31
28
  }
32
29
  return Array.from(faces.values());
33
30
  };
34
- exports.getFontFaces = getFontFaces;
@@ -1,6 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const get_font_faces_1 = require("./get-font-faces");
1
+ import { getFontFaces } from "./get-font-faces";
4
2
  describe("getFontFaces()", () => {
5
3
  test("different formats", () => {
6
4
  const assets = [
@@ -23,7 +21,7 @@ describe("getFontFaces()", () => {
23
21
  path: "/fonts/roboto.ttf",
24
22
  },
25
23
  ];
26
- expect((0, get_font_faces_1.getFontFaces)(assets)).toMatchSnapshot();
24
+ expect(getFontFaces(assets)).toMatchSnapshot();
27
25
  });
28
26
  test("different style", () => {
29
27
  const assets = [
@@ -46,7 +44,7 @@ describe("getFontFaces()", () => {
46
44
  path: "/fonts/roboto-italic.ttf",
47
45
  },
48
46
  ];
49
- expect((0, get_font_faces_1.getFontFaces)(assets)).toMatchSnapshot();
47
+ expect(getFontFaces(assets)).toMatchSnapshot();
50
48
  });
51
49
  test("different weight", () => {
52
50
  const assets = [
@@ -69,6 +67,6 @@ describe("getFontFaces()", () => {
69
67
  path: "/fonts/roboto-bold.ttf",
70
68
  },
71
69
  ];
72
- expect((0, get_font_faces_1.getFontFaces)(assets)).toMatchSnapshot();
70
+ expect(getFontFaces(assets)).toMatchSnapshot();
73
71
  });
74
72
  });
package/lib/index.js CHANGED
@@ -1,20 +1,4 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./constants"), exports);
18
- __exportStar(require("./get-font-faces"), exports);
19
- __exportStar(require("./types"), exports);
20
- __exportStar(require("./font-weights"), exports);
1
+ export * from "./constants";
2
+ export * from "./get-font-faces";
3
+ export * from "./types";
4
+ export * from "./font-weights";
@@ -1,20 +1,2 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.getFontData = void 0;
18
- var font_data_1 = require("./font-data");
19
- Object.defineProperty(exports, "getFontData", { enumerable: true, get: function () { return font_data_1.getFontData; } });
20
- __exportStar(require("./schema"), exports);
1
+ export { getFontData } from "./font-data";
2
+ export * from "./schema";
package/lib/schema.js CHANGED
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FontMeta = void 0;
4
- const zod_1 = require("zod");
5
- const font_data_1 = require("./font-data");
6
- exports.FontMeta = zod_1.z.object({
7
- family: zod_1.z.string(),
8
- style: zod_1.z.enum(font_data_1.styles),
9
- weight: zod_1.z.number(),
1
+ import { z } from "zod";
2
+ import { styles } from "./font-data";
3
+ export const FontMeta = z.object({
4
+ family: z.string(),
5
+ style: z.enum(styles),
6
+ weight: z.number(),
10
7
  });
@@ -0,0 +1 @@
1
+ {"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../node_modules/typescript/lib/lib.scripthost.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.full.d.ts","../../../node_modules/@types/react/global.d.ts","../../../node_modules/csstype/index.d.ts","../../../node_modules/@types/prop-types/index.d.ts","../../../node_modules/@types/scheduler/tracing.d.ts","../../../node_modules/@types/react/index.d.ts","../../../node_modules/@types/react/jsx-runtime.d.ts","../src/types.ts","../src/constants.ts","../../../node_modules/@types/node/ts4.8/assert.d.ts","../../../node_modules/@types/node/ts4.8/assert/strict.d.ts","../../../node_modules/@types/node/ts4.8/globals.d.ts","../../../node_modules/@types/node/ts4.8/async_hooks.d.ts","../../../node_modules/@types/node/ts4.8/buffer.d.ts","../../../node_modules/@types/node/ts4.8/child_process.d.ts","../../../node_modules/@types/node/ts4.8/cluster.d.ts","../../../node_modules/@types/node/ts4.8/console.d.ts","../../../node_modules/@types/node/ts4.8/constants.d.ts","../../../node_modules/@types/node/ts4.8/crypto.d.ts","../../../node_modules/@types/node/ts4.8/dgram.d.ts","../../../node_modules/@types/node/ts4.8/diagnostics_channel.d.ts","../../../node_modules/@types/node/ts4.8/dns.d.ts","../../../node_modules/@types/node/ts4.8/dns/promises.d.ts","../../../node_modules/@types/node/ts4.8/domain.d.ts","../../../node_modules/@types/node/ts4.8/dom-events.d.ts","../../../node_modules/@types/node/ts4.8/events.d.ts","../../../node_modules/@types/node/ts4.8/fs.d.ts","../../../node_modules/@types/node/ts4.8/fs/promises.d.ts","../../../node_modules/@types/node/ts4.8/http.d.ts","../../../node_modules/@types/node/ts4.8/http2.d.ts","../../../node_modules/@types/node/ts4.8/https.d.ts","../../../node_modules/@types/node/ts4.8/inspector.d.ts","../../../node_modules/@types/node/ts4.8/module.d.ts","../../../node_modules/@types/node/ts4.8/net.d.ts","../../../node_modules/@types/node/ts4.8/os.d.ts","../../../node_modules/@types/node/ts4.8/path.d.ts","../../../node_modules/@types/node/ts4.8/perf_hooks.d.ts","../../../node_modules/@types/node/ts4.8/process.d.ts","../../../node_modules/@types/node/ts4.8/punycode.d.ts","../../../node_modules/@types/node/ts4.8/querystring.d.ts","../../../node_modules/@types/node/ts4.8/readline.d.ts","../../../node_modules/@types/node/ts4.8/readline/promises.d.ts","../../../node_modules/@types/node/ts4.8/repl.d.ts","../../../node_modules/@types/node/ts4.8/stream.d.ts","../../../node_modules/@types/node/ts4.8/stream/promises.d.ts","../../../node_modules/@types/node/ts4.8/stream/consumers.d.ts","../../../node_modules/@types/node/ts4.8/stream/web.d.ts","../../../node_modules/@types/node/ts4.8/string_decoder.d.ts","../../../node_modules/@types/node/ts4.8/test.d.ts","../../../node_modules/@types/node/ts4.8/timers.d.ts","../../../node_modules/@types/node/ts4.8/timers/promises.d.ts","../../../node_modules/@types/node/ts4.8/tls.d.ts","../../../node_modules/@types/node/ts4.8/trace_events.d.ts","../../../node_modules/@types/node/ts4.8/tty.d.ts","../../../node_modules/@types/node/ts4.8/url.d.ts","../../../node_modules/@types/node/ts4.8/util.d.ts","../../../node_modules/@types/node/ts4.8/v8.d.ts","../../../node_modules/@types/node/ts4.8/vm.d.ts","../../../node_modules/@types/node/ts4.8/wasi.d.ts","../../../node_modules/@types/node/ts4.8/worker_threads.d.ts","../../../node_modules/@types/node/ts4.8/zlib.d.ts","../../../node_modules/@types/node/ts4.8/globals.global.d.ts","../../../node_modules/@types/node/ts4.8/index.d.ts","../../../node_modules/@types/fontkit/index.d.ts","../src/font-weights.ts","../src/font-data.ts","../src/font-data.test.ts","../../../node_modules/zod/lib/helpers/typeAliases.d.ts","../../../node_modules/zod/lib/helpers/util.d.ts","../../../node_modules/zod/lib/ZodError.d.ts","../../../node_modules/zod/lib/locales/en.d.ts","../../../node_modules/zod/lib/errors.d.ts","../../../node_modules/zod/lib/helpers/parseUtil.d.ts","../../../node_modules/zod/lib/helpers/enumUtil.d.ts","../../../node_modules/zod/lib/helpers/errorUtil.d.ts","../../../node_modules/zod/lib/helpers/partialUtil.d.ts","../../../node_modules/zod/lib/types.d.ts","../../../node_modules/zod/lib/external.d.ts","../../../node_modules/zod/lib/index.d.ts","../../../node_modules/zod/index.d.ts","../src/schema.ts","../src/get-font-faces.ts","../src/get-font-faces.test.ts","../src/index.server.ts","../src/index.ts","../../../node_modules/@types/estree/index.d.ts","../../../node_modules/@types/acorn/index.d.ts","../../../node_modules/@types/app-root-path/index.d.ts","../../../node_modules/@types/argparse/index.d.ts","../../../node_modules/@types/aria-query/index.d.ts","../../../node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__generator/index.d.ts","../../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../../node_modules/@types/babel__template/index.d.ts","../../../node_modules/@types/babel__traverse/index.d.ts","../../../node_modules/@types/babel__core/index.d.ts","../../../node_modules/keyv/src/index.d.ts","../../../node_modules/@types/http-cache-semantics/index.d.ts","../../../node_modules/@types/responselike/index.d.ts","../../../node_modules/@types/cacheable-request/index.d.ts","../../../node_modules/@types/cookie/index.d.ts","../../../node_modules/@types/css-tree/index.d.ts","../../../node_modules/@types/ms/index.d.ts","../../../node_modules/@types/debug/index.d.ts","../../../node_modules/@types/eslint/helpers.d.ts","../../../node_modules/@types/json-schema/index.d.ts","../../../node_modules/@types/eslint/index.d.ts","../../../node_modules/@types/eslint-scope/index.d.ts","../../../node_modules/@types/estree-jsx/index.d.ts","../../../node_modules/@types/fs-extra/index.d.ts","../../../node_modules/@types/minimatch/index.d.ts","../../../node_modules/@types/glob/index.d.ts","../../../node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/@types/unist/index.d.ts","../../../node_modules/@types/hast/index.d.ts","../../../node_modules/@types/hoist-non-react-statics/node_modules/@types/react/global.d.ts","../../../node_modules/@types/hoist-non-react-statics/node_modules/@types/react/index.d.ts","../../../node_modules/@types/hoist-non-react-statics/index.d.ts","../../../node_modules/@types/html-minifier-terser/index.d.ts","../../../node_modules/@types/hyphenate-style-name/index.d.ts","../../../node_modules/@types/is-function/index.d.ts","../../../node_modules/@types/isomorphic-fetch/index.d.ts","../../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../../node_modules/@types/istanbul-lib-report/index.d.ts","../../../node_modules/@types/istanbul-reports/index.d.ts","../../../node_modules/@jest/expect-utils/build/index.d.ts","../../../node_modules/chalk/index.d.ts","../../../node_modules/@sinclair/typebox/typebox.d.ts","../../../node_modules/@jest/schemas/build/index.d.ts","../../../node_modules/pretty-format/build/index.d.ts","../../../node_modules/jest-diff/build/index.d.ts","../../../node_modules/jest-matcher-utils/build/index.d.ts","../../../node_modules/expect/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts","../../../node_modules/@types/js-cookie/index.d.ts","../../../node_modules/@types/json-buffer/index.d.ts","../../../node_modules/@types/keyv/index.d.ts","../../../node_modules/@types/lodash/common/common.d.ts","../../../node_modules/@types/lodash/common/array.d.ts","../../../node_modules/@types/lodash/common/collection.d.ts","../../../node_modules/@types/lodash/common/date.d.ts","../../../node_modules/@types/lodash/common/function.d.ts","../../../node_modules/@types/lodash/common/lang.d.ts","../../../node_modules/@types/lodash/common/math.d.ts","../../../node_modules/@types/lodash/common/number.d.ts","../../../node_modules/@types/lodash/common/object.d.ts","../../../node_modules/@types/lodash/common/seq.d.ts","../../../node_modules/@types/lodash/common/string.d.ts","../../../node_modules/@types/lodash/common/util.d.ts","../../../node_modules/@types/lodash/index.d.ts","../../../node_modules/@types/lodash.capitalize/index.d.ts","../../../node_modules/@types/lodash.debounce/index.d.ts","../../../node_modules/@types/lodash.memoize/index.d.ts","../../../node_modules/@types/lodash.merge/index.d.ts","../../../node_modules/@types/lodash.noop/index.d.ts","../../../node_modules/@types/lodash.snakecase/index.d.ts","../../../node_modules/@types/mdast/index.d.ts","../../../node_modules/@types/mdurl/encode.d.ts","../../../node_modules/@types/mdurl/decode.d.ts","../../../node_modules/@types/mdurl/parse.d.ts","../../../node_modules/@types/mdurl/format.d.ts","../../../node_modules/@types/mdurl/index.d.ts","../../../node_modules/@types/minimist/index.d.ts","../../../node_modules/@types/node-fetch/node_modules/form-data/index.d.ts","../../../node_modules/@types/node-fetch/externals.d.ts","../../../node_modules/@types/node-fetch/index.d.ts","../../../node_modules/@types/normalize-package-data/index.d.ts","../../../node_modules/@types/npmlog/index.d.ts","../../../node_modules/@types/parse-json/index.d.ts","../../../node_modules/@types/parse5/index.d.ts","../../../node_modules/@types/prettier/index.d.ts","../../../node_modules/@types/pretty-hrtime/index.d.ts","../../../node_modules/@types/qs/index.d.ts","../../../node_modules/@types/react-color/node_modules/@types/react/index.d.ts","../../../node_modules/@types/reactcss/node_modules/@types/react/index.d.ts","../../../node_modules/@types/reactcss/index.d.ts","../../../node_modules/@types/react-color/lib/components/alpha/Alpha.d.ts","../../../node_modules/@types/react-color/lib/components/block/Block.d.ts","../../../node_modules/@types/react-color/lib/components/common/Checkboard.d.ts","../../../node_modules/@types/react-color/lib/components/chrome/Chrome.d.ts","../../../node_modules/@types/react-color/lib/components/circle/Circle.d.ts","../../../node_modules/@types/react-color/lib/components/compact/Compact.d.ts","../../../node_modules/@types/react-color/lib/components/github/Github.d.ts","../../../node_modules/@types/react-color/lib/components/hue/Hue.d.ts","../../../node_modules/@types/react-color/lib/components/material/Material.d.ts","../../../node_modules/@types/react-color/lib/components/photoshop/Photoshop.d.ts","../../../node_modules/@types/react-color/lib/components/sketch/Sketch.d.ts","../../../node_modules/@types/react-color/lib/components/slider/Slider.d.ts","../../../node_modules/@types/react-color/lib/components/swatches/Swatches.d.ts","../../../node_modules/@types/react-color/lib/components/twitter/Twitter.d.ts","../../../node_modules/@types/react-color/lib/components/common/ColorWrap.d.ts","../../../node_modules/@types/react-color/index.d.ts","../../../node_modules/@types/react-dom/index.d.ts","../../../node_modules/@types/react-syntax-highlighter/node_modules/@types/react/index.d.ts","../../../node_modules/@types/react-syntax-highlighter/index.d.ts","../../../node_modules/@types/scheduler/index.d.ts","../../../node_modules/@types/sharp/index.d.ts","../../../node_modules/@types/source-list-map/index.d.ts","../../../node_modules/@types/stack-utils/index.d.ts","../../../node_modules/@types/tapable/index.d.ts","../../../node_modules/@types/testing-library__jest-dom/matchers.d.ts","../../../node_modules/@types/testing-library__jest-dom/index.d.ts","../../../node_modules/source-map/source-map.d.ts","../../../node_modules/@types/uglify-js/index.d.ts","../../../node_modules/@types/uuid/index.d.ts","../../../node_modules/@types/w3c-css-typed-object-model-level-1/index.d.ts","../../../node_modules/anymatch/index.d.ts","../../../node_modules/@types/webpack-sources/node_modules/source-map/source-map.d.ts","../../../node_modules/@types/webpack-sources/lib/Source.d.ts","../../../node_modules/@types/webpack-sources/lib/CompatSource.d.ts","../../../node_modules/@types/webpack-sources/lib/ConcatSource.d.ts","../../../node_modules/@types/webpack-sources/lib/OriginalSource.d.ts","../../../node_modules/@types/webpack-sources/lib/PrefixSource.d.ts","../../../node_modules/@types/webpack-sources/lib/RawSource.d.ts","../../../node_modules/@types/webpack-sources/lib/ReplaceSource.d.ts","../../../node_modules/@types/webpack-sources/lib/SizeOnlySource.d.ts","../../../node_modules/@types/webpack-sources/lib/SourceMapSource.d.ts","../../../node_modules/@types/webpack-sources/lib/index.d.ts","../../../node_modules/@types/webpack-sources/lib/CachedSource.d.ts","../../../node_modules/@types/webpack-sources/index.d.ts","../../../node_modules/@types/webpack/index.d.ts","../../../node_modules/@types/webpack-env/index.d.ts","../../../node_modules/@types/yargs-parser/index.d.ts","../../../node_modules/@types/yargs/index.d.ts","../../../node_modules/@types/react-color/node_modules/@types/react/global.d.ts","../../../node_modules/@types/react-syntax-highlighter/node_modules/@types/react/global.d.ts","../../../node_modules/@types/reactcss/node_modules/@types/react/global.d.ts"],"fileInfos":[{"version":"f5c28122bee592cfaf5c72ed7bcc47f453b79778ffa6e301f45d21a0970719d4","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9",{"version":"3f149f903dd20dfeb7c80e228b659f0e436532de772469980dbd00702cc05cc1","affectsGlobalScope":true},{"version":"1272277fe7daa738e555eb6cc45ded42cc2d0f76c07294142283145d49e96186","affectsGlobalScope":true},{"version":"7fac8cb5fc820bc2a59ae11ef1c5b38d3832c6d0dfaec5acdb5569137d09a481","affectsGlobalScope":true},{"version":"097a57355ded99c68e6df1b738990448e0bf170e606707df5a7c0481ff2427cd","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"cd483c056da900716879771893a3c9772b66c3c88f8943b4205aec738a94b1d0","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"c37f8a49593a0030eecb51bbfa270e709bec9d79a6cc3bb851ef348d4e6b26f8","affectsGlobalScope":true},"f58c6d0669d1ee04b2fcb0e87fb949b6828602f3f29c7bf6c76a214f16fd50d5",{"version":"bbdf156fea2fabed31a569445835aeedcc33643d404fcbaa54541f06c109df3f","affectsGlobalScope":true},"ba7617784f6b9aeac5e20c5eea869bbc3ef31b905f59c796b0fd401dae17c111","6a386ff939f180ae8ef064699d8b7b6e62bc2731a62d7fbf5e02589383838dea","f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5",{"version":"a2037c0eea8dc883f41b8dcbc7e0f9b305f79989f4d310d77c9c321432a66411","affectsGlobalScope":true},"af7fd2870746deed40e130fc0a3966de74e8f52a97ec114d0fbb35876ab05ca9",{"version":"c982580eb6959afcf3e7601725de28d71f40605d7b08767e74a7a8ae37076da0","signature":"f62422d4080a083d7ad790daaed3c372829369d07a8f048a0bf12a26c708a25d"},{"version":"5f29909193645c3ae507f39eb485614abfdab2100cf3a6201764c10f08d2ac00","signature":"74523258b5302555fcdffdb652502cf525b26fc8005f938cf842be56bd6e9f46"},"7e771891adaa85b690266bc37bd6eb43bc57eecc4b54693ead36467e7369952a","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"02873d070f9cb79f50833fbf4a9a27ac578a2edf8ddb8421eba1b37faba83bfb","affectsGlobalScope":true},"21a167fec8f933752fb8157f06d28fab6817af3ad9b0bdb1908a10762391eab9",{"version":"c0db280fa6b09d7b8d6720a19a47f485956a41ee0e6914f1b704033eb69c6058","affectsGlobalScope":true},"0c0cee62cb619aed81133b904f644515ba3064487002a7da83fd8aa07b1b4abd","5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713",{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","afcc1c426b76db7ec80e563d4fb0ba9e6bcc6e63c2d7e9342e649dc56d26347f","bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","75ecef44f126e2ae018b4abbd85b6e8a2e2ba1638ebec56cc64274643ce3567b","f30bb836526d930a74593f7b0f5c1c46d10856415a8f69e5e2fc3db80371e362","14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea",{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true},{"version":"816ad2e607a96de5bcac7d437f843f5afd8957f1fa5eefa6bba8e4ed7ca8fd84","affectsGlobalScope":true},"cec36af22f514322f870e81d30675c78df82ae8bf4863f5fd4e4424c040c678d","d903fafe96674bc0b2ac38a5be4a8fc07b14c2548d1cdb165a80ea24c44c0c54","b01a80007e448d035a16c74b5c95a5405b2e81b12fabcf18b75aa9eb9ef28990","04eb6578a588d6a46f50299b55f30e3a04ef27d0c5a46c57d8fcc211cd530faa","dbe5aa5a5dd8bd1c6a8d11b1310c3f0cdabaacc78a37b394a8c7b14faeb5fb84","2c828a5405191d006115ab34e191b8474bc6c86ffdc401d1a9864b1b6e088a58",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"d4ac44f01d42f541631c5fc88d0ed8efac29a3a3ad9a745d9fd58f8b61ed132e","7c013aa892414a7fdcfd861ae524a668eaa3ede8c7c0acafaf611948122c8d93","b0973c3cbcdc59b37bf477731d468696ecaf442593ec51bab497a613a580fe30",{"version":"4989e92ba5b69b182d2caaea6295af52b7dc73a4f7a2e336a676722884e7139d","affectsGlobalScope":true},{"version":"b3624aed92dab6da8484280d3cb3e2f4130ec3f4ef3f8201c95144ae9e898bb6","affectsGlobalScope":true},"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","210d54cd652ec0fec8c8916e4af59bb341065576ecda039842f9ffb2e908507c","36b03690b628eab08703d63f04eaa89c5df202e5f1edf3989f13ad389cd2c091","0effadd232a20498b11308058e334d3339cc5bf8c4c858393e38d9d4c0013dcf","25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","3163f47436da41706c6e2b3c1511f3b7cce9f9f3905b2f3e01246c48b4ba7d14","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","69ee23dd0d215b09907ad30d23f88b7790c93329d1faf31d7835552a10cf7cbf","44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","213fc4f2b172d8beb74b77d7c1b41488d67348066d185e4263470cbb010cd6e8",{"version":"970a90f76d4d219ad60819d61f5994514087ba94c985647a3474a5a3d12714ed","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","4c8525f256873c7ba3135338c647eaf0ca7115a1a2805ae2d0056629461186ce","3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2",{"version":"f0900cd5d00fe1263ff41201fb8073dbeb984397e4af3b8002a5c207a30bdc33","affectsGlobalScope":true},{"version":"f7db71191aa7aac5d6bc927ed6e7075c2763d22c7238227ec0c63c8cf5cb6a8b","affectsGlobalScope":true},"06d7c42d256f0ce6afe1b2b6cfbc97ab391f29dadb00dd0ae8e8f23f5bc916c3","ec4bd1b200670fb567920db572d6701ed42a9641d09c4ff6869768c8f81b404c","e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa",{"version":"da26af7362f53d122283bc69fed862b9a9fe27e01bc6a69d1d682e0e5a4df3e6","affectsGlobalScope":true},"8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"652ee9c5103e89102d87bc20d167a02a0e3e5e53665674466c8cfea8a9e418c7","ecc7834986eda039e20c66fc9101b638be1e56888c2c443ce3a9919e33881a98",{"version":"374d95cf3c5e01c67831f27da900ffc67391be5d9024875524118c1bcc09c1a6","signature":"9f0a0bd426916710d83c07323b784fdc421a48b117153e0290028b3efa594d78"},{"version":"0b58f2d75e8d24f2cb658e2675d306fb03e40bb9757751c9f7f69bdb94481bba","signature":"3892ad756e25e762dff756a3fe5329a5aa23a2142a07af90d320a600a2a4a182"},{"version":"ec1f8de5a707ebc0cb3b13a2a7b2bba471df0a613f81f7eef195eab74ce3cb9e","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},"9afae14803f3b7343ed6d193173008715c1fa3421a353a818c805244ed737a84","bb98c05ae5cb9bd7cb7ad76fe517251a661787a6f24337b842f47faf393f79c7","a93bf95f7009c90e7d1edb092560d4052e3ebbe9b9ad2d796bcd95dc4306825c","8485b6da53ec35637d072e516631d25dae53984500de70a6989058f24354666f","ebe80346928736532e4a822154eb77f57ef3389dbe2b3ba4e571366a15448ef2","c2cb3c8ff388781258ea9ddbcd8a947f751bddd6886e1d3b3ea09ddaa895df80","f672c876c1a04a223cf2023b3d91e8a52bb1544c576b81bf64a8fec82be9969c","014b34d4c2ef27191fdf3feabb6557ec92127f813910725b6e79ed9a49e466b6","72efc3e8cee3cb13144cb63bb8aacf28f918439a2ff222de89e0e5d7ba9c7170","b61efb129c7011068cb4ccbbd86d5741ac82653476b09f46d3d06dd99b5b687e","2b7961486503fa279a4f1a52928d8c31fc6558c335b750878721467210552dd7","d1f62988c7e8e8650f7ed39520a766648155abbf75dd89f60e24f069433301d4","5568d7c32e5cf5f35e092649f4e5e168c3114c800b1d7545b7ae5e0415704802",{"version":"6e064801e8ace3a093bf5c68560665de8a07ca735c70610f58e5c1b276e0123a","signature":"6cd6c94ca5ed780288e144488e947a5e7558e60ecd378fba5b1ae574255b5698"},{"version":"54ed221fdb43113de9dd5d01d225d000efb5081bfc7bae3fb973f8e29952abe1","signature":"a093438605fc3148b77d12ccb7a83183808a637ac1625e3b7cf70cc6b8c27ed2"},{"version":"562ed710e51e53d21284822c451dbb03a6c54ba48d2d8305b90e617b0236e2c9","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},"e6b80788392e023deb3247828b9254713479a19df7ef930b9c2b2e10d16b95bb","fc7a4e8daa03e7d1250fe6d7cc938d0d0b3d31a9da7e519cfa31a4a0ac089c1a","ade6e6c42087188b5c56f0384651c32736b2df192dadd3c8617e9845b76fd41b","3777eb752cef9aa8dd35bb997145413310008aa54ec44766de81a7ad891526cd","a0787dbc5e8a2332389601483bbf8dead0fa95f57a3b60367c995f0dde08dcf7","dc3b172ee27054dbcedcf5007b78c256021db936f6313a9ce9a3ecbb503fd646","5024433f8da3a7968f6d12cffd32f2cefae4442a9ad1c965fa2d23342338b700","b2f7fe7faccd7324583435ad92f8cb26a4ccc85de336839cf78afd6006f1d4bc","cc957354aa3c94c9961ebf46282cfde1e81d107fc5785a61f62c67f1dd3ac2eb","7463cb4f8b66b66d5468fc84f5446f48b8402cdeec6bfce1f0b2ab383992d3b5","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","dae3d1adc67ac3dbd1cd471889301339ec439837b5df565982345be20c8fca9a","5426e62886b7be7806312d31a00e8f7dccd6fe63ba9bbefe99ee2eab29cc48a3","275ab6886b96185e298bf6bd9c16c1d198ad657e4bdcca8d1362b5ff373d4133","cab425b5559edac18327eb2c3c0f47e7e9f71b667290b7689faafd28aac69eae","3cfb0cb51cc2c2e1b313d7c4df04dbf7e5bda0a133c6b309bf6af77cf614b971","f992cd6cc0bcbaa4e6c810468c90f2d8595f8c6c3cf050c806397d3de8585562","117ffeecf6c55e25b6446f449ad079029b5e7317399b0a693858faaaea5ca73e","af9abc3144d279b29affb0e6dd842609eca65fb44c712368f6a89bb264b34ef4","6a9c5127096b35264eb7cd21b2417bfc1d42cceca9ba4ce2bb0c3410b7816042","78828b06c0d3b586954015e9ebde5480b009e166c71244763bda328ec0920f41",{"version":"64d4b35c5456adf258d2cf56c341e203a073253f229ef3208fc0d5020253b241","affectsGlobalScope":true},"f3e604694b624fa3f83f6684185452992088f5efb2cf136b62474aa106d6f1b6","c6297435733f252a9c0e2297fab3b58014b8fde5fa097a4102dae4e12522bccd","e050a0afcdbb269720a900c85076d18e0c1ab73e580202a2bf6964978181222a","f54243828d27a24d59ebf25740dfe6e7dff3931723f8ce7b658cdbe766f89da9","ed19da84b7dbf00952ad0b98ce5c194f1903bcf7c94d8103e8e0d63b271543ae","8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba","cddf5c26907c0b8378bc05543161c11637b830da9fadf59e02a11e675d11e180","3d2cd8f3047fff04a71e7037a6a4cb9f4accb28dbd8c0d83164d414811025af0",{"version":"bbdf156fea2fabed31a569445835aeedcc33643d404fcbaa54541f06c109df3f","affectsGlobalScope":true},{"version":"e870860b52176fc9c884bbd62b6dbb4982e84a3dd33782333b952653979911eb","affectsGlobalScope":true},"bfe1b52cf71aea9bf8815810cc5d9490fa9617313e3d3c2ee3809a28b80d0bb4","70b34c8420d6226ed565d55f47fe04912d0ca0ad128825c5a06e018a3498db32","477588741c1175ac66da92a9bad22c9aefbd0e7a49e31081bd3a722fa3eef371","de1d6e224048139baf7494237a9231be6bab9e990fb239c7825bfd38b06d8c90","fae93d9ef28074f6ca3b3b95a5244cebad3537571dc89ca849230e91cdb53411","8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","a7321c0e96eecb19dcbf178493836474cef21ee3f9345384ce9d74e4be31228d","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","3054ef91b855e005b9c4681399e9d64d2a7b07a22d539314d794f09e53b876a7","427ce5854885cfc34387e09de05c1d5c1acf94c2143e1693f1d9ff54880573e7","bed2c4f96fab3348be4a34d88dcb12578c1b2475b07c6acd369e99e227718d81","e3ba509d3dce019b3190ceb2f3fc88e2610ab717122dabd91a9efaa37804040d","9ac9b7b349a96ff204f4172183cca1672cc402e1ee7277bfcdec96c000b7d818","ac127e4c6f2b5220b293cc9d2e64ba49781225b792a51cda50f3db8eafba550c",{"version":"829d85f485c93bf1b28cd69fe540e985eea1d111628efa384e6c4ac8546da5c8","affectsGlobalScope":true},"b3338366fe1f2c5f978e2ec200f57d35c5bd2c4c90c2191f1e638cfa5621c1f6","75bdc1b420f0ffc6cc6fd0b6694d89f5072bf755b4e6c7e65a2fda797ca0bb8a","fec943fdb3275eb6e006b35e04a8e2e99e9adf3f4b969ddf15315ac7575a93e4","675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8","fe4a2042d087990ebfc7dc0142d5aaf5a152e4baea86b45f283f103ec1e871ea","d70c026dd2eeaa974f430ea229230a1897fdb897dc74659deebe2afd4feeb08f","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6","ca59fe42b81228a317812e95a2e72ccc8c7f1911b5f0c2a032adf41a0161ec5d","9364c7566b0be2f7b70ff5285eb34686f83ccb01bda529b82d23b2a844653bfb","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","ae9930989ed57478eb03b9b80ad3efa7a3eacdfeff0f78ecf7894c4963a64f93","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","3e59f00ab03c33717b3130066d4debb272da90eeded4935ff0604c2bc25a5cae","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9",{"version":"f2eff8704452659641164876c1ef0df4174659ce7311b0665798ea3f556fa9ad","affectsGlobalScope":true},"4c6a5d926a64abd66f65deb3453a7c349836bfc07450ce6f680e46ef03eab3ca","4607333964d422f3ce30617fa24d14c859245fb64d26ead03720820dbbe953a0","865660d929bfb5782d39e67e1a24176b2a92103446d644d5c5700bd2534ba7b1","48dda80ea0610c7d09f545c2f73601719064075ec0379946e28e1681f1a9ff98","22fd99b9b9ada2611e21ce0f586340d794561a655d7408da765b02759cd747f7","ddbfae0c834a7c1392c5b8531cd4428503a82f1b522da8aa19a590d1b2db24b2","2a2e2c6463bcf3c59f31bc9ab4b6ef963bbf7dffb049cd017e2c1834e3adca63","f313731860257325f13351575f381fef333d4dfe30daf5a2e72f894208feea08","951b37f7d86f6012f09e6b35f1de57c69d75f16908cb0adaa56b93675ea0b853","3816fc03ffd9cbd1a7a3362a264756a4a1d547caabea50ca68303046be40e376","0c417b4ec46b88fb62a43ec00204700b560d01eb5677c7faa8ecd34610f096a8","13d29cdeb64e8496424edf42749bbb47de5e42d201cf958911a4638cbcffbd3f","209e814e8e71aec74f69686a9506dd7610b97ab59dcee9446266446f72a76d05","736097ddbb2903bef918bb3b5811ef1c9c5656f2a73bd39b22a91b9cc2525e50","3898e3dbe94b6fe529fbe8f0faee1309c1923100516d7a014b301955e52ece77","3663d1b50f356656a314e5df169bb51cb9d5fd75905fa703f75db6bb32030568","6fa0008bf91a4cc9c8963bace4bba0bd6865cbfa29c3e3ccc461155660fb113a","df38da6685578ac3d0e4ce2d20f3d59462ee53959b8263d2532ec9cec48ae098","2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b","c555dd691dd05955e99cd93dd99c685a65e5287813ccb5e6bfde951183248e26","93c4fc5b5237c09bc9ed65cb8f0dc1d89034406ab40500b89701341994897142","c0a3ea3aee13c4946a6aefce3a6ab9292a40a29f6622cde0fda0b1067a1a1f5f","ba601641fac98c229ccd4a303f747de376d761babb33229bb7153bed9356c9cc",{"version":"e870860b52176fc9c884bbd62b6dbb4982e84a3dd33782333b952653979911eb","affectsGlobalScope":true},{"version":"e870860b52176fc9c884bbd62b6dbb4982e84a3dd33782333b952653979911eb","affectsGlobalScope":true},"ebe77545478bf39a23059a3b0ea03d2c0e502d9c8e1122015e19213cd0815097","ad8c69f4a471cafdf093acdcdf3b444ae56b227b92024ae45f8c9c9c8be8afcc","71a6149f67a64b55baeddb83e5254e9e017c80c15a260d6f6b3a12deb3a575ed","6c881abb4a0e7579a9d5b63a7e4da3d98b094adf0f1d1fa75bbe433b9f3d7c27","66d6844502d7764a8e02b632228c4c5a95f7cac7bce1a0db07f0dcc377d3755b","2e1be3fee9ccef82555b2f039e8e100e0a176ee2d18b0de95e7da6a61e1e360a","5c48fc6096e361e639c1d0a9f7f066242bf757ace84843582d29c6813563055a","bebac54845e03ea36044fab99b5a51266cec2492fcd8a95bde6d5527a3174732","ef141fd0ac854fc92cbc9a13cd25a0ac87b3961f70d516f191bb3e29d3b183fe","a90c6f5554bd74f63aaf03751e6b79d01a457b59339b03d308c16af8f266cf47","7d5d42c18c62ef137b8830b7de8432b466c8f4d93fa8476ac36d2f69114fad1e","484faf958ae025f8d1ce6cb9c75e12c2148190efc22151299d14d10e3601cbba","66ddf54cc3d66cdab1b69e6879af9876bbc30030f85e51ba8a73223339e65b85","734166f6ae00b52512304c153644963fd93cd152620231ea7a0560802c968d28","15ce0cfa537ada25e07633617a993a8e02827939c2128d39c010739f28a0379c","a3868158152cc946c27c5e7b7803537c14cada9bb442c96c759c66b0d01f9eca","00ee901c4135af0d5688bee246d1e42ef7421cec93c32587e4814f744b95e2e8","f02af84e409458d77baa712aaac7680635b47bd162a39367618ec744085f97be",{"version":"e870860b52176fc9c884bbd62b6dbb4982e84a3dd33782333b952653979911eb","affectsGlobalScope":true},{"version":"cffd3848b7af4922d70028c805b7df5e8f0eac4a8d2410b0f55b47ca62c6c3a8","affectsGlobalScope":true},"74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57","9a3543c44353d9c26f692202287e170a993bd3a94dee02521c279e5cd9427657","67fc055eb86a0632e2e072838f889ffe1754083cb13c8c80a06a7d895d877aae","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","3833c70307dc3d2b46cb6f2a8b6a90e4d7e7367a21ab18c481d7de0909a43e67","49c972b1c491933723861f15cba6ae694466abfd0938ca4f366621127bb51962",{"version":"910199067bfd07a4605bf51001677680e1691f8d403e9d410c0fe33a6079cd58","affectsGlobalScope":true},"2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579","8b8402206c66fb74dd0065299d679b4f5ef9c8533132423217ae22d71b0482d0","fab58e600970e66547644a44bc9918e3223aa2cbd9e8763cec004b2cfb48827e",{"version":"07036269d2559f7e15db14a818fdaf50ed41107b1e8855507731d19a82e73de1","affectsGlobalScope":true},"4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349","b90c59ac4682368a01c83881b814738eb151de8a58f52eb7edadea2bcffb11b9","8560a87b2e9f8e2c3808c8f6172c9b7eb6c9b08cb9f937db71c285ecf292c81d","ffe3931ff864f28d80ae2f33bd11123ad3d7bad9896b910a1e61504cc093e1f5","083c1bd82f8dc3a1ed6fc9e8eaddf141f7c05df418eca386598821e045253af9","274ebe605bd7f71ce161f9f5328febc7d547a2929f803f04b44ec4a7d8729517","6ca0207e70d985a24396583f55836b10dc181063ab6069733561bfde404d1bad","5908142efeaab38ffdf43927ee0af681ae77e0d7672b956dfb8b6c705dbfe106","f772b188b943549b5c5eb803133314b8aa7689eced80eed0b70e2f30ca07ab9c","0026b816ef05cfbf290e8585820eef0f13250438669107dfc44482bac007b14f","05d64cc1118031b29786632a9a0f6d7cf1dcacb303f27023a466cf3cdc860538","e0fff9119e1a5d2fdd46345734126cd6cb99c2d98a9debf0257047fe3937cc3f","d84398556ba4595ee6be554671da142cfe964cbdebb2f0c517a10f76f2b016c0","e275297155ec3251200abbb334c7f5641fecc68b2a9573e40eed50dff7584762","b2f006ee835f315d01c43c0f5d9e9ad78a5870b380899877b32a33078d065dbd",{"version":"3a6de361cea25e21054d8f8a8e35c5c0df730982f9b9fb613a6e9029e54071e5","affectsGlobalScope":true},"70e9a18da08294f75bf23e46c7d69e67634c0765d355887b9b41f0d959e1426e","28288f5e5f8b7b895ed2abe6359c1da3e0d14a64b5aef985071285671f347c01"],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"inlineSources":false,"jsx":4,"module":1,"noUnusedLocals":true,"noUnusedParameters":false,"outDir":"./cjs","rootDir":"../src","skipLibCheck":true,"strict":true,"target":7},"fileIdsList":[[100,135],[100],[100,172],[100,130],[100,135,136,137,138,139],[100,135,137],[70,73,99,100,107,141,142,143],[100,147],[100,130,151],[100,130,149,150],[100,107],[71,100,107],[70,71,100,107,155],[100,158],[100,161],[47,48,49,100,160],[100,167],[100,168],[100,174,177],[70,100,107],[100,194],[100,182,184,185,186,187,188,189,190,191,192,193,194],[100,182,183,185,186,187,188,189,190,191,192,193,194],[100,183,184,185,186,187,188,189,190,191,192,193,194],[100,182,183,184,186,187,188,189,190,191,192,193,194],[100,182,183,184,185,187,188,189,190,191,192,193,194],[100,182,183,184,185,186,188,189,190,191,192,193,194],[100,182,183,184,185,186,187,189,190,191,192,193,194],[100,182,183,184,185,186,187,188,190,191,192,193,194],[100,182,183,184,185,186,187,188,189,191,192,193,194],[100,182,183,184,185,186,187,188,189,190,192,193,194],[100,182,183,184,185,186,187,188,189,190,191,193,194],[100,182,183,184,185,186,187,188,189,190,191,192,194],[100,182,183,184,185,186,187,188,189,190,191,192,193],[100,206],[100,202,203,204,205],[73,99,100,107,208,209],[73,88,100,107],[54,100],[57,100],[58,63,91,100],[59,70,71,78,88,99,100],[59,60,70,78,100],[61,100],[62,63,71,79,100],[63,88,96,100],[64,66,70,78,100],[65,100],[66,67,100],[70,100],[68,70,100],[70,71,72,88,99,100],[70,71,72,85,88,91,100],[100,104],[73,78,88,99,100],[70,71,73,74,78,88,96,99,100],[73,75,88,96,99,100],[54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106],[70,76,100],[77,99,100],[66,70,78,88,100],[79,100],[80,100],[57,81,100],[82,98,100,104],[83,100],[84,100],[70,85,86,100],[85,87,100,102],[58,70,88,89,90,91,100],[58,88,90,100],[88,89,100],[91,100],[92,100],[70,94,95,100],[94,95,100],[63,78,88,96,100],[97,100],[78,98,100],[58,73,84,99,100],[63,100],[88,100,101],[100,102],[100,103],[58,63,70,72,81,88,99,100,102,104],[88,100,105],[100,161,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235],[100,161,220,236],[100,161,236],[47,48,49,100,269],[50,100],[100,161,239],[47,48,49,100,270],[46,47,48,49,100],[47,48,49,100,271],[88,100,107],[100,178,245],[100,247],[100,107,253,254,255,256,257,258,259,260,261,262,263],[100,252,253,262],[100,253,262],[100,242,252,253,262],[100,253],[63,100,252,262],[100,252,253,254,255,256,257,258,259,260,261,263],[63,100,107,244,247,248,251,264],[100,267],[100,170,176],[100,174],[100,171,175],[100,173],[100,123],[100,112,113,123],[100,114,115],[100,112,113,114,116,117,121],[100,113,114],[100,122],[100,114],[100,112,113,114,117,118,119,120],[51,52,100],[51,100,110],[51,52,100,108,109,110],[51,100],[51,100,126],[51,52,53,100,125],[51,100,110,125],[51,52,53,100,109,126],[51,100,110,124],[52],[52,108,110],[52,125],[124]],"referencedMap":[[137,1],[135,2],[170,2],[173,3],[172,2],[131,4],[132,2],[133,2],[134,2],[140,5],[136,1],[138,6],[139,1],[144,7],[145,2],[146,2],[148,8],[152,9],[149,2],[151,10],[153,4],[130,2],[108,11],[154,12],[156,13],[157,12],[159,14],[162,15],[160,2],[161,16],[163,2],[142,2],[164,2],[165,2],[166,2],[167,2],[168,17],[169,18],[178,19],[179,2],[180,2],[150,2],[181,20],[195,21],[196,21],[197,21],[198,21],[199,21],[200,21],[183,22],[184,23],[182,24],[185,25],[186,26],[187,27],[188,28],[189,29],[190,30],[191,31],[192,32],[193,33],[194,34],[201,14],[203,2],[202,2],[205,35],[206,36],[204,35],[155,2],[207,2],[147,2],[209,2],[210,37],[208,38],[54,39],[55,39],[57,40],[58,41],[59,42],[60,43],[61,44],[62,45],[63,46],[64,47],[65,48],[66,49],[67,49],[69,50],[68,51],[70,50],[71,52],[72,53],[56,54],[106,2],[73,55],[74,56],[75,57],[107,58],[76,59],[77,60],[78,61],[79,62],[80,63],[81,64],[82,65],[83,66],[84,67],[85,68],[86,68],[87,69],[88,70],[90,71],[89,72],[91,73],[92,74],[93,2],[94,75],[95,76],[96,77],[97,78],[98,79],[99,80],[100,81],[101,82],[102,83],[103,84],[104,85],[105,86],[211,2],[212,50],[213,2],[214,2],[215,2],[216,2],[48,2],[217,2],[236,87],[221,88],[222,88],[224,88],[225,88],[223,15],[235,89],[226,88],[227,88],[228,88],[229,88],[230,88],[231,88],[232,88],[233,88],[234,88],[218,90],[237,91],[239,92],[238,93],[46,2],[50,94],[51,91],[220,15],[219,95],[143,38],[240,2],[49,2],[241,96],[242,2],[243,2],[244,2],[246,97],[245,2],[248,98],[158,2],[249,2],[250,2],[266,2],[264,99],[263,100],[254,101],[255,102],[256,102],[257,101],[258,101],[259,101],[260,103],[253,104],[261,100],[262,105],[252,2],[265,106],[267,2],[268,107],[251,2],[171,2],[47,2],[177,108],[175,109],[176,110],[141,50],[174,111],[247,2],[8,2],[9,2],[13,2],[12,2],[2,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[3,2],[4,2],[25,2],[22,2],[23,2],[24,2],[26,2],[27,2],[28,2],[5,2],[29,2],[30,2],[31,2],[32,2],[6,2],[33,2],[34,2],[35,2],[36,2],[7,2],[37,2],[45,2],[42,2],[43,2],[38,2],[39,2],[40,2],[41,2],[1,2],[44,2],[11,2],[10,2],[124,112],[114,113],[116,114],[122,115],[118,2],[119,2],[117,116],[120,112],[112,2],[113,2],[123,117],[115,118],[121,119],[53,120],[111,121],[110,122],[109,123],[127,124],[126,125],[128,126],[129,127],[125,128],[52,123]],"exportedModulesMap":[[137,1],[135,2],[170,2],[173,3],[172,2],[131,4],[132,2],[133,2],[134,2],[140,5],[136,1],[138,6],[139,1],[144,7],[145,2],[146,2],[148,8],[152,9],[149,2],[151,10],[153,4],[130,2],[108,11],[154,12],[156,13],[157,12],[159,14],[162,15],[160,2],[161,16],[163,2],[142,2],[164,2],[165,2],[166,2],[167,2],[168,17],[169,18],[178,19],[179,2],[180,2],[150,2],[181,20],[195,21],[196,21],[197,21],[198,21],[199,21],[200,21],[183,22],[184,23],[182,24],[185,25],[186,26],[187,27],[188,28],[189,29],[190,30],[191,31],[192,32],[193,33],[194,34],[201,14],[203,2],[202,2],[205,35],[206,36],[204,35],[155,2],[207,2],[147,2],[209,2],[210,37],[208,38],[54,39],[55,39],[57,40],[58,41],[59,42],[60,43],[61,44],[62,45],[63,46],[64,47],[65,48],[66,49],[67,49],[69,50],[68,51],[70,50],[71,52],[72,53],[56,54],[106,2],[73,55],[74,56],[75,57],[107,58],[76,59],[77,60],[78,61],[79,62],[80,63],[81,64],[82,65],[83,66],[84,67],[85,68],[86,68],[87,69],[88,70],[90,71],[89,72],[91,73],[92,74],[93,2],[94,75],[95,76],[96,77],[97,78],[98,79],[99,80],[100,81],[101,82],[102,83],[103,84],[104,85],[105,86],[211,2],[212,50],[213,2],[214,2],[215,2],[216,2],[48,2],[217,2],[236,87],[221,88],[222,88],[224,88],[225,88],[223,15],[235,89],[226,88],[227,88],[228,88],[229,88],[230,88],[231,88],[232,88],[233,88],[234,88],[218,90],[237,91],[239,92],[238,93],[46,2],[50,94],[51,91],[220,15],[219,95],[143,38],[240,2],[49,2],[241,96],[242,2],[243,2],[244,2],[246,97],[245,2],[248,98],[158,2],[249,2],[250,2],[266,2],[264,99],[263,100],[254,101],[255,102],[256,102],[257,101],[258,101],[259,101],[260,103],[253,104],[261,100],[262,105],[252,2],[265,106],[267,2],[268,107],[251,2],[171,2],[47,2],[177,108],[175,109],[176,110],[141,50],[174,111],[247,2],[8,2],[9,2],[13,2],[12,2],[2,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[3,2],[4,2],[25,2],[22,2],[23,2],[24,2],[26,2],[27,2],[28,2],[5,2],[29,2],[30,2],[31,2],[32,2],[6,2],[33,2],[34,2],[35,2],[36,2],[7,2],[37,2],[45,2],[42,2],[43,2],[38,2],[39,2],[40,2],[41,2],[1,2],[44,2],[11,2],[10,2],[124,112],[114,113],[116,114],[122,115],[118,2],[119,2],[117,116],[120,112],[112,2],[113,2],[123,117],[115,118],[121,119],[53,129],[110,130],[126,131],[128,126],[129,127],[125,132]],"semanticDiagnosticsPerFile":[137,135,170,173,172,131,132,133,134,140,136,138,139,144,145,146,148,152,149,151,153,130,108,154,156,157,159,162,160,161,163,142,164,165,166,167,168,169,178,179,180,150,181,195,196,197,198,199,200,183,184,182,185,186,187,188,189,190,191,192,193,194,201,203,202,205,206,204,155,207,147,209,210,208,54,55,57,58,59,60,61,62,63,64,65,66,67,69,68,70,71,72,56,106,73,74,75,107,76,77,78,79,80,81,82,83,84,85,86,87,88,90,89,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,211,212,213,214,215,216,48,217,236,221,222,224,225,223,235,226,227,228,229,230,231,232,233,234,218,237,239,238,46,50,51,220,219,143,240,49,241,242,243,244,246,245,248,158,249,250,266,264,263,254,255,256,257,258,259,260,253,261,262,252,265,267,268,251,171,47,177,175,176,141,174,247,8,9,13,12,2,14,15,16,17,18,19,20,21,3,4,25,22,23,24,26,27,28,5,29,30,31,32,6,33,34,35,36,7,37,45,42,43,38,39,40,41,1,44,11,10,124,114,116,122,118,119,117,120,112,113,123,115,121,53,111,110,109,127,126,128,129,125,52]},"version":"4.7.4"}
package/lib/types.js CHANGED
@@ -1,2 +1 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ export {};
package/package.json CHANGED
@@ -1,32 +1,42 @@
1
1
  {
2
2
  "name": "@webstudio-is/fonts",
3
- "version": "0.1.1",
3
+ "version": "0.2.0",
4
4
  "description": "Fonts utils",
5
5
  "author": "Webstudio <github@webstudio.is>",
6
6
  "homepage": "https://webstudio.is",
7
+ "type": "module",
7
8
  "scripts": {
8
9
  "typecheck": "tsc --noEmit",
9
- "test": "jest",
10
+ "test": "NODE_OPTIONS=--experimental-vm-modules jest",
10
11
  "checks": "yarn typecheck && yarn lint && yarn test",
11
12
  "dev": "tsup --watch",
12
- "build": "rm -fr lib tsconfig.tsbuildinfo && tsc",
13
- "lint": "eslint ./src --ext .ts,.tsx --max-warnings 0"
13
+ "build:cjs": "tsc --module commonjs --outDir lib/cjs && find lib/cjs -name '*.js' | while read NAME; do mv $NAME ${NAME%.js}.cjs; done",
14
+ "build": "rm -fr lib tsconfig.tsbuildinfo && tsc && yarn build:cjs",
15
+ "lint": "eslint ./src --ext .ts,.tsx --max-warnings 0",
16
+ "publish-to-npm": "bash ../../bin/publish-to-npm.sh"
14
17
  },
15
18
  "dependencies": {
16
19
  "fontkit": "^2.0.2"
17
20
  },
18
21
  "devDependencies": {
22
+ "@types/fontkit": "^2.0.0",
19
23
  "@webstudio-is/design-system": "*",
20
24
  "@webstudio-is/jest-config": "*",
21
25
  "tsup": "^6.1.3",
22
26
  "typescript": "4.7.4",
23
- "@types/fontkit": "^1.8.0",
24
27
  "zod": "^3.19.1"
25
28
  },
26
29
  "peerDependencies": {
27
30
  "zod": "^3.19.1"
28
31
  },
29
- "main": "lib/index.js",
32
+ "module": "./lib/index.js",
33
+ "exports": {
34
+ ".": {
35
+ "import": "./lib/index.js",
36
+ "require": "./lib/cjs/index.cjs"
37
+ },
38
+ "./server": "./server.js"
39
+ },
30
40
  "types": "lib/index.d.ts",
31
41
  "files": [
32
42
  "lib/*",
@@ -41,7 +51,7 @@
41
51
  "src/index.ts",
42
52
  "src/index.server.ts"
43
53
  ],
44
- "format": "cjs",
54
+ "format": "esm",
45
55
  "outDir": "lib"
46
56
  }
47
57
  }