From 821951e2a96e8ceba6db0041568b401bc25e0224 Mon Sep 17 00:00:00 2001 From: Lucas Azzola Date: Sun, 22 Oct 2017 14:03:18 +1000 Subject: [PATCH] doc: document resolve hook formats MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add `"dynamic"` to the list of supported `format`s returned by a custom resolve hook. Add a table describing the meaning of each `format`. PR-URL: https://github.com/nodejs/node/pull/16375 Refs: https://github.com/nodejs/node/pull/15445 Reviewed-By: Vse Mozhet Byt Reviewed-By: Yuta Hiroto Reviewed-By: Ruben Bridgewater Reviewed-By: Michaƫl Zasso --- doc/api/esm.md | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/doc/api/esm.md b/doc/api/esm.md index c33badf3af7fc9..c352c24aa1c56d 100644 --- a/doc/api/esm.md +++ b/doc/api/esm.md @@ -128,10 +128,18 @@ argument to the resolver for easy compatibility workflows. In addition to returning the resolved file URL value, the resolve hook also returns a `format` property specifying the module format of the resolved -module. This can be one of `"esm"`, `"cjs"`, `"json"`, `"builtin"` or -`"addon"`. +module. This can be one of the following: -For example a dummy loader to load JavaScript restricted to browser resolution +| `format` | Description | +| --- | --- | +| `"esm"` | Load a standard JavaScript module | +| `"cjs"` | Load a node-style CommonJS module | +| `"builtin"` | Load a node builtin CommonJS module | +| `"json"` | Load a JSON file | +| `"addon"` | Load a [C++ Addon][addons] | +| `"dynamic"` | Use a [dynamic instantiate hook][] | + +For example, a dummy loader to load JavaScript restricted to browser resolution rules with only JS file extension and Node builtin modules support could be written: @@ -205,3 +213,5 @@ then be called at the exact point of module evalutation order for that module in the import tree. [Node.js EP for ES Modules]: https://github.com/nodejs/node-eps/blob/master/002-es-modules.md +[addons]: addons.html +[dynamic instantiate hook]: #esm_dynamic_instantiate_hook