@stll/stdnum-wasm 0.0.0 → 2.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,95 @@
1
+ //#region ../stdnum/dist/types.d.ts
2
+ //#region src/types.d.ts
3
+ type CountryCode = "AD" | "AE" | "AI" | "AL" | "AM" | "AR" | "AT" | "AU" | "AZ" | "BA" | "BD" | "BE" | "BG" | "BH" | "BR" | "BY" | "BZ" | "CA" | "CH" | "CL" | "CN" | "CO" | "CR" | "CU" | "CY" | "CZ" | "DE" | "DK" | "DO" | "EC" | "EE" | "EG" | "ES" | "FI" | "FR" | "GB" | "GE" | "GH" | "GR" | "GT" | "HK" | "HR" | "HU" | "ID" | "IE" | "IL" | "IN" | "IQ" | "IR" | "IS" | "IT" | "JP" | "KR" | "KW" | "KZ" | "LI" | "LK" | "LT" | "LU" | "LV" | "MA" | "MC" | "MD" | "ME" | "MK" | "MT" | "MU" | "MX" | "MY" | "NG" | "NI" | "NL" | "NO" | "NZ" | "PA" | "PE" | "PH" | "PK" | "PL" | "PT" | "RO" | "RS" | "RU" | "SE" | "SG" | "SI" | "SK" | "TH" | "TR" | "TW" | "UA" | "US" | "UY" | "VE" | "VN" | "ZA";
4
+ type ErrorCode = "INVALID_FORMAT" | "INVALID_LENGTH" | "INVALID_CHECKSUM" | "INVALID_COMPONENT";
5
+ type CardNetwork = "visa" | "mastercard" | "amex" | "discover" | "diners" | "jcb" | "unionpay" | "maestro";
6
+ //#endregion
7
+ //#region ../stdnum/dist/native.d.ts
8
+ //#region src/native.d.ts
9
+ type NativeValidationError = {
10
+ code: ErrorCode;
11
+ message: string;
12
+ };
13
+ type NativeValidateResult = {
14
+ valid: true;
15
+ compact: string;
16
+ error?: null;
17
+ } | {
18
+ valid: false;
19
+ compact?: null;
20
+ error: NativeValidationError;
21
+ };
22
+ type NativeParsedIdentifier = {
23
+ birthYear: number;
24
+ birthMonth: number;
25
+ birthDay: number;
26
+ gender?: "male" | "female" | null;
27
+ };
28
+ type ValidatorMetadata = {
29
+ id: string;
30
+ name: string;
31
+ localName: string;
32
+ abbreviation: string;
33
+ description: string | null;
34
+ aliases: readonly string[];
35
+ candidatePattern: string | null;
36
+ scope: "country" | "global";
37
+ country: CountryCode | null;
38
+ entityType: "person" | "company" | "any";
39
+ sourceUrl: string | null;
40
+ lengths: readonly number[];
41
+ examples: readonly string[];
42
+ canGenerate: boolean;
43
+ canParse: boolean;
44
+ };
45
+ type NativeStdnumBinding = {
46
+ validatorIds(): string[];
47
+ validators(): ValidatorMetadata[];
48
+ validatorMetadata(id: string): ValidatorMetadata;
49
+ validate(id: string, value: string): NativeValidateResult;
50
+ validateIndex?(this: void, index: number, value: string): NativeValidateResult;
51
+ validateManyIndex?(this: void, index: number, values: readonly string[]): NativeValidateResult[];
52
+ areAllCanonicalValidIndex?(this: void, index: number, values: readonly string[]): boolean;
53
+ validateFastIndex?(this: void, index: number, value: string): number | NativeValidationError;
54
+ isValidCanonicalIndex?(this: void, index: number, value: string): boolean;
55
+ supportsCanonicalValidationIndex?(this: void, index: number): boolean;
56
+ compact(id: string, value: string): string;
57
+ compactIndex?(this: void, index: number, value: string): string;
58
+ format(id: string, value: string): string;
59
+ formatIndex?(this: void, index: number, value: string): string;
60
+ generate(id: string): string | null;
61
+ generateIndex?(this: void, index: number): string | null;
62
+ luhnGenerate(length?: number): string;
63
+ parse(id: string, value: string): NativeParsedIdentifier | null;
64
+ parseIndex?(this: void, index: number, value: string): NativeParsedIdentifier | null;
65
+ detectNetwork(value: string): CardNetwork | null;
66
+ beNnChecksum(value: string): number | null;
67
+ esVatCifChecksum(digits: string): number;
68
+ eeIkTwoPassCheck(digits: string): number;
69
+ gbNhsCalcCheckDigit(value: string): number | null;
70
+ gbSedolCalcCheckDigit(value: string): string;
71
+ hasValidEip55Checksum(value: string): boolean;
72
+ decodeBase58(value: string): Uint8Array | null;
73
+ convertBits(values: readonly number[], fromBits: number, toBits: number): number[] | null;
74
+ polymod(values: readonly number[]): number;
75
+ validateBech32(value: string): {
76
+ valid: true;
77
+ } | {
78
+ valid: false;
79
+ code: "format" | "checksum" | "component";
80
+ };
81
+ };
82
+ //#endregion
83
+ //#region src/index.d.ts
84
+ declare const getBinding: () => Promise<NativeStdnumBinding>;
85
+ declare const validatorIds: () => Promise<string[]>;
86
+ declare const validators: () => Promise<ValidatorMetadata[]>;
87
+ declare const validatorMetadata: (id: string) => Promise<ValidatorMetadata>;
88
+ declare const validate: (id: string, value: string) => Promise<NativeValidateResult>;
89
+ declare const compact: (id: string, value: string) => Promise<string>;
90
+ declare const format: (id: string, value: string) => Promise<string>;
91
+ declare const generate: (id: string) => Promise<string | null>;
92
+ declare const parse: (id: string, value: string) => Promise<NativeParsedIdentifier | null>;
93
+ //#endregion
94
+ export { type NativeParsedIdentifier, type NativeStdnumBinding, type NativeValidateResult, type ValidatorMetadata, compact, format, generate, getBinding, parse, validate, validatorIds, validatorMetadata, validators };
95
+ //# sourceMappingURL=index.d.ts.map
package/dist/index.js ADDED
@@ -0,0 +1,53 @@
1
+ //#region ../stdnum/dist/native.js
2
+ const isObject = (value) => typeof value === "object" && value !== null || typeof value === "function";
3
+ const asNativeBinding = (value) => {
4
+ const direct = nativeBindingCandidate(value);
5
+ if (direct !== null) return direct;
6
+ return isObject(value) ? nativeBindingCandidate(value["default"]) : null;
7
+ };
8
+ const nativeBindingCandidate = (candidate) => {
9
+ if (!isObject(candidate)) return null;
10
+ return [
11
+ "validatorIds",
12
+ "validators",
13
+ "validatorMetadata",
14
+ "validate",
15
+ "compact",
16
+ "format",
17
+ "generate",
18
+ "parse"
19
+ ].every((name) => typeof candidate[name] === "function") ? candidate : null;
20
+ };
21
+ //#endregion
22
+ //#region src/index.ts
23
+ let bindingPromise;
24
+ const getBinding = () => {
25
+ bindingPromise ??= loadBinding();
26
+ return bindingPromise;
27
+ };
28
+ const loadBinding = async () => {
29
+ const glueUrl = new URL("../native/stella_stdnum_wasm.js", import.meta.url);
30
+ const wasmUrl = new URL("../native/stella_stdnum_wasm_bg.wasm", import.meta.url);
31
+ const loaded = await import(
32
+ /* @vite-ignore */
33
+ glueUrl.href
34
+ );
35
+ if (!isWasmGlue(loaded)) throw new Error("stdnum WASM glue has an invalid shape");
36
+ await loaded.default({ module_or_path: wasmUrl });
37
+ const binding = asNativeBinding(loaded);
38
+ if (binding === null) throw new Error("stdnum WASM exports do not match the binding contract");
39
+ return binding;
40
+ };
41
+ const isWasmGlue = (value) => typeof value === "object" && value !== null && "default" in value && typeof value.default === "function";
42
+ const validatorIds = async () => (await getBinding()).validatorIds();
43
+ const validators = async () => (await getBinding()).validators();
44
+ const validatorMetadata = async (id) => (await getBinding()).validatorMetadata(id);
45
+ const validate = async (id, value) => (await getBinding()).validate(id, value);
46
+ const compact = async (id, value) => (await getBinding()).compact(id, value);
47
+ const format = async (id, value) => (await getBinding()).format(id, value);
48
+ const generate = async (id) => (await getBinding()).generate(id);
49
+ const parse = async (id, value) => (await getBinding()).parse(id, value);
50
+ //#endregion
51
+ export { compact, format, generate, getBinding, parse, validate, validatorIds, validatorMetadata, validators };
52
+
53
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../stdnum/dist/native.js","../src/index.ts"],"sourcesContent":["//#region src/native.ts\nconst isObject = (value) => typeof value === \"object\" && value !== null || typeof value === \"function\";\nconst asNativeBinding = (value) => {\n\tconst direct = nativeBindingCandidate(value);\n\tif (direct !== null) return direct;\n\treturn isObject(value) ? nativeBindingCandidate(value[\"default\"]) : null;\n};\nconst nativeBindingCandidate = (candidate) => {\n\tif (!isObject(candidate)) return null;\n\treturn [\n\t\t\"validatorIds\",\n\t\t\"validators\",\n\t\t\"validatorMetadata\",\n\t\t\"validate\",\n\t\t\"compact\",\n\t\t\"format\",\n\t\t\"generate\",\n\t\t\"parse\"\n\t].every((name) => typeof candidate[name] === \"function\") ? candidate : null;\n};\n//#endregion\nexport { asNativeBinding };\n\n//# sourceMappingURL=native.js.map","import {\n asNativeBinding,\n type NativeStdnumBinding,\n type NativeValidateResult,\n type ValidatorMetadata,\n} from \"@stll/stdnum/native\";\n\ntype WasmGlue = Record<string, unknown> & {\n default: (moduleOrPath?: unknown) => Promise<unknown>;\n};\n\nlet bindingPromise:\n | Promise<NativeStdnumBinding>\n | undefined;\n\nexport const getBinding =\n (): Promise<NativeStdnumBinding> => {\n bindingPromise ??= loadBinding();\n return bindingPromise;\n };\n\nconst loadBinding =\n async (): Promise<NativeStdnumBinding> => {\n const glueUrl = new URL(\n \"../native/stella_stdnum_wasm.js\",\n import.meta.url,\n );\n const wasmUrl = new URL(\n \"../native/stella_stdnum_wasm_bg.wasm\",\n import.meta.url,\n );\n const loaded: unknown = await import(\n /* @vite-ignore */ glueUrl.href\n );\n if (!isWasmGlue(loaded))\n throw new Error(\n \"stdnum WASM glue has an invalid shape\",\n );\n await loaded.default({ module_or_path: wasmUrl });\n const binding = asNativeBinding(loaded);\n if (binding === null)\n throw new Error(\n \"stdnum WASM exports do not match the binding contract\",\n );\n return binding;\n };\n\nconst isWasmGlue = (value: unknown): value is WasmGlue =>\n typeof value === \"object\" &&\n value !== null &&\n \"default\" in value &&\n typeof value.default === \"function\";\n\nexport const validatorIds = async (): Promise<string[]> =>\n (await getBinding()).validatorIds();\nexport const validators = async (): Promise<\n ValidatorMetadata[]\n> => (await getBinding()).validators();\nexport const validatorMetadata = async (\n id: string,\n): Promise<ValidatorMetadata> =>\n (await getBinding()).validatorMetadata(id);\nexport const validate = async (\n id: string,\n value: string,\n): Promise<NativeValidateResult> =>\n (await getBinding()).validate(id, value);\nexport const compact = async (\n id: string,\n value: string,\n): Promise<string> =>\n (await getBinding()).compact(id, value);\nexport const format = async (\n id: string,\n value: string,\n): Promise<string> =>\n (await getBinding()).format(id, value);\nexport const generate = async (\n id: string,\n): Promise<string | null> =>\n (await getBinding()).generate(id);\nexport const parse = async (id: string, value: string) =>\n (await getBinding()).parse(id, value);\n\nexport type {\n NativeParsedIdentifier,\n NativeStdnumBinding,\n NativeValidateResult,\n ValidatorMetadata,\n} from \"@stll/stdnum/native\";\n"],"mappings":";AACA,MAAM,YAAY,UAAU,OAAO,UAAU,YAAY,UAAU,QAAQ,OAAO,UAAU;AAC5F,MAAM,mBAAmB,UAAU;CAClC,MAAM,SAAS,uBAAuB,KAAK;CAC3C,IAAI,WAAW,MAAM,OAAO;CAC5B,OAAO,SAAS,KAAK,IAAI,uBAAuB,MAAM,UAAU,IAAI;AACrE;AACA,MAAM,0BAA0B,cAAc;CAC7C,IAAI,CAAC,SAAS,SAAS,GAAG,OAAO;CACjC,OAAO;EACN;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACD,CAAC,CAAC,OAAO,SAAS,OAAO,UAAU,UAAU,UAAU,IAAI,YAAY;AACxE;;;ACRA,IAAI;AAIJ,MAAa,mBACyB;CAClC,mBAAmB,YAAY;CAC/B,OAAO;AACT;AAEF,MAAM,cACJ,YAA0C;CACxC,MAAM,UAAU,IAAI,IAClB,mCACA,OAAO,KAAK,GACd;CACA,MAAM,UAAU,IAAI,IAClB,wCACA,OAAO,KAAK,GACd;CACA,MAAM,SAAkB,MAAM;;EACT,QAAQ;;CAE7B,IAAI,CAAC,WAAW,MAAM,GACpB,MAAM,IAAI,MACR,uCACF;CACF,MAAM,OAAO,QAAQ,EAAE,gBAAgB,QAAQ,CAAC;CAChD,MAAM,UAAU,gBAAgB,MAAM;CACtC,IAAI,YAAY,MACd,MAAM,IAAI,MACR,uDACF;CACF,OAAO;AACT;AAEF,MAAM,cAAc,UAClB,OAAO,UAAU,YACjB,UAAU,QACV,aAAa,SACb,OAAO,MAAM,YAAY;AAE3B,MAAa,eAAe,aACzB,MAAM,WAAW,EAAA,CAAG,aAAa;AACpC,MAAa,aAAa,aAEpB,MAAM,WAAW,EAAA,CAAG,WAAW;AACrC,MAAa,oBAAoB,OAC/B,QAEC,MAAM,WAAW,EAAA,CAAG,kBAAkB,EAAE;AAC3C,MAAa,WAAW,OACtB,IACA,WAEC,MAAM,WAAW,EAAA,CAAG,SAAS,IAAI,KAAK;AACzC,MAAa,UAAU,OACrB,IACA,WAEC,MAAM,WAAW,EAAA,CAAG,QAAQ,IAAI,KAAK;AACxC,MAAa,SAAS,OACpB,IACA,WAEC,MAAM,WAAW,EAAA,CAAG,OAAO,IAAI,KAAK;AACvC,MAAa,WAAW,OACtB,QAEC,MAAM,WAAW,EAAA,CAAG,SAAS,EAAE;AAClC,MAAa,QAAQ,OAAO,IAAY,WACrC,MAAM,WAAW,EAAA,CAAG,MAAM,IAAI,KAAK"}
@@ -0,0 +1,104 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+
4
+ export function beNnChecksum(value: string): number | undefined;
5
+
6
+ export function compact(id: string, value: string): string;
7
+
8
+ export function convertBits(values: Uint32Array, from_bits: number, to_bits: number): Uint32Array | undefined;
9
+
10
+ export function decodeBase58(value: string): Uint8Array | undefined;
11
+
12
+ export function detectNetwork(value: string): string | undefined;
13
+
14
+ export function eeIkTwoPassCheck(value: string): number | undefined;
15
+
16
+ export function esVatCifChecksum(value: string): number | undefined;
17
+
18
+ export function format(id: string, value: string): string;
19
+
20
+ export function gbNhsCalcCheckDigit(value: string): number | undefined;
21
+
22
+ export function gbSedolCalcCheckDigit(value: string): number | undefined;
23
+
24
+ export function generate(id: string): string | undefined;
25
+
26
+ export function hasValidEip55Checksum(value: string): boolean;
27
+
28
+ export function initialize_runtime_date(): void;
29
+
30
+ export function luhnGenerate(length?: number | null): string;
31
+
32
+ export function parse(id: string, value: string): any;
33
+
34
+ export function polymod(values: Uint32Array): number;
35
+
36
+ export function validate(id: string, value: string): any;
37
+
38
+ export function validateBech32(value: string): any;
39
+
40
+ export function validateId(validator: string, value: string, input?: string | null): boolean;
41
+
42
+ export function validateNamedId(validator: string, value: string): boolean;
43
+
44
+ export function validatorIds(): any;
45
+
46
+ export function validatorMetadata(id: string): any;
47
+
48
+ export function validators(): any;
49
+
50
+ export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
51
+
52
+ export interface InitOutput {
53
+ readonly memory: WebAssembly.Memory;
54
+ readonly beNnChecksum: (a: number, b: number) => number;
55
+ readonly compact: (a: number, b: number, c: number, d: number, e: number) => void;
56
+ readonly convertBits: (a: number, b: number, c: number, d: number, e: number) => void;
57
+ readonly decodeBase58: (a: number, b: number, c: number) => void;
58
+ readonly detectNetwork: (a: number, b: number, c: number) => void;
59
+ readonly eeIkTwoPassCheck: (a: number, b: number) => number;
60
+ readonly esVatCifChecksum: (a: number, b: number) => number;
61
+ readonly format: (a: number, b: number, c: number, d: number, e: number) => void;
62
+ readonly gbNhsCalcCheckDigit: (a: number, b: number) => number;
63
+ readonly gbSedolCalcCheckDigit: (a: number, b: number) => number;
64
+ readonly generate: (a: number, b: number, c: number) => void;
65
+ readonly hasValidEip55Checksum: (a: number, b: number) => number;
66
+ readonly luhnGenerate: (a: number, b: number) => void;
67
+ readonly parse: (a: number, b: number, c: number, d: number, e: number) => void;
68
+ readonly polymod: (a: number, b: number) => number;
69
+ readonly validate: (a: number, b: number, c: number, d: number, e: number) => void;
70
+ readonly validateBech32: (a: number, b: number, c: number) => void;
71
+ readonly validateId: (a: number, b: number, c: number, d: number, e: number, f: number) => number;
72
+ readonly validateNamedId: (a: number, b: number, c: number, d: number) => number;
73
+ readonly validatorIds: (a: number) => void;
74
+ readonly validatorMetadata: (a: number, b: number, c: number) => void;
75
+ readonly validators: (a: number) => void;
76
+ readonly initialize_runtime_date: () => void;
77
+ readonly __wbindgen_export: (a: number, b: number) => number;
78
+ readonly __wbindgen_export2: (a: number, b: number, c: number, d: number) => number;
79
+ readonly __wbindgen_add_to_stack_pointer: (a: number) => number;
80
+ readonly __wbindgen_export3: (a: number, b: number, c: number) => void;
81
+ readonly __wbindgen_start: () => void;
82
+ }
83
+
84
+ export type SyncInitInput = BufferSource | WebAssembly.Module;
85
+
86
+ /**
87
+ * Instantiates the given `module`, which can either be bytes or
88
+ * a precompiled `WebAssembly.Module`.
89
+ *
90
+ * @param {{ module: SyncInitInput }} module - Passing `SyncInitInput` directly is deprecated.
91
+ *
92
+ * @returns {InitOutput}
93
+ */
94
+ export function initSync(module: { module: SyncInitInput } | SyncInitInput): InitOutput;
95
+
96
+ /**
97
+ * If `module_or_path` is {RequestInfo} or {URL}, makes a request and
98
+ * for everything else, calls `WebAssembly.instantiate` directly.
99
+ *
100
+ * @param {{ module_or_path: InitInput | Promise<InitInput> }} module_or_path - Passing `InitInput` directly is deprecated.
101
+ *
102
+ * @returns {Promise<InitOutput>}
103
+ */
104
+ export default function __wbg_init (module_or_path?: { module_or_path: InitInput | Promise<InitInput> } | InitInput | Promise<InitInput>): Promise<InitOutput>;
@@ -0,0 +1,746 @@
1
+ /* @ts-self-types="./stella_stdnum_wasm.d.ts" */
2
+
3
+ /**
4
+ * @param {string} value
5
+ * @returns {number | undefined}
6
+ */
7
+ export function beNnChecksum(value) {
8
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
9
+ const len0 = WASM_VECTOR_LEN;
10
+ const ret = wasm.beNnChecksum(ptr0, len0);
11
+ return ret === Number.MAX_SAFE_INTEGER ? undefined : ret;
12
+ }
13
+
14
+ /**
15
+ * @param {string} id
16
+ * @param {string} value
17
+ * @returns {string}
18
+ */
19
+ export function compact(id, value) {
20
+ let deferred4_0;
21
+ let deferred4_1;
22
+ try {
23
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
24
+ const ptr0 = passStringToWasm0(id, wasm.__wbindgen_export, wasm.__wbindgen_export2);
25
+ const len0 = WASM_VECTOR_LEN;
26
+ const ptr1 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
27
+ const len1 = WASM_VECTOR_LEN;
28
+ wasm.compact(retptr, ptr0, len0, ptr1, len1);
29
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
30
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
31
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
32
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
33
+ var ptr3 = r0;
34
+ var len3 = r1;
35
+ if (r3) {
36
+ ptr3 = 0; len3 = 0;
37
+ throw takeObject(r2);
38
+ }
39
+ deferred4_0 = ptr3;
40
+ deferred4_1 = len3;
41
+ return getStringFromWasm0(ptr3, len3);
42
+ } finally {
43
+ wasm.__wbindgen_add_to_stack_pointer(16);
44
+ wasm.__wbindgen_export3(deferred4_0, deferred4_1, 1);
45
+ }
46
+ }
47
+
48
+ /**
49
+ * @param {Uint32Array} values
50
+ * @param {number} from_bits
51
+ * @param {number} to_bits
52
+ * @returns {Uint32Array | undefined}
53
+ */
54
+ export function convertBits(values, from_bits, to_bits) {
55
+ try {
56
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
57
+ const ptr0 = passArray32ToWasm0(values, wasm.__wbindgen_export);
58
+ const len0 = WASM_VECTOR_LEN;
59
+ wasm.convertBits(retptr, ptr0, len0, from_bits, to_bits);
60
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
61
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
62
+ let v2;
63
+ if (r0 !== 0) {
64
+ v2 = getArrayU32FromWasm0(r0, r1).slice();
65
+ wasm.__wbindgen_export3(r0, r1 * 4, 4);
66
+ }
67
+ return v2;
68
+ } finally {
69
+ wasm.__wbindgen_add_to_stack_pointer(16);
70
+ }
71
+ }
72
+
73
+ /**
74
+ * @param {string} value
75
+ * @returns {Uint8Array | undefined}
76
+ */
77
+ export function decodeBase58(value) {
78
+ try {
79
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
80
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
81
+ const len0 = WASM_VECTOR_LEN;
82
+ wasm.decodeBase58(retptr, ptr0, len0);
83
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
84
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
85
+ let v2;
86
+ if (r0 !== 0) {
87
+ v2 = getArrayU8FromWasm0(r0, r1).slice();
88
+ wasm.__wbindgen_export3(r0, r1 * 1, 1);
89
+ }
90
+ return v2;
91
+ } finally {
92
+ wasm.__wbindgen_add_to_stack_pointer(16);
93
+ }
94
+ }
95
+
96
+ /**
97
+ * @param {string} value
98
+ * @returns {string | undefined}
99
+ */
100
+ export function detectNetwork(value) {
101
+ try {
102
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
103
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
104
+ const len0 = WASM_VECTOR_LEN;
105
+ wasm.detectNetwork(retptr, ptr0, len0);
106
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
107
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
108
+ let v2;
109
+ if (r0 !== 0) {
110
+ v2 = getStringFromWasm0(r0, r1).slice();
111
+ wasm.__wbindgen_export3(r0, r1 * 1, 1);
112
+ }
113
+ return v2;
114
+ } finally {
115
+ wasm.__wbindgen_add_to_stack_pointer(16);
116
+ }
117
+ }
118
+
119
+ /**
120
+ * @param {string} value
121
+ * @returns {number | undefined}
122
+ */
123
+ export function eeIkTwoPassCheck(value) {
124
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
125
+ const len0 = WASM_VECTOR_LEN;
126
+ const ret = wasm.eeIkTwoPassCheck(ptr0, len0);
127
+ return ret === Number.MAX_SAFE_INTEGER ? undefined : ret;
128
+ }
129
+
130
+ /**
131
+ * @param {string} value
132
+ * @returns {number | undefined}
133
+ */
134
+ export function esVatCifChecksum(value) {
135
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
136
+ const len0 = WASM_VECTOR_LEN;
137
+ const ret = wasm.esVatCifChecksum(ptr0, len0);
138
+ return ret === Number.MAX_SAFE_INTEGER ? undefined : ret;
139
+ }
140
+
141
+ /**
142
+ * @param {string} id
143
+ * @param {string} value
144
+ * @returns {string}
145
+ */
146
+ export function format(id, value) {
147
+ let deferred4_0;
148
+ let deferred4_1;
149
+ try {
150
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
151
+ const ptr0 = passStringToWasm0(id, wasm.__wbindgen_export, wasm.__wbindgen_export2);
152
+ const len0 = WASM_VECTOR_LEN;
153
+ const ptr1 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
154
+ const len1 = WASM_VECTOR_LEN;
155
+ wasm.format(retptr, ptr0, len0, ptr1, len1);
156
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
157
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
158
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
159
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
160
+ var ptr3 = r0;
161
+ var len3 = r1;
162
+ if (r3) {
163
+ ptr3 = 0; len3 = 0;
164
+ throw takeObject(r2);
165
+ }
166
+ deferred4_0 = ptr3;
167
+ deferred4_1 = len3;
168
+ return getStringFromWasm0(ptr3, len3);
169
+ } finally {
170
+ wasm.__wbindgen_add_to_stack_pointer(16);
171
+ wasm.__wbindgen_export3(deferred4_0, deferred4_1, 1);
172
+ }
173
+ }
174
+
175
+ /**
176
+ * @param {string} value
177
+ * @returns {number | undefined}
178
+ */
179
+ export function gbNhsCalcCheckDigit(value) {
180
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
181
+ const len0 = WASM_VECTOR_LEN;
182
+ const ret = wasm.gbNhsCalcCheckDigit(ptr0, len0);
183
+ return ret === Number.MAX_SAFE_INTEGER ? undefined : ret;
184
+ }
185
+
186
+ /**
187
+ * @param {string} value
188
+ * @returns {number | undefined}
189
+ */
190
+ export function gbSedolCalcCheckDigit(value) {
191
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
192
+ const len0 = WASM_VECTOR_LEN;
193
+ const ret = wasm.gbSedolCalcCheckDigit(ptr0, len0);
194
+ return ret === Number.MAX_SAFE_INTEGER ? undefined : ret;
195
+ }
196
+
197
+ /**
198
+ * @param {string} id
199
+ * @returns {string | undefined}
200
+ */
201
+ export function generate(id) {
202
+ try {
203
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
204
+ const ptr0 = passStringToWasm0(id, wasm.__wbindgen_export, wasm.__wbindgen_export2);
205
+ const len0 = WASM_VECTOR_LEN;
206
+ wasm.generate(retptr, ptr0, len0);
207
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
208
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
209
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
210
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
211
+ if (r3) {
212
+ throw takeObject(r2);
213
+ }
214
+ let v2;
215
+ if (r0 !== 0) {
216
+ v2 = getStringFromWasm0(r0, r1).slice();
217
+ wasm.__wbindgen_export3(r0, r1 * 1, 1);
218
+ }
219
+ return v2;
220
+ } finally {
221
+ wasm.__wbindgen_add_to_stack_pointer(16);
222
+ }
223
+ }
224
+
225
+ /**
226
+ * @param {string} value
227
+ * @returns {boolean}
228
+ */
229
+ export function hasValidEip55Checksum(value) {
230
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
231
+ const len0 = WASM_VECTOR_LEN;
232
+ const ret = wasm.hasValidEip55Checksum(ptr0, len0);
233
+ return ret !== 0;
234
+ }
235
+
236
+ export function initialize_runtime_date() {
237
+ wasm.initialize_runtime_date();
238
+ }
239
+
240
+ /**
241
+ * @param {number | null} [length]
242
+ * @returns {string}
243
+ */
244
+ export function luhnGenerate(length) {
245
+ let deferred1_0;
246
+ let deferred1_1;
247
+ try {
248
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
249
+ wasm.luhnGenerate(retptr, isLikeNone(length) ? Number.MAX_SAFE_INTEGER : (length) >>> 0);
250
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
251
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
252
+ deferred1_0 = r0;
253
+ deferred1_1 = r1;
254
+ return getStringFromWasm0(r0, r1);
255
+ } finally {
256
+ wasm.__wbindgen_add_to_stack_pointer(16);
257
+ wasm.__wbindgen_export3(deferred1_0, deferred1_1, 1);
258
+ }
259
+ }
260
+
261
+ /**
262
+ * @param {string} id
263
+ * @param {string} value
264
+ * @returns {any}
265
+ */
266
+ export function parse(id, value) {
267
+ try {
268
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
269
+ const ptr0 = passStringToWasm0(id, wasm.__wbindgen_export, wasm.__wbindgen_export2);
270
+ const len0 = WASM_VECTOR_LEN;
271
+ const ptr1 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
272
+ const len1 = WASM_VECTOR_LEN;
273
+ wasm.parse(retptr, ptr0, len0, ptr1, len1);
274
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
275
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
276
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
277
+ if (r2) {
278
+ throw takeObject(r1);
279
+ }
280
+ return takeObject(r0);
281
+ } finally {
282
+ wasm.__wbindgen_add_to_stack_pointer(16);
283
+ }
284
+ }
285
+
286
+ /**
287
+ * @param {Uint32Array} values
288
+ * @returns {number}
289
+ */
290
+ export function polymod(values) {
291
+ const ptr0 = passArray32ToWasm0(values, wasm.__wbindgen_export);
292
+ const len0 = WASM_VECTOR_LEN;
293
+ const ret = wasm.polymod(ptr0, len0);
294
+ return ret >>> 0;
295
+ }
296
+
297
+ /**
298
+ * @param {string} id
299
+ * @param {string} value
300
+ * @returns {any}
301
+ */
302
+ export function validate(id, value) {
303
+ try {
304
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
305
+ const ptr0 = passStringToWasm0(id, wasm.__wbindgen_export, wasm.__wbindgen_export2);
306
+ const len0 = WASM_VECTOR_LEN;
307
+ const ptr1 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
308
+ const len1 = WASM_VECTOR_LEN;
309
+ wasm.validate(retptr, ptr0, len0, ptr1, len1);
310
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
311
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
312
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
313
+ if (r2) {
314
+ throw takeObject(r1);
315
+ }
316
+ return takeObject(r0);
317
+ } finally {
318
+ wasm.__wbindgen_add_to_stack_pointer(16);
319
+ }
320
+ }
321
+
322
+ /**
323
+ * @param {string} value
324
+ * @returns {any}
325
+ */
326
+ export function validateBech32(value) {
327
+ try {
328
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
329
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
330
+ const len0 = WASM_VECTOR_LEN;
331
+ wasm.validateBech32(retptr, ptr0, len0);
332
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
333
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
334
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
335
+ if (r2) {
336
+ throw takeObject(r1);
337
+ }
338
+ return takeObject(r0);
339
+ } finally {
340
+ wasm.__wbindgen_add_to_stack_pointer(16);
341
+ }
342
+ }
343
+
344
+ /**
345
+ * @param {string} validator
346
+ * @param {string} value
347
+ * @param {string | null} [input]
348
+ * @returns {boolean}
349
+ */
350
+ export function validateId(validator, value, input) {
351
+ const ptr0 = passStringToWasm0(validator, wasm.__wbindgen_export, wasm.__wbindgen_export2);
352
+ const len0 = WASM_VECTOR_LEN;
353
+ const ptr1 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
354
+ const len1 = WASM_VECTOR_LEN;
355
+ var ptr2 = isLikeNone(input) ? 0 : passStringToWasm0(input, wasm.__wbindgen_export, wasm.__wbindgen_export2);
356
+ var len2 = WASM_VECTOR_LEN;
357
+ const ret = wasm.validateId(ptr0, len0, ptr1, len1, ptr2, len2);
358
+ return ret !== 0;
359
+ }
360
+
361
+ /**
362
+ * @param {string} validator
363
+ * @param {string} value
364
+ * @returns {boolean}
365
+ */
366
+ export function validateNamedId(validator, value) {
367
+ const ptr0 = passStringToWasm0(validator, wasm.__wbindgen_export, wasm.__wbindgen_export2);
368
+ const len0 = WASM_VECTOR_LEN;
369
+ const ptr1 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
370
+ const len1 = WASM_VECTOR_LEN;
371
+ const ret = wasm.validateNamedId(ptr0, len0, ptr1, len1);
372
+ return ret !== 0;
373
+ }
374
+
375
+ /**
376
+ * @returns {any}
377
+ */
378
+ export function validatorIds() {
379
+ try {
380
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
381
+ wasm.validatorIds(retptr);
382
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
383
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
384
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
385
+ if (r2) {
386
+ throw takeObject(r1);
387
+ }
388
+ return takeObject(r0);
389
+ } finally {
390
+ wasm.__wbindgen_add_to_stack_pointer(16);
391
+ }
392
+ }
393
+
394
+ /**
395
+ * @param {string} id
396
+ * @returns {any}
397
+ */
398
+ export function validatorMetadata(id) {
399
+ try {
400
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
401
+ const ptr0 = passStringToWasm0(id, wasm.__wbindgen_export, wasm.__wbindgen_export2);
402
+ const len0 = WASM_VECTOR_LEN;
403
+ wasm.validatorMetadata(retptr, ptr0, len0);
404
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
405
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
406
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
407
+ if (r2) {
408
+ throw takeObject(r1);
409
+ }
410
+ return takeObject(r0);
411
+ } finally {
412
+ wasm.__wbindgen_add_to_stack_pointer(16);
413
+ }
414
+ }
415
+
416
+ /**
417
+ * @returns {any}
418
+ */
419
+ export function validators() {
420
+ try {
421
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
422
+ wasm.validators(retptr);
423
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
424
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
425
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
426
+ if (r2) {
427
+ throw takeObject(r1);
428
+ }
429
+ return takeObject(r0);
430
+ } finally {
431
+ wasm.__wbindgen_add_to_stack_pointer(16);
432
+ }
433
+ }
434
+ function __wbg_get_imports() {
435
+ const import0 = {
436
+ __proto__: null,
437
+ __wbg_Error_92b29b0548f8b746: function(arg0, arg1) {
438
+ const ret = Error(getStringFromWasm0(arg0, arg1));
439
+ return addHeapObject(ret);
440
+ },
441
+ __wbg_String_8564e559799eccda: function(arg0, arg1) {
442
+ const ret = String(getObject(arg1));
443
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);
444
+ const len1 = WASM_VECTOR_LEN;
445
+ getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
446
+ getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
447
+ },
448
+ __wbg___wbindgen_throw_344f42d3211c4765: function(arg0, arg1) {
449
+ throw new Error(getStringFromWasm0(arg0, arg1));
450
+ },
451
+ __wbg_getUTCDate_652a2ad7beebbadf: function(arg0) {
452
+ const ret = getObject(arg0).getUTCDate();
453
+ return ret;
454
+ },
455
+ __wbg_getUTCFullYear_5af8ca4e2020c06e: function(arg0) {
456
+ const ret = getObject(arg0).getUTCFullYear();
457
+ return ret;
458
+ },
459
+ __wbg_getUTCMonth_773ed3c34515d086: function(arg0) {
460
+ const ret = getObject(arg0).getUTCMonth();
461
+ return ret;
462
+ },
463
+ __wbg_new_0_3da9e97f24fc69be: function() {
464
+ const ret = new Date();
465
+ return addHeapObject(ret);
466
+ },
467
+ __wbg_new_32b398fb48b6d94a: function() {
468
+ const ret = new Array();
469
+ return addHeapObject(ret);
470
+ },
471
+ __wbg_new_da52cf8fe3429cb2: function() {
472
+ const ret = new Object();
473
+ return addHeapObject(ret);
474
+ },
475
+ __wbg_set_6be42768c690e380: function(arg0, arg1, arg2) {
476
+ getObject(arg0)[takeObject(arg1)] = takeObject(arg2);
477
+ },
478
+ __wbg_set_8a16b38e4805b298: function(arg0, arg1, arg2) {
479
+ getObject(arg0)[arg1 >>> 0] = takeObject(arg2);
480
+ },
481
+ __wbindgen_cast_0000000000000001: function(arg0) {
482
+ // Cast intrinsic for `F64 -> Externref`.
483
+ const ret = arg0;
484
+ return addHeapObject(ret);
485
+ },
486
+ __wbindgen_cast_0000000000000002: function(arg0, arg1) {
487
+ // Cast intrinsic for `Ref(String) -> Externref`.
488
+ const ret = getStringFromWasm0(arg0, arg1);
489
+ return addHeapObject(ret);
490
+ },
491
+ __wbindgen_cast_0000000000000003: function(arg0) {
492
+ // Cast intrinsic for `U64 -> Externref`.
493
+ const ret = BigInt.asUintN(64, arg0);
494
+ return addHeapObject(ret);
495
+ },
496
+ __wbindgen_object_clone_ref: function(arg0) {
497
+ const ret = getObject(arg0);
498
+ return addHeapObject(ret);
499
+ },
500
+ __wbindgen_object_drop_ref: function(arg0) {
501
+ takeObject(arg0);
502
+ },
503
+ };
504
+ return {
505
+ __proto__: null,
506
+ "./stella_stdnum_wasm_bg.js": import0,
507
+ };
508
+ }
509
+
510
+ function addHeapObject(obj) {
511
+ if (heap_next === heap.length) heap.push(heap.length + 1);
512
+ const idx = heap_next;
513
+ heap_next = heap[idx];
514
+
515
+ heap[idx] = obj;
516
+ return idx;
517
+ }
518
+
519
+ function dropObject(idx) {
520
+ if (idx < 1028) return;
521
+ heap[idx] = heap_next;
522
+ heap_next = idx;
523
+ }
524
+
525
+ function getArrayU32FromWasm0(ptr, len) {
526
+ ptr = ptr >>> 0;
527
+ return getUint32ArrayMemory0().subarray(ptr / 4, ptr / 4 + len);
528
+ }
529
+
530
+ function getArrayU8FromWasm0(ptr, len) {
531
+ ptr = ptr >>> 0;
532
+ return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
533
+ }
534
+
535
+ let cachedDataViewMemory0 = null;
536
+ function getDataViewMemory0() {
537
+ if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {
538
+ cachedDataViewMemory0 = new DataView(wasm.memory.buffer);
539
+ }
540
+ return cachedDataViewMemory0;
541
+ }
542
+
543
+ function getStringFromWasm0(ptr, len) {
544
+ return decodeText(ptr >>> 0, len);
545
+ }
546
+
547
+ let cachedUint32ArrayMemory0 = null;
548
+ function getUint32ArrayMemory0() {
549
+ if (cachedUint32ArrayMemory0 === null || cachedUint32ArrayMemory0.byteLength === 0) {
550
+ cachedUint32ArrayMemory0 = new Uint32Array(wasm.memory.buffer);
551
+ }
552
+ return cachedUint32ArrayMemory0;
553
+ }
554
+
555
+ let cachedUint8ArrayMemory0 = null;
556
+ function getUint8ArrayMemory0() {
557
+ if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
558
+ cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
559
+ }
560
+ return cachedUint8ArrayMemory0;
561
+ }
562
+
563
+ function getObject(idx) { return heap[idx]; }
564
+
565
+ let heap = new Array(1024).fill(undefined);
566
+ heap.push(undefined, null, true, false);
567
+
568
+ let heap_next = heap.length;
569
+
570
+ function isLikeNone(x) {
571
+ return x === undefined || x === null;
572
+ }
573
+
574
+ function passArray32ToWasm0(arg, malloc) {
575
+ const ptr = malloc(arg.length * 4, 4) >>> 0;
576
+ getUint32ArrayMemory0().set(arg, ptr / 4);
577
+ WASM_VECTOR_LEN = arg.length;
578
+ return ptr;
579
+ }
580
+
581
+ function passStringToWasm0(arg, malloc, realloc) {
582
+ if (realloc === undefined) {
583
+ const buf = cachedTextEncoder.encode(arg);
584
+ const ptr = malloc(buf.length, 1) >>> 0;
585
+ getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);
586
+ WASM_VECTOR_LEN = buf.length;
587
+ return ptr;
588
+ }
589
+
590
+ let len = arg.length;
591
+ let ptr = malloc(len, 1) >>> 0;
592
+
593
+ const mem = getUint8ArrayMemory0();
594
+
595
+ let offset = 0;
596
+
597
+ for (; offset < len; offset++) {
598
+ const code = arg.charCodeAt(offset);
599
+ if (code > 0x7F) break;
600
+ mem[ptr + offset] = code;
601
+ }
602
+ if (offset !== len) {
603
+ if (offset !== 0) {
604
+ arg = arg.slice(offset);
605
+ }
606
+ ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
607
+ const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
608
+ const ret = cachedTextEncoder.encodeInto(arg, view);
609
+
610
+ offset += ret.written;
611
+ ptr = realloc(ptr, len, offset, 1) >>> 0;
612
+ }
613
+
614
+ WASM_VECTOR_LEN = offset;
615
+ return ptr;
616
+ }
617
+
618
+ function takeObject(idx) {
619
+ const ret = getObject(idx);
620
+ dropObject(idx);
621
+ return ret;
622
+ }
623
+
624
+ let cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });
625
+ cachedTextDecoder.decode();
626
+ const MAX_SAFARI_DECODE_BYTES = 2146435072;
627
+ let numBytesDecoded = 0;
628
+ function decodeText(ptr, len) {
629
+ numBytesDecoded += len;
630
+ if (numBytesDecoded >= MAX_SAFARI_DECODE_BYTES) {
631
+ cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });
632
+ cachedTextDecoder.decode();
633
+ numBytesDecoded = len;
634
+ }
635
+ return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
636
+ }
637
+
638
+ const cachedTextEncoder = new TextEncoder();
639
+
640
+ if (!('encodeInto' in cachedTextEncoder)) {
641
+ cachedTextEncoder.encodeInto = function (arg, view) {
642
+ const buf = cachedTextEncoder.encode(arg);
643
+ view.set(buf);
644
+ return {
645
+ read: arg.length,
646
+ written: buf.length
647
+ };
648
+ };
649
+ }
650
+
651
+ let WASM_VECTOR_LEN = 0;
652
+
653
+ let wasmModule, wasmInstance, wasm;
654
+ function __wbg_finalize_init(instance, module) {
655
+ wasmInstance = instance;
656
+ wasm = instance.exports;
657
+ wasmModule = module;
658
+ cachedDataViewMemory0 = null;
659
+ cachedUint32ArrayMemory0 = null;
660
+ cachedUint8ArrayMemory0 = null;
661
+ wasm.__wbindgen_start();
662
+ return wasm;
663
+ }
664
+
665
+ async function __wbg_load(module, imports) {
666
+ if (typeof Response === 'function' && module instanceof Response) {
667
+ if (typeof WebAssembly.instantiateStreaming === 'function') {
668
+ try {
669
+ return await WebAssembly.instantiateStreaming(module, imports);
670
+ } catch (e) {
671
+ const validResponse = module.ok && expectedResponseType(module.type);
672
+
673
+ if (validResponse && module.headers.get('Content-Type') !== 'application/wasm') {
674
+ console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n", e);
675
+
676
+ } else { throw e; }
677
+ }
678
+ }
679
+
680
+ const bytes = await module.arrayBuffer();
681
+ return await WebAssembly.instantiate(bytes, imports);
682
+ } else {
683
+ const instance = await WebAssembly.instantiate(module, imports);
684
+
685
+ if (instance instanceof WebAssembly.Instance) {
686
+ return { instance, module };
687
+ } else {
688
+ return instance;
689
+ }
690
+ }
691
+
692
+ function expectedResponseType(type) {
693
+ switch (type) {
694
+ case 'basic': case 'cors': case 'default': return true;
695
+ }
696
+ return false;
697
+ }
698
+ }
699
+
700
+ function initSync(module) {
701
+ if (wasm !== undefined) return wasm;
702
+
703
+
704
+ if (module !== undefined) {
705
+ if (Object.getPrototypeOf(module) === Object.prototype) {
706
+ ({module} = module)
707
+ } else {
708
+ console.warn('using deprecated parameters for `initSync()`; pass a single object instead')
709
+ }
710
+ }
711
+
712
+ const imports = __wbg_get_imports();
713
+ if (!(module instanceof WebAssembly.Module)) {
714
+ module = new WebAssembly.Module(module);
715
+ }
716
+ const instance = new WebAssembly.Instance(module, imports);
717
+ return __wbg_finalize_init(instance, module);
718
+ }
719
+
720
+ async function __wbg_init(module_or_path) {
721
+ if (wasm !== undefined) return wasm;
722
+
723
+
724
+ if (module_or_path !== undefined) {
725
+ if (Object.getPrototypeOf(module_or_path) === Object.prototype) {
726
+ ({module_or_path} = module_or_path)
727
+ } else {
728
+ console.warn('using deprecated parameters for the initialization function; pass a single object instead')
729
+ }
730
+ }
731
+
732
+ if (module_or_path === undefined) {
733
+ module_or_path = new URL('stella_stdnum_wasm_bg.wasm', import.meta.url);
734
+ }
735
+ const imports = __wbg_get_imports();
736
+
737
+ if (typeof module_or_path === 'string' || (typeof Request === 'function' && module_or_path instanceof Request) || (typeof URL === 'function' && module_or_path instanceof URL)) {
738
+ module_or_path = fetch(module_or_path);
739
+ }
740
+
741
+ const { instance, module } = await __wbg_load(await module_or_path, imports);
742
+
743
+ return __wbg_finalize_init(instance, module);
744
+ }
745
+
746
+ export { initSync, __wbg_init as default };
@@ -0,0 +1,31 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ export const memory: WebAssembly.Memory;
4
+ export const beNnChecksum: (a: number, b: number) => number;
5
+ export const compact: (a: number, b: number, c: number, d: number, e: number) => void;
6
+ export const convertBits: (a: number, b: number, c: number, d: number, e: number) => void;
7
+ export const decodeBase58: (a: number, b: number, c: number) => void;
8
+ export const detectNetwork: (a: number, b: number, c: number) => void;
9
+ export const eeIkTwoPassCheck: (a: number, b: number) => number;
10
+ export const esVatCifChecksum: (a: number, b: number) => number;
11
+ export const format: (a: number, b: number, c: number, d: number, e: number) => void;
12
+ export const gbNhsCalcCheckDigit: (a: number, b: number) => number;
13
+ export const gbSedolCalcCheckDigit: (a: number, b: number) => number;
14
+ export const generate: (a: number, b: number, c: number) => void;
15
+ export const hasValidEip55Checksum: (a: number, b: number) => number;
16
+ export const luhnGenerate: (a: number, b: number) => void;
17
+ export const parse: (a: number, b: number, c: number, d: number, e: number) => void;
18
+ export const polymod: (a: number, b: number) => number;
19
+ export const validate: (a: number, b: number, c: number, d: number, e: number) => void;
20
+ export const validateBech32: (a: number, b: number, c: number) => void;
21
+ export const validateId: (a: number, b: number, c: number, d: number, e: number, f: number) => number;
22
+ export const validateNamedId: (a: number, b: number, c: number, d: number) => number;
23
+ export const validatorIds: (a: number) => void;
24
+ export const validatorMetadata: (a: number, b: number, c: number) => void;
25
+ export const validators: (a: number) => void;
26
+ export const initialize_runtime_date: () => void;
27
+ export const __wbindgen_export: (a: number, b: number) => number;
28
+ export const __wbindgen_export2: (a: number, b: number, c: number, d: number) => number;
29
+ export const __wbindgen_add_to_stack_pointer: (a: number) => number;
30
+ export const __wbindgen_export3: (a: number, b: number, c: number) => void;
31
+ export const __wbindgen_start: () => void;
package/package.json CHANGED
@@ -1,16 +1,37 @@
1
1
  {
2
2
  "name": "@stll/stdnum-wasm",
3
- "version": "0.0.0",
4
- "description": "Bootstrap placeholder for the Rust-backed @stll/stdnum distribution",
5
- "main": "index.js",
6
- "scripts": {
7
- "test": "echo \"Error: no test specified\" && exit 1"
8
- },
9
- "keywords": [],
10
- "author": "",
3
+ "version": "2.1.2",
4
+ "description": "Standard identifier validation for browsers via WebAssembly",
5
+ "homepage": "https://github.com/stella/stdnum",
11
6
  "license": "MIT",
12
- "type": "commonjs",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/stella/stdnum.git"
10
+ },
11
+ "files": [
12
+ "dist",
13
+ "native"
14
+ ],
15
+ "type": "module",
16
+ "module": "dist/index.js",
17
+ "types": "dist/index.d.ts",
18
+ "exports": {
19
+ ".": {
20
+ "types": "./dist/index.d.ts",
21
+ "import": "./dist/index.js"
22
+ }
23
+ },
13
24
  "publishConfig": {
14
25
  "access": "public"
26
+ },
27
+ "scripts": {
28
+ "build": "node ../../scripts/build-wasm.mjs && tsdown",
29
+ "build:js": "tsdown",
30
+ "typecheck": "tsc --noEmit -p tsconfig.json"
31
+ },
32
+ "devDependencies": {
33
+ "@stll/stdnum": "workspace:*",
34
+ "tsdown": "0.22.9",
35
+ "typescript": "7.0.2"
15
36
  }
16
37
  }