Skip to content

"Cannot find module" error for lib or es/lib modules #2387

Open
@OneComputerGuy

Description

@OneComputerGuy

Issue:

When importing either a subset of libraries or the tree-shakeable library for any validator using ES6 modules, a NodeJS ES6 error is shown indicating that the module cannot be found

Examples

image

This is the package.json file:

{
  "name": "testines6",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "type": "module",
  "dependencies": {
    "validator": "^13.11.0"
  }
}

And the file calling the library (index.js):

import isAlpha from "validator/es/lib/isAlpha";

const check = (input) => isAlpha(input);

check('blablabla');

This has been reported here: #1759 (comment) but using either option (lib or es/lib) shows the same error.

The only path going forwards seems to be importing the entire library and using the function from there which creates a bundle file with unnecessary information

EDIT:

To isolate the issue, ran the same setup on a brand new Google Cloud VM using the same NodeJS and validator version. Ran into the same issue for both es/lib and /lib imports but it works importing the entire library

image

Additional context
Validator.js version: 13.11.0
Node.js version: 20.10.0
OS platform: macOs

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions