diff --git a/jest.config.js b/jest.config.js index c78d3bd..ca83cde 100644 --- a/jest.config.js +++ b/jest.config.js @@ -1,5 +1,4 @@ /* eslint-disable @typescript-eslint/no-var-requires */ -// jest.config.js const path = require("path"); const monorepoRoot = path.resolve(__dirname); @@ -8,7 +7,8 @@ module.exports = { testEnvironment: "node", moduleNameMapper: { "^(\\.{1,2}/.*)\\.js$": "$1", - "^@ldo/(.*)$": `${monorepoRoot}/packages/$1/src/index.ts`, + "^@ldo/([^/]+)$": `${monorepoRoot}/packages/$1/src/index.ts`, + "^@ldo/([^/]+)/(.*)$": `${monorepoRoot}/packages/$1/$2`, }, coveragePathIgnorePatterns: [ "/node_modules/", diff --git a/packages/rdf-utils/jest.config.cjs b/packages/rdf-utils/jest.config.cjs index 6bc8baa..3ad2cee 100644 --- a/packages/rdf-utils/jest.config.cjs +++ b/packages/rdf-utils/jest.config.cjs @@ -1,7 +1,14 @@ -// eslint-disable-next-line @typescript-eslint/no-var-requires +/* eslint-disable @typescript-eslint/no-var-requires */ +// packages/dataset/jest.config.cjs const sharedConfig = require("../../jest.config.js"); + module.exports = { ...sharedConfig, - rootDir: "./", + rootDir: "./", // Sets context for this package + collectCoverageFrom: [ + "src/**/*.ts", + "!src/**/*.d.ts", + // "!src/index.ts", // Optional, if index.ts only re-exports + ], modulePathIgnorePatterns: ["/dist/"], }; diff --git a/packages/subscribable-dataset/jest.config.cjs b/packages/subscribable-dataset/jest.config.cjs new file mode 100644 index 0000000..3ad2cee --- /dev/null +++ b/packages/subscribable-dataset/jest.config.cjs @@ -0,0 +1,14 @@ +/* eslint-disable @typescript-eslint/no-var-requires */ +// packages/dataset/jest.config.cjs +const sharedConfig = require("../../jest.config.js"); + +module.exports = { + ...sharedConfig, + rootDir: "./", // Sets context for this package + collectCoverageFrom: [ + "src/**/*.ts", + "!src/**/*.d.ts", + // "!src/index.ts", // Optional, if index.ts only re-exports + ], + modulePathIgnorePatterns: ["/dist/"], +}; diff --git a/packages/subscribable-dataset/package.json b/packages/subscribable-dataset/package.json index ccbdd92..b1c1030 100644 --- a/packages/subscribable-dataset/package.json +++ b/packages/subscribable-dataset/package.json @@ -15,8 +15,9 @@ "./package.json": "./package.json" }, "scripts": { - "build": "rimraf dist && tsc --project tsconfig.esm.json && tsc --project tsconfig.cjs.json", - "watch": "tsc --watch", + "build": "rimraf dist && npm run build:cjs && npm run build:esm", + "build:cjs": "tsc --project tsconfig.cjs.json", + "build:esm": "tsc --project tsconfig.esm.json", "test": "jest --coverage", "example:subscribableDataset": "ts-node ./example/subscribableDatasetExample.ts", "prepublishOnly": "npm run test && npm run build", diff --git a/packages/subscribable-dataset/test/SubscribableDataset.test.ts b/packages/subscribable-dataset/test/SubscribableDataset.test.ts index 63ca239..fcf0bbf 100644 --- a/packages/subscribable-dataset/test/SubscribableDataset.test.ts +++ b/packages/subscribable-dataset/test/SubscribableDataset.test.ts @@ -1,5 +1,5 @@ -import type { ISubscribableDataset } from "../src.js"; -import { TransactionDataset, createSubscribableDataset } from "../src.js"; +import type { ISubscribableDataset } from "../src/index.js"; +import { TransactionDataset, createSubscribableDataset } from "../src/index.js"; import { createDataset } from "@ldo/dataset"; import { namedNode, diff --git a/packages/subscribable-dataset/test/TransactionalDataset.test.ts b/packages/subscribable-dataset/test/TransactionalDataset.test.ts index 2bd17d3..e430c8b 100644 --- a/packages/subscribable-dataset/test/TransactionalDataset.test.ts +++ b/packages/subscribable-dataset/test/TransactionalDataset.test.ts @@ -5,13 +5,13 @@ import type { Quad, DatasetCore, } from "@rdfjs/types"; -import type { ISubscribableDataset } from "../src.js"; +import type { ISubscribableDataset } from "../src/index.js"; import { ExtendedDatasetFactory, createDataset } from "@ldo/dataset"; import { TransactionDataset, createSubscribableDataset, createTransactionDatasetFactory, -} from "../src.js"; +} from "../src/index.js"; import datasetCoreFactory from "@rdfjs/dataset"; describe("TransactionDataset", () => { diff --git a/packages/subscribable-dataset/test/createSubscribableDatasetFromSerializedInput.test.ts b/packages/subscribable-dataset/test/createSubscribableDatasetFromSerializedInput.test.ts index 6471187..2f8706e 100644 --- a/packages/subscribable-dataset/test/createSubscribableDatasetFromSerializedInput.test.ts +++ b/packages/subscribable-dataset/test/createSubscribableDatasetFromSerializedInput.test.ts @@ -1,4 +1,4 @@ -import { serializedToSubscribableDataset } from "../src.js"; +import { serializedToSubscribableDataset } from "../src/index.js"; import { turtleData, jsonLdData } from "@ldo/dataset/test/sampleData"; describe("createExtendedDatasetFromSerializedInput", () => { diff --git a/packages/subscribable-dataset/test/index.test.ts b/packages/subscribable-dataset/test/index.test.ts index 97c57fc..0530498 100644 --- a/packages/subscribable-dataset/test/index.test.ts +++ b/packages/subscribable-dataset/test/index.test.ts @@ -6,7 +6,7 @@ import { SubscribableDatasetFactory, TransactionDataset, TransactionDatasetFactory, -} from "../src.js"; +} from "../src/index.js"; describe("Exports", () => { it("Has all exports", () => { diff --git a/packages/subscribable-dataset/tsconfig.cjs.json b/packages/subscribable-dataset/tsconfig.cjs.json index 186f74e..affce40 100644 --- a/packages/subscribable-dataset/tsconfig.cjs.json +++ b/packages/subscribable-dataset/tsconfig.cjs.json @@ -1,9 +1,10 @@ { - "extends": "../../tsconfig.base.json", + "extends": "../../tsconfig.cjs.json", "compilerOptions": { - "outDir": "./dist/cjs" + "outDir": "./dist/cjs", + "rootDir": "./src" }, "include": [ - "./src" + "src" ] } \ No newline at end of file diff --git a/packages/subscribable-dataset/tsconfig.esm.json b/packages/subscribable-dataset/tsconfig.esm.json index df20942..09f99c2 100644 --- a/packages/subscribable-dataset/tsconfig.esm.json +++ b/packages/subscribable-dataset/tsconfig.esm.json @@ -1,9 +1,11 @@ { "extends": "../../tsconfig.esm.json", "compilerOptions": { - "outDir": "./dist/esm" + "outDir": "./dist/esm", + "rootDir": "./src", + "declarationDir": "./dist/types" }, "include": [ - "./src" + "src" ] } \ No newline at end of file diff --git a/packages/subscribable-dataset/jest.config.js b/packages/traverser-shexj/jest.config.cjs similarity index 100% rename from packages/subscribable-dataset/jest.config.js rename to packages/traverser-shexj/jest.config.cjs diff --git a/packages/traverser-shexj/jest.config.js b/packages/traverser-shexj/jest.config.js deleted file mode 100644 index bad5f64..0000000 --- a/packages/traverser-shexj/jest.config.js +++ /dev/null @@ -1,6 +0,0 @@ -// eslint-disable-next-line @typescript-eslint/no-var-requires -const sharedConfig = require("../../jest.config.js"); -module.exports = { - ...sharedConfig, - rootDir: "./", -}; diff --git a/packages/traverser-shexj/package.json b/packages/traverser-shexj/package.json index 541a266..5899d0c 100644 --- a/packages/traverser-shexj/package.json +++ b/packages/traverser-shexj/package.json @@ -2,9 +2,22 @@ "name": "@ldo/traverser-shexj", "version": "1.0.0-alpha.9", "description": "A type-traverser for ShexJ", - "main": "dist/index.js", + "type": "module", + "main": "./dist/cjs/index.js", + "module": "./dist/esm/index.js", + "types": "./dist/types/index.d.ts", + "exports": { + ".": { + "types": "./dist/types/index.d.ts", + "import": "./dist/esm/index.js", + "require": "./dist/cjs/index.js" + }, + "./package.json": "./package.json" + }, "scripts": { - "build": "tsc --project tsconfig.build.json", + "build": "rimraf dist && npm run build:cjs && npm run build:esm", + "build:cjs": "tsc --project tsconfig.cjs.json", + "build:esm": "tsc --project tsconfig.esm.json", "test": "jest --coverage", "prepublishOnly": "npm run test && npm run build", "lint": "eslint src/** --fix --no-error-on-unmatched-pattern" diff --git a/packages/traverser-shexj/src/ShexJTraverserDefinition.ts b/packages/traverser-shexj/src/ShexJTraverserDefinition.ts index d61b429..44907f7 100644 --- a/packages/traverser-shexj/src/ShexJTraverserDefinition.ts +++ b/packages/traverser-shexj/src/ShexJTraverserDefinition.ts @@ -1,4 +1,4 @@ -import type { ShexJTraverserTypes } from "."; +import type { ShexJTraverserTypes } from "./ShexJTraverserTypes.js"; import type { TraverserDefinitions } from "@ldo/type-traverser"; import type { shapeExpr, valueSetValue } from "./ShexJTypes.js"; diff --git a/packages/traverser-shexj/tsconfig.build.json b/packages/traverser-shexj/tsconfig.build.json deleted file mode 100644 index ce7be9c..0000000 --- a/packages/traverser-shexj/tsconfig.build.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "compilerOptions": { - "outDir": "./dist" - }, - "include": ["./src"] -} \ No newline at end of file diff --git a/packages/traverser-shexj/tsconfig.cjs.json b/packages/traverser-shexj/tsconfig.cjs.json new file mode 100644 index 0000000..affce40 --- /dev/null +++ b/packages/traverser-shexj/tsconfig.cjs.json @@ -0,0 +1,10 @@ +{ + "extends": "../../tsconfig.cjs.json", + "compilerOptions": { + "outDir": "./dist/cjs", + "rootDir": "./src" + }, + "include": [ + "src" + ] +} \ No newline at end of file diff --git a/packages/traverser-shexj/tsconfig.esm.json b/packages/traverser-shexj/tsconfig.esm.json new file mode 100644 index 0000000..09f99c2 --- /dev/null +++ b/packages/traverser-shexj/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../tsconfig.esm.json", + "compilerOptions": { + "outDir": "./dist/esm", + "rootDir": "./src", + "declarationDir": "./dist/types" + }, + "include": [ + "src" + ] +} \ No newline at end of file