react-tooltip 5.8.4-beta.0 → 5.8.4-beta.0-esbuild

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/cra-app/README.md +70 -0
  2. package/cra-app/package.json +39 -0
  3. package/cra-app/public/favicon.ico +0 -0
  4. package/cra-app/public/index.html +43 -0
  5. package/cra-app/public/logo192.png +0 -0
  6. package/cra-app/public/logo512.png +0 -0
  7. package/cra-app/public/manifest.json +25 -0
  8. package/cra-app/public/robots.txt +3 -0
  9. package/cra-app/src/App.css +38 -0
  10. package/cra-app/src/App.js +30 -0
  11. package/cra-app/src/App.test.js +8 -0
  12. package/cra-app/src/index.css +13 -0
  13. package/cra-app/src/index.js +17 -0
  14. package/cra-app/src/logo.svg +1 -0
  15. package/cra-app/src/reportWebVitals.js +13 -0
  16. package/cra-app/src/setupTests.js +5 -0
  17. package/cra-app/yarn.lock +9270 -0
  18. package/dist/react-tooltip.cjs.js +1257 -2947
  19. package/dist/react-tooltip.cjs.js.map +7 -0
  20. package/dist/react-tooltip.cjs.min.js +11 -15
  21. package/dist/react-tooltip.cjs.min.js.map +7 -0
  22. package/dist/react-tooltip.css +23 -32
  23. package/dist/react-tooltip.css.map +7 -0
  24. package/dist/react-tooltip.esm.js +1253 -2937
  25. package/dist/react-tooltip.esm.js.map +7 -0
  26. package/dist/react-tooltip.esm.min.js +11 -15
  27. package/dist/react-tooltip.esm.min.js.map +7 -0
  28. package/dist/react-tooltip.iife.js +1349 -0
  29. package/dist/react-tooltip.iife.js.map +7 -0
  30. package/dist/react-tooltip.iife.min.js +11 -0
  31. package/dist/react-tooltip.iife.min.js.map +7 -0
  32. package/dist/react-tooltip.min.css +2 -1
  33. package/dist/react-tooltip.min.css.map +7 -0
  34. package/esbuild.config.dev.mjs +32 -0
  35. package/esbuild.config.prod.mjs +92 -0
  36. package/package.json +12 -6
  37. package/tsconfig.json +1 -2
  38. package/dist/react-tooltip.umd.js +0 -3048
  39. package/dist/react-tooltip.umd.min.js +0 -15
