Add basic documentation and configuration for package build

rasch
Sep 11, 2023, 1:14 AM
Y25ROEO6Z5GI5FFIW5F742XFBIYITXANFGU7MZFQRO2S2DC4X7NAC

Dependencies

Change contents

  • file addition: tsconfig.json (----------)
    [4.1]
    {
    "include": ["src/**/*"],
    "compilerOptions": {
    // Type Checking
    "allowUnreachableCode": false,
    "allowUnusedLabels": false,
    // "alwaysStrict": true, // included in `strict`
    "exactOptionalPropertyTypes": true,
    "noFallthroughCasesInSwitch": true,
    // "noImplicitAny": true, // included in `strict`
    "noImplicitOverride": true,
    "noImplicitReturns": true,
    // "noImplicitThis": true, // included in `strict`
    // "noPropertyAccessFromIndexSignature": true,
    "noUncheckedIndexedAccess": true,
    "noUnusedLocals": true,
    "noUnusedParameters": true,
    "strict": true,
    // "strictBindCallApply": true, // included in `strict`
    // "strictFunctionTypes": true, // included in `strict`
    // "strictNullChecks": true, // included in `strict`
    // "strictPropertyInitialization": true, // included in `strict`
    // "useUnknownInCatchVariables": true, // included in `strict`
    // Modules
    "module": "nodenext",
    "moduleResolution": "nodenext",
    "resolveJsonModule": true,
    // Emit
    "declaration": true,
    "declarationMap": true,
    "newLine": "lf",
    "noEmit": true, // use `tsup` or `esbuild` or `swc`, etc for emitting JS
    "noEmitOnError": true,
    "outDir": "dist",
    "removeComments": true,
    "sourceMap": true,
    // Interop Constraints
    "allowSyntheticDefaultImports": true,
    "esModuleInterop": true,
    "forceConsistentCasingInFileNames": true,
    // Language and Environment
    // "emitDecoratorMetadata": true,
    // "experimentalDecorators": true,
    // "lib": ["DOM", "DOM.Iterable", "ES2020"],
    "target": "es2020",
    "useDefineForClassFields": true,
    // Compiler Diagnostics
    // "explainFiles": true,
    // "extendedDiagnostics": true,
    // "generateCpuProfile": true,
    // "listEmittedFiles": true,
    // "listFiles": true,
    // "traceResolution": true,
    // Completeness
    "skipLibCheck": true
    }
    }
  • file addition: src (d--r------)
    [4.1]
  • file move: index.ts (----------)index.ts (----------)
    [0.1999]
    [2.33]
  • replacement in package.json at line 1
    [3.1][3.2:49]()
    { "devDependencies": { "prettier": "^3.0.3" } }
    [3.1]
    {
    "name": "@rasch/pubsub",
    "version": "0.1.0",
    "description": "ultra minimal pubsub module",
    "type": "module",
    "files": [
    "dist/*"
    ],
    "main": "./dist/index.js",
    "exports": "./dist/index.js",
    "types": "./dist/index.d.ts",
    "scripts": {
    "build": "tsup src/index.ts --format esm --dts --sourcemap --no-splitting --clean",
    "build-min": "bun build ./src/index.ts --outdir ./dist --minify --entry-naming '[dir]/[name].min.[ext]'",
    "clean": "rm -rf dist node_modules"
    },
    "keywords": [
    "emit",
    "on",
    "publish",
    "publish-subscribe",
    "pubsub",
    "subscribe"
    ],
    "author": "Randy Schneck <i@rasch.co>",
    "license": "0BSD",
    "repository": {
    "type": "pijul",
    "url": "https://nest.pijul.com/rasch/pubsub"
    },
    "devDependencies": {
    "prettier": "^3.0.3",
    "tsup": "^7.2.0",
    "typescript": "^5.2.2"
    }
    }