]> git.codecow.com Git - nano25519.git/commitdiff
Load packages with import map instead of dynamic import.
authorChris Duncan <chris@zoso.dev>
Sat, 15 Aug 2026 20:16:11 +0000 (13:16 -0700)
committerChris Duncan <chris@zoso.dev>
Sat, 15 Aug 2026 20:16:11 +0000 (13:16 -0700)
package.json
test/index.html [moved from index.html with 93% similarity]
test/node.mjs [moved from test.mjs with 100% similarity]
test/vectors.mjs [moved from vectors.mjs with 100% similarity]

index d8c8fea4d455bf938bd324bc06b262a08e21c467..44f7292da5c91ad77ccd5307af5a04393cd27e0d 100644 (file)
@@ -36,8 +36,8 @@
                "clean": "rm -rf {build,dist,types}",
                "compile": "asc ./src/assembly/index.ts && tsc",
                "prepublishOnly": "npm run test:prod",
-               "test": "npm run build && node ./test.mjs",
-               "test:prod": "npm run build:prod && node ./test.mjs"
+               "test": "npm run build && node ./test/node.mjs",
+               "test:prod": "npm run build:prod && node ./test/node.mjs"
        },
        "devDependencies": {
                "@types/node": "26.2.0",
similarity index 93%
rename from index.html
rename to test/index.html
index aef52239f1aa43abec6b4b3f8c20300260e60225..dab632466caa8d125a0a444d06d86fe70ec18f34 100644 (file)
@@ -7,43 +7,40 @@ SPDX-License-Identifier: GPL-3.0-or-later
 
 <head>
        <meta charset="utf-8">
-       <link rel="icon" href="data:,">
-       <script src="https://unpkg.com/libsodium@0.8.4/dist/modules/libsodium.js"></script>
-       <script src="https://unpkg.com/libsodium-wrappers@0.8.4/dist/modules/libsodium-wrappers.js"></script>
-       <script src="https://unpkg.com/nanocurrency-web@2.0.0/dist/index.min.js"></script>
-       <script src="https://unpkg.com/tweetnacl@1.0.3/nacl-fast.js"></script>
-       <script type="module">
-               await libsodium.ready
-               await sodium.ready
-               let nano25519, NANO_ORG_VECTOR, PYTHON_ED25519_BLAKE2B_VECTORS
-               try {
-                       nano25519 = await import('./dist/browser.js')
-               } catch (err) {
-                       console.warn(err)
-                       try {
-                               nano25519 = await import('https://unpkg.com/nano25519')
-                       } catch (err) {
-                               console.warn(err)
-                               try {
-                                       nano25519 = await import('https://cdn.jsdelivr.net/npm/nano25519@latest')
-                               } catch (err) {
-                                       throw new Error(`Failed to load nano25519 ${err}`)
+       <meta name="viewport" content="initial-scale=1,width=device-width">
+       <link rel="icon" href="#">
+       <script type="importmap">
+               {
+                       "imports": {
+                               "libsodium": "https://unpkg.com/libsodium@0.8.4/dist/modules-esm/libsodium.mjs",
+                               "nano25519": "https://unpkg.com/nano25519@1.0.8/dist/browser.js",
+                               "nanocurrency-web": "https://unpkg.com/nanocurrency-web@2.0.0/dist/index.min.js",
+                               "tweetnacl": "https://unpkg.com/tweetnacl@1.0.3/nacl-fast.js",
+                               "#vectors": "https://git.codecow.com/?p=nano25519.git;a=blob_plain;f=vectors.mjs;hb=refs/heads/main"
+                       },
+                       "scopes": {
+                               "/test/": {
+                                       "nano25519": "../dist/browser.js",
+                                       "#vectors": "./vectors.mjs"
                                }
                        }
                }
-               window.nano25519 = nano25519
-               try {
-                       ({ NANO_ORG_VECTOR, PYTHON_ED25519_BLAKE2B_VECTORS } = await import('./vectors.mjs'))
-               } catch (err) {
-                       try {
-                               ({ NANO_ORG_VECTOR, PYTHON_ED25519_BLAKE2B_VECTORS } = await import('https://git.codecow.com/?p=nano25519.git;a=blob_plain;f=vectors.mjs;hb=refs/heads/main'))
-                       } catch (err) {
-                               console.error(err)
-                               document.getElementById('status').innerHTML = err?.message ?? err ?? `ERROR WHILE LOADING`
-                       }
+       </script>
+       <script type="module">
+               import libsodium from 'libsodium'
+               import * as nano25519 from 'nano25519'
+               import 'nanocurrency-web'
+               import 'tweetnacl'
+               import { NANO_ORG_VECTOR, PYTHON_ED25519_BLAKE2B_VECTORS } from '#vectors'
+
+               await libsodium.ready
+
+               if (!NANO_ORG_VECTOR || !PYTHON_ED25519_BLAKE2B_VECTORS) {
+                       console.error('Failed to import test vectors')
+                       document.getElementById('status').innerHTML = err?.message ?? err ?? `ERROR WHILE LOADING`
                }
 
-               if (nano25519 && PYTHON_ED25519_BLAKE2B_VECTORS) {
+               if (nano25519 && NANO_ORG_VECTOR && PYTHON_ED25519_BLAKE2B_VECTORS) {
                        document.getElementById('btnStartTest').disabled = false
                        document.getElementById('status').innerHTML = `READY`
                }
similarity index 100%
rename from test.mjs
rename to test/node.mjs
similarity index 100%
rename from vectors.mjs
rename to test/vectors.mjs