new changes

This commit is contained in:
Niranjan
2026-04-07 05:05:28 +05:30
parent 7c070224bd
commit a18bba15f2
29975 changed files with 3247495 additions and 2761 deletions

View File

@@ -0,0 +1 @@
export {};

View File

@@ -0,0 +1,11 @@
import { describe, test, expect, jest } from '@jest/globals';
import { readFile } from 'node:fs/promises';
describe('Testing CLI', () => {
test('should work', async () => {
jest.setTimeout(5000);
expect((await import('child_process')).execSync('node ./bin/ttf2woff2.js', {
input: await readFile('fixtures/iconsfont.ttf'),
})).toEqual(await readFile('fixtures/iconsfont.woff2'));
});
});
//# sourceMappingURL=cli.test.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"cli.test.js","sourceRoot":"","sources":["../src/cli.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,IAAI,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE;QAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtB,MAAM,CACJ,CAAC,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,EAAE;YAClE,KAAK,EAAE,MAAM,QAAQ,CAAC,wBAAwB,CAAC;SAChD,CAAC,CACH,CAAC,OAAO,CAAC,MAAM,QAAQ,CAAC,0BAA0B,CAAC,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}

View File

@@ -0,0 +1,3 @@
declare const ttf2woff2: any;
declare const _default: NonNullable<typeof ttf2woff2>;
export default _default;

View File

@@ -0,0 +1,30 @@
import { YError, printStackTrace } from 'yerror';
import debug from 'debug';
import { env } from 'node:process';
import bindings from 'bindings';
import ttf2woff2Loader from '../jssrc/index.js';
const doDebug = debug('ttf2woff2');
const ttf2woff2 = getExecutable();
function getExecutable() {
if (!env.TTF2WOFF2_VERSION || env.TTF2WOFF2_VERSION?.toLowerCase() === 'native') {
try {
doDebug('✅ Using native version.');
return bindings.default('addon.node').convert;
}
catch (err) {
doDebug('❌ Could not load the native version.', printStackTrace(err));
}
}
if (!env.TTF2WOFF2_VERSION || env.TTF2WOFF2_VERSION?.toLowerCase() === 'wasm') {
try {
doDebug('✅ Using WASM version.');
return ttf2woff2Loader;
}
catch (err) {
doDebug('❌ Could not load the WASM version.', printStackTrace(err));
}
}
throw new YError('E_UNABLE_TO_LOAD_TTF2WOFF2', env.TTF2WOFF2_VERSION);
}
export default ttf2woff2;
//# sourceMappingURL=index.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,QAAQ,MAAM,UAAU,CAAA;AAC/B,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAEhD,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;AACnC,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;AAElC,SAAS,aAAa;IACpB,IAAI,CAAC,GAAG,CAAC,iBAAiB,IAAI,GAAG,CAAC,iBAAiB,EAAE,WAAW,EAAE,KAAK,QAAQ,EAAE,CAAC;QAChF,IAAI,CAAC;YACH,OAAO,CAAC,yBAAyB,CAAC,CAAC;YACnC,OAAO,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC;QAChD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,sCAAsC,EAAE,eAAe,CAAC,GAAY,CAAC,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,iBAAiB,IAAI,GAAG,CAAC,iBAAiB,EAAE,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;QAC9E,IAAI,CAAC;YACH,OAAO,CAAC,uBAAuB,CAAC,CAAC;YACjC,OAAO,eAAe,CAAC;QACzB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,oCAAoC,EAAE,eAAe,CAAC,GAAY,CAAC,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAED,MAAM,IAAI,MAAM,CAAC,4BAA4B,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACxE,CAAC;AAED,eAAe,SAA0C,CAAC"}

View File

@@ -0,0 +1 @@
export {};

View File

@@ -0,0 +1,55 @@
import { describe, test, expect, jest } from '@jest/globals';
import { readFile } from 'node:fs/promises';
import { YError } from 'yerror';
describe('ttf2woff2', () => {
test('should work from the main endpoint', async () => {
jest.setTimeout(5000);
const ttf2woff2 = (await import('./index.js')).default;
const inputContent = await readFile('fixtures/iconsfont.ttf');
const outputContent = ttf2woff2(inputContent);
expect(outputContent.length).toEqual(1072);
expect(outputContent[1071]).toEqual(0);
expect(outputContent).toEqual(await readFile('fixtures/iconsfont.woff2'));
});
test('should work from the native build', async () => {
const ttf2woff2 = (await import('bindings')).default('addon.node').convert;
const inputContent = await readFile('fixtures/iconsfont.ttf');
const outputContent = ttf2woff2(inputContent);
expect(outputContent.length).toEqual(1072);
expect(outputContent[1071]).toEqual(0);
expect(outputContent).toEqual(await readFile('fixtures/iconsfont.woff2'));
});
test('should well fail from the native build', async () => {
const ttf2woff2 = (await import('bindings')).default('addon.node').convert;
const inputContent = Buffer.alloc(2 ** 32, 0xff);
try {
ttf2woff2(inputContent);
throw new YError('E_UNEXPECTED_SUCCESS');
}
catch (err) {
expect(err).toMatchInlineSnapshot(`[Error: E_CONVERT_ERROR]`);
}
});
test('should work from the Emscripten endpoint', async () => {
jest.setTimeout(5000);
const ttf2woff2 = (await import('../jssrc/index.js')).default;
const inputContent = await readFile('fixtures/iconsfont.ttf');
const outputContent = ttf2woff2(inputContent);
expect(outputContent.length).toEqual(1072);
expect(outputContent[1071]).toEqual(0);
expect(outputContent).toEqual(await readFile('fixtures/iconsfont.woff2'));
});
test('should well fail from the Emscripten build', async () => {
jest.setTimeout(5000);
const ttf2woff2 = (await import('../jssrc/index.js')).default;
const inputContent = Buffer.alloc(512, 0xff);
try {
ttf2woff2(inputContent);
throw new YError('E_UNEXPECTED_SUCCESS');
}
catch (err) {
expect(err).toMatchInlineSnapshot(`[YError: E_CONVERT_ERROR (): E_CONVERT_ERROR]`);
}
});
});
//# sourceMappingURL=tests.test.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"tests.test.js","sourceRoot":"","sources":["../src/tests.test.ts"],"names":[],"mappings":"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"}