diff --git a/.circleci/config.yml b/.circleci/config.yml index 3ba8bbd3ce..9aefca2440 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -37,6 +37,7 @@ jobs: root: '.' paths: - packages/*/dist + - packages/*/lib - packages/*/src/generated lint: diff --git a/.gitignore b/.gitignore index 5e6513daa3..eb4ce4de76 100644 --- a/.gitignore +++ b/.gitignore @@ -20,6 +20,7 @@ yarn-error.log # Blueprint build dist +lib generated coverage /docs diff --git a/packages/core/karma.conf.js b/packages/core/karma.conf.js index 86a1b19822..c55e707b63 100644 --- a/packages/core/karma.conf.js +++ b/packages/core/karma.conf.js @@ -24,13 +24,6 @@ module.exports = function (config) { }); config.set(baseConfig); config.set({ - webpack: Object.assign({}, baseConfig.webpack, { - entry: { - core: [ - path.resolve(__dirname, "test/index.ts"), - path.resolve(__dirname, "dist/blueprint.css"), - ], - }, - }), - }) + // overrides here + }); }; diff --git a/packages/core/package.json b/packages/core/package.json index a6526df770..cbb8116114 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -2,17 +2,17 @@ "name": "@blueprintjs/core", "version": "1.35.0", "description": "Core styles & components", - "main": "dist/index.js", - "module": "dist/esm/index.js", - "typings": "dist/esm/index.d.ts", - "style": "dist/blueprint.css", + "main": "lib/cjs/index.js", + "module": "lib/esm/index.js", + "typings": "lib/esm/index.d.ts", + "style": "lib/css/blueprint.css", "unpkg": "dist/core.bundle.js", "scripts": { "compile": "npm-run-all -p 'compile:*'", "compile:esm": "tsc -p ./src", "compile:cjs": "tsc -p ./src/tsconfig.cjs.json", "compile:css": "sass-compile ./src", - "clean": "rm -rf dist/*", + "clean": "rm -rf dist/* && rm -rf lib/*", "dev": "npm-run-all -p 'compile:esm -- --watch' 'compile:css -- --watch'", "dist": "npm-run-all -s 'dist:*'", "dist:bundle": "NODE_ENV=production webpack", diff --git a/packages/core/src/docs/variables.md b/packages/core/src/docs/variables.md index 23058351ab..347db617c3 100644 --- a/packages/core/src/docs/variables.md +++ b/packages/core/src/docs/variables.md @@ -3,7 +3,13 @@ Available for use with Sass and Less. ```css.scss -@import "path/to/@blueprintjs/core/dist/variables"; +// Sass +@import "path/to/@blueprintjs/core/lib/scss/variables"; +``` + +```css.less +// Less +@import "path/to/@blueprintjs/core/lib/less/variables"; ``` The Sass `$` convention is used in this documentation for consistency with the original source code. diff --git a/packages/core/src/tsconfig.cjs.json b/packages/core/src/tsconfig.cjs.json index 89e06b4b44..54b20e53e7 100644 --- a/packages/core/src/tsconfig.cjs.json +++ b/packages/core/src/tsconfig.cjs.json @@ -2,6 +2,6 @@ "extends": "./tsconfig", "compilerOptions": { "module": "commonjs", - "outDir": "../dist" + "outDir": "../lib/cjs" } } diff --git a/packages/core/src/tsconfig.json b/packages/core/src/tsconfig.json index 1fa5548ec3..b4fa3674bf 100644 --- a/packages/core/src/tsconfig.json +++ b/packages/core/src/tsconfig.json @@ -1,6 +1,6 @@ { "extends": "../../../config/tsconfig.base", "compilerOptions": { - "outDir": "../dist/esm" + "outDir": "../lib/esm" } } diff --git a/packages/core/test/isotest.js b/packages/core/test/isotest.js index 2356ecc702..155b0687c7 100644 --- a/packages/core/test/isotest.js +++ b/packages/core/test/isotest.js @@ -5,8 +5,8 @@ const { generateIsomorphicTests } = require("@blueprintjs/test-commons"); const React = require("react"); -// TODO: get this to work with require("@std/esm")(module)("../dist/esm") -const Core = require("../dist"); +// TODO: get this to work with require("@std/esm")(module)("../lib/esm") +const Core = require("../lib/cjs"); const tooltipContent = { content: React.createElement("h1", {}, "content") }; const customProps = { diff --git a/packages/datetime/karma.conf.js b/packages/datetime/karma.conf.js index e7a4587464..336f4347c5 100644 --- a/packages/datetime/karma.conf.js +++ b/packages/datetime/karma.conf.js @@ -4,6 +4,8 @@ const { createKarmaConfig } = require("@blueprintjs/karma-build-scripts"); const path = require("path"); +const coreManifest = require("../core/package.json"); +const packageManifest = require("./package.json"); module.exports = function (config) { const baseConfig = createKarmaConfig({ @@ -11,14 +13,6 @@ module.exports = function (config) { }); config.set(baseConfig); config.set({ - webpack: Object.assign({}, baseConfig.webpack, { - entry: { - datetime: [ - path.resolve(__dirname, "test/index.ts"), - path.resolve(__dirname, "../core/dist/blueprint.css"), - path.resolve(__dirname, "dist/blueprint-datetime.css"), - ], - }, - }), - }) + // overrides here + }); }; diff --git a/packages/datetime/package.json b/packages/datetime/package.json index 9274bc7ff1..ede7fb39d1 100644 --- a/packages/datetime/package.json +++ b/packages/datetime/package.json @@ -2,17 +2,17 @@ "name": "@blueprintjs/datetime", "version": "1.25.1", "description": "Components for interacting with dates and times", - "main": "dist/index.js", - "module": "dist/esm/index.js", - "typings": "dist/esm/index.d.ts", - "style": "dist/blueprint-datetime.css", + "main": "lib/cjs/index.js", + "module": "lib/esm/index.js", + "typings": "lib/esm/index.d.ts", + "style": "lib/css/blueprint-datetime.css", "unpkg": "dist/datetime.bundle.js", "scripts": { "compile": "npm-run-all -p 'compile:*'", "compile:esm": "tsc -p ./src", "compile:cjs": "tsc -p ./src/tsconfig.cjs.json", "compile:css": "sass-compile ./src", - "clean": "rm -rf dist/*", + "clean": "rm -rf dist/* && rm -rf lib/*", "dev": "npm-run-all -p 'compile:esm -- --watch' 'compile:css -- --watch'", "dist": "npm-run-all -s 'dist:*'", "dist:bundle": "NODE_ENV=production webpack", diff --git a/packages/datetime/src/tsconfig.cjs.json b/packages/datetime/src/tsconfig.cjs.json index 89e06b4b44..54b20e53e7 100644 --- a/packages/datetime/src/tsconfig.cjs.json +++ b/packages/datetime/src/tsconfig.cjs.json @@ -2,6 +2,6 @@ "extends": "./tsconfig", "compilerOptions": { "module": "commonjs", - "outDir": "../dist" + "outDir": "../lib/cjs" } } diff --git a/packages/datetime/src/tsconfig.json b/packages/datetime/src/tsconfig.json index 1fa5548ec3..b4fa3674bf 100644 --- a/packages/datetime/src/tsconfig.json +++ b/packages/datetime/src/tsconfig.json @@ -1,6 +1,6 @@ { "extends": "../../../config/tsconfig.base", "compilerOptions": { - "outDir": "../dist/esm" + "outDir": "../lib/esm" } } diff --git a/packages/datetime/test/isotest.js b/packages/datetime/test/isotest.js index 1caf8b940b..1649e09e70 100644 --- a/packages/datetime/test/isotest.js +++ b/packages/datetime/test/isotest.js @@ -5,7 +5,7 @@ const { generateIsomorphicTests } = require("@blueprintjs/test-commons"); const React = require("react"); -const DateTime = require("../dist"); +const DateTime = require("../lib/cjs"); describe("DateTime isomorphic rendering", () => { generateIsomorphicTests( diff --git a/packages/docs-app/src/blueprint.md b/packages/docs-app/src/blueprint.md index 160cf9437a..bbc7da9bed 100644 --- a/packages/docs-app/src/blueprint.md +++ b/packages/docs-app/src/blueprint.md @@ -81,7 +81,7 @@ Blueprint as well. Some Blueprint components use the following ES2015 features: ... - + ... ... @@ -101,7 +101,8 @@ Blueprint supports the venerable [unpkg CDN](https://unpkg.com). Each package pr library on the `Blueprint` global variable: `Blueprint.Core`, `Blueprint.Datetime`, etc. These bundles _do not include_ external dependencies; your application will need to ensure that -`normalize.css`, `React`, `classnames`, and `Tether` are available at runtime. +`normalize.css`, `react`, `react-dom`, `react-transition-group`, `classnames`, `popper.js`, and +`react-popper`are available at runtime. ```html @@ -110,16 +111,18 @@ These bundles _do not include_ external dependencies; your application will need Blueprint Starter Kit - - + + - - - - + + + + + +