更新携带新功能的WASM包。

This commit is contained in:
徐涛 2025-01-03 08:43:10 +08:00
parent bf31aa67cd
commit 353ed817b2
4 changed files with 89 additions and 0 deletions

View File

@ -8,6 +8,8 @@ export function represent_lab(color: string): Float32Array;
export function lab_to_hex(l: number, a: number, b: number): string; export function lab_to_hex(l: number, a: number, b: number): string;
export function represent_oklch(color: string): Float32Array; export function represent_oklch(color: string): Float32Array;
export function oklch_to_hex(l: number, c: number, h: number): string; export function oklch_to_hex(l: number, c: number, h: number): string;
export function represent_hct(color: string): Float32Array;
export function hct_to_hex(hue: number, chroma: number, tone: number): string;
export function shift_hue(color: string, degree: number): string; export function shift_hue(color: string, degree: number): string;
export function lighten(color: string, percent: number): string; export function lighten(color: string, percent: number): string;
export function lighten_absolute(color: string, value: number): string; export function lighten_absolute(color: string, value: number): string;
@ -23,6 +25,8 @@ export function complementary(color: string): string;
export function split_complementary(color: string): (string)[]; export function split_complementary(color: string): (string)[];
export function tetradic(color: string): (string)[]; export function tetradic(color: string): (string)[];
export function triadic(color: string): (string)[]; export function triadic(color: string): (string)[];
export function series(color: string, expand_amount: number, step: number): (string)[];
export function tonal_lighten_series(color: string, expand_amount: number, step: number): (string)[];
export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module; export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
@ -36,6 +40,8 @@ export interface InitOutput {
readonly lab_to_hex: (a: number, b: number, c: number) => [number, number, number, number]; readonly lab_to_hex: (a: number, b: number, c: number) => [number, number, number, number];
readonly represent_oklch: (a: number, b: number) => [number, number, number, number]; readonly represent_oklch: (a: number, b: number) => [number, number, number, number];
readonly oklch_to_hex: (a: number, b: number, c: number) => [number, number, number, number]; readonly oklch_to_hex: (a: number, b: number, c: number) => [number, number, number, number];
readonly represent_hct: (a: number, b: number) => [number, number, number, number];
readonly hct_to_hex: (a: number, b: number, c: number) => [number, number, number, number];
readonly shift_hue: (a: number, b: number, c: number) => [number, number, number, number]; readonly shift_hue: (a: number, b: number, c: number) => [number, number, number, number];
readonly lighten: (a: number, b: number, c: number) => [number, number, number, number]; readonly lighten: (a: number, b: number, c: number) => [number, number, number, number];
readonly lighten_absolute: (a: number, b: number, c: number) => [number, number, number, number]; readonly lighten_absolute: (a: number, b: number, c: number) => [number, number, number, number];
@ -51,6 +57,8 @@ export interface InitOutput {
readonly split_complementary: (a: number, b: number) => [number, number, number, number]; readonly split_complementary: (a: number, b: number) => [number, number, number, number];
readonly tetradic: (a: number, b: number) => [number, number, number, number]; readonly tetradic: (a: number, b: number) => [number, number, number, number];
readonly triadic: (a: number, b: number) => [number, number, number, number]; readonly triadic: (a: number, b: number) => [number, number, number, number];
readonly series: (a: number, b: number, c: number, d: number) => [number, number, number, number];
readonly tonal_lighten_series: (a: number, b: number, c: number, d: number) => [number, number, number, number];
readonly __wbindgen_export_0: WebAssembly.Table; readonly __wbindgen_export_0: WebAssembly.Table;
readonly __wbindgen_malloc: (a: number, b: number) => number; readonly __wbindgen_malloc: (a: number, b: number) => number;
readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number; readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;

View File

@ -261,6 +261,47 @@ export function oklch_to_hex(l, c, h) {
} }
} }
/**
* @param {string} color
* @returns {Float32Array}
*/
export function represent_hct(color) {
const ptr0 = passStringToWasm0(color, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len0 = WASM_VECTOR_LEN;
const ret = wasm.represent_hct(ptr0, len0);
if (ret[3]) {
throw takeFromExternrefTable0(ret[2]);
}
var v2 = getArrayF32FromWasm0(ret[0], ret[1]).slice();
wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
return v2;
}
/**
* @param {number} hue
* @param {number} chroma
* @param {number} tone
* @returns {string}
*/
export function hct_to_hex(hue, chroma, tone) {
let deferred2_0;
let deferred2_1;
try {
const ret = wasm.hct_to_hex(hue, chroma, tone);
var ptr1 = ret[0];
var len1 = ret[1];
if (ret[3]) {
ptr1 = 0; len1 = 0;
throw takeFromExternrefTable0(ret[2]);
}
deferred2_0 = ptr1;
deferred2_1 = len1;
return getStringFromWasm0(ptr1, len1);
} finally {
wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
}
}
/** /**
* @param {string} color * @param {string} color
* @param {number} degree * @param {number} degree
@ -613,6 +654,42 @@ export function triadic(color) {
return v2; return v2;
} }
/**
* @param {string} color
* @param {number} expand_amount
* @param {number} step
* @returns {(string)[]}
*/
export function series(color, expand_amount, step) {
const ptr0 = passStringToWasm0(color, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len0 = WASM_VECTOR_LEN;
const ret = wasm.series(ptr0, len0, expand_amount, step);
if (ret[3]) {
throw takeFromExternrefTable0(ret[2]);
}
var v2 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
return v2;
}
/**
* @param {string} color
* @param {number} expand_amount
* @param {number} step
* @returns {(string)[]}
*/
export function tonal_lighten_series(color, expand_amount, step) {
const ptr0 = passStringToWasm0(color, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len0 = WASM_VECTOR_LEN;
const ret = wasm.tonal_lighten_series(ptr0, len0, expand_amount, step);
if (ret[3]) {
throw takeFromExternrefTable0(ret[2]);
}
var v2 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
return v2;
}
async function __wbg_load(module, imports) { async function __wbg_load(module, imports) {
if (typeof Response === 'function' && module instanceof Response) { if (typeof Response === 'function' && module instanceof Response) {
if (typeof WebAssembly.instantiateStreaming === 'function') { if (typeof WebAssembly.instantiateStreaming === 'function') {

View File

@ -9,6 +9,8 @@ export const represent_lab: (a: number, b: number) => [number, number, number, n
export const lab_to_hex: (a: number, b: number, c: number) => [number, number, number, number]; export const lab_to_hex: (a: number, b: number, c: number) => [number, number, number, number];
export const represent_oklch: (a: number, b: number) => [number, number, number, number]; export const represent_oklch: (a: number, b: number) => [number, number, number, number];
export const oklch_to_hex: (a: number, b: number, c: number) => [number, number, number, number]; export const oklch_to_hex: (a: number, b: number, c: number) => [number, number, number, number];
export const represent_hct: (a: number, b: number) => [number, number, number, number];
export const hct_to_hex: (a: number, b: number, c: number) => [number, number, number, number];
export const shift_hue: (a: number, b: number, c: number) => [number, number, number, number]; export const shift_hue: (a: number, b: number, c: number) => [number, number, number, number];
export const lighten: (a: number, b: number, c: number) => [number, number, number, number]; export const lighten: (a: number, b: number, c: number) => [number, number, number, number];
export const lighten_absolute: (a: number, b: number, c: number) => [number, number, number, number]; export const lighten_absolute: (a: number, b: number, c: number) => [number, number, number, number];
@ -24,6 +26,8 @@ export const complementary: (a: number, b: number) => [number, number, number, n
export const split_complementary: (a: number, b: number) => [number, number, number, number]; export const split_complementary: (a: number, b: number) => [number, number, number, number];
export const tetradic: (a: number, b: number) => [number, number, number, number]; export const tetradic: (a: number, b: number) => [number, number, number, number];
export const triadic: (a: number, b: number) => [number, number, number, number]; export const triadic: (a: number, b: number) => [number, number, number, number];
export const series: (a: number, b: number, c: number, d: number) => [number, number, number, number];
export const tonal_lighten_series: (a: number, b: number, c: number, d: number) => [number, number, number, number];
export const __wbindgen_export_0: WebAssembly.Table; export const __wbindgen_export_0: WebAssembly.Table;
export const __wbindgen_malloc: (a: number, b: number) => number; export const __wbindgen_malloc: (a: number, b: number) => number;
export const __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number; export const __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;