@pinnacle0/webpack-util 0.3.25 → 0.3.26

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 (139) hide show
  1. package/config/jest.config.ts +35 -0
  2. package/config/tsconfig.script.json +10 -0
  3. package/config/tsconfig.src.json +12 -0
  4. package/config/tsconfig.test.json +11 -0
  5. package/package.json +2 -2
  6. package/script/build.ts +65 -0
  7. package/script/format.ts +7 -0
  8. package/src/CanadyarnRunner.ts +35 -0
  9. package/src/CodeStyleChecker.ts +44 -0
  10. package/src/{Constant.js → Constant.ts} +1 -5
  11. package/src/CoreUtil.ts +24 -0
  12. package/src/ProjectStructureChecker.ts +119 -0
  13. package/src/TestRunner.ts +28 -0
  14. package/src/TypescriptTypeChecker.ts +29 -0
  15. package/src/{WebpackBuilder.js → WebpackBuilder.ts} +71 -51
  16. package/src/WebpackConfigGenerator/{ConfigEntryDescriptorsFactory.js → ConfigEntryDescriptorsFactory.ts} +36 -29
  17. package/src/WebpackConfigGenerator/HTMLWebpackPluginsFactory.ts +24 -0
  18. package/src/WebpackConfigGenerator/Plugin/css.plugin.ts +31 -0
  19. package/src/WebpackConfigGenerator/Plugin/html.plugin.ts +47 -0
  20. package/src/WebpackConfigGenerator/Plugin/index.ts +33 -0
  21. package/src/WebpackConfigGenerator/Plugin/{moment.plugin.js → moment.plugin.ts} +5 -12
  22. package/src/WebpackConfigGenerator/Plugin/script-tag-crossorigin-plugin.ts +22 -0
  23. package/src/WebpackConfigGenerator/Plugin/ts.plugin.ts +29 -0
  24. package/src/WebpackConfigGenerator/Plugin/webpack.plugin.ts +21 -0
  25. package/src/WebpackConfigGenerator/Rule/{RegExpUtil.js → RegExpUtil.ts} +8 -14
  26. package/src/WebpackConfigGenerator/Rule/{core-fe-hmr-babel-plugin.js → core-fe-hmr-babel-plugin.ts} +43 -9
  27. package/src/WebpackConfigGenerator/Rule/{image.rule.js → image.rule.ts} +5 -8
  28. package/src/WebpackConfigGenerator/Rule/index.ts +17 -0
  29. package/src/WebpackConfigGenerator/Rule/other.rule.ts +23 -0
  30. package/src/WebpackConfigGenerator/Rule/{stylesheet.rule.js → stylesheet.rule.ts} +34 -30
  31. package/src/WebpackConfigGenerator/Rule/{ts.rule.js → ts.rule.ts} +18 -16
  32. package/src/WebpackConfigGenerator/{WebpackConfigSerializationUtil.js → WebpackConfigSerializationUtil.ts} +23 -22
  33. package/src/WebpackConfigGenerator/WebpackEntryFactory.ts +22 -0
  34. package/src/WebpackConfigGenerator/WebpackOutputPublicURLFactory.ts +22 -0
  35. package/src/WebpackConfigGenerator/{WebpackResolveAliasFactory.js → WebpackResolveAliasFactory.ts} +16 -13
  36. package/src/WebpackConfigGenerator/WebpackResolveExtensionsFactory.ts +19 -0
  37. package/src/WebpackConfigGenerator/{WebpackResolveModulesFactory.js → WebpackResolveModulesFactory.ts} +9 -7
  38. package/src/WebpackConfigGenerator/index.ts +213 -0
  39. package/src/WebpackServerStarter.ts +138 -0
  40. package/src/index.ts +9 -0
  41. package/src/{type.d.ts → type.ts} +8 -4
  42. package/test/WebpackConfigGenerator/Rule/core-fe-hmr-babel-plugin/__snapshots__/shouldIgnore.test.ts.snap +21 -0
  43. package/test/WebpackConfigGenerator/Rule/core-fe-hmr-babel-plugin/__snapshots__/shouldTransform.test.ts.snap +53 -0
  44. package/test/WebpackConfigGenerator/Rule/core-fe-hmr-babel-plugin/shouldIgnore.test.ts +36 -0
  45. package/test/WebpackConfigGenerator/Rule/core-fe-hmr-babel-plugin/shouldTransform.test.ts +72 -0
  46. package/test/WebpackConfigGenerator/plugin/fixture/script.js +2 -0
  47. package/test/WebpackConfigGenerator/plugin/fixture/script1.js +1 -0
  48. package/test/WebpackConfigGenerator/plugin/script-tag-crossorigin-plugin.test.ts +58 -0
  49. package/test/test-project/package.json +5 -0
  50. package/tsconfig.json +15 -0
  51. package/src/CanadyarnRunner.d.ts +0 -14
  52. package/src/CanadyarnRunner.js +0 -38
  53. package/src/CanadyarnRunner.js.map +0 -1
  54. package/src/CodeStyleChecker.d.ts +0 -10
  55. package/src/CodeStyleChecker.js +0 -44
  56. package/src/CodeStyleChecker.js.map +0 -1
  57. package/src/Constant.d.ts +0 -21
  58. package/src/Constant.js.map +0 -1
  59. package/src/CoreUtil.d.ts +0 -11
  60. package/src/CoreUtil.js +0 -26
  61. package/src/CoreUtil.js.map +0 -1
  62. package/src/ProjectStructureChecker.d.ts +0 -18
  63. package/src/ProjectStructureChecker.js +0 -113
  64. package/src/ProjectStructureChecker.js.map +0 -1
  65. package/src/TestRunner.d.ts +0 -8
  66. package/src/TestRunner.js +0 -30
  67. package/src/TestRunner.js.map +0 -1
  68. package/src/TypescriptTypeChecker.d.ts +0 -11
  69. package/src/TypescriptTypeChecker.js +0 -32
  70. package/src/TypescriptTypeChecker.js.map +0 -1
  71. package/src/WebpackBuilder.d.ts +0 -38
  72. package/src/WebpackBuilder.js.map +0 -1
  73. package/src/WebpackConfigGenerator/ConfigEntryDescriptorsFactory.d.ts +0 -13
  74. package/src/WebpackConfigGenerator/ConfigEntryDescriptorsFactory.js.map +0 -1
  75. package/src/WebpackConfigGenerator/HTMLWebpackPluginsFactory.d.ts +0 -9
  76. package/src/WebpackConfigGenerator/HTMLWebpackPluginsFactory.js +0 -20
  77. package/src/WebpackConfigGenerator/HTMLWebpackPluginsFactory.js.map +0 -1
  78. package/src/WebpackConfigGenerator/Plugin/css.plugin.d.ts +0 -16
  79. package/src/WebpackConfigGenerator/Plugin/css.plugin.js +0 -33
  80. package/src/WebpackConfigGenerator/Plugin/css.plugin.js.map +0 -1
  81. package/src/WebpackConfigGenerator/Plugin/html.plugin.d.ts +0 -16
  82. package/src/WebpackConfigGenerator/Plugin/html.plugin.js +0 -48
  83. package/src/WebpackConfigGenerator/Plugin/html.plugin.js.map +0 -1
  84. package/src/WebpackConfigGenerator/Plugin/index.d.ts +0 -27
  85. package/src/WebpackConfigGenerator/Plugin/index.js +0 -32
  86. package/src/WebpackConfigGenerator/Plugin/index.js.map +0 -1
  87. package/src/WebpackConfigGenerator/Plugin/moment.plugin.d.ts +0 -10
  88. package/src/WebpackConfigGenerator/Plugin/moment.plugin.js.map +0 -1
  89. package/src/WebpackConfigGenerator/Plugin/script-tag-crossorigin-plugin.d.ts +0 -4
  90. package/src/WebpackConfigGenerator/Plugin/script-tag-crossorigin-plugin.js +0 -28
  91. package/src/WebpackConfigGenerator/Plugin/script-tag-crossorigin-plugin.js.map +0 -1
  92. package/src/WebpackConfigGenerator/Plugin/ts.plugin.d.ts +0 -16
  93. package/src/WebpackConfigGenerator/Plugin/ts.plugin.js +0 -31
  94. package/src/WebpackConfigGenerator/Plugin/ts.plugin.js.map +0 -1
  95. package/src/WebpackConfigGenerator/Plugin/webpack.plugin.d.ts +0 -14
  96. package/src/WebpackConfigGenerator/Plugin/webpack.plugin.js +0 -24
  97. package/src/WebpackConfigGenerator/Plugin/webpack.plugin.js.map +0 -1
  98. package/src/WebpackConfigGenerator/Rule/RegExpUtil.d.ts +0 -4
  99. package/src/WebpackConfigGenerator/Rule/RegExpUtil.js.map +0 -1
  100. package/src/WebpackConfigGenerator/Rule/core-fe-hmr-babel-plugin.d.ts +0 -13
  101. package/src/WebpackConfigGenerator/Rule/core-fe-hmr-babel-plugin.js.map +0 -1
  102. package/src/WebpackConfigGenerator/Rule/image.rule.d.ts +0 -9
  103. package/src/WebpackConfigGenerator/Rule/image.rule.js.map +0 -1
  104. package/src/WebpackConfigGenerator/Rule/index.d.ts +0 -13
  105. package/src/WebpackConfigGenerator/Rule/index.js +0 -18
  106. package/src/WebpackConfigGenerator/Rule/index.js.map +0 -1
  107. package/src/WebpackConfigGenerator/Rule/other.rule.d.ts +0 -12
  108. package/src/WebpackConfigGenerator/Rule/other.rule.js +0 -22
  109. package/src/WebpackConfigGenerator/Rule/other.rule.js.map +0 -1
  110. package/src/WebpackConfigGenerator/Rule/stylesheet.rule.d.ts +0 -17
  111. package/src/WebpackConfigGenerator/Rule/stylesheet.rule.js.map +0 -1
  112. package/src/WebpackConfigGenerator/Rule/ts.rule.d.ts +0 -18
  113. package/src/WebpackConfigGenerator/Rule/ts.rule.js.map +0 -1
  114. package/src/WebpackConfigGenerator/WebpackConfigSerializationUtil.d.ts +0 -10
  115. package/src/WebpackConfigGenerator/WebpackConfigSerializationUtil.js.map +0 -1
  116. package/src/WebpackConfigGenerator/WebpackEntryFactory.d.ts +0 -9
  117. package/src/WebpackConfigGenerator/WebpackEntryFactory.js +0 -14
  118. package/src/WebpackConfigGenerator/WebpackEntryFactory.js.map +0 -1
  119. package/src/WebpackConfigGenerator/WebpackOutputPublicURLFactory.d.ts +0 -11
  120. package/src/WebpackConfigGenerator/WebpackOutputPublicURLFactory.js +0 -16
  121. package/src/WebpackConfigGenerator/WebpackOutputPublicURLFactory.js.map +0 -1
  122. package/src/WebpackConfigGenerator/WebpackResolveAliasFactory.d.ts +0 -11
  123. package/src/WebpackConfigGenerator/WebpackResolveAliasFactory.js.map +0 -1
  124. package/src/WebpackConfigGenerator/WebpackResolveExtensionsFactory.d.ts +0 -7
  125. package/src/WebpackConfigGenerator/WebpackResolveExtensionsFactory.js +0 -16
  126. package/src/WebpackConfigGenerator/WebpackResolveExtensionsFactory.js.map +0 -1
  127. package/src/WebpackConfigGenerator/WebpackResolveModulesFactory.d.ts +0 -7
  128. package/src/WebpackConfigGenerator/WebpackResolveModulesFactory.js.map +0 -1
  129. package/src/WebpackConfigGenerator/index.d.ts +0 -31
  130. package/src/WebpackConfigGenerator/index.js +0 -191
  131. package/src/WebpackConfigGenerator/index.js.map +0 -1
  132. package/src/WebpackServerStarter.d.ts +0 -28
  133. package/src/WebpackServerStarter.js +0 -111
  134. package/src/WebpackServerStarter.js.map +0 -1
  135. package/src/index.d.ts +0 -10
  136. package/src/index.js +0 -8
  137. package/src/index.js.map +0 -1
  138. package/src/type.js +0 -3
  139. package/src/type.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"CoreUtil.js","sourceRoot":"","sources":["../../src/CoreUtil.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,SAAS,UAAU;IACf,OAAQ,eAAK,CAAC,SAAS,EAAE,CAAC,GAAc,IAAI,IAAI,CAAC;AACrD,CAAC;AAED,SAAS,gBAAgB;IACrB,OAAO,OAAO,CAAC,eAAK,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,UAAU;IACf,OAAO,eAAK,CAAC,SAAS,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC;AAC7C,CAAC;AAED,SAAS,OAAO;IACZ,OAAO,OAAO,CAAC,eAAK,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;AAC9C,CAAC;AAEY,QAAA,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;IAClC,UAAU;IACV,gBAAgB;IAChB,UAAU;IACV,OAAO;CACV,CAAC,CAAC"}
