From e4c847ac4cc8c5bd76c757015ae102bb39798312 Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Wed, 28 Sep 2022 12:35:42 +0800 Subject: [PATCH] Init newsletter-handler --- packages/newsletter-handler/.eslintignore | 1 + packages/newsletter-handler/.eslintrc | 6 ++++++ packages/newsletter-handler/.gitignore | 2 ++ packages/newsletter-handler/.npmignore | 7 +++++++ packages/newsletter-handler/index.js | 0 packages/newsletter-handler/mocha-config.json | 5 +++++ packages/newsletter-handler/package.json | 20 +++++++++++++++++++ packages/newsletter-handler/src/index.ts | 0 .../newsletter-handler/test/babel-register.js | 3 +++ packages/newsletter-handler/test/stub.test.ts | 13 ++++++++++++ packages/newsletter-handler/tsconfig.json | 10 ++++++++++ 11 files changed, 67 insertions(+) create mode 100644 packages/newsletter-handler/.eslintignore create mode 100644 packages/newsletter-handler/.eslintrc create mode 100644 packages/newsletter-handler/.gitignore create mode 100644 packages/newsletter-handler/.npmignore create mode 100644 packages/newsletter-handler/index.js create mode 100644 packages/newsletter-handler/mocha-config.json create mode 100644 packages/newsletter-handler/package.json create mode 100644 packages/newsletter-handler/src/index.ts create mode 100644 packages/newsletter-handler/test/babel-register.js create mode 100644 packages/newsletter-handler/test/stub.test.ts create mode 100644 packages/newsletter-handler/tsconfig.json diff --git a/packages/newsletter-handler/.eslintignore b/packages/newsletter-handler/.eslintignore new file mode 100644 index 000000000..c2658d7d1 --- /dev/null +++ b/packages/newsletter-handler/.eslintignore @@ -0,0 +1 @@ +node_modules/ diff --git a/packages/newsletter-handler/.eslintrc b/packages/newsletter-handler/.eslintrc new file mode 100644 index 000000000..e006282a6 --- /dev/null +++ b/packages/newsletter-handler/.eslintrc @@ -0,0 +1,6 @@ +{ + "extends": "../../.eslintrc", + "parserOptions": { + "project": "tsconfig.json" + } +} \ No newline at end of file diff --git a/packages/newsletter-handler/.gitignore b/packages/newsletter-handler/.gitignore new file mode 100644 index 000000000..0ae7e5c9e --- /dev/null +++ b/packages/newsletter-handler/.gitignore @@ -0,0 +1,2 @@ +node_modules +/lib diff --git a/packages/newsletter-handler/.npmignore b/packages/newsletter-handler/.npmignore new file mode 100644 index 000000000..b5e2b8569 --- /dev/null +++ b/packages/newsletter-handler/.npmignore @@ -0,0 +1,7 @@ +/test/ +src +tsconfig.json +.eslintrc +.eslintignore +.gitignore +mocha-config.json diff --git a/packages/newsletter-handler/index.js b/packages/newsletter-handler/index.js new file mode 100644 index 000000000..e69de29bb diff --git a/packages/newsletter-handler/mocha-config.json b/packages/newsletter-handler/mocha-config.json new file mode 100644 index 000000000..44d1d24c1 --- /dev/null +++ b/packages/newsletter-handler/mocha-config.json @@ -0,0 +1,5 @@ +{ + "extension": ["ts"], + "spec": "test/**/*.test.ts", + "require": "test/babel-register.js" + } \ No newline at end of file diff --git a/packages/newsletter-handler/package.json b/packages/newsletter-handler/package.json new file mode 100644 index 000000000..c998a2d58 --- /dev/null +++ b/packages/newsletter-handler/package.json @@ -0,0 +1,20 @@ +{ + "name": "@omnivore/newsletter-handler", + "version": "1.0.0", + "description": "A standalone version of newsletter handler to parse and format each newsletter", + "main": "build/src/index.js", + "types": "build/src/index.d.ts", + "files": [ + "build/src" + ], + "license": "Apache-2.0", + "scripts": { + "test": "yarn mocha -r ts-node/register --config mocha-config.json", + "lint": "eslint src --ext ts,js,tsx,jsx", + "compile": "tsc", + "build": "tsc" + }, + "devDependencies": { + "eslint-plugin-prettier": "^4.0.0" + } +} diff --git a/packages/newsletter-handler/src/index.ts b/packages/newsletter-handler/src/index.ts new file mode 100644 index 000000000..e69de29bb diff --git a/packages/newsletter-handler/test/babel-register.js b/packages/newsletter-handler/test/babel-register.js new file mode 100644 index 000000000..a6f65f60a --- /dev/null +++ b/packages/newsletter-handler/test/babel-register.js @@ -0,0 +1,3 @@ +const register = require('@babel/register').default + +register({ extensions: ['.ts', '.tsx', '.js', '.jsx'] }) diff --git a/packages/newsletter-handler/test/stub.test.ts b/packages/newsletter-handler/test/stub.test.ts new file mode 100644 index 000000000..173ca4917 --- /dev/null +++ b/packages/newsletter-handler/test/stub.test.ts @@ -0,0 +1,13 @@ +import 'mocha' +import * as chai from 'chai' +import { expect } from 'chai' +import 'chai/register-should' +import chaiString from 'chai-string' + +chai.use(chaiString) + +describe('Stub test', () => { + it('should pass', () => { + expect(true).to.be.true + }) +}) diff --git a/packages/newsletter-handler/tsconfig.json b/packages/newsletter-handler/tsconfig.json new file mode 100644 index 000000000..a6b8377a0 --- /dev/null +++ b/packages/newsletter-handler/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "@tsconfig/node14/tsconfig.json", + "compilerOptions": { + "rootDir": ".", + "declaration": true, + "outDir": "build", + "lib": ["dom"] + }, + "include": ["src", "test"] +}