From f383d89b709f90491e45f9b63879cf3386d0937d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E4=B8=80=E4=B9=8B?= Date: Mon, 4 Nov 2024 21:59:20 +0800 Subject: [PATCH] lib --- packages/messages/.gitignore | 13 ++++++++++ packages/messages/.prettierignore | 4 +++ packages/messages/.prettierrc | 3 +++ packages/messages/README.md | 23 +++++++++++++++++ packages/messages/eslint.config.mjs | 10 ++++++++ packages/messages/package.json | 37 +++++++++++++++++++++++++++ packages/messages/rslib.config.ts | 16 ++++++++++++ packages/messages/src/index.ts | 1 + packages/messages/tests/index.test.ts | 7 +++++ packages/messages/tsconfig.json | 15 +++++++++++ packages/messages/vitest.config.ts | 6 +++++ 11 files changed, 135 insertions(+) create mode 100644 packages/messages/.gitignore create mode 100644 packages/messages/.prettierignore create mode 100644 packages/messages/.prettierrc create mode 100644 packages/messages/README.md create mode 100644 packages/messages/eslint.config.mjs create mode 100644 packages/messages/package.json create mode 100644 packages/messages/rslib.config.ts create mode 100644 packages/messages/src/index.ts create mode 100644 packages/messages/tests/index.test.ts create mode 100644 packages/messages/tsconfig.json create mode 100644 packages/messages/vitest.config.ts diff --git a/packages/messages/.gitignore b/packages/messages/.gitignore new file mode 100644 index 0000000..38d7344 --- /dev/null +++ b/packages/messages/.gitignore @@ -0,0 +1,13 @@ +# Local +.DS_Store +*.local +*.log* + +# Dist +node_modules +dist/ + +# IDE +.vscode/* +!.vscode/extensions.json +.idea diff --git a/packages/messages/.prettierignore b/packages/messages/.prettierignore new file mode 100644 index 0000000..ac66857 --- /dev/null +++ b/packages/messages/.prettierignore @@ -0,0 +1,4 @@ +# Lock files +package-lock.json +pnpm-lock.yaml +yarn.lock diff --git a/packages/messages/.prettierrc b/packages/messages/.prettierrc new file mode 100644 index 0000000..544138b --- /dev/null +++ b/packages/messages/.prettierrc @@ -0,0 +1,3 @@ +{ + "singleQuote": true +} diff --git a/packages/messages/README.md b/packages/messages/README.md new file mode 100644 index 0000000..46ae92e --- /dev/null +++ b/packages/messages/README.md @@ -0,0 +1,23 @@ +# Rslib Project + +## Setup + +Install the dependencies: + +```bash +pnpm install +``` + +## Get Started + +Build the library: + +```bash +pnpm build +``` + +Build the library in watch mode: + +```bash +pnpm dev +``` diff --git a/packages/messages/eslint.config.mjs b/packages/messages/eslint.config.mjs new file mode 100644 index 0000000..84a10c6 --- /dev/null +++ b/packages/messages/eslint.config.mjs @@ -0,0 +1,10 @@ +import js from '@eslint/js'; +import globals from 'globals'; +import ts from 'typescript-eslint'; + +export default [ + { languageOptions: { globals: globals.browser } }, + js.configs.recommended, + ...ts.configs.recommended, + { ignores: ['dist/'] }, +]; diff --git a/packages/messages/package.json b/packages/messages/package.json new file mode 100644 index 0000000..65671e2 --- /dev/null +++ b/packages/messages/package.json @@ -0,0 +1,37 @@ +{ + "name": "messages", + "version": "1.0.0", + "type": "module", + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "./dist/index.cjs", + "module": "./dist/index.js", + "types": "./dist/index.d.ts", + "files": [ + "dist" + ], + "scripts": { + "build": "rslib build", + "dev": "rslib build --watch", + "format": "prettier --write .", + "lint": "eslint .", + "test": "vitest run" + }, + "devDependencies": { + "@eslint/js": "^9.12.0", + "@rslib/core": "^0.0.16", + "@types/node": "^22.8.1", + "eslint": "^9.12.0", + "globals": "^15.11.0", + "prettier": "^3.3.3", + "typescript": "^5.6.3", + "typescript-eslint": "^8.8.1", + "vitest": "^2.1.4" + }, + "private": true +} diff --git a/packages/messages/rslib.config.ts b/packages/messages/rslib.config.ts new file mode 100644 index 0000000..cfac279 --- /dev/null +++ b/packages/messages/rslib.config.ts @@ -0,0 +1,16 @@ +import { defineConfig } from '@rslib/core'; + +export default defineConfig({ + lib: [ + { + format: 'esm', + syntax: 'es2021', + dts: true, + }, + { + format: 'cjs', + syntax: 'es2021', + }, + ], + output: { target: 'node' }, +}); diff --git a/packages/messages/src/index.ts b/packages/messages/src/index.ts new file mode 100644 index 0000000..fdf0e11 --- /dev/null +++ b/packages/messages/src/index.ts @@ -0,0 +1 @@ +export const squared = (n: number): number => n * n; diff --git a/packages/messages/tests/index.test.ts b/packages/messages/tests/index.test.ts new file mode 100644 index 0000000..9d50ebb --- /dev/null +++ b/packages/messages/tests/index.test.ts @@ -0,0 +1,7 @@ +import { expect, test } from 'vitest'; +import { squared } from '../src/index'; + +test('squared', () => { + expect(squared(2)).toBe(4); + expect(squared(12)).toBe(144); +}); diff --git a/packages/messages/tsconfig.json b/packages/messages/tsconfig.json new file mode 100644 index 0000000..8c5c4d6 --- /dev/null +++ b/packages/messages/tsconfig.json @@ -0,0 +1,15 @@ +{ + "compilerOptions": { + "lib": ["ES2021"], + "module": "ESNext", + "noEmit": true, + "strict": true, + "skipLibCheck": true, + "isolatedModules": true, + "resolveJsonModule": true, + "moduleResolution": "bundler", + "useDefineForClassFields": true, + "allowImportingTsExtensions": true + }, + "include": ["src"] +} diff --git a/packages/messages/vitest.config.ts b/packages/messages/vitest.config.ts new file mode 100644 index 0000000..e83eaf4 --- /dev/null +++ b/packages/messages/vitest.config.ts @@ -0,0 +1,6 @@ +import { defineConfig } from 'vitest/config'; + +export default defineConfig({ + // Configure Vitest (https://vitest.dev/config/) + test: {}, +});