diff --git a/libraries/collaboration/carma-pecher-collab/README.md b/libraries/collaboration/carma-pecher-collab/README.md new file mode 100644 index 00000000..550ce237 --- /dev/null +++ b/libraries/collaboration/carma-pecher-collab/README.md @@ -0,0 +1,11 @@ +# carma-pecher-collab + +This library was generated with [Nx](https://nx.dev). + +## Building + +Run `nx build carma-pecher-collab` to build the library. + +## Running unit tests + +Run `nx test carma-pecher-collab` to execute the unit tests via [Vitest](https://vitest.dev/). diff --git a/libraries/collaboration/carma-pecher-collab/eslint.config.js b/libraries/collaboration/carma-pecher-collab/eslint.config.js new file mode 100644 index 00000000..8ca9644a --- /dev/null +++ b/libraries/collaboration/carma-pecher-collab/eslint.config.js @@ -0,0 +1,32 @@ +const { FlatCompat } = require("@eslint/eslintrc"); +const baseConfig = require("../../../eslint.config.cjs"); +const js = require("@eslint/js"); + +const compat = new FlatCompat({ + baseDirectory: __dirname, + recommendedConfig: js.configs.recommended, +}); + +module.exports = [ + ...baseConfig, + { + files: ["**/*.ts", "**/*.tsx", "**/*.js", "**/*.jsx"], + rules: {}, + }, + { + files: ["**/*.ts", "**/*.tsx"], + rules: {}, + }, + { + files: ["**/*.js", "**/*.jsx"], + rules: {}, + }, + ...compat.config({ parser: "jsonc-eslint-parser" }).map((config) => ({ + ...config, + files: ["**/*.json"], + rules: { + ...config.rules, + "@nx/dependency-checks": "error", + }, + })), +]; diff --git a/libraries/collaboration/carma-pecher-collab/package.json b/libraries/collaboration/carma-pecher-collab/package.json new file mode 100644 index 00000000..172632b3 --- /dev/null +++ b/libraries/collaboration/carma-pecher-collab/package.json @@ -0,0 +1,9 @@ +{ + "name": "@carma/carma-pecher-collab", + "version": "0.0.1", + "dependencies": {}, + "main": "./index.js", + "module": "./index.mjs", + "typings": "./index.d.ts", + "private": true +} diff --git a/libraries/collaboration/carma-pecher-collab/project.json b/libraries/collaboration/carma-pecher-collab/project.json new file mode 100644 index 00000000..2fdf30fb --- /dev/null +++ b/libraries/collaboration/carma-pecher-collab/project.json @@ -0,0 +1,35 @@ +{ + "name": "carma-pecher-collab", + "$schema": "../../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "libraries/collaboration/carma-pecher-collab/src", + "projectType": "library", + "tags": [], + "targets": { + "build": { + "executor": "@nx/vite:build", + "outputs": ["{options.outputPath}"], + "defaultConfiguration": "production", + "options": { + "outputPath": "dist/libraries/collaboration/carma-pecher-collab" + }, + "configurations": { + "development": { + "mode": "development" + }, + "production": { + "mode": "production" + } + } + }, + "test": { + "executor": "@nx/vite:test", + "outputs": ["{options.reportsDirectory}"], + "options": { + "reportsDirectory": "../../../coverage/libraries/collaboration/carma-pecher-collab" + } + }, + "lint": { + "executor": "@nx/eslint:lint" + } + } +} diff --git a/libraries/collaboration/carma-pecher-collab/src/index.ts b/libraries/collaboration/carma-pecher-collab/src/index.ts new file mode 100644 index 00000000..e45c62c5 --- /dev/null +++ b/libraries/collaboration/carma-pecher-collab/src/index.ts @@ -0,0 +1 @@ +export * from "./lib/carma-pecher-collab"; diff --git a/libraries/collaboration/carma-pecher-collab/src/lib/carma-pecher-collab.spec.ts b/libraries/collaboration/carma-pecher-collab/src/lib/carma-pecher-collab.spec.ts new file mode 100644 index 00000000..d844b6b9 --- /dev/null +++ b/libraries/collaboration/carma-pecher-collab/src/lib/carma-pecher-collab.spec.ts @@ -0,0 +1,7 @@ +import { carmaPecherCollab } from "./carma-pecher-collab"; + +describe("carmaPecherCollab", () => { + it("should work", () => { + expect(carmaPecherCollab()).toEqual("carma-pecher-collab"); + }); +}); diff --git a/libraries/collaboration/carma-pecher-collab/src/lib/carma-pecher-collab.ts b/libraries/collaboration/carma-pecher-collab/src/lib/carma-pecher-collab.ts new file mode 100644 index 00000000..3c532f5f --- /dev/null +++ b/libraries/collaboration/carma-pecher-collab/src/lib/carma-pecher-collab.ts @@ -0,0 +1,3 @@ +export function carmaPecherCollab(): string { + return "carma-pecher-collab"; +} diff --git a/libraries/collaboration/carma-pecher-collab/tsconfig.json b/libraries/collaboration/carma-pecher-collab/tsconfig.json new file mode 100644 index 00000000..8122543a --- /dev/null +++ b/libraries/collaboration/carma-pecher-collab/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/libraries/collaboration/carma-pecher-collab/tsconfig.lib.json b/libraries/collaboration/carma-pecher-collab/tsconfig.lib.json new file mode 100644 index 00000000..56cd2a7f --- /dev/null +++ b/libraries/collaboration/carma-pecher-collab/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../../dist/out-tsc", + "declaration": true, + "types": ["node", "vite/client"] + }, + "include": ["src/**/*.ts"], + "exclude": ["vite.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/libraries/collaboration/carma-pecher-collab/tsconfig.spec.json b/libraries/collaboration/carma-pecher-collab/tsconfig.spec.json new file mode 100644 index 00000000..1d3af4a6 --- /dev/null +++ b/libraries/collaboration/carma-pecher-collab/tsconfig.spec.json @@ -0,0 +1,20 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../../dist/out-tsc", + "types": ["vitest/globals", "vitest/importMeta", "vite/client", "node", "vitest"] + }, + "include": [ + "vite.config.ts", + "vitest.config.ts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.test.tsx", + "src/**/*.spec.tsx", + "src/**/*.test.js", + "src/**/*.spec.js", + "src/**/*.test.jsx", + "src/**/*.spec.jsx", + "src/**/*.d.ts" + ] +} diff --git a/libraries/collaboration/carma-pecher-collab/vite.config.ts b/libraries/collaboration/carma-pecher-collab/vite.config.ts new file mode 100644 index 00000000..0ebda211 --- /dev/null +++ b/libraries/collaboration/carma-pecher-collab/vite.config.ts @@ -0,0 +1,62 @@ +/// +import { defineConfig } from "vite"; +import dts from "vite-plugin-dts"; +import * as path from "path"; +import { nxViteTsPaths } from "@nx/vite/plugins/nx-tsconfig-paths.plugin"; + +export default defineConfig({ + root: __dirname, + cacheDir: + "../../../node_modules/.vite/libraries/collaboration/carma-pecher-collab", + + plugins: [ + nxViteTsPaths(), + dts({ + entryRoot: "src", + tsconfigPath: path.join(__dirname, "tsconfig.lib.json"), + }), + ], + + // Uncomment this if you are using workers. + // worker: { + // plugins: [ nxViteTsPaths() ], + // }, + + // Configuration for building your library. + // See: https://vitejs.dev/guide/build.html#library-mode + build: { + outDir: "../../../dist/libraries/collaboration/carma-pecher-collab", + emptyOutDir: true, + reportCompressedSize: true, + commonjsOptions: { + transformMixedEsModules: true, + }, + lib: { + // Could also be a dictionary or array of multiple entry points. + entry: "src/index.ts", + name: "carma-pecher-collab", + fileName: "index", + // Change this to the formats you want to support. + // Don't forget to update your package.json as well. + formats: ["es", "cjs"], + }, + rollupOptions: { + // External packages that should not be bundled into your library. + external: [], + }, + }, + + test: { + watch: false, + globals: true, + environment: "node", + include: ["src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"], + + reporters: ["default"], + coverage: { + reportsDirectory: + "../../../coverage/libraries/collaboration/carma-pecher-collab", + provider: "v8", + }, + }, +});