@yamato-daiwa/automation 0.7.0-alpha.7 → 0.8.0-alpha.0
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.
- package/EntryPoint.js +456 -242
- package/package.json +17 -18
package/EntryPoint.js
CHANGED
|
@@ -34,7 +34,7 @@ function revisionHash(data) {
|
|
|
34
34
|
\***********************/
|
|
35
35
|
/***/ ((module) => {
|
|
36
36
|
|
|
37
|
-
module.exports = /*#__PURE__*/JSON.parse('{"name":"@yamato-daiwa/automation","version":"0.
|
|
37
|
+
module.exports = /*#__PURE__*/JSON.parse('{"name":"@yamato-daiwa/automation","version":"0.8.0-alpha.0","description":"The project building tool with declarative YAML configuration specializing on Pug, Stylus and TypeScript as source code languages.","keywords":["build","pug","stylus","tool","typescript"],"engines":{"node":">=20.0.0"},"bin":{"yda":"Executable"},"files":["EntryPoint.js"],"dependencies":{"@eslint-community/eslint-plugin-eslint-comments":"4.5.0","@stylistic/eslint-plugin":"5.2.3","@typescript-eslint/eslint-plugin":"8.39.0","@typescript-eslint/parser":"8.39.0","@vue/compiler-sfc":"3.5.18","@webdiscus/pug-loader":"2.11.1","@yamato-daiwa/es-extensions":"1.8.0-rc.1","@yamato-daiwa/es-extensions-nodejs":"1.8.0-rc.1","@yamato-daiwa/style_guides":"0.9.0","autoprefixer":"10.4.21","browser-sync":"3.0.4","css-loader":"7.1.2","cssnano":"7.1.0","dotenv":"17.2.1","eslint":"9.33.0","eslint-plugin-import":"2.32.0","eslint-plugin-n":"17.21.3","eslint-plugin-react":"7.37.5","eslint-plugin-vue":"9.33.0","eslint-plugin-vue-pug":"0.6.2","gulp":"4.0.2","gulp-data":"1.3.1","gulp-if":"3.0.0","gulp-imagemin":"7.1.0","gulp-nodemon":"2.5.0","gulp-plumber":"1.2.1","gulp-postcss":"10.0.0","gulp-pug":"5.0.0","gulp-sourcemaps":"3.0.0","gulp-stylus":"3.0.1","htmlnano":"2.1.2","imagemin-pngquant":"9.0.2","js-beautify":"1.15.4","json5-loader":"4.0.1","nanoid":"5.1.5","node-html-parser":"7.0.1","node-notifier":"10.0.1","pa11y":"9.0.0","probe-image-size":"7.2.3","pug-lint":"2.7.0","pug3-ast-loader":"0.0.0","puppeteer":"24.10.0","require-from-string":"2.0.2","rev-hash":"4.1.0","stlint":"1.0.65","stream-combiner2":"1.1.1","style-loader":"4.0.0","stylus":"0.63.0","stylus-loader":"8.1.1","ts-loader":"9.5.2","vinyl":"2.2.1","vnu-jar":"24.10.17","vue-loader":"17.4.2","vue-style-loader":"4.1.3","vue-tsc":"3.0.5","webpack":"5.101.0","webpack-node-externals":"3.0.0","webpack-stream":"7.0.0","worker-loader":"3.0.8","yaml-loader":"0.8.1"},"devDependencies":{"@types/browser-sync":"2.29.0","@types/cssnano":"5.0.0","@types/gulp":"4.0.17","@types/gulp-if":"3.0.5","@types/gulp-imagemin":"7.0.3","@types/gulp-nodemon":"0.0.37","@types/gulp-plumber":"0.0.37","@types/gulp-postcss":"8.0.6","@types/gulp-sourcemaps":"0.0.38","@types/gulp-stylus":"2.7.8","@types/js-beautify":"1.14.3","@types/node":"22.15.30","@types/node-notifier":"8.0.5","@types/pa11y":"5.3.7","@types/probe-image-size":"7.2.5","@types/pug":"2.0.10","@types/require-from-string":"1.2.3","@types/vnu-jar":"17.11.2","@types/webpack-node-externals":"3.0.4","@types/webpack-stream":"3.2.15","eslint-webpack-plugin":"4.2.0","ts-node":"10.9.2","typescript":"5.9.2","webpack-cli":"6.0.1"},"scripts":{"Incremental Development Building":"webpack --mode development","Production Building":"webpack --mode production","Linting":"eslint Source"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/TokugawaTakeshi/Yamato-Daiwa-Automation.git"},"homepage":"https://automation.yamato-daiwa.com/","funding":"https://github.com/TokugawaTakeshi/Yamato-Daiwa-Automation?sponsor=1","bugs":{"url":"https://github.com/TokugawaTakeshi/Yamato-Daiwa-Automation/issues","email":"tokugawa.takesi@gmail.com"}}');
|
|
38
38
|
|
|
39
39
|
/***/ }),
|
|
40
40
|
|
|
@@ -227,6 +227,7 @@ const ProjectBuildingMasterConfigRepresentative_1 = __importDefault(__webpack_re
|
|
|
227
227
|
/* ─── Tasks Runners ──────────────────────────────────────────────────────────────────────────────────────────────── */
|
|
228
228
|
const MarkupProcessor_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/MarkupProcessor */ "./ProjectBuilding/SourceCodeProcessing/Markup/MarkupProcessor.ts"));
|
|
229
229
|
const MarkupSourceCodeLinter_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/Subtasks/Linting/MarkupSourceCodeLinter */ "./ProjectBuilding/SourceCodeProcessing/Markup/Subtasks/Linting/MarkupSourceCodeLinter.ts"));
|
|
230
|
+
const TypeScriptTypesChecker_1 = __importDefault(__webpack_require__(/*! @ECMA_ScriptProcessing/Subtasks/TypeScriptTypesChecker */ "./ProjectBuilding/SourceCodeProcessing/ECMA_Script/Subtasks/TypeScriptTypesChecker.ts"));
|
|
230
231
|
const CompiledTypeScriptImporterForPug_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/Subtasks/CompiledTypeScriptImporterForPug */ "./ProjectBuilding/SourceCodeProcessing/Markup/Subtasks/CompiledTypeScriptImporterForPug.ts"));
|
|
231
232
|
const JavaScriptImporterForPug_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/Subtasks/JavaScriptImporterForPug */ "./ProjectBuilding/SourceCodeProcessing/Markup/Subtasks/JavaScriptImporterForPug.ts"));
|
|
232
233
|
const StylesProcessor_1 = __importDefault(__webpack_require__(/*! @StylesProcessing/StylesProcessor */ "./ProjectBuilding/SourceCodeProcessing/Styles/StylesProcessor.ts"));
|
|
@@ -247,7 +248,7 @@ const FilesMasterWatcher_1 = __importDefault(__webpack_require__(/*! @ProjectBui
|
|
|
247
248
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
248
249
|
class ProjectBuilder {
|
|
249
250
|
static buildProject({ consumingProjectRootDirectoryAbsolutePath, projectBuildingConfig__fromConsole, rawConfigFromFile }) {
|
|
250
|
-
const rawDataProcessingResult = es_extensions_1.RawObjectDataProcessor.process(rawConfigFromFile, ProjectBuildingConfig__FromFile__RawValid_1.default.propertiesSpecification);
|
|
251
|
+
const rawDataProcessingResult = es_extensions_1.RawObjectDataProcessor.process(rawConfigFromFile, ProjectBuildingConfig__FromFile__RawValid_1.default.propertiesSpecification, { processingApproach: es_extensions_1.RawObjectDataProcessor.ProcessingApproaches.assemblingOfNewObject });
|
|
251
252
|
if (rawDataProcessingResult.isRawDataInvalid) {
|
|
252
253
|
es_extensions_1.Logger.throwErrorAndLog({
|
|
253
254
|
errorInstance: new es_extensions_1.InvalidConfigError({
|
|
@@ -269,6 +270,7 @@ class ProjectBuilder {
|
|
|
269
270
|
const GULP_TASK_NAME = "BUILD_PROJECT";
|
|
270
271
|
gulp_1.default.task(GULP_TASK_NAME, gulp_1.default.parallel([
|
|
271
272
|
MarkupSourceCodeLinter_1.default.provideLintingIfMust(masterConfigRepresentative),
|
|
273
|
+
TypeScriptTypesChecker_1.default.provideCheckingIfMust(masterConfigRepresentative),
|
|
272
274
|
ECMA_ScriptSourceCodeLinter_1.default.provideLintingIfMust(masterConfigRepresentative),
|
|
273
275
|
gulp_1.default.series([
|
|
274
276
|
gulp_1.default.parallel([
|
|
@@ -5312,8 +5314,8 @@ const fs_1 = __importDefault(__webpack_require__(/*! fs */ "fs"));
|
|
|
5312
5314
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
5313
5315
|
const es_extensions_nodejs_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions-nodejs */ "@yamato-daiwa/es-extensions-nodejs");
|
|
5314
5316
|
class PlainCopyingRawSettingsNormalizer {
|
|
5315
|
-
static normalize({ plainCopyingSettings__fromFile__rawValid, commonSettings__normalized }) {
|
|
5316
|
-
const explicitlySpecifiedActualFilesGroupsIDs =
|
|
5317
|
+
static normalize({ plainCopyingSettings__fromFile__rawValid, commonSettings__normalized: { tasksAndSourceFilesSelection, projectRootDirectoryAbsolutePath, projectBuildingMode } }) {
|
|
5318
|
+
const explicitlySpecifiedActualFilesGroupsIDs = tasksAndSourceFilesSelection?.plainCopying ?? [];
|
|
5317
5319
|
const filesGroups = {};
|
|
5318
5320
|
for (const [filesGroupID, filesGroup__rawValid__fromFile] of Object.entries(plainCopyingSettings__fromFile__rawValid.filesGroups)) {
|
|
5319
5321
|
if (explicitlySpecifiedActualFilesGroupsIDs.length > 0 &&
|
|
@@ -5322,27 +5324,29 @@ class PlainCopyingRawSettingsNormalizer {
|
|
|
5322
5324
|
}
|
|
5323
5325
|
const aliasName = filesGroup__rawValid__fromFile.aliasName ?? filesGroupID;
|
|
5324
5326
|
if ("sourceFileRelativePath" in filesGroup__rawValid__fromFile) {
|
|
5325
|
-
const filesSingularGroupSettingsActualForCurrentProjectBuildingMode__rawValid__fromFile = filesGroup__rawValid__fromFile.buildingModeDependent[
|
|
5327
|
+
const filesSingularGroupSettingsActualForCurrentProjectBuildingMode__rawValid__fromFile = filesGroup__rawValid__fromFile.buildingModeDependent[projectBuildingMode];
|
|
5326
5328
|
if ((0, es_extensions_1.isUndefined)(filesSingularGroupSettingsActualForCurrentProjectBuildingMode__rawValid__fromFile)) {
|
|
5327
5329
|
continue;
|
|
5328
5330
|
}
|
|
5329
5331
|
filesGroups[filesGroupID] = PlainCopyingRawSettingsNormalizer.normalizeFilesSingularGroupSettings({
|
|
5330
|
-
projectRootDirectoryAbsolutePath
|
|
5332
|
+
projectRootDirectoryAbsolutePath,
|
|
5331
5333
|
sourceFileRelativePath: filesGroup__rawValid__fromFile.sourceFileRelativePath,
|
|
5332
5334
|
aliasName,
|
|
5333
5335
|
filesSingularGroupSettingsActualForCurrentProjectBuildingMode__rawValid__fromFile
|
|
5334
5336
|
});
|
|
5335
5337
|
}
|
|
5336
5338
|
else {
|
|
5337
|
-
const filesPluralGroupSettingsActualForCurrentProjectBuildingMode__rawValid__fromFile = filesGroup__rawValid__fromFile.buildingModeDependent[
|
|
5339
|
+
const filesPluralGroupSettingsActualForCurrentProjectBuildingMode__rawValid__fromFile = filesGroup__rawValid__fromFile.buildingModeDependent[projectBuildingMode];
|
|
5338
5340
|
if ((0, es_extensions_1.isUndefined)(filesPluralGroupSettingsActualForCurrentProjectBuildingMode__rawValid__fromFile)) {
|
|
5339
5341
|
continue;
|
|
5340
5342
|
}
|
|
5341
5343
|
filesGroups[filesGroupID] = PlainCopyingRawSettingsNormalizer.normalizeFilesPluralGroupSettings({
|
|
5342
|
-
projectRootDirectoryAbsolutePath
|
|
5344
|
+
projectRootDirectoryAbsolutePath,
|
|
5343
5345
|
sourceTopDirectoryRelativePath: filesGroup__rawValid__fromFile.sourceTopDirectoryRelativePath,
|
|
5344
5346
|
fileNameLastExtensions: filesGroup__rawValid__fromFile.fileNameLastExtensions,
|
|
5345
5347
|
aliasName,
|
|
5348
|
+
excludedSubdirectoriesPathsRelativeToAssetsGroupSourceTopDirectory: filesGroup__rawValid__fromFile.excludeSubdirectoriesRelativePaths,
|
|
5349
|
+
excludedFilesPathsRelativeToAssetsGroupSourceTopDirectory: filesGroup__rawValid__fromFile.excludeFilesRelativePaths,
|
|
5346
5350
|
filesPluralGroupSettingsActualForCurrentProjectBuildingMode__rawValid__fromFile
|
|
5347
5351
|
});
|
|
5348
5352
|
}
|
|
@@ -5384,7 +5388,7 @@ class PlainCopyingRawSettingsNormalizer {
|
|
|
5384
5388
|
outputFileAbsolutePath
|
|
5385
5389
|
};
|
|
5386
5390
|
}
|
|
5387
|
-
static normalizeFilesPluralGroupSettings({ projectRootDirectoryAbsolutePath, sourceTopDirectoryRelativePath, fileNameLastExtensions, aliasName, filesPluralGroupSettingsActualForCurrentProjectBuildingMode__rawValid__fromFile }) {
|
|
5391
|
+
static normalizeFilesPluralGroupSettings({ projectRootDirectoryAbsolutePath, sourceTopDirectoryRelativePath, fileNameLastExtensions, excludedSubdirectoriesPathsRelativeToAssetsGroupSourceTopDirectory = [], excludedFilesPathsRelativeToAssetsGroupSourceTopDirectory = [], aliasName, filesPluralGroupSettingsActualForCurrentProjectBuildingMode__rawValid__fromFile }) {
|
|
5388
5392
|
const sourceTopDirectoryAbsolutePath = es_extensions_nodejs_1.ImprovedPath.joinPathSegments([projectRootDirectoryAbsolutePath, sourceTopDirectoryRelativePath], { alwaysForwardSlashSeparators: true });
|
|
5389
5393
|
const outputTopDirectoryAbsolutePath = es_extensions_nodejs_1.ImprovedPath.joinPathSegments([
|
|
5390
5394
|
projectRootDirectoryAbsolutePath,
|
|
@@ -5395,7 +5399,9 @@ class PlainCopyingRawSettingsNormalizer {
|
|
|
5395
5399
|
es_extensions_nodejs_1.ImprovedGlob.buildAllFilesInCurrentDirectoryAndBelowGlobSelector({
|
|
5396
5400
|
basicDirectoryPath: sourceTopDirectoryAbsolutePath,
|
|
5397
5401
|
fileNamesExtensions: fileNameLastExtensions
|
|
5398
|
-
})
|
|
5402
|
+
}),
|
|
5403
|
+
...excludedSubdirectoriesPathsRelativeToAssetsGroupSourceTopDirectory.map((excludedSubdirectoryPathRelativeToAssetsGroupSourceTopDirectory) => es_extensions_nodejs_1.ImprovedGlob.buildExcludingOfDirectoryWithSubdirectoriesGlobSelector(es_extensions_nodejs_1.ImprovedPath.joinPathSegments([sourceTopDirectoryAbsolutePath, excludedSubdirectoryPathRelativeToAssetsGroupSourceTopDirectory], { alwaysForwardSlashSeparators: true }))),
|
|
5404
|
+
...excludedFilesPathsRelativeToAssetsGroupSourceTopDirectory.map((excludedFilePathRelativeToAssetsGroupSourceTopDirectory) => es_extensions_nodejs_1.ImprovedGlob.includingGlobSelectorToExcludingOne(es_extensions_nodejs_1.ImprovedPath.joinPathSegments([sourceTopDirectoryAbsolutePath, excludedFilePathRelativeToAssetsGroupSourceTopDirectory], { alwaysForwardSlashSeparators: true })))
|
|
5399
5405
|
], { alwaysForwardSlashSeparators: true })) {
|
|
5400
5406
|
const outputDirectoryAbsolutePath = OutputDirectoryPathTransformationsSettingsRepresentative_1.default.transform(es_extensions_nodejs_1.ImprovedPath.joinPathSegments([
|
|
5401
5407
|
outputTopDirectoryAbsolutePath,
|
|
@@ -5414,7 +5420,7 @@ class PlainCopyingRawSettingsNormalizer {
|
|
|
5414
5420
|
const outputFileNameWithExtensions = PlainCopyingRawSettingsNormalizer.computeOutputFileNameWithExtensions({
|
|
5415
5421
|
initialFileNameWithExtensions: (0, es_extensions_1.extractFileNameWithAllExtensionsFromPath)({
|
|
5416
5422
|
targetPath: sourceFileAbsolutePath,
|
|
5417
|
-
mustThrowErrorIfLastPathSegmentHasNoDots:
|
|
5423
|
+
mustThrowErrorIfLastPathSegmentHasNoDots: false
|
|
5418
5424
|
}),
|
|
5419
5425
|
sourceTopDirectoryAbsolutePath,
|
|
5420
5426
|
sourceFileAbsolutePath,
|
|
@@ -5623,6 +5629,30 @@ var PlainCopyingSettings__FromFile__RawValid;
|
|
|
5623
5629
|
minimalCharactersCount: 1
|
|
5624
5630
|
}
|
|
5625
5631
|
},
|
|
5632
|
+
$excludeSubdirectoriesRelativePaths: {
|
|
5633
|
+
newName: "excludeSubdirectoriesRelativePaths",
|
|
5634
|
+
type: Array,
|
|
5635
|
+
isUndefinedForbidden: false,
|
|
5636
|
+
isNullForbidden: true,
|
|
5637
|
+
areUndefinedElementsForbidden: true,
|
|
5638
|
+
areNullElementsForbidden: true,
|
|
5639
|
+
element: {
|
|
5640
|
+
type: String,
|
|
5641
|
+
minimalCharactersCount: 1
|
|
5642
|
+
}
|
|
5643
|
+
},
|
|
5644
|
+
$excludeFilesRelativePaths: {
|
|
5645
|
+
newName: "excludeFilesRelativePaths",
|
|
5646
|
+
type: Array,
|
|
5647
|
+
isUndefinedForbidden: false,
|
|
5648
|
+
isNullForbidden: true,
|
|
5649
|
+
areUndefinedElementsForbidden: true,
|
|
5650
|
+
areNullElementsForbidden: true,
|
|
5651
|
+
element: {
|
|
5652
|
+
type: String,
|
|
5653
|
+
minimalCharactersCount: 1
|
|
5654
|
+
}
|
|
5655
|
+
},
|
|
5626
5656
|
$buildingModeDependent: {
|
|
5627
5657
|
newName: "buildingModeDependent",
|
|
5628
5658
|
type: es_extensions_1.RawObjectDataProcessor.ValuesTypesIDs.associativeArray,
|
|
@@ -6262,6 +6292,13 @@ class ProjectBuildingMasterConfigRepresentative {
|
|
|
6262
6292
|
get isProductionBuildingMode() {
|
|
6263
6293
|
return this.commonSettings.projectBuildingMode === ConsumingProjectBuildingModes_1.default.production;
|
|
6264
6294
|
}
|
|
6295
|
+
get isProductionLikeBuildingMode() {
|
|
6296
|
+
return [
|
|
6297
|
+
ConsumingProjectBuildingModes_1.default.testing,
|
|
6298
|
+
ConsumingProjectBuildingModes_1.default.staging,
|
|
6299
|
+
ConsumingProjectBuildingModes_1.default.production
|
|
6300
|
+
].includes(this.commonSettings.projectBuildingMode);
|
|
6301
|
+
}
|
|
6265
6302
|
/* --- Tasks execution requirement -------------------------------------------------------------------------------- */
|
|
6266
6303
|
/* eslint-disable @stylistic/brace-style -- In this case the Allman style provides symmetry. */
|
|
6267
6304
|
get mustProcessMarkup() {
|
|
@@ -6428,6 +6465,39 @@ class ECMA_ScriptLogicProcessingRawSettingsNormalizer extends SourceCodeProcessi
|
|
|
6428
6465
|
type: SupportedECMA_ScriptRuntimesTypes.pug
|
|
6429
6466
|
};
|
|
6430
6467
|
}
|
|
6468
|
+
case SupportedECMA_ScriptRuntimesTypes.electronMainProcess: {
|
|
6469
|
+
return {
|
|
6470
|
+
type: SupportedECMA_ScriptRuntimesTypes.electronMainProcess,
|
|
6471
|
+
minimalVersion: {
|
|
6472
|
+
major: entryPointsGroupSettings__rawValid.targetRuntime.minimalVersion.major,
|
|
6473
|
+
...(0, es_extensions_1.isNotUndefined)(entryPointsGroupSettings__rawValid.targetRuntime.minimalVersion.minor) ? {
|
|
6474
|
+
minor: entryPointsGroupSettings__rawValid.targetRuntime.minimalVersion.minor
|
|
6475
|
+
} : null
|
|
6476
|
+
}
|
|
6477
|
+
};
|
|
6478
|
+
}
|
|
6479
|
+
case SupportedECMA_ScriptRuntimesTypes.electronRendererProcess: {
|
|
6480
|
+
return {
|
|
6481
|
+
type: SupportedECMA_ScriptRuntimesTypes.electronRendererProcess,
|
|
6482
|
+
minimalVersion: {
|
|
6483
|
+
major: entryPointsGroupSettings__rawValid.targetRuntime.minimalVersion.major,
|
|
6484
|
+
...(0, es_extensions_1.isNotUndefined)(entryPointsGroupSettings__rawValid.targetRuntime.minimalVersion.minor) ? {
|
|
6485
|
+
minor: entryPointsGroupSettings__rawValid.targetRuntime.minimalVersion.minor
|
|
6486
|
+
} : null
|
|
6487
|
+
}
|
|
6488
|
+
};
|
|
6489
|
+
}
|
|
6490
|
+
case SupportedECMA_ScriptRuntimesTypes.electronPreload: {
|
|
6491
|
+
return {
|
|
6492
|
+
type: SupportedECMA_ScriptRuntimesTypes.electronPreload,
|
|
6493
|
+
minimalVersion: {
|
|
6494
|
+
major: entryPointsGroupSettings__rawValid.targetRuntime.minimalVersion.major,
|
|
6495
|
+
...(0, es_extensions_1.isNotUndefined)(entryPointsGroupSettings__rawValid.targetRuntime.minimalVersion.minor) ? {
|
|
6496
|
+
minor: entryPointsGroupSettings__rawValid.targetRuntime.minimalVersion.minor
|
|
6497
|
+
} : null
|
|
6498
|
+
}
|
|
6499
|
+
};
|
|
6500
|
+
}
|
|
6431
6501
|
}
|
|
6432
6502
|
})(),
|
|
6433
6503
|
...(0, es_extensions_1.isNotUndefined)(entryPointsGroupSettings__rawValid.
|
|
@@ -6550,6 +6620,9 @@ var ECMA_ScriptLogicProcessingRestrictions;
|
|
|
6550
6620
|
SupportedECMA_ScriptRuntimesTypes["webWorker"] = "WEB_WORKER";
|
|
6551
6621
|
SupportedECMA_ScriptRuntimesTypes["nodeJS"] = "NODEJS";
|
|
6552
6622
|
SupportedECMA_ScriptRuntimesTypes["pug"] = "PUG";
|
|
6623
|
+
SupportedECMA_ScriptRuntimesTypes["electronMainProcess"] = "ELECTRON_MAIN_PROCESS";
|
|
6624
|
+
SupportedECMA_ScriptRuntimesTypes["electronRendererProcess"] = "ELECTRON_RENDERER_PROCESS";
|
|
6625
|
+
SupportedECMA_ScriptRuntimesTypes["electronPreload"] = "ELECTRON_PRELOAD";
|
|
6553
6626
|
})(SupportedECMA_ScriptRuntimesTypes = ECMA_ScriptLogicProcessingRestrictions.SupportedECMA_ScriptRuntimesTypes || (ECMA_ScriptLogicProcessingRestrictions.SupportedECMA_ScriptRuntimesTypes = {}));
|
|
6554
6627
|
})(ECMA_ScriptLogicProcessingRestrictions || (ECMA_ScriptLogicProcessingRestrictions = {}));
|
|
6555
6628
|
exports["default"] = ECMA_ScriptLogicProcessingRestrictions;
|
|
@@ -6718,8 +6791,16 @@ var ECMA_ScriptLogicProcessingSettings__FromFile__RawValid;
|
|
|
6718
6791
|
newName: "minimalVersion",
|
|
6719
6792
|
type: Object,
|
|
6720
6793
|
undefinedForbiddenIf: {
|
|
6721
|
-
predicate: (runtimeConfig) =>
|
|
6722
|
-
|
|
6794
|
+
predicate: (runtimeConfig) => [
|
|
6795
|
+
SupportedECMA_ScriptRuntimesTypes.nodeJS,
|
|
6796
|
+
SupportedECMA_ScriptRuntimesTypes.electronMainProcess,
|
|
6797
|
+
SupportedECMA_ScriptRuntimesTypes.electronRendererProcess,
|
|
6798
|
+
SupportedECMA_ScriptRuntimesTypes.electronPreload
|
|
6799
|
+
/* eslint-disable-next-line @typescript-eslint/consistent-type-assertions --
|
|
6800
|
+
* Even `runtimeConfig.type` is `undefined` or `null` it still can be safely compared with elements
|
|
6801
|
+
* of enumeration. */
|
|
6802
|
+
].includes(runtimeConfig.type),
|
|
6803
|
+
descriptionForLogging: "Target runtime is NodeJS or Electron-like"
|
|
6723
6804
|
},
|
|
6724
6805
|
isNullForbidden: true,
|
|
6725
6806
|
properties: {
|
|
@@ -7033,7 +7114,7 @@ class ECMA_ScriptLogicProcessor {
|
|
|
7033
7114
|
this.projectBuildingMasterConfigRepresentative = masterConfigRepresentative;
|
|
7034
7115
|
const webpackConfigurationsForExistingEntryPoints = [];
|
|
7035
7116
|
const entryPointsSourceFilesAbsolutePathsAndWebpackConfigurationNamesMap = new Map();
|
|
7036
|
-
for (const
|
|
7117
|
+
for (const ECMA_ScriptLogicEntryPointsGroupSettings of this.ECMA_ScriptLogicProcessingConfigRepresentative.relevantEntryPointsGroupsSettings.values()) {
|
|
7037
7118
|
const entryPointsSourceFilesAbsolutePaths = es_extensions_nodejs_1.ImprovedGlob.getFilesAbsolutePathsSynchronously(ECMA_ScriptLogicEntryPointsGroupSettings.sourceFilesGlobSelectors, { alwaysForwardSlashSeparators: true });
|
|
7038
7119
|
if (entryPointsSourceFilesAbsolutePaths.length === 0) {
|
|
7039
7120
|
es_extensions_1.Logger.logWarning({
|
|
@@ -7047,8 +7128,7 @@ class ECMA_ScriptLogicProcessor {
|
|
|
7047
7128
|
entryPointsSourceFilesAbsolutePaths,
|
|
7048
7129
|
ECMA_ScriptLogicEntryPointsGroupSettings,
|
|
7049
7130
|
ECMA_ScriptLogicProcessingConfigRepresentative: this.ECMA_ScriptLogicProcessingConfigRepresentative,
|
|
7050
|
-
masterConfigRepresentative: this.projectBuildingMasterConfigRepresentative
|
|
7051
|
-
mustProvideTypeScriptTypeChecking: index === 0
|
|
7131
|
+
masterConfigRepresentative: this.projectBuildingMasterConfigRepresentative
|
|
7052
7132
|
}));
|
|
7053
7133
|
(0, es_extensions_1.addEntriesToMap)({
|
|
7054
7134
|
targetMap: entryPointsSourceFilesAbsolutePathsAndWebpackConfigurationNamesMap,
|
|
@@ -7688,6 +7768,138 @@ class LocalDevelopmentServerOrchestrator {
|
|
|
7688
7768
|
exports["default"] = LocalDevelopmentServerOrchestrator;
|
|
7689
7769
|
|
|
7690
7770
|
|
|
7771
|
+
/***/ }),
|
|
7772
|
+
|
|
7773
|
+
/***/ "./ProjectBuilding/SourceCodeProcessing/ECMA_Script/Subtasks/TypeScriptTypesChecker.ts":
|
|
7774
|
+
/*!*********************************************************************************************!*\
|
|
7775
|
+
!*** ./ProjectBuilding/SourceCodeProcessing/ECMA_Script/Subtasks/TypeScriptTypesChecker.ts ***!
|
|
7776
|
+
\*********************************************************************************************/
|
|
7777
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
7778
|
+
|
|
7779
|
+
|
|
7780
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7781
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7782
|
+
};
|
|
7783
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
7784
|
+
/* ─── Source Files Watcher ───────────────────────────────────────────────────────────────────────────────────────── */
|
|
7785
|
+
const ECMA_ScriptSourceFilesWatcher_1 = __importDefault(__webpack_require__(/*! @ECMA_ScriptProcessing/ECMA_ScriptSourceFilesWatcher */ "./ProjectBuilding/SourceCodeProcessing/ECMA_Script/ECMA_ScriptSourceFilesWatcher.ts"));
|
|
7786
|
+
/* ─── Applied Utils ─────────────────────────────────────────────────────────────────────────────────────────────── */
|
|
7787
|
+
const VoidPromiseReturningFunction_1 = __webpack_require__(/*! @Utils/VoidPromiseReturningFunction */ "./Utils/VoidPromiseReturningFunction.ts");
|
|
7788
|
+
/* ─── Generals Utils ─────────────────────────────────────────────────────────────────────────────────────────────── */
|
|
7789
|
+
const child_process_1 = __importDefault(__webpack_require__(/*! child_process */ "child_process"));
|
|
7790
|
+
const fs_1 = __importDefault(__webpack_require__(/*! fs */ "fs"));
|
|
7791
|
+
const es_extensions_nodejs_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions-nodejs */ "@yamato-daiwa/es-extensions-nodejs");
|
|
7792
|
+
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
7793
|
+
const node_notifier_1 = __importDefault(__webpack_require__(/*! node-notifier */ "node-notifier"));
|
|
7794
|
+
class TypeScriptTypesChecker {
|
|
7795
|
+
static WAITING_FOR_NEXT_EVENT_WITH_RELATED_FILES__SECONDS = 1;
|
|
7796
|
+
/* [ Theory ] 120 columns is about the half of the 1920x1080 screen. */
|
|
7797
|
+
static DISPLAYING_MAXIMAL_COLUMNS_COUNT_IN_LOG = 120;
|
|
7798
|
+
vueTSC_ExecutableFileAbsolutePath;
|
|
7799
|
+
projectBuildingMasterConfigRepresentative;
|
|
7800
|
+
ecmaScriptLogicProcessingSettingsRepresentative;
|
|
7801
|
+
waitingForNextWithRelatedFiles = null;
|
|
7802
|
+
static provideCheckingIfMust(projectBuildingMasterConfigRepresentative) {
|
|
7803
|
+
const ecmaScriptLogicProcessingSettingsRepresentative = projectBuildingMasterConfigRepresentative.ECMA_ScriptLogicProcessingSettingsRepresentative;
|
|
7804
|
+
if ((0, es_extensions_1.isUndefined)(ecmaScriptLogicProcessingSettingsRepresentative)) {
|
|
7805
|
+
return VoidPromiseReturningFunction_1.voidPromiseReturningFunction;
|
|
7806
|
+
}
|
|
7807
|
+
const selfInstance = new TypeScriptTypesChecker({
|
|
7808
|
+
projectBuildingMasterConfigRepresentative,
|
|
7809
|
+
ecmaScriptLogicProcessingSettingsRepresentative
|
|
7810
|
+
});
|
|
7811
|
+
return selfInstance.checkTypes.bind(selfInstance);
|
|
7812
|
+
}
|
|
7813
|
+
constructor({ projectBuildingMasterConfigRepresentative, ecmaScriptLogicProcessingSettingsRepresentative }) {
|
|
7814
|
+
this.projectBuildingMasterConfigRepresentative = projectBuildingMasterConfigRepresentative;
|
|
7815
|
+
this.ecmaScriptLogicProcessingSettingsRepresentative = ecmaScriptLogicProcessingSettingsRepresentative;
|
|
7816
|
+
if (this.projectBuildingMasterConfigRepresentative.mustProvideIncrementalBuilding) {
|
|
7817
|
+
ECMA_ScriptSourceFilesWatcher_1.default.initializeIfRequiredAndGetInstance({
|
|
7818
|
+
projectBuildingMasterConfigRepresentative: this.projectBuildingMasterConfigRepresentative,
|
|
7819
|
+
ecmaScriptLogicProcessingSettingsRepresentative: this.ecmaScriptLogicProcessingSettingsRepresentative
|
|
7820
|
+
}).
|
|
7821
|
+
addOnAnyEventRelatedWithActualFilesHandler({
|
|
7822
|
+
handlerID: "ON_ANY_EVENT_RELATED_WITH_ACTUAL_FILES_HANDLER--BY_TYPE_SCRIPT_TYPES_CHECKER",
|
|
7823
|
+
handler: this.onAnyEventRelatedWithActualFiles.bind(this)
|
|
7824
|
+
});
|
|
7825
|
+
}
|
|
7826
|
+
const vueTSC_ExecutableFileAbsolutePath = TypeScriptTypesChecker.
|
|
7827
|
+
getAbsolutePathOfExistingVueTSC_ExecutableFile__alwaysForwardSlashesPathSeparators(projectBuildingMasterConfigRepresentative.consumingProjectRootDirectoryAbsolutePath);
|
|
7828
|
+
if ((0, es_extensions_1.isNull)(vueTSC_ExecutableFileAbsolutePath)) {
|
|
7829
|
+
es_extensions_1.Logger.throwErrorAndLog({
|
|
7830
|
+
errorInstance: new es_extensions_1.UnexpectedEventError("File to \"vue-tsc\" executable not found"),
|
|
7831
|
+
title: es_extensions_1.UnexpectedEventError.localization.defaultTitle,
|
|
7832
|
+
occurrenceLocation: "TypeScriptTypesChecker.constructor(compoundParameter)"
|
|
7833
|
+
});
|
|
7834
|
+
}
|
|
7835
|
+
this.vueTSC_ExecutableFileAbsolutePath = vueTSC_ExecutableFileAbsolutePath;
|
|
7836
|
+
}
|
|
7837
|
+
onAnyEventRelatedWithActualFiles() {
|
|
7838
|
+
clearTimeout((0, es_extensions_1.nullToUndefined)(this.waitingForNextWithRelatedFiles));
|
|
7839
|
+
this.waitingForNextWithRelatedFiles = setTimeout(() => {
|
|
7840
|
+
this.checkTypes().catch(es_extensions_1.Logger.logPromiseError);
|
|
7841
|
+
}, (0, es_extensions_1.secondsToMilliseconds)(TypeScriptTypesChecker.WAITING_FOR_NEXT_EVENT_WITH_RELATED_FILES__SECONDS));
|
|
7842
|
+
}
|
|
7843
|
+
async checkTypes() {
|
|
7844
|
+
return new Promise((resolve, reject) => {
|
|
7845
|
+
child_process_1.default.exec(`node ${this.vueTSC_ExecutableFileAbsolutePath} --noEmit`, { encoding: "utf-8" }, (error, stdout) => {
|
|
7846
|
+
if ((0, es_extensions_1.isNotNull)(error)) {
|
|
7847
|
+
es_extensions_1.Logger.logErrorLikeMessage({
|
|
7848
|
+
title: "TypeScript Type Checking, Error(s) Detected",
|
|
7849
|
+
description: "The source code is including the TypeScript error(s).\n" +
|
|
7850
|
+
(this.projectBuildingMasterConfigRepresentative.isProductionLikeBuildingMode ?
|
|
7851
|
+
"Is is unacceptable for production-like modes thus the project building will be terminated." : "") +
|
|
7852
|
+
`${"-".repeat(TypeScriptTypesChecker.DISPLAYING_MAXIMAL_COLUMNS_COUNT_IN_LOG)}\n` +
|
|
7853
|
+
stdout
|
|
7854
|
+
});
|
|
7855
|
+
node_notifier_1.default.notify({
|
|
7856
|
+
title: "TypeScript Types Checking, Errors Detected",
|
|
7857
|
+
message: "Please check your terminal for the details."
|
|
7858
|
+
});
|
|
7859
|
+
if (this.projectBuildingMasterConfigRepresentative.isProductionLikeBuildingMode) {
|
|
7860
|
+
reject(error);
|
|
7861
|
+
return;
|
|
7862
|
+
}
|
|
7863
|
+
resolve();
|
|
7864
|
+
return;
|
|
7865
|
+
}
|
|
7866
|
+
es_extensions_1.Logger.logSuccess({
|
|
7867
|
+
title: "TypeScript Type Checking, No Errors Found",
|
|
7868
|
+
description: "The source TypeScript is valid. Keep it up!"
|
|
7869
|
+
});
|
|
7870
|
+
resolve();
|
|
7871
|
+
});
|
|
7872
|
+
});
|
|
7873
|
+
}
|
|
7874
|
+
static getAbsolutePathOfExistingVueTSC_ExecutableFile__alwaysForwardSlashesPathSeparators(consumingProjectRootDirectoryAbsolutePath) {
|
|
7875
|
+
for (const vueTSC_ExecutableFileAbsolutePath__alwaysForwardSlashesPathSeparators of [
|
|
7876
|
+
es_extensions_nodejs_1.ImprovedPath.joinPathSegments([
|
|
7877
|
+
consumingProjectRootDirectoryAbsolutePath,
|
|
7878
|
+
"node_modules",
|
|
7879
|
+
".bin",
|
|
7880
|
+
"vue-tsc.js"
|
|
7881
|
+
], { alwaysForwardSlashSeparators: true }),
|
|
7882
|
+
es_extensions_nodejs_1.ImprovedPath.joinPathSegments([
|
|
7883
|
+
consumingProjectRootDirectoryAbsolutePath,
|
|
7884
|
+
"node_modules",
|
|
7885
|
+
"@yamato-daiwa",
|
|
7886
|
+
"automation",
|
|
7887
|
+
"node_modules",
|
|
7888
|
+
"vue-tsc",
|
|
7889
|
+
"bin",
|
|
7890
|
+
"vue-tsc.js"
|
|
7891
|
+
], { alwaysForwardSlashSeparators: true })
|
|
7892
|
+
]) {
|
|
7893
|
+
if (fs_1.default.existsSync(vueTSC_ExecutableFileAbsolutePath__alwaysForwardSlashesPathSeparators)) {
|
|
7894
|
+
return vueTSC_ExecutableFileAbsolutePath__alwaysForwardSlashesPathSeparators;
|
|
7895
|
+
}
|
|
7896
|
+
}
|
|
7897
|
+
return null;
|
|
7898
|
+
}
|
|
7899
|
+
}
|
|
7900
|
+
exports["default"] = TypeScriptTypesChecker;
|
|
7901
|
+
|
|
7902
|
+
|
|
7691
7903
|
/***/ }),
|
|
7692
7904
|
|
|
7693
7905
|
/***/ "./ProjectBuilding/SourceCodeProcessing/ECMA_Script/Utils/ECMA_ScriptLogicEntryPointsSourceFilesAbsolutePathsAndOutputFilesActualPathsMapGenerator.ts":
|
|
@@ -7805,18 +8017,17 @@ const TypeScriptSpecialist_1 = __importDefault(__webpack_require__(/*! @ThirdPar
|
|
|
7805
8017
|
/* ─── Applied Utils ──────────────────────────────────────────────────────────────────────────────────────────────── */
|
|
7806
8018
|
const webpack_1 = __importDefault(__webpack_require__(/*! webpack */ "webpack"));
|
|
7807
8019
|
const vue_loader_1 = __webpack_require__(/*! vue-loader */ "vue-loader");
|
|
7808
|
-
const fork_ts_checker_webpack_plugin_1 = __importDefault(__webpack_require__(/*! fork-ts-checker-webpack-plugin */ "fork-ts-checker-webpack-plugin"));
|
|
7809
8020
|
const webpack_node_externals_1 = __importDefault(__webpack_require__(/*! webpack-node-externals */ "webpack-node-externals"));
|
|
7810
8021
|
/* ─── General Utils ──────────────────────────────────────────────────────────────────────────────────────────────── */
|
|
7811
8022
|
const path_1 = __importDefault(__webpack_require__(/*! path */ "path"));
|
|
7812
8023
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
7813
8024
|
const es_extensions_nodejs_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions-nodejs */ "@yamato-daiwa/es-extensions-nodejs");
|
|
7814
|
-
/* [ Approach ] Because of serious performance impact, the file watching has been delegated to external watcher. */
|
|
8025
|
+
/* [ Approach ] Because of the serious performance impact, the file watching has been delegated to an external watcher. */
|
|
7815
8026
|
class WebpackConfigGenerator {
|
|
7816
8027
|
static cachedTypeScriptConfigurations = {};
|
|
7817
8028
|
/* [ Approach ] Although the parameter is excessive, its properties are been pre-computed externally for other needs,
|
|
7818
8029
|
* so no need to compute them again. */
|
|
7819
|
-
static generateWebpackConfigurationForEntryPointsGroupWithExistingFiles({ entryPointsSourceFilesAbsolutePaths, ECMA_ScriptLogicEntryPointsGroupSettings: entryPointsGroupSettings, ECMA_ScriptLogicProcessingConfigRepresentative, masterConfigRepresentative
|
|
8030
|
+
static generateWebpackConfigurationForEntryPointsGroupWithExistingFiles({ entryPointsSourceFilesAbsolutePaths, ECMA_ScriptLogicEntryPointsGroupSettings: entryPointsGroupSettings, ECMA_ScriptLogicProcessingConfigRepresentative, masterConfigRepresentative }) {
|
|
7820
8031
|
/* [ Reference ] https://webpack.js.org/configuration/entry-context/#context */
|
|
7821
8032
|
const sourceFilesTopDirectoryAbsolutePath = entryPointsGroupSettings.sourceFilesTopDirectoryAbsolutePath;
|
|
7822
8033
|
/** @see https://webpack.js.org/configuration/entry-context/#entry */
|
|
@@ -7840,11 +8051,11 @@ class WebpackConfigGenerator {
|
|
|
7840
8051
|
const willPugLibraryBeBuilt = entryPointsGroupSettings.distributing?.exposingOfExportsFromEntryPoints.mustExpose === true &&
|
|
7841
8052
|
entryPointsGroupSettings.targetRuntime.type === SupportedECMA_ScriptRuntimesTypes.pug;
|
|
7842
8053
|
const distributingSettings = entryPointsGroupSettings.distributing;
|
|
7843
|
-
// TODO Is entryPointsGroupSettings.directoriesAliasesAndCorrespondingAbsolutePathsMap related
|
|
7844
8054
|
return {
|
|
7845
8055
|
name: entryPointsGroupSettings.ID,
|
|
7846
|
-
/* [ Webpack theory ] In this case, path separators must be operating
|
|
7847
|
-
* will be thrown: `configuration[0].context: The provided value "D:/OSPanel/../01_Open" is not an
|
|
8056
|
+
/* [ Webpack theory ] In this case, path separators must be operating-system-dependent; otherwise the following
|
|
8057
|
+
* error will be thrown: `configuration[0].context: The provided value "D:/OSPanel/../01_Open" is not an
|
|
8058
|
+
* absolute path!` */
|
|
7848
8059
|
context: path_1.default.normalize(sourceFilesTopDirectoryAbsolutePath),
|
|
7849
8060
|
/* [ Reference ] https://webpack.js.org/configuration/target/ */
|
|
7850
8061
|
target: (() => {
|
|
@@ -7857,8 +8068,35 @@ class WebpackConfigGenerator {
|
|
|
7857
8068
|
return "webworker";
|
|
7858
8069
|
}
|
|
7859
8070
|
case SupportedECMA_ScriptRuntimesTypes.nodeJS: {
|
|
7860
|
-
return
|
|
7861
|
-
|
|
8071
|
+
return [
|
|
8072
|
+
`node${entryPointsGroupSettings.targetRuntime.minimalVersion.major}`,
|
|
8073
|
+
...(0, es_extensions_1.isNotUndefined)(entryPointsGroupSettings.targetRuntime.minimalVersion.minor) ?
|
|
8074
|
+
[`.${entryPointsGroupSettings.targetRuntime.minimalVersion.minor}`] : []
|
|
8075
|
+
];
|
|
8076
|
+
}
|
|
8077
|
+
case SupportedECMA_ScriptRuntimesTypes.electronMainProcess: {
|
|
8078
|
+
return [
|
|
8079
|
+
`electron${entryPointsGroupSettings.targetRuntime.minimalVersion.major}`,
|
|
8080
|
+
...(0, es_extensions_1.isNotUndefined)(entryPointsGroupSettings.targetRuntime.minimalVersion.minor) ?
|
|
8081
|
+
[`.${entryPointsGroupSettings.targetRuntime.minimalVersion.minor}`] : [],
|
|
8082
|
+
"-main"
|
|
8083
|
+
].join("");
|
|
8084
|
+
}
|
|
8085
|
+
case SupportedECMA_ScriptRuntimesTypes.electronRendererProcess: {
|
|
8086
|
+
return [
|
|
8087
|
+
`electron${entryPointsGroupSettings.targetRuntime.minimalVersion.major}`,
|
|
8088
|
+
...(0, es_extensions_1.isNotUndefined)(entryPointsGroupSettings.targetRuntime.minimalVersion.minor) ?
|
|
8089
|
+
[`.${entryPointsGroupSettings.targetRuntime.minimalVersion.minor}`] : [],
|
|
8090
|
+
"-renderer"
|
|
8091
|
+
].join("");
|
|
8092
|
+
}
|
|
8093
|
+
case SupportedECMA_ScriptRuntimesTypes.electronPreload: {
|
|
8094
|
+
return [
|
|
8095
|
+
`electron${entryPointsGroupSettings.targetRuntime.minimalVersion.major}`,
|
|
8096
|
+
...(0, es_extensions_1.isNotUndefined)(entryPointsGroupSettings.targetRuntime.minimalVersion.minor) ?
|
|
8097
|
+
[`.${entryPointsGroupSettings.targetRuntime.minimalVersion.minor}`] : [],
|
|
8098
|
+
"-preload"
|
|
8099
|
+
].join("");
|
|
7862
8100
|
}
|
|
7863
8101
|
}
|
|
7864
8102
|
})(),
|
|
@@ -7879,11 +8117,16 @@ class WebpackConfigGenerator {
|
|
|
7879
8117
|
type: (() => {
|
|
7880
8118
|
switch (entryPointsGroupSettings.targetRuntime.type) {
|
|
7881
8119
|
case SupportedECMA_ScriptRuntimesTypes.browser:
|
|
8120
|
+
case SupportedECMA_ScriptRuntimesTypes.electronRendererProcess:
|
|
8121
|
+
case SupportedECMA_ScriptRuntimesTypes.electronPreload:
|
|
7882
8122
|
return entryPointsGroupSettings.distributing.exposingOfExportsFromEntryPoints.mustAssignToWindowObject ?
|
|
7883
8123
|
"window" : "module";
|
|
7884
|
-
case SupportedECMA_ScriptRuntimesTypes.nodeJS:
|
|
7885
|
-
case SupportedECMA_ScriptRuntimesTypes.
|
|
7886
|
-
|
|
8124
|
+
case SupportedECMA_ScriptRuntimesTypes.nodeJS:
|
|
8125
|
+
case SupportedECMA_ScriptRuntimesTypes.electronMainProcess:
|
|
8126
|
+
return "commonjs";
|
|
8127
|
+
case SupportedECMA_ScriptRuntimesTypes.pug:
|
|
8128
|
+
return "umd";
|
|
8129
|
+
case SupportedECMA_ScriptRuntimesTypes.webWorker: {
|
|
7887
8130
|
es_extensions_1.Logger.throwErrorAndLog({
|
|
7888
8131
|
errorInstance: new es_extensions_1.UnexpectedEventError("The web worker could not be the library, while the computing of 'output.library.type' has been " +
|
|
7889
8132
|
"requested"),
|
|
@@ -7929,6 +8172,8 @@ class WebpackConfigGenerator {
|
|
|
7929
8172
|
loader: "ts-loader",
|
|
7930
8173
|
options: {
|
|
7931
8174
|
configFile: entryPointsGroupSettings.typeScriptConfigurationFileAbsolutePath,
|
|
8175
|
+
/* [ Performance Optimization ] Type checking is been executed externally and once for all files. */
|
|
8176
|
+
transpileOnly: false,
|
|
7932
8177
|
/* [ Theory ] This option allows TypeScript to process the code extracted from a single file component.
|
|
7933
8178
|
* [ Reference ] https://github.com/Microsoft/TypeScript-Vue-Starter#single-file-components */
|
|
7934
8179
|
appendTsSuffixTo: [/\.vue$/u]
|
|
@@ -8058,24 +8303,6 @@ class WebpackConfigGenerator {
|
|
|
8058
8303
|
__VUE_PROD_HYDRATION_MISMATCH_DETAILS__: false
|
|
8059
8304
|
} : null
|
|
8060
8305
|
}),
|
|
8061
|
-
/* < === Temporary ========================================================================================== */
|
|
8062
|
-
...mustProvideTypeScriptTypeChecking ?
|
|
8063
|
-
[
|
|
8064
|
-
new fork_ts_checker_webpack_plugin_1.default({
|
|
8065
|
-
typescript: {
|
|
8066
|
-
/* [ Theory ] Webpack's "context" is default, but generally "tsconfig.json" could be not in same directory */
|
|
8067
|
-
configFile: entryPointsGroupSettings.typeScriptConfigurationFileAbsolutePath,
|
|
8068
|
-
extensions: {
|
|
8069
|
-
vue: {
|
|
8070
|
-
enabled: true,
|
|
8071
|
-
compiler: "@vue/compiler-sfc"
|
|
8072
|
-
}
|
|
8073
|
-
}
|
|
8074
|
-
}
|
|
8075
|
-
})
|
|
8076
|
-
] :
|
|
8077
|
-
[],
|
|
8078
|
-
/* === Temporary > ========================================================================================== */
|
|
8079
8306
|
new vue_loader_1.VueLoaderPlugin()
|
|
8080
8307
|
],
|
|
8081
8308
|
optimization: {
|
|
@@ -8626,7 +8853,7 @@ const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "
|
|
|
8626
8853
|
var MarkupProcessingSettings__FromFile__RawValid;
|
|
8627
8854
|
(function (MarkupProcessingSettings__FromFile__RawValid) {
|
|
8628
8855
|
/* ━━━ Properties Specification ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
|
|
8629
|
-
function generateLocalizationPropertiesSpecification(
|
|
8856
|
+
function generateLocalizationPropertiesSpecification({ forEntryPointsGroups }) {
|
|
8630
8857
|
return {
|
|
8631
8858
|
newName: "localization",
|
|
8632
8859
|
type: Object,
|
|
@@ -8682,28 +8909,92 @@ var MarkupProcessingSettings__FromFile__RawValid;
|
|
|
8682
8909
|
$localeConstantValue: {
|
|
8683
8910
|
newName: "localeConstantValue",
|
|
8684
8911
|
type: String,
|
|
8685
|
-
|
|
8912
|
+
undefinedForbiddenIf: {
|
|
8913
|
+
predicate: ({ targetPropertyDotSeparatedPath, rawData__full }) => (0, es_extensions_1.isNotUndefined)((0, es_extensions_1.getObjectPropertySafely)(rawData__full, [
|
|
8914
|
+
/* eslint-disable-next-line @typescript-eslint/no-magic-numbers --
|
|
8915
|
+
* 3 referees to last three elements in paths like
|
|
8916
|
+
* $projectBuilding.$markupProcessing.$entryPointsGroups.Pages.$localization.
|
|
8917
|
+
* $locales.english.$localeConstantValue */
|
|
8918
|
+
...(0, es_extensions_1.splitString)(targetPropertyDotSeparatedPath, ".").slice(0, -3),
|
|
8919
|
+
"$localeConstantName"
|
|
8920
|
+
])),
|
|
8921
|
+
descriptionForLogging: "`$projectBuilding.$markupProcessing." +
|
|
8922
|
+
(forEntryPointsGroups ? "$entryPointsGroups.NNN" : "$common") +
|
|
8923
|
+
".$localization.$localeConstantName` is defined"
|
|
8924
|
+
},
|
|
8686
8925
|
isNullForbidden: true,
|
|
8687
8926
|
minimalCharactersCount: 1
|
|
8688
8927
|
},
|
|
8689
8928
|
$keyInLocalizedStringResourcesObject: {
|
|
8690
8929
|
newName: "keyInLocalizedStringResourcesObject",
|
|
8691
8930
|
type: String,
|
|
8692
|
-
|
|
8931
|
+
undefinedForbiddenIf: {
|
|
8932
|
+
predicate: ({ targetPropertyDotSeparatedPath, rawData__full }) => (0, es_extensions_1.isNotUndefined)((0, es_extensions_1.getObjectPropertySafely)(rawData__full, [
|
|
8933
|
+
/* eslint-disable-next-line @typescript-eslint/no-magic-numbers --
|
|
8934
|
+
* 3 referees to last three elements in paths like
|
|
8935
|
+
* $projectBuilding.$markupProcessing.$entryPointsGroups.Pages.$localization.$locales.
|
|
8936
|
+
* english.$localeConstantValue */
|
|
8937
|
+
...(0, es_extensions_1.splitString)(targetPropertyDotSeparatedPath, ".").slice(0, -3),
|
|
8938
|
+
"$stringResourcesFileRelativePath"
|
|
8939
|
+
])),
|
|
8940
|
+
descriptionForLogging: "`$projectBuilding.$markupProcessing." +
|
|
8941
|
+
(forEntryPointsGroups ? "$entryPointsGroups.NNN" : "$common") +
|
|
8942
|
+
".$localization.$stringResourcesFileRelativePath` is defined"
|
|
8943
|
+
},
|
|
8693
8944
|
isNullForbidden: true,
|
|
8694
8945
|
minimalCharactersCount: 1
|
|
8695
8946
|
},
|
|
8696
8947
|
$valueOfConstantForInterpolationToLangHTML_Attribute: {
|
|
8697
8948
|
newName: "valueOfConstantForInterpolationToLangHTML_Attribute",
|
|
8698
8949
|
type: String,
|
|
8699
|
-
|
|
8950
|
+
undefinedForbiddenIf: {
|
|
8951
|
+
predicate: ({ targetPropertyDotSeparatedPath, rawData__full }) => (0, es_extensions_1.isNotUndefined)((0, es_extensions_1.getObjectPropertySafely)(rawData__full, [
|
|
8952
|
+
/* eslint-disable-next-line @typescript-eslint/no-magic-numbers --
|
|
8953
|
+
* 3 referees to last three elements in paths like
|
|
8954
|
+
* $projectBuilding.$markupProcessing.$entryPointsGroups.Pages.$localization.$locales.
|
|
8955
|
+
* english.$localeConstantValue */
|
|
8956
|
+
...(0, es_extensions_1.splitString)(targetPropertyDotSeparatedPath, ".").slice(0, -3),
|
|
8957
|
+
"$nameOfConstantForInterpolationToLangHTML_Attribute"
|
|
8958
|
+
])),
|
|
8959
|
+
descriptionForLogging: "`$projectBuilding.$markupProcessing." +
|
|
8960
|
+
(forEntryPointsGroups ? "$entryPointsGroups.NNN" : "$common") +
|
|
8961
|
+
".$localization.$nameOfConstantForInterpolationToLangHTML_Attribute` is defined"
|
|
8962
|
+
},
|
|
8700
8963
|
isNullForbidden: true,
|
|
8701
8964
|
minimalCharactersCount: 1
|
|
8702
8965
|
}
|
|
8703
8966
|
}
|
|
8704
8967
|
}
|
|
8705
8968
|
},
|
|
8706
|
-
...
|
|
8969
|
+
...forEntryPointsGroups ?
|
|
8970
|
+
{
|
|
8971
|
+
$excludedFilesPathsRelativeToSourcesFilesTopDirectory: {
|
|
8972
|
+
newName: "excludedFilesPathsRelativeToSourcesFilesTopDirectory",
|
|
8973
|
+
type: Array,
|
|
8974
|
+
isUndefinedForbidden: false,
|
|
8975
|
+
isNullForbidden: true,
|
|
8976
|
+
areUndefinedElementsForbidden: true,
|
|
8977
|
+
areNullElementsForbidden: true,
|
|
8978
|
+
element: {
|
|
8979
|
+
type: String,
|
|
8980
|
+
minimalCharactersCount: 1
|
|
8981
|
+
}
|
|
8982
|
+
}
|
|
8983
|
+
} :
|
|
8984
|
+
{
|
|
8985
|
+
$excludedFilesPathsRelativeRelativeToProjectRootDirectory: {
|
|
8986
|
+
newName: "excludedFilesPathsRelativeRelativeToProjectRootDirectory",
|
|
8987
|
+
type: Array,
|
|
8988
|
+
isUndefinedForbidden: false,
|
|
8989
|
+
isNullForbidden: true,
|
|
8990
|
+
areUndefinedElementsForbidden: true,
|
|
8991
|
+
areNullElementsForbidden: true,
|
|
8992
|
+
element: {
|
|
8993
|
+
type: String,
|
|
8994
|
+
minimalCharactersCount: 1
|
|
8995
|
+
}
|
|
8996
|
+
}
|
|
8997
|
+
}
|
|
8707
8998
|
}
|
|
8708
8999
|
};
|
|
8709
9000
|
}
|
|
@@ -8716,20 +9007,7 @@ var MarkupProcessingSettings__FromFile__RawValid;
|
|
|
8716
9007
|
isUndefinedForbidden: false,
|
|
8717
9008
|
mustTransformNullToUndefined: true,
|
|
8718
9009
|
properties: {
|
|
8719
|
-
$localization: generateLocalizationPropertiesSpecification({
|
|
8720
|
-
$excludedFilesPathsRelativeRelativeToProjectRootDirectory: {
|
|
8721
|
-
newName: "excludedFilesPathsRelativeRelativeToProjectRootDirectory",
|
|
8722
|
-
type: Array,
|
|
8723
|
-
isUndefinedForbidden: false,
|
|
8724
|
-
isNullForbidden: true,
|
|
8725
|
-
areUndefinedElementsForbidden: true,
|
|
8726
|
-
areNullElementsForbidden: true,
|
|
8727
|
-
element: {
|
|
8728
|
-
type: String,
|
|
8729
|
-
minimalCharactersCount: 1
|
|
8730
|
-
}
|
|
8731
|
-
}
|
|
8732
|
-
}),
|
|
9010
|
+
$localization: generateLocalizationPropertiesSpecification({ forEntryPointsGroups: false }),
|
|
8733
9011
|
$buildingModeDependent: {
|
|
8734
9012
|
newName: "buildingModeDependent",
|
|
8735
9013
|
type: es_extensions_1.RawObjectDataProcessor.ValuesTypesIDs.associativeArray,
|
|
@@ -8927,20 +9205,7 @@ var MarkupProcessingSettings__FromFile__RawValid;
|
|
|
8927
9205
|
isUndefinedForbidden: false,
|
|
8928
9206
|
isNullForbidden: true
|
|
8929
9207
|
},
|
|
8930
|
-
$localization: generateLocalizationPropertiesSpecification({
|
|
8931
|
-
$excludedFilesPathsRelativeToSourcesFilesTopDirectory: {
|
|
8932
|
-
newName: "excludedFilesPathsRelativeToSourcesFilesTopDirectory",
|
|
8933
|
-
type: Array,
|
|
8934
|
-
isUndefinedForbidden: false,
|
|
8935
|
-
isNullForbidden: true,
|
|
8936
|
-
areUndefinedElementsForbidden: true,
|
|
8937
|
-
areNullElementsForbidden: true,
|
|
8938
|
-
element: {
|
|
8939
|
-
type: String,
|
|
8940
|
-
minimalCharactersCount: 1
|
|
8941
|
-
}
|
|
8942
|
-
}
|
|
8943
|
-
}),
|
|
9208
|
+
$localization: generateLocalizationPropertiesSpecification({ forEntryPointsGroups: true }),
|
|
8944
9209
|
$HTML_Validation: {
|
|
8945
9210
|
newName: "HTML_Validation",
|
|
8946
9211
|
type: Object,
|
|
@@ -10446,20 +10711,18 @@ const HTML_ValidatorLocalization_english_1 = __importDefault(__webpack_require__
|
|
|
10446
10711
|
const vnu_jar_1 = __importDefault(__webpack_require__(/*! vnu-jar */ "vnu-jar"));
|
|
10447
10712
|
const DotYDA_DirectoryManager_1 = __importDefault(__webpack_require__(/*! @Utils/DotYDA_DirectoryManager */ "./Utils/DotYDA_DirectoryManager.ts"));
|
|
10448
10713
|
/* ─── Generals Utils ─────────────────────────────────────────────────────────────────────────────────────────────── */
|
|
10449
|
-
const fs_1 = __importDefault(__webpack_require__(/*! fs */ "fs"));
|
|
10450
10714
|
const node_child_process_1 = __importDefault(__webpack_require__(/*! node:child_process */ "node:child_process"));
|
|
10451
10715
|
const node_notifier_1 = __importDefault(__webpack_require__(/*! node-notifier */ "node-notifier"));
|
|
10452
10716
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
10453
10717
|
const es_extensions_nodejs_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions-nodejs */ "@yamato-daiwa/es-extensions-nodejs");
|
|
10454
10718
|
const nanoid_1 = __webpack_require__(/*! nanoid */ "nanoid");
|
|
10455
10719
|
const Stopwatch_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/Stopwatch */ "./UtilsIncubator/Stopwatch.ts"));
|
|
10456
|
-
const deleteFilesFromDirectory_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/@yamato-daiwa/es-extensions-nodejs/ImprovedFileSystem/deleteFilesFromDirectory */ "./UtilsIncubator/@yamato-daiwa/es-extensions-nodejs/ImprovedFileSystem/deleteFilesFromDirectory.ts"));
|
|
10457
10720
|
class HTML_Validator {
|
|
10458
10721
|
/* ━━━ Fields ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
|
|
10459
10722
|
static selfSingleInstance = null;
|
|
10460
10723
|
/* ─── Work Variables ───────────────────────────────────────────────────────────────────────────────────────────── */
|
|
10461
10724
|
/* [ Approach ]
|
|
10462
|
-
* Although "queue" usually means the order, here is order does not matter unlike the files' uniqueness
|
|
10725
|
+
* Although "queue" usually means the order, here is order does not matter unlike the files' uniqueness that is why
|
|
10463
10726
|
* set instead of simple Array used. */
|
|
10464
10727
|
queuedFilesMetadata = new Set();
|
|
10465
10728
|
consumingProjectRootDirectoryAbsolutePath;
|
|
@@ -10713,7 +10976,7 @@ class HTML_Validator {
|
|
|
10713
10976
|
if (!(error instanceof es_extensions_nodejs_1.FileNotFoundError)) {
|
|
10714
10977
|
es_extensions_1.Logger.logError({
|
|
10715
10978
|
errorType: "CachedDataRetrievingFailure",
|
|
10716
|
-
...HTML_Validator.localization.
|
|
10979
|
+
...HTML_Validator.localization.cachedPreviousValidationsResultsDataRetrievingErrorLog({
|
|
10717
10980
|
cachedValidationsResultsFileAbsolutePath: this.absolutePathOfCachedValidationsResultsFile
|
|
10718
10981
|
}),
|
|
10719
10982
|
occurrenceLocation: "HTML_Validator.retrieveCachedPastValidationsResultsFromFileIfItExists" +
|
|
@@ -10790,17 +11053,19 @@ class HTML_Validator {
|
|
|
10790
11053
|
if (this.logging.validationStart) {
|
|
10791
11054
|
es_extensions_1.Logger.logInfo(HTML_Validator.localization.validationStartedInfoLog);
|
|
10792
11055
|
}
|
|
10793
|
-
const validationTimeMeasuringStopwatch = new Stopwatch_1.default().startOrRestart();
|
|
10794
11056
|
/* [ Theory ] If pass no files to Nu HTML Checker, it will fail with the error. */
|
|
10795
11057
|
if (formattedTemporaryHTML_FilesPathsRelativeToConsumingProjectRoot__forwardSlashesSeparatorsOnly.length === 0) {
|
|
10796
|
-
HTML_Validator.reportValidationsResults(
|
|
11058
|
+
HTML_Validator.reportValidationsResults({
|
|
11059
|
+
validationsResults: this.cachedValidationsResults,
|
|
11060
|
+
validationPeriod__seconds: 0
|
|
11061
|
+
});
|
|
10797
11062
|
return;
|
|
10798
11063
|
}
|
|
11064
|
+
const validationTimeMeasuringStopwatch = new Stopwatch_1.default().startOrRestart();
|
|
10799
11065
|
const rawValidationsResults = await HTML_Validator.getRawValidationsResultsFromNuHTML_Checker(formattedTemporaryHTML_FilesPathsRelativeToConsumingProjectRoot__forwardSlashesSeparatorsOnly);
|
|
10800
|
-
|
|
11066
|
+
es_extensions_nodejs_1.ImprovedFileSystem.removeFilesFromDirectory({
|
|
10801
11067
|
directoryPath__absoluteOrRelative: this.absolutePathOfParentDirectoryOfTemporaryFormattedHTML_Files,
|
|
10802
|
-
synchronously: true
|
|
10803
|
-
mustThrowErrorIfSomeFileCanNotBeDeleted: false
|
|
11068
|
+
synchronously: true
|
|
10804
11069
|
});
|
|
10805
11070
|
const rawValidationsResultsInspectionOutput = es_extensions_1.RawObjectDataProcessor.process(rawValidationsResults, HTML_Validator.validationsResultsSpecification);
|
|
10806
11071
|
if (rawValidationsResultsInspectionOutput.isRawDataInvalid) {
|
|
@@ -10843,12 +11108,11 @@ class HTML_Validator {
|
|
|
10843
11108
|
contentMD5Checksum: (0, es_extensions_1.getExpectedToBeNonUndefinedMapValue)(MD5_HashesOfHTML_ContentByRelativePathsOfOriginalHTML_Files, relativeToConsumingProjectRootPathOfOriginalValidHTML_Files__forwardSlashesSeparatorsOnly)
|
|
10844
11109
|
});
|
|
10845
11110
|
}
|
|
10846
|
-
validationTimeMeasuringStopwatch.stop();
|
|
10847
|
-
HTML_Validator.reportValidationsResults(this.cachedValidationsResults);
|
|
11111
|
+
const { seconds: validationPeriod__seconds } = validationTimeMeasuringStopwatch.stop();
|
|
11112
|
+
HTML_Validator.reportValidationsResults({ validationsResults: this.cachedValidationsResults, validationPeriod__seconds });
|
|
10848
11113
|
this.writeCacheToFile();
|
|
10849
11114
|
this.queuedFilesMetadata.clear();
|
|
10850
11115
|
}
|
|
10851
|
-
// ━━━ TODO ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
10852
11116
|
static async getRawValidationsResultsFromNuHTML_Checker(targetFilesPathRelativeToConsumingProjectRoot__forwardSlashesPathSeparators) {
|
|
10853
11117
|
return new Promise((resolve, reject) => {
|
|
10854
11118
|
/* [ Theory ] "vnu-jar" works only with relative paths. Absolute paths will not work with any path separators. */
|
|
@@ -10949,64 +11213,74 @@ class HTML_Validator {
|
|
|
10949
11213
|
};
|
|
10950
11214
|
}
|
|
10951
11215
|
/* ─── Reporting ────────────────────────────────────────────────────────────────────────────────────────────────── */
|
|
10952
|
-
static reportValidationsResults(validationsResults) {
|
|
10953
|
-
|
|
11216
|
+
static reportValidationsResults({ validationsResults, validationPeriod__seconds }) {
|
|
11217
|
+
const filesPathsRelativeToConsumingProjectRootSortedByAlphabet__forwardPathSeparatorsOnly = Array.from(validationsResults.keys()).sort();
|
|
10954
11218
|
let hasAtLeastOneFileWithInvalidHTML = false;
|
|
10955
11219
|
const hasEachFileIssues = new Map();
|
|
10956
11220
|
const formattedIssuesForEachFile = new Map();
|
|
10957
|
-
for (const [
|
|
10958
|
-
|
|
10959
|
-
|
|
11221
|
+
for (const [filePathRelativeToConsumingProjectRoot__forwardPathSeparatorsOnly, { issues }] of validationsResults.entries()) {
|
|
11222
|
+
const hasCurrentFileHTML_ValidityIssues = issues.length > 0;
|
|
11223
|
+
hasEachFileIssues.set(filePathRelativeToConsumingProjectRoot__forwardPathSeparatorsOnly, hasCurrentFileHTML_ValidityIssues);
|
|
11224
|
+
if (hasCurrentFileHTML_ValidityIssues) {
|
|
10960
11225
|
hasAtLeastOneFileWithInvalidHTML = true;
|
|
10961
|
-
formattedIssuesForEachFile.set(
|
|
11226
|
+
formattedIssuesForEachFile.set(filePathRelativeToConsumingProjectRoot__forwardPathSeparatorsOnly, HTML_Validator.formatValidationResultForSingleFile(issues));
|
|
10962
11227
|
}
|
|
10963
11228
|
}
|
|
10964
11229
|
const summary = `${(0, es_extensions_1.surroundLabelByOrnament)({
|
|
10965
|
-
label:
|
|
11230
|
+
label: HTML_Validator.localization.validityIssuesDetectedErrorLog.headings.summary,
|
|
10966
11231
|
ornamentPatten: "━",
|
|
11232
|
+
characterForIndentationAroundLabel: " ",
|
|
10967
11233
|
prependedPartCharactersCount: 3,
|
|
10968
11234
|
totalCharactersCount: HTML_Validator.DISPLAYING_MAXIMAL_COLUMNS_COUNT_IN_LOG
|
|
10969
11235
|
})}\n` +
|
|
10970
|
-
|
|
10971
|
-
map((
|
|
11236
|
+
filesPathsRelativeToConsumingProjectRootSortedByAlphabet__forwardPathSeparatorsOnly.
|
|
11237
|
+
map((fileRelativePath__forwardPathSeparatorsOnly) => `${(0, es_extensions_1.getExpectedToBeNonUndefinedMapValue)(hasEachFileIssues, fileRelativePath__forwardPathSeparatorsOnly) ?
|
|
11238
|
+
"❌" : "✅"} ` +
|
|
11239
|
+
fileRelativePath__forwardPathSeparatorsOnly).
|
|
10972
11240
|
join("\n");
|
|
10973
11241
|
const detailedReport = `${(0, es_extensions_1.surroundLabelByOrnament)({
|
|
10974
|
-
label:
|
|
11242
|
+
label: HTML_Validator.localization.validityIssuesDetectedErrorLog.headings.details,
|
|
10975
11243
|
ornamentPatten: "━",
|
|
11244
|
+
characterForIndentationAroundLabel: " ",
|
|
10976
11245
|
prependedPartCharactersCount: 3,
|
|
10977
11246
|
totalCharactersCount: HTML_Validator.DISPLAYING_MAXIMAL_COLUMNS_COUNT_IN_LOG
|
|
10978
11247
|
})}\n` +
|
|
10979
|
-
|
|
10980
|
-
|
|
10981
|
-
|
|
11248
|
+
filesPathsRelativeToConsumingProjectRootSortedByAlphabet__forwardPathSeparatorsOnly.
|
|
11249
|
+
filter((fileRelativePath__forwardPathSeparatorsOnly) => formattedIssuesForEachFile.has(fileRelativePath__forwardPathSeparatorsOnly)).
|
|
11250
|
+
map((fileRelativePath__forwardPathSeparatorsOnly) => `${(0, es_extensions_1.surroundLabelByOrnament)({
|
|
11251
|
+
label: fileRelativePath__forwardPathSeparatorsOnly,
|
|
11252
|
+
characterForIndentationAroundLabel: "",
|
|
10982
11253
|
ornamentPatten: "─",
|
|
10983
11254
|
prependedPartCharactersCount: 3,
|
|
10984
11255
|
totalCharactersCount: HTML_Validator.DISPLAYING_MAXIMAL_COLUMNS_COUNT_IN_LOG
|
|
10985
11256
|
})}\n` +
|
|
10986
|
-
|
|
11257
|
+
(0, es_extensions_1.getExpectedToBeNonUndefinedMapValue)(formattedIssuesForEachFile, fileRelativePath__forwardPathSeparatorsOnly)).
|
|
10987
11258
|
join("\n");
|
|
10988
11259
|
if (hasAtLeastOneFileWithInvalidHTML) {
|
|
10989
11260
|
es_extensions_1.Logger.logErrorLikeMessage({
|
|
10990
|
-
title:
|
|
10991
|
-
description: `${summary}\n\n
|
|
11261
|
+
title: HTML_Validator.localization.validityIssuesDetectedErrorLog.title,
|
|
11262
|
+
description: `${summary}\n\n` +
|
|
11263
|
+
`${detailedReport}\n` +
|
|
11264
|
+
HTML_Validator.localization.validityIssuesDetectedErrorLog.generateSecondsElapsedSentence({ validationPeriod__seconds })
|
|
10992
11265
|
});
|
|
10993
|
-
node_notifier_1.default.notify(HTML_Validator.localization.
|
|
11266
|
+
node_notifier_1.default.notify(HTML_Validator.localization.validityIssuesDetectedToastNotification);
|
|
10994
11267
|
return;
|
|
10995
11268
|
}
|
|
10996
11269
|
es_extensions_1.Logger.logSuccess({
|
|
10997
|
-
title:
|
|
10998
|
-
description:
|
|
10999
|
-
|
|
11000
|
-
Array.from(validationsResults.keys()).
|
|
11270
|
+
title: HTML_Validator.localization.validationFinishedWithoutIssuesSuccessLog.title,
|
|
11271
|
+
description: HTML_Validator.localization.validationFinishedWithoutIssuesSuccessLog.generateDescription({
|
|
11272
|
+
validationPeriod__seconds,
|
|
11273
|
+
preFormattedErrorsMessages: Array.from(validationsResults.keys()).
|
|
11001
11274
|
map((fileRelativePath__forwardPathSeparatorsOnly) => `● ${fileRelativePath__forwardPathSeparatorsOnly}`).
|
|
11002
11275
|
join("\n")
|
|
11276
|
+
})
|
|
11003
11277
|
});
|
|
11004
11278
|
}
|
|
11005
11279
|
/* ─── Formatting ───────────────────────────────────────────────────────────────────────────────────────────────── */
|
|
11006
11280
|
static formatValidationResultForSingleFile(issues) {
|
|
11007
11281
|
const formattedIssues = [];
|
|
11008
11282
|
for (const [index, issue] of issues.entries()) {
|
|
11009
|
-
/* [ Desired
|
|
11283
|
+
/* [ Desired Output Example ]
|
|
11010
11284
|
|
|
11011
11285
|
=== Issue No. 5 =================================================================================================
|
|
11012
11286
|
<div class="NewsFeed"></div><a><span></span><a>Foo<div></div><a>bar</a></a>
|
|
@@ -11022,6 +11296,7 @@ class HTML_Validator {
|
|
|
11022
11296
|
`${(0, es_extensions_1.surroundLabelByOrnament)({
|
|
11023
11297
|
label: HTML_Validator.localization.generateIssueNumberLabel({ issueNumber: index + 1 }),
|
|
11024
11298
|
ornamentPatten: "┄",
|
|
11299
|
+
characterForIndentationAroundLabel: " ",
|
|
11025
11300
|
prependedPartCharactersCount: 3,
|
|
11026
11301
|
totalCharactersCount: HTML_Validator.DISPLAYING_MAXIMAL_COLUMNS_COUNT_IN_LOG
|
|
11027
11302
|
})}\n`,
|
|
@@ -11040,13 +11315,11 @@ class HTML_Validator {
|
|
|
11040
11315
|
return HTML_Validator.localization.issuesTypesTitles.grossViolation;
|
|
11041
11316
|
case HTML_Validator.NormalizedValidationsResults.Issue.Types.info:
|
|
11042
11317
|
return HTML_Validator.localization.issuesTypesTitles.recommendationDisregard;
|
|
11043
|
-
default:
|
|
11044
|
-
return HTML_Validator.localization.issuesTypesTitles.other;
|
|
11045
11318
|
}
|
|
11046
11319
|
})()})\n`,
|
|
11047
|
-
...(
|
|
11320
|
+
...(0, es_extensions_1.isNotUndefined)(issue.lineNumber__numerationFrom1) &&
|
|
11048
11321
|
(0, es_extensions_1.isNotUndefined)(issue.startingColumnNumber__numerationFrom1) &&
|
|
11049
|
-
(0, es_extensions_1.isNotUndefined)(issue.endingColumnNumber__numerationFrom1)
|
|
11322
|
+
(0, es_extensions_1.isNotUndefined)(issue.endingColumnNumber__numerationFrom1) ?
|
|
11050
11323
|
[
|
|
11051
11324
|
HTML_Validator.localization.generateIssueOccurrenceLocationIndication({
|
|
11052
11325
|
lineNumber: issue.lineNumber__numerationFrom1,
|
|
@@ -11063,21 +11336,25 @@ class HTML_Validator {
|
|
|
11063
11336
|
static computeAbsolutePathOfCachedValidationsResultsFileActualForCurrentProjectBuildingMode({ parentDirectoryAbsolutePath, projectBuildingSelectiveExecutionID, consumingProjectBuildingMode }) {
|
|
11064
11337
|
return es_extensions_nodejs_1.ImprovedPath.joinPathSegments([
|
|
11065
11338
|
parentDirectoryAbsolutePath,
|
|
11066
|
-
|
|
11339
|
+
[
|
|
11340
|
+
`${HTML_Validator.CACHED_VALIDATIONS_RESULTS_FILE_CONSTANT_NAME_PART}.`,
|
|
11341
|
+
...(0, es_extensions_1.isUndefined)(projectBuildingSelectiveExecutionID) ? [] : [`${projectBuildingSelectiveExecutionID}.`],
|
|
11342
|
+
`${(0, es_extensions_1.toLowerCamelCase)(consumingProjectBuildingMode)}.json`
|
|
11343
|
+
].join(".")
|
|
11067
11344
|
]);
|
|
11068
11345
|
}
|
|
11069
11346
|
writeCacheToFile() {
|
|
11070
|
-
|
|
11071
|
-
targetPath: this.absolutePathOfParentDirectoryOfCachedValidationsResultsFile,
|
|
11072
|
-
mustThrowErrorIfTargetDirectoryExists: false,
|
|
11073
|
-
synchronously: true
|
|
11074
|
-
});
|
|
11347
|
+
/* [ Maintainability ] Keep this variable for easier debugging. */
|
|
11075
11348
|
const cachedValidationsResultsFileContent = Array.from(this.cachedValidationsResults.entries()).
|
|
11076
11349
|
reduce((accumulatingValue, [filePathRelativeToConsumingProjectRootDirectory, cachedValidationRawResultsForSpecificFile]) => {
|
|
11077
11350
|
accumulatingValue[filePathRelativeToConsumingProjectRootDirectory] = cachedValidationRawResultsForSpecificFile;
|
|
11078
11351
|
return accumulatingValue;
|
|
11079
11352
|
}, {});
|
|
11080
|
-
|
|
11353
|
+
es_extensions_nodejs_1.ImprovedFileSystem.writeFileToPossiblyNotExistingDirectory({
|
|
11354
|
+
filePath: this.absolutePathOfParentDirectoryOfCachedValidationsResultsFile,
|
|
11355
|
+
content: JSON.stringify(cachedValidationsResultsFileContent, null, 2),
|
|
11356
|
+
synchronously: true
|
|
11357
|
+
});
|
|
11081
11358
|
}
|
|
11082
11359
|
/* ━━━ Routines ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
|
|
11083
11360
|
static getExpectedToBeInitializedSelfSingleInstance() {
|
|
@@ -11101,17 +11378,15 @@ class HTML_Validator {
|
|
|
11101
11378
|
(function (Types) {
|
|
11102
11379
|
Types["info"] = "info";
|
|
11103
11380
|
Types["error"] = "error";
|
|
11104
|
-
Types["nonDocumentError"] = "non-document-error";
|
|
11105
|
-
Types["networkError"] = "network-error";
|
|
11106
11381
|
})(Types = Issue.Types || (Issue.Types = {}));
|
|
11107
|
-
let
|
|
11108
|
-
(function (
|
|
11109
|
-
|
|
11110
|
-
|
|
11111
|
-
|
|
11112
|
-
|
|
11113
|
-
|
|
11114
|
-
})(
|
|
11382
|
+
let SubTypes;
|
|
11383
|
+
(function (SubTypes) {
|
|
11384
|
+
SubTypes["warning"] = "warning";
|
|
11385
|
+
SubTypes["fatal"] = "fatal";
|
|
11386
|
+
SubTypes["io"] = "io";
|
|
11387
|
+
SubTypes["schema"] = "schema";
|
|
11388
|
+
SubTypes["internal"] = "internal";
|
|
11389
|
+
})(SubTypes = Issue.SubTypes || (Issue.SubTypes = {}));
|
|
11115
11390
|
})(Issue = NormalizedValidationsResults.Issue || (NormalizedValidationsResults.Issue = {}));
|
|
11116
11391
|
})(NormalizedValidationsResults = HTML_Validator.NormalizedValidationsResults || (HTML_Validator.NormalizedValidationsResults = {}));
|
|
11117
11392
|
})(HTML_Validator || (HTML_Validator = {}));
|
|
@@ -11129,7 +11404,7 @@ exports["default"] = HTML_Validator;
|
|
|
11129
11404
|
|
|
11130
11405
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
11131
11406
|
const HTML_ValidatorLocalization__english = {
|
|
11132
|
-
|
|
11407
|
+
cachedPreviousValidationsResultsDataRetrievingErrorLog: ({ cachedValidationsResultsFileAbsolutePath }) => ({
|
|
11133
11408
|
title: "Cached Previous Validations Data Retrieving Failure",
|
|
11134
11409
|
description: "Unable to read and/or parse the existing HTML validation cache file " +
|
|
11135
11410
|
`"${cachedValidationsResultsFileAbsolutePath}".`
|
|
@@ -11138,12 +11413,27 @@ const HTML_ValidatorLocalization__english = {
|
|
|
11138
11413
|
title: "HTML Code Validation Started",
|
|
11139
11414
|
description: "Validating the output HTML files..."
|
|
11140
11415
|
},
|
|
11141
|
-
|
|
11142
|
-
|
|
11143
|
-
|
|
11144
|
-
|
|
11416
|
+
validityIssuesDetectedErrorLog: {
|
|
11417
|
+
title: "HTML Validation, Issue(s) Detected",
|
|
11418
|
+
headings: {
|
|
11419
|
+
summary: "Summary",
|
|
11420
|
+
details: "Details"
|
|
11421
|
+
},
|
|
11422
|
+
generateSecondsElapsedSentence: ({ validationPeriod__seconds }) => `Seconds elapsed: ${validationPeriod__seconds}`
|
|
11145
11423
|
},
|
|
11146
|
-
|
|
11424
|
+
validityIssuesDetectedToastNotification: {
|
|
11425
|
+
title: "HTML Validation, Issue(s) Detected",
|
|
11426
|
+
message: "W3C rules violations and / or recommendations neglect detected. " +
|
|
11427
|
+
"Check the console for the details."
|
|
11428
|
+
},
|
|
11429
|
+
validationFinishedWithoutIssuesSuccessLog: {
|
|
11430
|
+
title: "HTML Validation, All Valid",
|
|
11431
|
+
generateDescription: ({ validationPeriod__seconds, preFormattedErrorsMessages }) => "All HTML files (except excluded ones if any) contains valid HTML. " +
|
|
11432
|
+
"The following files has been checked:\n" +
|
|
11433
|
+
`${preFormattedErrorsMessages}\n` +
|
|
11434
|
+
`Seconds elapsed: ${validationPeriod__seconds}`
|
|
11435
|
+
},
|
|
11436
|
+
generateIssueNumberLabel: ({ issueNumber }) => `Issue No. ${issueNumber}`,
|
|
11147
11437
|
generateIssueOccurrenceLocationIndication: ({ lineNumber, startingColumnNumber, lastColumnNumber }) => `At line ${lineNumber}, columns ${startingColumnNumber}-${lastColumnNumber}`,
|
|
11148
11438
|
issuesTypesTitles: {
|
|
11149
11439
|
grossViolation: "Gross violation",
|
|
@@ -12102,7 +12392,6 @@ const SourceCodeProcessingRawSettingsNormalizer_1 = __importDefault(__webpack_re
|
|
|
12102
12392
|
const RoutingSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/RawSettingsNormalizer/RoutingSettingsNormalizer */ "./ProjectBuilding/SourceCodeProcessing/Markup/RawSettingsNormalizer/RoutingSettingsNormalizer.ts"));
|
|
12103
12393
|
/* ─── Utils ──────────────────────────────────────────────────────────────────────────────────────────────────────── */
|
|
12104
12394
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
12105
|
-
const removeMultipleElementsFromSetByPredicate_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/Set/removeMultipleElementsFromSetByPredicate */ "./UtilsIncubator/Set/removeMultipleElementsFromSetByPredicate.ts"));
|
|
12106
12395
|
const isSubdirectory_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/NodeJS/isSubdirectory */ "./UtilsIncubator/NodeJS/isSubdirectory.ts"));
|
|
12107
12396
|
const es_extensions_nodejs_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions-nodejs */ "@yamato-daiwa/es-extensions-nodejs");
|
|
12108
12397
|
/* ─── Localization ───────────────────────────────────────────────────────────────────────────────────────────────── */
|
|
@@ -12148,7 +12437,6 @@ class MarkupProcessingRawSettingsNormalizer extends SourceCodeProcessingRawSetti
|
|
|
12148
12437
|
pagesVariations: dataHoldingSelfInstance.normalizeStaticPreviewPagesVariationsSettings(),
|
|
12149
12438
|
importsFromStaticDataFiles: dataHoldingSelfInstance.normalizeImportsFromStaticDataFiles()
|
|
12150
12439
|
},
|
|
12151
|
-
/* TODO Replace value of `absolutePathsOfSectioningToCache`. https://trello.com/c/RJfFF7oh */
|
|
12152
12440
|
...(0, es_extensions_1.isNotUndefined)(markupProcessingSettings__fromFile__rawValid.routing) ? {
|
|
12153
12441
|
routing: {
|
|
12154
12442
|
variable: markupProcessingSettings__fromFile__rawValid.routing.variable,
|
|
@@ -12525,7 +12813,7 @@ class MarkupProcessingRawSettingsNormalizer extends SourceCodeProcessingRawSetti
|
|
|
12525
12813
|
excludedFilesPathsRelativeToSourcesFilesTopDirectory?.
|
|
12526
12814
|
map((excludedFilePathRelativeRelativeToSourcesFileTopDirectory) => es_extensions_nodejs_1.ImprovedPath.joinPathSegments([sourceFilesTopDirectoryAbsolutePath, excludedFilePathRelativeRelativeToSourcesFileTopDirectory], { alwaysForwardSlashSeparators: true })) ??
|
|
12527
12815
|
[]).
|
|
12528
|
-
concat(Array.from((0,
|
|
12816
|
+
concat(Array.from((0, es_extensions_1.removeMultipleElementsFromSetByPredicate)({
|
|
12529
12817
|
targetSet: this.unusedCommonlyExcludedFromLocalizationEntryPointsSourceFilesAbsolutePaths,
|
|
12530
12818
|
predicate: (commonlyExcludedFromLocalizationEntryPointsSourceFileAbsolutePath) => (0, isSubdirectory_1.default)({
|
|
12531
12819
|
whichPath: commonlyExcludedFromLocalizationEntryPointsSourceFileAbsolutePath,
|
|
@@ -12624,7 +12912,7 @@ const markupProcessingRawSettingsNormalizerLocalization__english = {
|
|
|
12624
12912
|
`paths has not been specified for the "${consumingProjectBuildingMode}" building mode. ` +
|
|
12625
12913
|
"The resources references will be resolved to relative paths instead. " +
|
|
12626
12914
|
"If you wish these references be resolved to relative path, set \"$projectBuilding.$markupProcessing.$common." +
|
|
12627
|
-
"$buildingModeDependent.[PROJECT_BUILDING_MODE].$
|
|
12915
|
+
"$buildingModeDependent.[PROJECT_BUILDING_MODE].$mustResolveResourcesPointersToRelativePaths\" " +
|
|
12628
12916
|
`to true for the "${consumingProjectBuildingMode}" building mode.`
|
|
12629
12917
|
}),
|
|
12630
12918
|
generateStaticPreviewStateDependentPagesVariationsSpecificationFileReadingFailedMessage: (templateVariables) => "Failed to read the static preview state dependent pages variations specification file at " +
|
|
@@ -15843,6 +16131,21 @@ class VinylFileClass extends vinyl_1.default {
|
|
|
15843
16131
|
exports["default"] = VinylFileClass;
|
|
15844
16132
|
|
|
15845
16133
|
|
|
16134
|
+
/***/ }),
|
|
16135
|
+
|
|
16136
|
+
/***/ "./Utils/VoidPromiseReturningFunction.ts":
|
|
16137
|
+
/*!***********************************************!*\
|
|
16138
|
+
!*** ./Utils/VoidPromiseReturningFunction.ts ***!
|
|
16139
|
+
\***********************************************/
|
|
16140
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
16141
|
+
|
|
16142
|
+
|
|
16143
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
16144
|
+
exports.voidPromiseReturningFunction = void 0;
|
|
16145
|
+
const voidPromiseReturningFunction = async () => Promise.resolve();
|
|
16146
|
+
exports.voidPromiseReturningFunction = voidPromiseReturningFunction;
|
|
16147
|
+
|
|
16148
|
+
|
|
15846
16149
|
/***/ }),
|
|
15847
16150
|
|
|
15848
16151
|
/***/ "./Utils/createImmediatelyEndingEmptyStream.ts":
|
|
@@ -15882,59 +16185,6 @@ function extractStringifiedContentFromVinylFile(targetFile) {
|
|
|
15882
16185
|
}
|
|
15883
16186
|
|
|
15884
16187
|
|
|
15885
|
-
/***/ }),
|
|
15886
|
-
|
|
15887
|
-
/***/ "./UtilsIncubator/@yamato-daiwa/es-extensions-nodejs/ImprovedFileSystem/deleteFilesFromDirectory.ts":
|
|
15888
|
-
/*!**********************************************************************************************************!*\
|
|
15889
|
-
!*** ./UtilsIncubator/@yamato-daiwa/es-extensions-nodejs/ImprovedFileSystem/deleteFilesFromDirectory.ts ***!
|
|
15890
|
-
\**********************************************************************************************************/
|
|
15891
|
-
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
15892
|
-
|
|
15893
|
-
|
|
15894
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
15895
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15896
|
-
};
|
|
15897
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
15898
|
-
exports["default"] = deleteFilesFromDirectory;
|
|
15899
|
-
const fs_1 = __importDefault(__webpack_require__(/*! fs */ "fs"));
|
|
15900
|
-
const promises_1 = __importDefault(__webpack_require__(/*! fs/promises */ "fs/promises"));
|
|
15901
|
-
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
15902
|
-
const es_extensions_nodejs_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions-nodejs */ "@yamato-daiwa/es-extensions-nodejs");
|
|
15903
|
-
function deleteFilesFromDirectory({ directoryPath__absoluteOrRelative, targetFileNamesExtensions, mustThrowErrorIfSomeFileCanNotBeDeleted, synchronously }) {
|
|
15904
|
-
const targetFilesAbsolutePaths = es_extensions_nodejs_1.ImprovedGlob.getFilesAbsolutePathsSynchronously([
|
|
15905
|
-
es_extensions_nodejs_1.ImprovedGlob.buildAllFilesInCurrentDirectoryAndBelowGlobSelector({
|
|
15906
|
-
basicDirectoryPath: directoryPath__absoluteOrRelative,
|
|
15907
|
-
fileNamesExtensions: targetFileNamesExtensions
|
|
15908
|
-
})
|
|
15909
|
-
]);
|
|
15910
|
-
if (synchronously) {
|
|
15911
|
-
for (const targetFilesAbsolutePath of targetFilesAbsolutePaths) {
|
|
15912
|
-
try {
|
|
15913
|
-
fs_1.default.unlinkSync(targetFilesAbsolutePath);
|
|
15914
|
-
}
|
|
15915
|
-
catch (error) {
|
|
15916
|
-
if (mustThrowErrorIfSomeFileCanNotBeDeleted) {
|
|
15917
|
-
es_extensions_1.Logger.throwErrorAndLog({
|
|
15918
|
-
errorType: "FileDeletingFailure",
|
|
15919
|
-
title: "File Deleting Failed",
|
|
15920
|
-
description: `The error has occurred during deleting of the file with path "${targetFilesAbsolutePath}".`,
|
|
15921
|
-
occurrenceLocation: "deleteFilesFromDirectory(compoundParameter)",
|
|
15922
|
-
innerError: error
|
|
15923
|
-
});
|
|
15924
|
-
}
|
|
15925
|
-
}
|
|
15926
|
-
}
|
|
15927
|
-
return;
|
|
15928
|
-
}
|
|
15929
|
-
return new Promise((resolve, reject) => {
|
|
15930
|
-
Promise.
|
|
15931
|
-
all(targetFilesAbsolutePaths.map(async (targetFilesAbsolutePath) => promises_1.default.unlink(targetFilesAbsolutePath))).
|
|
15932
|
-
then(resolve).
|
|
15933
|
-
catch(reject);
|
|
15934
|
-
});
|
|
15935
|
-
}
|
|
15936
|
-
|
|
15937
|
-
|
|
15938
16188
|
/***/ }),
|
|
15939
16189
|
|
|
15940
16190
|
/***/ "./UtilsIncubator/NodeJS/isSubdirectory.ts":
|
|
@@ -15956,32 +16206,6 @@ function isSubdirectory({ whichPath, ofWhichPath }) {
|
|
|
15956
16206
|
}
|
|
15957
16207
|
|
|
15958
16208
|
|
|
15959
|
-
/***/ }),
|
|
15960
|
-
|
|
15961
|
-
/***/ "./UtilsIncubator/Set/removeMultipleElementsFromSetByPredicate.ts":
|
|
15962
|
-
/*!************************************************************************!*\
|
|
15963
|
-
!*** ./UtilsIncubator/Set/removeMultipleElementsFromSetByPredicate.ts ***!
|
|
15964
|
-
\************************************************************************/
|
|
15965
|
-
/***/ ((__unused_webpack_module, exports) => {
|
|
15966
|
-
|
|
15967
|
-
|
|
15968
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
15969
|
-
exports["default"] = removeMultipleElementsFromSetByPredicate;
|
|
15970
|
-
function removeMultipleElementsFromSetByPredicate({ targetSet, predicate }) {
|
|
15971
|
-
const removedElements = [];
|
|
15972
|
-
for (const element of targetSet) {
|
|
15973
|
-
if (predicate(element)) {
|
|
15974
|
-
targetSet.delete(element);
|
|
15975
|
-
removedElements.push(element);
|
|
15976
|
-
}
|
|
15977
|
-
}
|
|
15978
|
-
return {
|
|
15979
|
-
updatedSet: targetSet,
|
|
15980
|
-
removedElements
|
|
15981
|
-
};
|
|
15982
|
-
}
|
|
15983
|
-
|
|
15984
|
-
|
|
15985
16209
|
/***/ }),
|
|
15986
16210
|
|
|
15987
16211
|
/***/ "./UtilsIncubator/Stopwatch.ts":
|
|
@@ -16112,6 +16336,16 @@ module.exports = require("browser-sync");
|
|
|
16112
16336
|
|
|
16113
16337
|
/***/ }),
|
|
16114
16338
|
|
|
16339
|
+
/***/ "child_process":
|
|
16340
|
+
/*!********************************!*\
|
|
16341
|
+
!*** external "child_process" ***!
|
|
16342
|
+
\********************************/
|
|
16343
|
+
/***/ ((module) => {
|
|
16344
|
+
|
|
16345
|
+
module.exports = require("child_process");
|
|
16346
|
+
|
|
16347
|
+
/***/ }),
|
|
16348
|
+
|
|
16115
16349
|
/***/ "cssnano":
|
|
16116
16350
|
/*!**************************!*\
|
|
16117
16351
|
!*** external "cssnano" ***!
|
|
@@ -16142,16 +16376,6 @@ module.exports = require("eslint");
|
|
|
16142
16376
|
|
|
16143
16377
|
/***/ }),
|
|
16144
16378
|
|
|
16145
|
-
/***/ "fork-ts-checker-webpack-plugin":
|
|
16146
|
-
/*!*************************************************!*\
|
|
16147
|
-
!*** external "fork-ts-checker-webpack-plugin" ***!
|
|
16148
|
-
\*************************************************/
|
|
16149
|
-
/***/ ((module) => {
|
|
16150
|
-
|
|
16151
|
-
module.exports = require("fork-ts-checker-webpack-plugin");
|
|
16152
|
-
|
|
16153
|
-
/***/ }),
|
|
16154
|
-
|
|
16155
16379
|
/***/ "fs":
|
|
16156
16380
|
/*!*********************!*\
|
|
16157
16381
|
!*** external "fs" ***!
|
|
@@ -16162,16 +16386,6 @@ module.exports = require("fs");
|
|
|
16162
16386
|
|
|
16163
16387
|
/***/ }),
|
|
16164
16388
|
|
|
16165
|
-
/***/ "fs/promises":
|
|
16166
|
-
/*!******************************!*\
|
|
16167
|
-
!*** external "fs/promises" ***!
|
|
16168
|
-
\******************************/
|
|
16169
|
-
/***/ ((module) => {
|
|
16170
|
-
|
|
16171
|
-
module.exports = require("fs/promises");
|
|
16172
|
-
|
|
16173
|
-
/***/ }),
|
|
16174
|
-
|
|
16175
16389
|
/***/ "gulp":
|
|
16176
16390
|
/*!***********************!*\
|
|
16177
16391
|
!*** external "gulp" ***!
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yamato-daiwa/automation",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0-alpha.0",
|
|
4
4
|
"description": "The project building tool with declarative YAML configuration specializing on Pug, Stylus and TypeScript as source code languages.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"build",
|
|
@@ -20,26 +20,25 @@
|
|
|
20
20
|
],
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@eslint-community/eslint-plugin-eslint-comments": "4.5.0",
|
|
23
|
-
"@stylistic/eslint-plugin": "
|
|
24
|
-
"@typescript-eslint/eslint-plugin": "8.
|
|
25
|
-
"@typescript-eslint/parser": "8.
|
|
26
|
-
"@vue/compiler-sfc": "3.5.
|
|
23
|
+
"@stylistic/eslint-plugin": "5.2.3",
|
|
24
|
+
"@typescript-eslint/eslint-plugin": "8.39.0",
|
|
25
|
+
"@typescript-eslint/parser": "8.39.0",
|
|
26
|
+
"@vue/compiler-sfc": "3.5.18",
|
|
27
27
|
"@webdiscus/pug-loader": "2.11.1",
|
|
28
|
-
"@yamato-daiwa/es-extensions": "1.8.0-
|
|
29
|
-
"@yamato-daiwa/es-extensions-nodejs": "1.8.0-
|
|
30
|
-
"@yamato-daiwa/style_guides": "0.
|
|
28
|
+
"@yamato-daiwa/es-extensions": "1.8.0-rc.1",
|
|
29
|
+
"@yamato-daiwa/es-extensions-nodejs": "1.8.0-rc.1",
|
|
30
|
+
"@yamato-daiwa/style_guides": "0.9.0",
|
|
31
31
|
"autoprefixer": "10.4.21",
|
|
32
32
|
"browser-sync": "3.0.4",
|
|
33
33
|
"css-loader": "7.1.2",
|
|
34
|
-
"cssnano": "7.0
|
|
35
|
-
"dotenv": "
|
|
36
|
-
"eslint": "9.
|
|
37
|
-
"eslint-plugin-import": "2.
|
|
38
|
-
"eslint-plugin-n": "17.
|
|
34
|
+
"cssnano": "7.1.0",
|
|
35
|
+
"dotenv": "17.2.1",
|
|
36
|
+
"eslint": "9.33.0",
|
|
37
|
+
"eslint-plugin-import": "2.32.0",
|
|
38
|
+
"eslint-plugin-n": "17.21.3",
|
|
39
39
|
"eslint-plugin-react": "7.37.5",
|
|
40
40
|
"eslint-plugin-vue": "9.33.0",
|
|
41
41
|
"eslint-plugin-vue-pug": "0.6.2",
|
|
42
|
-
"fork-ts-checker-webpack-plugin": "7.3.0",
|
|
43
42
|
"gulp": "4.0.2",
|
|
44
43
|
"gulp-data": "1.3.1",
|
|
45
44
|
"gulp-if": "3.0.0",
|
|
@@ -74,8 +73,8 @@
|
|
|
74
73
|
"vnu-jar": "24.10.17",
|
|
75
74
|
"vue-loader": "17.4.2",
|
|
76
75
|
"vue-style-loader": "4.1.3",
|
|
77
|
-
"vue-tsc": "
|
|
78
|
-
"webpack": "5.
|
|
76
|
+
"vue-tsc": "3.0.5",
|
|
77
|
+
"webpack": "5.101.0",
|
|
79
78
|
"webpack-node-externals": "3.0.0",
|
|
80
79
|
"webpack-stream": "7.0.0",
|
|
81
80
|
"worker-loader": "3.0.8",
|
|
@@ -85,7 +84,7 @@
|
|
|
85
84
|
"@types/browser-sync": "2.29.0",
|
|
86
85
|
"@types/cssnano": "5.0.0",
|
|
87
86
|
"@types/gulp": "4.0.17",
|
|
88
|
-
"@types/gulp-if": "3.0.
|
|
87
|
+
"@types/gulp-if": "3.0.5",
|
|
89
88
|
"@types/gulp-imagemin": "7.0.3",
|
|
90
89
|
"@types/gulp-nodemon": "0.0.37",
|
|
91
90
|
"@types/gulp-plumber": "0.0.37",
|
|
@@ -104,7 +103,7 @@
|
|
|
104
103
|
"@types/webpack-stream": "3.2.15",
|
|
105
104
|
"eslint-webpack-plugin": "4.2.0",
|
|
106
105
|
"ts-node": "10.9.2",
|
|
107
|
-
"typescript": "5.
|
|
106
|
+
"typescript": "5.9.2",
|
|
108
107
|
"webpack-cli": "6.0.1"
|
|
109
108
|
},
|
|
110
109
|
"scripts": {
|