Skip to content

Commit

Permalink
chore: change types workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
daKmoR committed Oct 26, 2020
1 parent eadbd12 commit 17e9e7d
Show file tree
Hide file tree
Showing 33 changed files with 559 additions and 135 deletions.
11 changes: 11 additions & 0 deletions .changeset/hot-kiwis-allow.md
@@ -0,0 +1,11 @@
---
'@import-maps/resolve': patch
'@mdjs/core': patch
'polyfills-loader': patch
'@open-wc/scoped-elements': patch
'@open-wc/semantic-dom-diff': patch
'@open-wc/testing': patch
'@open-wc/testing-helpers': patch
---

Change type distribution workflow
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Expand Up @@ -40,7 +40,7 @@ jobs:
run: yarn --frozen-lockfile

- name: Build types
run: yarn build:types
run: yarn types

- name: Create Release Pull Request or Publish to npm
id: changesets
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Expand Up @@ -8,6 +8,10 @@
## code coverage folders
coverage/

## generated types
packages/*/types
tsconfig.tsbuildinfo

## npm
node_modules
!packages/es-dev-server/test/**/node_modules
Expand Down
16 changes: 11 additions & 5 deletions package.json
Expand Up @@ -3,7 +3,6 @@
"private": true,
"license": "MIT",
"scripts": {
"build:types": "tsc -p tsconfig.build.types.json",
"codelabs:build": "node ./packages/codelabs/build-codelabs.js",
"docs:build": "rimraf _site && node cli-build.js",
"docs:serve-build": "node packages/es-dev-server/dist/cli.js -o docs/",
Expand All @@ -14,17 +13,23 @@
"lint": "run-p lint:*",
"lint:eslint": "eslint --ext .js,.html .",
"lint:prettier": "prettier \"**/*.{js,md}\" \"**/package.json\" --check",
"lint:types": "tsc",
"lint:types": "npm run types",
"lint:versions": "node ./scripts/lint-versions.js",
"postinstall": "patch-package",
"postinstall": "patch-package && npm run setup",
"release": "changeset publish && yarn format",
"setup": "npm run setup:ts-configs",
"setup:ts-configs": "node scripts/generate-ts-configs.mjs",
"site:build": "npm run docs:build && node scripts/workspaces-scripts-bin.mjs site:build",
"site:start": "npm run docs:start",
"start": "npm run docs:start",
"test": "yarn test:web && yarn test:node",
"test:node": "mocha \"packages/*/test-node/**/*.test.{ts,js,mjs,cjs}\" --exit --retries 3",
"test:node:watch": "mocha \"packages/*/test-node/**/*.test.{ts,js,mjs,cjs}\" --watch",
"test:web": "web-test-runner",
"types": "run-s types:clear types:copy types:build",
"types:build": "tsc --build",
"types:clear": "rimraf packages/*/types/",
"types:copy": "node scripts/workspaces-scripts-bin.mjs types:copy",
"update-dependency": "node scripts/update-dependency.js"
},
"dependencies": {
Expand All @@ -41,11 +46,13 @@
"@types/eslint": "^7.2.4",
"@types/estree": "^0.0.45",
"@types/parse5-htmlparser2-tree-adapter": "^5.0.1",
"@web/dev-server": "^0.0.15",
"@web/test-runner": "^0.9.5",
"@web/test-runner-playwright": "^0.6.4",
"babel-eslint": "^10.0.3",
"chai": "^4.2.0",
"concurrently": "^5.2.0",
"copyfiles": "^2.4.0",
"core-js": "2.6.10",
"eslint": "^7.6.0",
"eslint-config-airbnb-base": "^14.0.0",
Expand All @@ -68,8 +75,7 @@
"rollup": "^2.7.2",
"rollup-plugin-copy": "^3.3.0",
"sinon": "^7.4.1",
"typescript": "~4.0.3",
"webpack-merge": "^4.1.5"
"typescript": "~4.0.3"
},
"resolutions": {
"@types/estree": "0.0.45"
Expand Down
25 changes: 12 additions & 13 deletions packages/building-rollup/test-node/integration.test.js
Expand Up @@ -5,39 +5,38 @@ const path = require('path');
const fs = require('fs');
const rimraf = require('rimraf');
const { rollup } = require('rollup');
const { startServer, createConfig } = require('es-dev-server');
const { startDevServer } = require('@web/dev-server');

const rootDir = path.resolve(__dirname, '..', 'dist');

describe('integration tests', () => {
let server;
let serverConfig;
/** @type {import('puppeteer').Browser} */
let browser;

before(async () => {
serverConfig = createConfig({
port: 8081,
rootDir,
server = await startDevServer({
config: {
port: 8081,
rootDir,
},
readCliArgs: false,
readFileConfig: false,
logStartMessage: false,
clearTerminalOnReload: false,
});

({ server } = await startServer(serverConfig));
browser = await puppeteer.launch();
rimraf.sync(rootDir);
});

after(async () => {
await browser.close();
await new Promise(resolve =>
server.close(() => {
resolve();
}),
);
await server.stop();
});

['js/rollup.spa.config.js', 'js/rollup.spa-nomodule.config.js'].forEach(testCase => {
describe(`testcase ${testCase}`, function describe() {
this.timeout(20000);
this.timeout(30000);
let page;

before(async () => {
Expand Down
25 changes: 12 additions & 13 deletions packages/building-rollup/test-node/mpa-integration.test.js
Expand Up @@ -5,38 +5,37 @@ const path = require('path');
const fs = require('fs');
const rimraf = require('rimraf');
const { rollup } = require('rollup');
const { startServer, createConfig } = require('es-dev-server');
const { startDevServer } = require('@web/dev-server');

const rootDir = path.resolve(__dirname, '..', 'dist');

describe('integration tests', () => {
let server;
let serverConfig;
/** @type {import('puppeteer').Browser} */
let browser;

before(async () => {
serverConfig = createConfig({
port: 8081,
rootDir,
server = await startDevServer({
config: {
port: 8081,
rootDir,
},
readCliArgs: false,
readFileConfig: false,
logStartMessage: false,
clearTerminalOnReload: false,
});

({ server } = await startServer(serverConfig));
browser = await puppeteer.launch();
rimraf.sync(rootDir);
});

after(async () => {
await browser.close();
await new Promise(resolve =>
server.close(() => {
resolve();
}),
);
await server.stop();
});

describe(`Mpa Config`, function describe() {
this.timeout(20000);
this.timeout(30000);
let page;

before(async () => {
Expand Down
9 changes: 6 additions & 3 deletions packages/import-maps-resolve/package.json
Expand Up @@ -17,15 +17,18 @@
"scripts": {
"prepublishOnly": "../../scripts/insert-header.js",
"test": "npm run test:node",
"test:node": "mocha test/run-tests.js"
"test:node": "mocha test/run-tests.js",
"types:copy": "copyfiles \"./src/**/*.d.ts\" \"./*.d.ts\" types"
},
"files": [
"*.d.ts",
"*.js",
"src"
"src",
"types"
],
"keywords": [
"import-map",
"import-maps"
]
],
"types": "types/index.d.ts"
}
25 changes: 21 additions & 4 deletions packages/import-maps-resolve/tsconfig.json
@@ -1,6 +1,23 @@
// Don't edit this file directly. It is generated by /scripts/update-package-configs.ts

{
"extends": "../../tsconfig.json",
"extends": "../../tsconfig.node-base.json",
"compilerOptions": {
"strict": true
}
}
"module": "commonjs",
"outDir": "./types",
"rootDir": ".",
"composite": true,
"allowJs": true,
"checkJs": true,
"emitDeclarationOnly": true
},
"references": [],
"include": [
"src",
"*.js"
],
"exclude": [
"dist",
"types"
]
}
7 changes: 0 additions & 7 deletions packages/mdjs/index.d.ts

This file was deleted.

5 changes: 3 additions & 2 deletions packages/mdjs/package.json
Expand Up @@ -21,7 +21,8 @@
"start:stories": "node ../es-dev-server/dist/cli.js -c demo/stories/server.js --root-dir ../../",
"test": "npm run test:node",
"test:node": "mocha test-node",
"test:watch": "mocha test-node --watch"
"test:watch": "mocha test-node --watch",
"types:copy": "copyfiles -f \"./types-global/**/*.d.ts\" types"
},
"files": [
"*.d.ts",
Expand Down Expand Up @@ -61,5 +62,5 @@
"remark-slug": "^5.1.2",
"remark-stringify": "^7.0.4"
},
"types": "index.d.ts"
"types": "./types/index.d.ts"
}
File renamed without changes.
23 changes: 23 additions & 0 deletions packages/mdjs/tsconfig.json
@@ -0,0 +1,23 @@
// Don't edit this file directly. It is generated by /scripts/update-package-configs.ts

{
"extends": "../../tsconfig.node-base.json",
"compilerOptions": {
"module": "commonjs",
"outDir": "./types",
"rootDir": ".",
"composite": true,
"allowJs": true,
"checkJs": true,
"emitDeclarationOnly": true
},
"references": [],
"include": [
"src",
"*.js"
],
"exclude": [
"dist",
"types"
]
}
6 changes: 4 additions & 2 deletions packages/polyfills-loader/package.json
Expand Up @@ -22,7 +22,8 @@
"test": "npm run test:node",
"test:node": "mocha test/**/*.test.js test/**/*.test.js",
"test:update-snapshots": "mocha test/**/*.test.js test/**/*.test.js --update-snapshots",
"test:watch": "mocha test/**/*.test.js test/**/*.test.js --watch"
"test:watch": "mocha test/**/*.test.js test/**/*.test.js --watch",
"types:copy": "copyfiles \"./src/**/*.d.ts\" \"./*.d.ts\" types"
},
"files": [
"index.d.ts",
Expand Down Expand Up @@ -50,5 +51,6 @@
"@types/babel__core": "^7.1.3",
"@types/parse5": "^5.0.2",
"@types/valid-url": "^1.0.2"
}
},
"types": "types/index.d.ts"
}
3 changes: 3 additions & 0 deletions packages/polyfills-loader/src/inject-polyfills-loader.js
Expand Up @@ -11,7 +11,9 @@ const {
insertAfter,
append,
cloneNode,
// @ts-ignore
} = require('@open-wc/building-utils/dom5-fork');
// @ts-ignore
const { createScript, createElement, findImportMapScripts } = require('@open-wc/building-utils');
const { createPolyfillsLoader } = require('./create-polyfills-loader');
const { hasFileOfType, fileTypes } = require('./utils');
Expand Down Expand Up @@ -70,6 +72,7 @@ function injectLoaderScript(bodyAst, polyfillsLoader) {
* @param {PolyfillsLoaderConfig} cfg
*/
function injectPrefetchLinks(headAst, cfg) {
// @ts-ignore
for (const file of cfg.modern.files) {
const { path } = file;
const href = path.startsWith('.') || path.startsWith('/') ? path : `./${path}`;
Expand Down
2 changes: 2 additions & 0 deletions packages/polyfills-loader/src/utils.js
Expand Up @@ -3,6 +3,7 @@
/** @typedef {import('./types').FileType} FileType */
/** @typedef {import('./types').PolyfillsLoaderConfig} PolyfillsLoaderConfig */

// @ts-ignore
const { getAttribute } = require('@open-wc/building-utils/dom5-fork');
const crypto = require('crypto');

Expand Down Expand Up @@ -54,6 +55,7 @@ function getScriptFileType(script) {
*/
function hasFileOfType(cfg, type) {
return (
// @ts-ignore
cfg.modern.files.some(f => f.type === type) ||
(cfg.legacy && cfg.legacy.some(e => e.files.some(f => f.type === type)))
);
Expand Down
25 changes: 21 additions & 4 deletions packages/polyfills-loader/tsconfig.json
@@ -1,6 +1,23 @@
// Don't edit this file directly. It is generated by /scripts/update-package-configs.ts

{
"extends": "../../tsconfig.json",
"extends": "../../tsconfig.node-base.json",
"compilerOptions": {
"strict": true
}
}
"module": "commonjs",
"outDir": "./types",
"rootDir": ".",
"composite": true,
"allowJs": true,
"checkJs": true,
"emitDeclarationOnly": true
},
"references": [],
"include": [
"src",
"*.js"
],
"exclude": [
"dist",
"types"
]
}
4 changes: 3 additions & 1 deletion packages/scoped-elements/package.json
Expand Up @@ -24,7 +24,8 @@
"start:no-scope": "es-dev-server -c demo/no-scope/server.js",
"start:with-scope": "es-dev-server -c demo/with-scope/server.js",
"test": "cd ../../ && yarn test:browser --grep \"packages/scoped-elements/test/*.test.js\"",
"test:watch": "cd ../../ && yarn test:browser:watch --grep \"packages/scoped-elements/test/*.test.js\""
"test:watch": "cd ../../ && yarn test:browser:watch --grep \"packages/scoped-elements/test/*.test.js\"",
"types:copy": "copyfiles \"./src/**/*.d.ts\" \"./*.d.ts\" types"
},
"files": [
"*.d.ts",
Expand All @@ -42,5 +43,6 @@
"@open-wc/dedupe-mixin": "^1.3.0",
"lit-html": "^1.0.0"
},
"types": "types/index.d.ts",
"sideEffects": false
}

0 comments on commit 17e9e7d

Please sign in to comment.