@@ -0,0 +1,32 @@
1
+ import * as esbuild from 'esbuild'
2
+ import cssModulesPlugin from 'esbuild-css-modules-plugin'
3
+ import fs from 'fs'
4
+
5
+ const ctx = await esbuild.context({
6
+ entryPoints: ['./src/index-dev.tsx'],
7
+ bundle: true,
8
+ outdir: 'build',
9
+ treeShaking: true,
10
+ plugins: [
11
+ cssModulesPlugin({
12
+ v2: true,
13
+ v2CssModulesOption: {
14
+ pattern: `react-tooltip__[local]_[hash]`,
15
+ },
16
+ }),
17
+ ],
18
+ })
19
+
20
+ fs.copyFile('./public/index.html', './build/index.html', (err) => {
21
+ if (err) throw err
22
+ })
23
+
24
+ await ctx.watch()
25
+
26
+ const { port } = await ctx.serve({
27
+ servedir: 'build',
28
+ port: 3000,
29
+ host: 'localhost',
30
+ })
31
+
32
+ console.log(`\n\n# Live Server: localhost:${port}`)
@@ -0,0 +1,92 @@
1
+ import * as esbuild from 'esbuild'
2
+ import cssModulesPlugin from 'esbuild-css-modules-plugin'
3
+ import fs from 'fs'
4
+
5
+ const buildsConfig = [
6
+ {
7
+ format: 'esm',
8
+ outfile: 'dist/react-tooltip.esm.js',
9
+ minify: false,
10
+ },
11
+ {
12
+ format: 'cjs',
13
+ outfile: 'dist/react-tooltip.cjs.js',
14
+ minify: false,
15
+ },
16
+ {
17
+ format: 'iife',
18
+ outfile: 'dist/react-tooltip.iife.js',
19
+ minify: false,
20
+ },
21
+ {
22
+ format: 'esm',
23
+ outfile: 'dist/react-tooltip.js', // for styles be exported as `react-tooltip.css`
24
+ minify: false,
25
+ },
26
+ {
27
+ format: 'esm',
28
+ outfile: 'dist/react-tooltip.esm.min.js',
29
+ minify: true,
30
+ },
31
+ {
32
+ format: 'cjs',
33
+ outfile: 'dist/react-tooltip.cjs.min.js',
34
+ minify: true,
35
+ },
36
+ {
37
+ format: 'iife',
38
+ outfile: 'dist/react-tooltip.iife.min.js',
39
+ minify: true,
40
+ },
41
+ {
42
+ format: 'esm',
43
+ outfile: 'dist/react-tooltip.min.js',
44
+ minify: true,
45
+ },
46
+ ]
47
+
48
+ const builds = []
49
+
50
+ buildsConfig.forEach(({ format, outfile, minify }) => {
51
+ builds.push(
52
+ esbuild.build({
53
+ entryPoints: ['./src/index.tsx'],
54
+ bundle: true,
55
+ outfile,
56
+ format,
57
+ treeShaking: true,
58
+ minify,
59
+ sourcemap: true,
60
+ external: ['react', 'react-dom', 'prop-types'],
61
+ plugins: [
62
+ cssModulesPlugin({
63
+ // inject: true,
64
+ v2: true,
65
+ v2CssModulesOption: {
66
+ pattern: `react-tooltip__[local]_[hash]`,
67
+ },
68
+ }),
69
+ ],
70
+ }),
71
+ )
72
+ })
73
+
74
+ await Promise.allSettled(builds)
75
+
76
+ // Remove all unecessary or duplicated files from `dist` folder after build
77
+ fs.unlink('./dist/react-tooltip.cjs.css', () => null) // generated by cjs build
78
+ fs.unlink('./dist/react-tooltip.esm.css', () => null) // generated by esm build
79
+ fs.unlink('./dist/react-tooltip.iife.css', () => null) // generated by iife build
80
+ fs.unlink('./dist/react-tooltip.cjs.min.css', () => null) // generated by minified cjs build
81
+ fs.unlink('./dist/react-tooltip.esm.min.css', () => null) // generated by minified esm build
82
+ fs.unlink('./dist/react-tooltip.iife.min.css', () => null) // generated by minified iife build
83
+ fs.unlink('./dist/react-tooltip.js', () => null) // generated by css build
84
+ fs.unlink('./dist/react-tooltip.min.js', () => null) // generated by minified css build
85
+ fs.unlink('./dist/react-tooltip.cjs.css.map', () => null) // generated by cjs build
86
+ fs.unlink('./dist/react-tooltip.esm.css.map', () => null) // generated by esm build
87
+ fs.unlink('./dist/react-tooltip.iife.css.map', () => null) // generated by iife build
88
+ fs.unlink('./dist/react-tooltip.cjs.min.css.map', () => null) // generated by minified cjs build
89
+ fs.unlink('./dist/react-tooltip.esm.min.css.map', () => null) // generated by minified esm build
90
+ fs.unlink('./dist/react-tooltip.iife.min.css.map', () => null) // generated by minified iife build
91
+ fs.unlink('./dist/react-tooltip.js.map', () => null) // generated by css build
92
+ fs.unlink('./dist/react-tooltip.min.js.map', () => null) // generated by minified css build
package/package.json CHANGED
@@ -1,17 +1,21 @@
1
1
  {
2
2
  "name": "react-tooltip",
3
- "version": "5.8.4-beta.0",
3
+ "version": "5.8.4-beta.0-esbuild",
4
4
  "description": "react tooltip component",
5
5
  "scripts": {
6
- "dev": "node ./cli.js --env=development && node --max_old_space_size=2048 ./node_modules/rollup/dist/bin/rollup -c rollup.config.dev.js --watch",
7
- "build": "node ./cli.js --env=production && npm run types && node --max_old_space_size=2048 ./node_modules/rollup/dist/bin/rollup -c rollup.config.prod.js && npm run bundlesize",
6
+ "dev-rollup": "node ./cli.js --env=development && node --max_old_space_size=2048 ./node_modules/rollup/dist/bin/rollup -c rollup.config.dev.js --watch",
7
+ "build-rollup": "node ./cli.js --env=production && npm run types && node --max_old_space_size=2048 ./node_modules/rollup/dist/bin/rollup -c rollup.config.prod.js && npm run bundlesize",
8
+ "dev": "node ./cli.js --env=development && node ./esbuild.config.dev.mjs",
9
+ "build": "node ./cli.js --env=production && node ./esbuild.config.prod.mjs",
8
10
  "types": "node --max_old_space_size=2048 ./node_modules/rollup/dist/bin/rollup -c rollup.config.types.js",
9
11
  "eslint": "eslint --ext=js --ext=jsx --ext=ts --ext=tsx --fix ./src",
10
12
  "stylelint": "stylelint \"src/**/*.css\"",
11
13
  "prettier": "prettier --config ./.prettierrc.json --write \"src/**/*{.js,.jsx,.ts,.tsx,.css}\"",
12
14
  "prepare": "husky install",
13
15
  "bundlesize": "bundlesize",
14
- "test": "jest"
16
+ "esbuild": "esbuild",
17
+ "test": "jest",
18
+ "postbuild": "npm run types && npm run bundlesize"
15
19
  },
16
20
  "main": "dist/react-tooltip.cjs.min.js",
17
21
  "module": "dist/react-tooltip.esm.min.js",
@@ -62,6 +66,8 @@
62
66
  "@typescript-eslint/parser": "^5.42.1",
63
67
  "bundlesize": "^0.18.1",
64
68
  "css-loader": "6.7.2",
69
+ "esbuild": "0.17.10",
70
+ "esbuild-css-modules-plugin": "^2.7.1",
65
71
  "eslint": "8.28.0",
66
72
  "eslint-config-airbnb": "19.0.4",
67
73
  "eslint-config-prettier": "^8.3.0",
@@ -79,8 +85,8 @@
79
85
  "prettier": "^2.4.1",
80
86
  "process": "^0.11.10",
81
87
  "prop-types": "^15.7.2",
82
- "react": "16.14.0",
83
- "react-dom": "16.14.0",
88
+ "react": "18.2.0",
89
+ "react-dom": "18.2.0",
84
90
  "rimraf": "^3.0.2",
85
91
  "rollup": "2.79.1",
86
92
  "rollup-plugin-analyzer": "^4.0.0",
package/tsconfig.json CHANGED
@@ -15,8 +15,7 @@
15
15
  /* Language and Environment */
16
16
  "target": "es2018" /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */,
17
17
  "lib": [
18
- "es2017",
19
- "ESNext",
18
+ "es2018",
20
19
  "DOM"
21
20
  ] /* Specify a set of bundled library declaration files that describe the target runtime environment. */,
22
21
  "jsx": "react-jsx" /* Specify what JSX code is generated. */,