@@ -1,18 +0,0 @@
1
- import type { InternalCheckerOptions } from "./type";
2
- export declare class ProjectStructureChecker {
3
- private readonly options;
4
- private readonly projectDirectory;
5
- private readonly extraCheckDirectories;
6
- private readonly packageJSONPath;
7
- private readonly tsConfigPath;
8
- constructor(options: InternalCheckerOptions);
9
- run(): void;
10
- private checkMainProjectDirectory;
11
- private checkMainProjectSrcDirectory;
12
- private checkExtraDirectories;
13
- private checkPackageJSON;
14
- private checkTSConfig;
15
- private checkPrettierInstallation;
16
- private checkESLintInstallation;
17
- private checkStyleLintInstallation;
18
- }
@@ -1,113 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ProjectStructureChecker = void 0;
7
- const fs_1 = __importDefault(require("fs"));
8
- const path_1 = __importDefault(require("path"));
9
- const Constant_1 = require("./Constant");
10
- class ProjectStructureChecker {
11
- constructor(options) {
12
- var _a;
13
- this.options = options;
14
- this.projectDirectory = options.projectDirectory;
15
- this.extraCheckDirectories = (_a = options.extraCheckDirectories) !== null && _a !== void 0 ? _a : [];
16
- this.packageJSONPath = path_1.default.join(options.projectDirectory, "package.json");
17
- this.tsConfigPath = path_1.default.join(options.projectDirectory, "tsconfig.json");
18
- }
19
- run() {
20
- this.checkMainProjectDirectory();
21
- this.checkMainProjectSrcDirectory();
22
- this.checkExtraDirectories();
23
- this.checkPackageJSON();
24
- this.checkTSConfig();
25
- this.checkPrettierInstallation();
26
- this.checkESLintInstallation();
27
- this.checkStyleLintInstallation();
28
- }
29
- checkMainProjectDirectory() {
30
- if (!(fs_1.default.existsSync(this.projectDirectory) && fs_1.default.statSync(this.projectDirectory).isDirectory())) {
31
- throw new Error(`Cannot check project directory at "${this.projectDirectory}" because it is not a folder.`);
32
- }
33
- const mainProjectStaticDirectory = path_1.default.join(this.projectDirectory, "static");
34
- if (!(fs_1.default.existsSync(mainProjectStaticDirectory) && fs_1.default.statSync(mainProjectStaticDirectory).isDirectory())) {
35
- throw new Error(`Cannot find "static" directory in project at "${this.projectDirectory}"`);
36
- }
37
- }
38
- checkMainProjectSrcDirectory() {
39
- const mainProjectSrcDirectory = path_1.default.join(this.projectDirectory, "src");
40
- if (!(fs_1.default.existsSync(mainProjectSrcDirectory) && fs_1.default.statSync(mainProjectSrcDirectory).isDirectory())) {
41
- throw new Error(`Cannot find "src" folder inside directory at "${this.projectDirectory}".`);
42
- }
43
- let isMainEntryFound = false;
44
- Constant_1.Constant.mainEntryFilenames
45
- .map(entryName => path_1.default.join(mainProjectSrcDirectory, entryName))
46
- .forEach(entryPath => {
47
- if (fs_1.default.existsSync(entryPath) && fs_1.default.statSync(entryPath).isFile()) {
48
- isMainEntryFound = true;
49
- }
50
- });
51
- if (!isMainEntryFound) {
52
- throw new Error(`Cannot find main entry file in src/ at "${mainProjectSrcDirectory}"; checked: ${Constant_1.Constant.mainEntryFilenames.map(_ => `"${_}"`).join(" / ")}.`);
53
- }
54
- }
55
- checkExtraDirectories() {
56
- for (const extraCheckDirectory of this.extraCheckDirectories) {
57
- if (!(fs_1.default.existsSync(extraCheckDirectory) && fs_1.default.statSync(extraCheckDirectory).isDirectory())) {
58
- throw new Error(`Cannot check extra directory at "${extraCheckDirectory}" because it is not a folder.`);
59
- }
60
- }
61
- }
62
- checkPackageJSON() {
63
- if (!(fs_1.default.existsSync(this.packageJSONPath) && fs_1.default.statSync(this.packageJSONPath).isFile())) {
64
- throw new Error(`Cannot find package.json at "${this.packageJSONPath}".`);
65
- }
66
- const packageJSONContents = JSON.parse(fs_1.default.readFileSync(this.packageJSONPath, { encoding: "utf8" }));
67
- for (const [depName, depVersion] of Object.entries(packageJSONContents.dependencies || {})) {
68
- if (!/^\d/.test(depVersion)) {
69
- throw new Error(`Dependency "${depName}" must be an exact version, but found "${depVersion}" in package.json at "${this.packageJSONPath}".`);
70
- }
71
- }
72
- for (const [depName, depVersion] of Object.entries(packageJSONContents.devDependencies || {})) {
73
- if (!/^\d/.test(depVersion)) {
74
- throw new Error(`Dependency "${depName}" must be an exact version, but found "${depVersion}" in package.json at "${this.packageJSONPath}".`);
75
- }
76
- }
77
- }
78
- checkTSConfig() {
79
- const mainProjectSrcDirectory = path_1.default.join(this.projectDirectory, "src");
80
- // Checking the first-level of src/* is enough here
81
- const hasTSFiles = fs_1.default.readdirSync(mainProjectSrcDirectory).some(fileName => fileName.endsWith(".ts") || fileName.endsWith(".tsx"));
82
- const hasTSConfigFile = fs_1.default.existsSync(this.tsConfigPath) && fs_1.default.statSync(this.tsConfigPath).isFile();
83
- if (hasTSFiles && !hasTSConfigFile) {
84
- throw new Error(`Cannot find tsconfig.json at "${this.tsConfigPath}".`);
85
- }
86
- }
87
- checkPrettierInstallation() {
88
- try {
89
- require("prettier");
90
- }
91
- catch (_a) {
92
- throw new Error(`Cannot load prettier module (requiring from "webpack-util"), make sure prettier is installed.`);
93
- }
94
- }
95
- checkESLintInstallation() {
96
- try {
97
- require("eslint");
98
- }
99
- catch (_a) {
100
- throw new Error(`Cannot load eslint module (requiring from "webpack-util"), make sure eslint is installed.`);
101
- }
102
- }
103
- checkStyleLintInstallation() {
104
- try {
105
- require("stylelint");
106
- }
107
- catch (_a) {
108
- throw new Error(`Cannot load stylelint module (requiring from "webpack-util"), make sure stylelint is installed.`);
109
- }
110
- }
111
- }
112
- exports.ProjectStructureChecker = ProjectStructureChecker;
113
- //# sourceMappingURL=ProjectStructureChecker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProjectStructureChecker.js","sourceRoot":"","sources":["../../src/ProjectStructureChecker.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import type { InternalCheckerOptions } from "./type";
2
- export declare class TestRunner {
3
- private readonly directories;
4
- private readonly logger;
5
- constructor({ projectDirectory, extraCheckDirectories }: InternalCheckerOptions);
6
- run(): void;
7
- private runTestScript;
8
- }
package/src/TestRunner.js DELETED
@@ -1,30 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.TestRunner = void 0;
7
- const devtool_util_1 = require("@pinnacle0/devtool-util");
8
- const fs_1 = __importDefault(require("fs"));
9
- class TestRunner {
10
- constructor({ projectDirectory, extraCheckDirectories = [] }) {
11
- this.logger = devtool_util_1.Utility.createConsoleLogger("TestRunner");
12
- this.directories = [projectDirectory, ...extraCheckDirectories];
13
- }
14
- run() {
15
- this.directories.forEach(dir => this.runTestScript(dir));
16
- }
17
- runTestScript(directory) {
18
- var _a;
19
- const packageJSONPath = directory + "/package.json";
20
- if (fs_1.default.existsSync(packageJSONPath) && fs_1.default.statSync(packageJSONPath).isFile()) {
21
- const packageJSONContents = JSON.parse(fs_1.default.readFileSync(packageJSONPath, { encoding: "utf8" }));
22
- if ((_a = packageJSONContents === null || packageJSONContents === void 0 ? void 0 : packageJSONContents.scripts) === null || _a === void 0 ? void 0 : _a.test) {
23
- this.logger.task("Running `yarn test` at " + directory);
24
- devtool_util_1.Utility.runCommand("yarn", ["--cwd", directory, "test"]);
25
- }
26
- }
27
- }
28
- }
29
- exports.TestRunner = TestRunner;
30
- //# sourceMappingURL=TestRunner.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TestRunner.js","sourceRoot":"","sources":["../../src/TestRunner.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAgD;AAEhD,4CAAoB;AAEpB,MAAa,UAAU;IAInB,YAAY,EAAC,gBAAgB,EAAE,qBAAqB,GAAG,EAAE,EAAyB;QAFjE,WAAM,GAAG,sBAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAGhE,IAAI,CAAC,WAAW,GAAG,CAAC,gBAAgB,EAAE,GAAG,qBAAqB,CAAC,CAAC;IACpE,CAAC;IAED,GAAG;QACC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7D,CAAC;IAEO,aAAa,CAAC,SAAiB;;QACnC,MAAM,eAAe,GAAG,SAAS,GAAG,eAAe,CAAC;QACpD,IAAI,YAAE,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,YAAE,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,MAAM,EAAE,EAAE;YACzE,MAAM,mBAAmB,GAAwB,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,eAAe,EAAE,EAAC,QAAQ,EAAE,MAAM,EAAC,CAAC,CAAC,CAAC;YAElH,IAAI,MAAA,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,OAAO,0CAAE,IAAI,EAAE;gBACpC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,GAAG,SAAS,CAAC,CAAC;gBACxD,sBAAO,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;aAC5D;SACJ;IACL,CAAC;CACJ;AAvBD,gCAuBC"}
@@ -1,11 +0,0 @@
1
- import type { InternalCheckerOptions } from "./type";
2
- /**
3
- * Check typescript type for both projectDirectory src, extraCheckDirectories src using their own tsconfig inside their directory
4
- */
5
- export declare class TypescriptTypeChecker {
6
- private readonly logger;
7
- private tsconfigPaths;
8
- constructor({ projectDirectory, extraCheckDirectories }: InternalCheckerOptions);
9
- run(): void;
10
- private checkTypeScriptTyping;
11
- }
@@ -1,32 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.TypescriptTypeChecker = void 0;
7
- const devtool_util_1 = require("@pinnacle0/devtool-util");
8
- const path_1 = __importDefault(require("path"));
9
- /**
10
- * Check typescript type for both projectDirectory src, extraCheckDirectories src using their own tsconfig inside their directory
11
- */
12
- class TypescriptTypeChecker {
13
- constructor({ projectDirectory, extraCheckDirectories }) {
14
- this.logger = devtool_util_1.Utility.createConsoleLogger("TypescriptTypeChecker");
15
- this.tsconfigPaths = [];
16
- const checkableDirectories = [projectDirectory, ...(extraCheckDirectories !== null && extraCheckDirectories !== void 0 ? extraCheckDirectories : [])];
17
- for (const directory of checkableDirectories) {
18
- this.tsconfigPaths.push(path_1.default.join(directory, "tsconfig.json"));
19
- }
20
- }
21
- run() {
22
- this.checkTypeScriptTyping();
23
- }
24
- checkTypeScriptTyping() {
25
- this.logger.task("Checking TypeScript");
26
- for (const tsconfigPath of this.tsconfigPaths) {
27
- devtool_util_1.Utility.runCommand("tsc", ["--noEmit", "--emitDeclarationOnly", "false", "-P", tsconfigPath]);
28
- }
29
- }
30
- }
31
- exports.TypescriptTypeChecker = TypescriptTypeChecker;
32
- //# sourceMappingURL=TypescriptTypeChecker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TypescriptTypeChecker.js","sourceRoot":"","sources":["../../src/TypescriptTypeChecker.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAgD;AAChD,gDAAwB;AAGxB;;GAEG;AACH,MAAa,qBAAqB;IAI9B,YAAY,EAAC,gBAAgB,EAAE,qBAAqB,EAAyB;QAH5D,WAAM,GAAG,sBAAO,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,CAAC;QACvE,kBAAa,GAAa,EAAE,CAAC;QAGjC,MAAM,oBAAoB,GAAG,CAAC,gBAAgB,EAAE,GAAG,CAAC,qBAAqB,aAArB,qBAAqB,cAArB,qBAAqB,GAAI,EAAE,CAAC,CAAC,CAAC;QAClF,KAAK,MAAM,SAAS,IAAI,oBAAoB,EAAE;YAC1C,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC;SAClE;IACL,CAAC;IAED,GAAG;QACC,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACjC,CAAC;IAEO,qBAAqB;QACzB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACxC,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,aAAa,EAAE;YAC3C,sBAAO,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,uBAAuB,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;SACjG;IACL,CAAC;CACJ;AArBD,sDAqBC"}
@@ -1,38 +0,0 @@
1
- import type { InternalCheckerOptions } from "./type";
2
- import type { WebpackConfigGeneratorOptions } from "./WebpackConfigGenerator";
3
- export interface WebpackBuilderOptions extends WebpackConfigGeneratorOptions, InternalCheckerOptions {
4
- onSuccess?: () => void;
5
- }
6
- /**
7
- * Build the website by webpack.
8
- *
9
- * Runs static analysis checkers before starting the webpack build (`prettier --check`, `eslint`, `stylelint`).
10
- *
11
- ***************************************
12
- *
13
- * Add "--env envName" to command line, if you want to switch config folder dynamically.
14
- *
15
- * Add "--profile" to command line, if you want to generate a profile for analysis in project folder.
16
- * Then you can use visualizer to analyze: https://chrisbateman.github.io/webpack-visualizer/
17
- *
18
- * Add "--mode fast" to command line, if you want to skip style and lint checks.
19
- */
20
- export declare class WebpackBuilder {
21
- private readonly projectDirectory;
22
- private readonly rootDirectory;
23
- private readonly extraCheckDirectories;
24
- private readonly projectStaticDirectory;
25
- private readonly projectProfilingJSONOutputPath;
26
- private readonly outputDirectory;
27
- private readonly webpackConfig;
28
- private readonly isFastMode;
29
- private readonly enableProfiling;
30
- private readonly onSuccess?;
31
- private readonly logger;
32
- constructor(options: WebpackBuilderOptions);
33
- run(): void;
34
- private cleanDistFolder;
35
- private copyStatic;
36
- private bundleByWebpack;
37
- private getRawWarningsAndErrors;
38
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"WebpackBuilder.js","sourceRoot":"","sources":["../../src/WebpackBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import type { EntryDescriptor } from "../type";
2
- interface ConfigEntryDescriptorsFactoryOptions {
3
- indexName: string;
4
- projectSrcDirectory: string;
5
- extraEntries: Record<string, string>;
6
- }
7
- export declare class ConfigEntryDescriptorsFactory {
8
- static generate({ indexName, projectSrcDirectory, extraEntries }: ConfigEntryDescriptorsFactoryOptions): EntryDescriptor[];
9
- private static createEntryDescriptor;
10
- private static findEntryFilepath;
11
- private static findEntryHTMLFilepath;
12
- }
13
- export {};
@@ -1 +0,0 @@
1
- {"version":3,"file":"ConfigEntryDescriptorsFactory.js","sourceRoot":"","sources":["../../../src/WebpackConfigGenerator/ConfigEntryDescriptorsFactory.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import type webpack from "webpack";
2
- import type { EntryDescriptor } from "../type";
3
- interface HTMLWebpackPluginsFactoryOptions {
4
- configEntryDescriptors: EntryDescriptor[];
5
- }
6
- export declare class HTMLWebpackPluginsFactory {
7
- static generate({ configEntryDescriptors }: HTMLWebpackPluginsFactoryOptions): webpack.Plugin[];
8
- }
9
- export {};
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HTMLWebpackPluginsFactory = void 0;
4
- const Plugin_1 = require("./Plugin");
5
- class HTMLWebpackPluginsFactory {
6
- static generate({ configEntryDescriptors }) {
7
- const htmlPlugins = [];
8
- for (const { name, entryPath, htmlPath } of configEntryDescriptors) {
9
- if (htmlPath !== undefined) {
10
- const plugin = Plugin_1.Plugin.fileOutput.html({
11
- entry: { name, entryPath, htmlPath },
12
- });
13
- htmlPlugins.push(plugin);
14
- }
15
- }
16
- return htmlPlugins;
17
- }
18
- }
19
- exports.HTMLWebpackPluginsFactory = HTMLWebpackPluginsFactory;
20
- //# sourceMappingURL=HTMLWebpackPluginsFactory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HTMLWebpackPluginsFactory.js","sourceRoot":"","sources":["../../../src/WebpackConfigGenerator/HTMLWebpackPluginsFactory.ts"],"names":[],"mappings":";;;AAEA,qCAAgC;AAMhC,MAAa,yBAAyB;IAClC,MAAM,CAAC,QAAQ,CAAC,EAAC,sBAAsB,EAAmC;QACtE,MAAM,WAAW,GAAqB,EAAE,CAAC;QAEzC,KAAK,MAAM,EAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAC,IAAI,sBAAsB,EAAE;YAC9D,IAAI,QAAQ,KAAK,SAAS,EAAE;gBACxB,MAAM,MAAM,GAAG,eAAM,CAAC,UAAU,CAAC,IAAI,CAAC;oBAClC,KAAK,EAAE,EAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAC;iBACrC,CAAC,CAAC;gBACH,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC5B;SACJ;QAED,OAAO,WAAW,CAAC;IACvB,CAAC;CACJ;AAfD,8DAeC"}
@@ -1,16 +0,0 @@
1
- import type webpack from "webpack";
2
- interface ExtractCssPluginOptions {
3
- enableProfiling: boolean;
4
- }
5
- /**
6
- * Applies CssNano to minimize stylesheets
7
- * after bundles/chunks are built.
8
- */
9
- export declare function cssMinimizerPlugin(): webpack.WebpackPluginInstance;
10
- /**
11
- * Extract output of css transformation pipeline to standalone css files.
12
- * Must be used with `MiniCssExtractPlugin.loader`, which is included with
13
- * `Rule.stylesheet({minimize: true})`.
14
- */
15
- export declare function miniCssExtractPlugin({ enableProfiling }: ExtractCssPluginOptions): webpack.WebpackPluginInstance;
16
- export {};
@@ -1,33 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.miniCssExtractPlugin = exports.cssMinimizerPlugin = void 0;
7
- const mini_css_extract_plugin_1 = __importDefault(require("mini-css-extract-plugin"));
8
- const css_minimizer_webpack_plugin_1 = __importDefault(require("css-minimizer-webpack-plugin"));
9
- const WebpackConfigSerializationUtil_1 = require("../WebpackConfigSerializationUtil");
10
- /**
11
- * Applies CssNano to minimize stylesheets
12
- * after bundles/chunks are built.
13
- */
14
- function cssMinimizerPlugin() {
15
- return WebpackConfigSerializationUtil_1.WebpackConfigSerializationUtil.serializablePlugin("CssMinimizerWebpackPlugin", css_minimizer_webpack_plugin_1.default);
16
- }
17
- exports.cssMinimizerPlugin = cssMinimizerPlugin;
18
- /**
19
- * Extract output of css transformation pipeline to standalone css files.
20
- * Must be used with `MiniCssExtractPlugin.loader`, which is included with
21
- * `Rule.stylesheet({minimize: true})`.
22
- */
23
- function miniCssExtractPlugin({ enableProfiling }) {
24
- return WebpackConfigSerializationUtil_1.WebpackConfigSerializationUtil.serializablePlugin("MiniCssExtractPlugin", mini_css_extract_plugin_1.default, {
25
- filename: enableProfiling ? "static/css/[name].[contenthash:8].css" : "static/css/[contenthash:8].css",
26
- // order of css output depends on the order of imports in js,
27
- // unless all imports in js are sorted (e.g. by alphabetical order),
28
- // this flag must be set to true to avoid error
29
- ignoreOrder: true,
30
- });
31
- }
32
- exports.miniCssExtractPlugin = miniCssExtractPlugin;
33
- //# sourceMappingURL=css.plugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"css.plugin.js","sourceRoot":"","sources":["../../../../src/WebpackConfigGenerator/Plugin/css.plugin.ts"],"names":[],"mappings":";;;;;;AAAA,sFAA2D;AAC3D,gGAAqE;AAErE,sFAAiF;AAMjF;;;GAGG;AACH,SAAgB,kBAAkB;IAC9B,OAAO,+DAA8B,CAAC,kBAAkB,CAAC,2BAA2B,EAAE,sCAAyB,CAAC,CAAC;AACrH,CAAC;AAFD,gDAEC;AAED;;;;GAIG;AACH,SAAgB,oBAAoB,CAAC,EAAC,eAAe,EAA0B;IAC3E,OAAO,+DAA8B,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,iCAAoB,EAAE;QACnG,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,uCAAuC,CAAC,CAAC,CAAC,gCAAgC;QACtG,6DAA6D;QAC7D,oEAAoE;QACpE,+CAA+C;QAC/C,WAAW,EAAE,IAAI;KACpB,CAAC,CAAC;AACP,CAAC;AARD,oDAQC"}
@@ -1,16 +0,0 @@
1
- import type webpack from "webpack";
2
- import type { HTMLEntryDescriptor } from "../../type";
3
- interface HTMLPluginOptions {
4
- entry: HTMLEntryDescriptor;
5
- }
6
- /**
7
- * Creates a html file from a template with <script> and <link> injected
8
- * with the respective hashed output filenames.
9
- */
10
- export declare function htmlPlugin({ entry }: HTMLPluginOptions): webpack.WebpackPluginInstance;
11
- /**
12
- * Adds attributes to `<script>` tag inside html file generated by
13
- * HTMLWebpackPlugin. Used to add `crossorigin="anonymous"`.
14
- */
15
- export declare function scriptTagCrossOriginPlugin(): webpack.WebpackPluginInstance;
16
- export {};
@@ -1,48 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.scriptTagCrossOriginPlugin = exports.htmlPlugin = void 0;
7
- const html_webpack_plugin_1 = __importDefault(require("html-webpack-plugin"));
8
- const script_tag_crossorigin_plugin_1 = require("./script-tag-crossorigin-plugin");
9
- const WebpackConfigSerializationUtil_1 = require("../WebpackConfigSerializationUtil");
10
- /**
11
- * Creates a html file from a template with <script> and <link> injected
12
- * with the respective hashed output filenames.
13
- */
14
- function htmlPlugin({ entry }) {
15
- return WebpackConfigSerializationUtil_1.WebpackConfigSerializationUtil.serializablePlugin("HTMLWebpackPlugin", html_webpack_plugin_1.default, {
16
- template: entry.htmlPath,
17
- filename: `${entry.name}.html`,
18
- chunks: [entry.name],
19
- minify: {
20
- collapseBooleanAttributes: true,
21
- collapseInlineTagWhitespace: true,
22
- collapseWhitespace: true,
23
- includeAutoGeneratedTags: false,
24
- keepClosingSlash: true,
25
- minifyCSS: true,
26
- minifyJS: true,
27
- minifyURLs: true,
28
- removeAttributeQuotes: true,
29
- removeComments: true,
30
- removeEmptyAttributes: true,
31
- removeRedundantAttributes: true,
32
- removeScriptTypeAttributes: true,
33
- removeStyleLinkTypeAttributes: true,
34
- removeTagWhitespace: true,
35
- useShortDoctype: true,
36
- },
37
- });
38
- }
39
- exports.htmlPlugin = htmlPlugin;
40
- /**
41
- * Adds attributes to `<script>` tag inside html file generated by
42
- * HTMLWebpackPlugin. Used to add `crossorigin="anonymous"`.
43
- */
44
- function scriptTagCrossOriginPlugin() {
45
- return WebpackConfigSerializationUtil_1.WebpackConfigSerializationUtil.serializablePlugin("ScriptTagCrossOriginPlugin", script_tag_crossorigin_plugin_1.ScriptTagCrossOriginPlugin);
46
- }
47
- exports.scriptTagCrossOriginPlugin = scriptTagCrossOriginPlugin;
48
- //# sourceMappingURL=html.plugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"html.plugin.js","sourceRoot":"","sources":["../../../../src/WebpackConfigGenerator/Plugin/html.plugin.ts"],"names":[],"mappings":";;;;;;AAAA,8EAAoD;AACpD,mFAA2E;AAG3E,sFAAiF;AAMjF;;;GAGG;AACH,SAAgB,UAAU,CAAC,EAAC,KAAK,EAAoB;IACjD,OAAO,+DAA8B,CAAC,kBAAkB,CAAC,mBAAmB,EAAE,6BAAiB,EAAE;QAC7F,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,QAAQ,EAAE,GAAG,KAAK,CAAC,IAAI,OAAO;QAC9B,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;QACpB,MAAM,EAAE;YACJ,yBAAyB,EAAE,IAAI;YAC/B,2BAA2B,EAAE,IAAI;YACjC,kBAAkB,EAAE,IAAI;YACxB,wBAAwB,EAAE,KAAK;YAC/B,gBAAgB,EAAE,IAAI;YACtB,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,IAAI;YAChB,qBAAqB,EAAE,IAAI;YAC3B,cAAc,EAAE,IAAI;YACpB,qBAAqB,EAAE,IAAI;YAC3B,yBAAyB,EAAE,IAAI;YAC/B,0BAA0B,EAAE,IAAI;YAChC,6BAA6B,EAAE,IAAI;YACnC,mBAAmB,EAAE,IAAI;YACzB,eAAe,EAAE,IAAI;SACxB;KACJ,CAAC,CAAC;AACP,CAAC;AAxBD,gCAwBC;AAED;;;GAGG;AACH,SAAgB,0BAA0B;IACtC,OAAO,+DAA8B,CAAC,kBAAkB,CAAC,4BAA4B,EAAE,0DAA0B,CAAC,CAAC;AACvH,CAAC;AAFD,gEAEC"}
@@ -1,27 +0,0 @@
1
- import { cssMinimizerPlugin, miniCssExtractPlugin } from "./css.plugin";
2
- import { scriptTagCrossOriginPlugin, htmlPlugin } from "./html.plugin";
3
- import { ignoreMomentLocalePlugin } from "./moment.plugin";
4
- import { reactRefreshPlugin, terserPlugin } from "./ts.plugin";
5
- import { webpackDefinePlugin, webpackProgressPlugin } from "./webpack.plugin";
6
- /**
7
- * Static factories to create \`webpack.config#plugins\` items.
8
- *
9
- * Plugins with similar functionality are grouped under a js object (as a namespace).
10
- */
11
- export declare class Plugin {
12
- static readonly scriptTagCrossOriginPlugin: typeof scriptTagCrossOriginPlugin;
13
- static readonly ignoreMomentLocale: typeof ignoreMomentLocalePlugin;
14
- static readonly reactRefresh: typeof reactRefreshPlugin;
15
- static readonly fileOutput: {
16
- html: typeof htmlPlugin;
17
- miniCssExtract: typeof miniCssExtractPlugin;
18
- };
19
- static readonly minimizer: {
20
- terser: typeof terserPlugin;
21
- css: typeof cssMinimizerPlugin;
22
- };
23
- static readonly webpack: {
24
- progress: typeof webpackProgressPlugin;
25
- define: typeof webpackDefinePlugin;
26
- };
27
- }
@@ -1,32 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Plugin = void 0;
4
- const css_plugin_1 = require("./css.plugin");
5
- const html_plugin_1 = require("./html.plugin");
6
- const moment_plugin_1 = require("./moment.plugin");
7
- const ts_plugin_1 = require("./ts.plugin");
8
- const webpack_plugin_1 = require("./webpack.plugin");
9
- /**
10
- * Static factories to create \`webpack.config#plugins\` items.
11
- *
12
- * Plugins with similar functionality are grouped under a js object (as a namespace).
13
- */
14
- class Plugin {
15
- }
16
- exports.Plugin = Plugin;
17
- Plugin.scriptTagCrossOriginPlugin = html_plugin_1.scriptTagCrossOriginPlugin;
18
- Plugin.ignoreMomentLocale = moment_plugin_1.ignoreMomentLocalePlugin;
19
- Plugin.reactRefresh = ts_plugin_1.reactRefreshPlugin;
20
- Plugin.fileOutput = {
21
- html: html_plugin_1.htmlPlugin,
22
- miniCssExtract: css_plugin_1.miniCssExtractPlugin,
23
- };
24
- Plugin.minimizer = {
25
- terser: ts_plugin_1.terserPlugin,
26
- css: css_plugin_1.cssMinimizerPlugin,
27
- };
28
- Plugin.webpack = {
29
- progress: webpack_plugin_1.webpackProgressPlugin,
30
- define: webpack_plugin_1.webpackDefinePlugin,
31
- };
32
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/WebpackConfigGenerator/Plugin/index.ts"],"names":[],"mappings":";;;AAAA,6CAAsE;AACtE,+CAAqE;AACrE,mDAAyD;AACzD,2CAA6D;AAC7D,qDAA4E;AAE5E;;;;GAIG;AACH,MAAa,MAAM;;AAAnB,wBAqBC;AApBmB,iCAA0B,GAAG,wCAA0B,CAAC;AAExD,yBAAkB,GAAG,wCAAwB,CAAC;AAE9C,mBAAY,GAAG,8BAAkB,CAAC;AAElC,iBAAU,GAAG;IACzB,IAAI,EAAE,wBAAU;IAChB,cAAc,EAAE,iCAAoB;CACvC,CAAC;AAEc,gBAAS,GAAG;IACxB,MAAM,EAAE,wBAAY;IACpB,GAAG,EAAE,+BAAkB;CAC1B,CAAC;AAEc,cAAO,GAAG;IACtB,QAAQ,EAAE,sCAAqB;IAC/B,MAAM,EAAE,oCAAmB;CAC9B,CAAC"}
@@ -1,10 +0,0 @@
1
- import webpack from "webpack";
2
- /**
3
- * Prevents moment locales from being bundled by importing moment
4
- * (moment by default imports all locales)
5
- * and helps reduce the final bundle size.
6
- *
7
- * To include a locale, it must be explicitly imported
8
- * (preferably at the entry file).
9
- */
10
- export declare function ignoreMomentLocalePlugin(): webpack.WebpackPluginInstance;
@@ -1 +0,0 @@
1
- {"version":3,"file":"moment.plugin.js","sourceRoot":"","sources":["../../../../src/WebpackConfigGenerator/Plugin/moment.plugin.ts"],"names":[],"mappings":";;;;;;AAAA,sDAA8B;AAC9B,sFAAiF;AAEjF;;;;;;;GAOG;AACH,SAAgB,wBAAwB;IACpC,OAAO,+DAA8B,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,iBAAO,CAAC,YAAY,EAAE;QACnG,uDAAuD;QACvD,qDAAqD;QACrD,qFAAqF;QACrF,cAAc,EAAE,cAAc;QAC9B,wDAAwD;QACxD,0GAA0G;QAC1G,aAAa,EAAE,SAAS;KAC3B,CAAC,CAAC;AACP,CAAC;AAVD,4DAUC"}
@@ -1,4 +0,0 @@
1
- import type webpack from "webpack";
2
- export declare class ScriptTagCrossOriginPlugin implements webpack.WebpackPluginInstance {
3
- apply(compiler: webpack.Compiler): void;
4
- }
@@ -1,28 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ScriptTagCrossOriginPlugin = void 0;
7
- const html_webpack_plugin_1 = __importDefault(require("html-webpack-plugin"));
8
- const PLUGIN_NAME = "ScriptTagCrossOriginPlugin";
9
- // This plugin adds crossorigin="anonymous" to html-webpack-plugin generated <script> tags, only work with html-webpack-plugin@4.0.0+
10
- class ScriptTagCrossOriginPlugin {
11
- apply(compiler) {
12
- compiler.hooks.compilation.tap(PLUGIN_NAME, compilation => {
13
- const hook = html_webpack_plugin_1.default.getHooks(compilation).alterAssetTags;
14
- hook.tap(PLUGIN_NAME, result => {
15
- var _a;
16
- const { assetTags } = result;
17
- for (const scriptTag of assetTags.scripts) {
18
- if (((_a = scriptTag.attributes) === null || _a === void 0 ? void 0 : _a.src) && /.js$/.test(scriptTag.attributes.src.toString())) {
19
- scriptTag.attributes.crossorigin = "anonymous";
20
- }
21
- }
22
- return result;
23
- });
24
- });
25
- }
26
- }
27
- exports.ScriptTagCrossOriginPlugin = ScriptTagCrossOriginPlugin;
28
- //# sourceMappingURL=script-tag-crossorigin-plugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"script-tag-crossorigin-plugin.js","sourceRoot":"","sources":["../../../../src/WebpackConfigGenerator/Plugin/script-tag-crossorigin-plugin.ts"],"names":[],"mappings":";;;;;;AAAA,8EAAoD;AAGpD,MAAM,WAAW,GAAG,4BAA4B,CAAC;AAEjD,qIAAqI;AACrI,MAAa,0BAA0B;IACnC,KAAK,CAAC,QAA0B;QAC5B,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE;YACtD,MAAM,IAAI,GAAG,6BAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC;YACpE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE;;gBAC3B,MAAM,EAAC,SAAS,EAAC,GAAG,MAAM,CAAC;gBAC3B,KAAK,MAAM,SAAS,IAAI,SAAS,CAAC,OAAO,EAAE;oBACvC,IAAI,CAAA,MAAA,SAAS,CAAC,UAAU,0CAAE,GAAG,KAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE;wBAC/E,SAAS,CAAC,UAAU,CAAC,WAAW,GAAG,WAAW,CAAC;qBAClD;iBACJ;gBACD,OAAO,MAAM,CAAC;YAClB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AAfD,gEAeC"}
@@ -1,16 +0,0 @@
1
- import type webpack from "webpack";
2
- interface TerserPluginOptions {
3
- sourceMap: boolean;
4
- }
5
- /**
6
- * Applies Terser to minimize javascript
7
- * after bundles/chunks are built.
8
- */
9
- export declare function terserPlugin({ sourceMap }: TerserPluginOptions): webpack.WebpackPluginInstance;
10
- /**
11
- * Adds react fast refresh functionality.
12
- * Requires babel plugin "react-refresh/babel".
13
- * Should not be used in production.
14
- */
15
- export declare function reactRefreshPlugin(): webpack.WebpackPluginInstance;
16
- export {};