@yamato-daiwa/automation 0.2.0-alpha.1 → 0.2.0-alpha.2
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 +1680 -667
- package/package.json +15 -10
package/EntryPoint.js
CHANGED
|
@@ -70,7 +70,7 @@ const ApplicationConsoleLineInterface_1 = __importDefault(__webpack_require__(/*
|
|
|
70
70
|
/* --- Scenarios ---------------------------------------------------------------------------------------------------- */
|
|
71
71
|
const ProjectBuilder_1 = __importDefault(__webpack_require__(/*! ./ProjectBuilder */ "./ProjectBuilder.ts"));
|
|
72
72
|
/* --- Applied utils ------------------------------------------------------------------------------------------------ */
|
|
73
|
-
const
|
|
73
|
+
const DotYDA_DirectoryManager_1 = __importDefault(__webpack_require__(/*! @Utils/DotYDA_DirectoryManager */ "./Utils/DotYDA_DirectoryManager.ts"));
|
|
74
74
|
/* --- General utils ------------------------------------------------------------------------------------------------ */
|
|
75
75
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
76
76
|
const es_extensions_nodejs_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions-nodejs */ "@yamato-daiwa/es-extensions-nodejs");
|
|
@@ -79,15 +79,16 @@ const yamljs_1 = __importDefault(__webpack_require__(/*! yamljs */ "yamljs"));
|
|
|
79
79
|
class EntryPoint {
|
|
80
80
|
static {
|
|
81
81
|
es_extensions_1.Logger.setImplementation(es_extensions_nodejs_1.ConsoleApplicationLogger);
|
|
82
|
+
es_extensions_1.PoliteErrorsMessagesBuilder.setDefaultBugTrackerURI("https://github.com/TokugawaTakeshi/Yamato-Daiwa-Automation/issues");
|
|
82
83
|
}
|
|
83
84
|
static interpretAndExecuteConsoleCommand(rawConsoleCommand) {
|
|
85
|
+
/* [ Theory ] The global constant "__IS_DEVELOPMENT_BUILDING_MODE__" is not available in above static block. */
|
|
86
|
+
es_extensions_1.PoliteErrorsMessagesBuilder.setTechnicalDetailsOnlyModeIf(true);
|
|
84
87
|
const parsedConsoleCommand = es_extensions_nodejs_1.ConsoleCommandsParser.parse(rawConsoleCommand, ApplicationConsoleLineInterface_1.default.specification);
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
}
|
|
88
|
+
const consumingProjectRootDirectoryAbsolutePath = process.cwd();
|
|
89
|
+
DotYDA_DirectoryManager_1.default.unrollDotYDA_Directory(consumingProjectRootDirectoryAbsolutePath);
|
|
88
90
|
switch (parsedConsoleCommand.phrase) {
|
|
89
91
|
case ApplicationConsoleLineInterface_1.default.CommandPhrases.buildProject: {
|
|
90
|
-
const consumingProjectRootDirectoryAbsolutePath = process.cwd();
|
|
91
92
|
const rawConfigFileAbsolutePath = path_1.default.resolve(consumingProjectRootDirectoryAbsolutePath, CONFIG_FILE_DEFAULT_NAME_WITH_EXTENSION_1.default);
|
|
92
93
|
let rawConfigFromFile;
|
|
93
94
|
try {
|
|
@@ -145,6 +146,7 @@ const ProjectBuilderRawConfigNormalizer_1 = __importDefault(__webpack_require__(
|
|
|
145
146
|
const ProjectBuildingMasterConfigRepresentative_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding/ProjectBuildingMasterConfigRepresentative */ "./ProjectBuilding/ProjectBuildingMasterConfigRepresentative.ts"));
|
|
146
147
|
/* --- Actuators ---------------------------------------------------------------------------------------------------- */
|
|
147
148
|
const MarkupProcessor_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/MarkupProcessor */ "./ProjectBuilding/SourceCodeProcessing/Markup/MarkupProcessor.ts"));
|
|
149
|
+
const MarkupSourceCodeLinter_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/Subtasks/MarkupSourceCodeLinter/MarkupSourceCodeLinter */ "./ProjectBuilding/SourceCodeProcessing/Markup/Subtasks/MarkupSourceCodeLinter/MarkupSourceCodeLinter.ts"));
|
|
148
150
|
const StylesProcessor_1 = __importDefault(__webpack_require__(/*! @StylesProcessing/StylesProcessor */ "./ProjectBuilding/SourceCodeProcessing/Styles/StylesProcessor.ts"));
|
|
149
151
|
const ECMA_ScriptLogicProcessor_1 = __importDefault(__webpack_require__(/*! @ECMA_ScriptProcessing/ECMA_ScriptLogicProcessor */ "./ProjectBuilding/SourceCodeProcessing/ECMA_Script/ECMA_ScriptLogicProcessor.ts"));
|
|
150
152
|
const ImagesProcessor_1 = __importDefault(__webpack_require__(/*! @ImagesProcessing/ImagesProcessor */ "./ProjectBuilding/AssetsProcessing/Images/ImagesProcessor.ts"));
|
|
@@ -179,6 +181,7 @@ class ProjectBuilder {
|
|
|
179
181
|
const masterConfigRepresentative = new ProjectBuildingMasterConfigRepresentative_1.default(projectBuildingConfig__normalized);
|
|
180
182
|
const GULP_TASK_NAME = "BUILD_PROJECT";
|
|
181
183
|
gulp_1.default.task(GULP_TASK_NAME, gulp_1.default.parallel([
|
|
184
|
+
MarkupSourceCodeLinter_1.default.provideMarkupLintingIfMust(masterConfigRepresentative),
|
|
182
185
|
gulp_1.default.series([
|
|
183
186
|
gulp_1.default.parallel([
|
|
184
187
|
StylesProcessor_1.default.provideStylesProcessingIfMust(masterConfigRepresentative),
|
|
@@ -416,7 +419,7 @@ class AudiosProcessor extends GulpStreamsBasedAssetsProcessor_1.default {
|
|
|
416
419
|
}
|
|
417
420
|
this.audiosProcessingConfigRepresentative.
|
|
418
421
|
sourceFilesAbsolutePathsAndOutputFilesActualPathsMap.
|
|
419
|
-
set(ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(processedAudioFile.sourceAbsolutePath), ImprovedPath_1.default.joinPathSegments(processedAudioFile.outputDirectoryAbsolutePath, processedAudioFile.basename));
|
|
422
|
+
set(ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(processedAudioFile.sourceAbsolutePath), ImprovedPath_1.default.joinPathSegments([processedAudioFile.outputDirectoryAbsolutePath, processedAudioFile.basename], { forwardSlashOnlySeparators: true }));
|
|
420
423
|
return processedAudioFile;
|
|
421
424
|
}
|
|
422
425
|
}
|
|
@@ -626,7 +629,7 @@ class FontsProcessor extends GulpStreamsBasedAssetsProcessor_1.default {
|
|
|
626
629
|
}
|
|
627
630
|
this.fontsProcessorConfigRepresentative.
|
|
628
631
|
sourceFilesAbsolutePathsAndOutputFilesActualPathsMap.
|
|
629
|
-
set(ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(processedFontFile.sourceAbsolutePath), ImprovedPath_1.default.joinPathSegments(processedFontFile.outputDirectoryAbsolutePath, processedFontFile.basename));
|
|
632
|
+
set(ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(processedFontFile.sourceAbsolutePath), ImprovedPath_1.default.joinPathSegments([processedFontFile.outputDirectoryAbsolutePath, processedFontFile.basename], { forwardSlashOnlySeparators: true }));
|
|
630
633
|
return processedFontFile;
|
|
631
634
|
}
|
|
632
635
|
}
|
|
@@ -844,7 +847,7 @@ class ImagesProcessor extends GulpStreamsBasedAssetsProcessor_1.default {
|
|
|
844
847
|
}
|
|
845
848
|
this.imagesProcessorConfigRepresentative.
|
|
846
849
|
sourceFilesAbsolutePathsAndOutputFilesActualPathsMap.
|
|
847
|
-
set(ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(processedImageFile.sourceAbsolutePath), ImprovedPath_1.default.joinPathSegments(processedImageFile.outputDirectoryAbsolutePath, processedImageFile.basename));
|
|
850
|
+
set(ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(processedImageFile.sourceAbsolutePath), ImprovedPath_1.default.joinPathSegments([processedImageFile.outputDirectoryAbsolutePath, processedImageFile.basename], { forwardSlashOnlySeparators: true }));
|
|
848
851
|
return processedImageFile;
|
|
849
852
|
}
|
|
850
853
|
}
|
|
@@ -1053,7 +1056,7 @@ class VideosProcessor extends GulpStreamsBasedAssetsProcessor_1.default {
|
|
|
1053
1056
|
}
|
|
1054
1057
|
this.videosProcessingConfigRepresentative.
|
|
1055
1058
|
sourceFilesAbsolutePathsAndOutputFilesActualPathsMap.
|
|
1056
|
-
set(ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(processedVideoFile.sourceAbsolutePath), ImprovedPath_1.default.joinPathSegments(processedVideoFile.outputDirectoryAbsolutePath, processedVideoFile.basename));
|
|
1059
|
+
set(ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(processedVideoFile.sourceAbsolutePath), ImprovedPath_1.default.joinPathSegments([processedVideoFile.outputDirectoryAbsolutePath, processedVideoFile.basename], { forwardSlashOnlySeparators: true }));
|
|
1057
1060
|
return processedVideoFile;
|
|
1058
1061
|
}
|
|
1059
1062
|
}
|
|
@@ -1076,6 +1079,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
1076
1079
|
/* --- Applied utils ------------------------------------------------------------------------------------------------ */
|
|
1077
1080
|
const gulp_1 = __importDefault(__webpack_require__(/*! gulp */ "gulp"));
|
|
1078
1081
|
const browser_sync_1 = __importDefault(__webpack_require__(/*! browser-sync */ "browser-sync"));
|
|
1082
|
+
/* --- Third-party solutions specialises ---------------------------------------------------------------------------- */
|
|
1079
1083
|
const ChokidarSpecialist_1 = __importDefault(__webpack_require__(/*! @ThirdPartySolutionsSpecialists/ChokidarSpecialist */ "./ThirdPartySolutionsSpecialists/ChokidarSpecialist.ts"));
|
|
1080
1084
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
1081
1085
|
class BrowserLiveReloader {
|
|
@@ -1083,44 +1087,9 @@ class BrowserLiveReloader {
|
|
|
1083
1087
|
browserLiveReloadingSettingsRepresentative;
|
|
1084
1088
|
static provideBrowserLiveReloading(masterConfigRepresentative) {
|
|
1085
1089
|
const dataHoldingSelfInstance = new BrowserLiveReloader(masterConfigRepresentative);
|
|
1086
|
-
const browserLiveReloadingConfigRepresentative = dataHoldingSelfInstance.
|
|
1087
|
-
browserLiveReloadingSettingsRepresentative;
|
|
1088
1090
|
return () => {
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
server: {
|
|
1092
|
-
baseDir: browserLiveReloadingConfigRepresentative.targetFilesRootDirectoryAbsolutePath,
|
|
1093
|
-
index: browserLiveReloadingConfigRepresentative.startingFilenameWithExtension
|
|
1094
|
-
},
|
|
1095
|
-
browser: "chrome",
|
|
1096
|
-
...(0, es_extensions_1.isNotNull)(browserLiveReloadingConfigRepresentative.customMainPort) ? {
|
|
1097
|
-
port: browserLiveReloadingConfigRepresentative.customMainPort
|
|
1098
|
-
} : {},
|
|
1099
|
-
...(0, es_extensions_1.isNotNull)(browserLiveReloadingConfigRepresentative.customUserInterfacePort) ? {
|
|
1100
|
-
ui: {
|
|
1101
|
-
port: browserLiveReloadingConfigRepresentative.customUserInterfacePort
|
|
1102
|
-
}
|
|
1103
|
-
} : {}
|
|
1104
|
-
});
|
|
1105
|
-
let waitingForOtherFilesWillBeUpdatedCountdown;
|
|
1106
|
-
gulp_1.default.watch(dataHoldingSelfInstance.masterConfigRepresentative.allOutputFilesGlobSelectors).
|
|
1107
|
-
on("all", (eventName, fileOrDirectoryPath) => {
|
|
1108
|
-
clearTimeout(waitingForOtherFilesWillBeUpdatedCountdown);
|
|
1109
|
-
es_extensions_1.Logger.logInfo({
|
|
1110
|
-
title: "Output files watcher",
|
|
1111
|
-
description: ` Event : ${ChokidarSpecialist_1.default.getEventNameInterpretation(eventName)}` +
|
|
1112
|
-
`\n Path : ${fileOrDirectoryPath}\n` +
|
|
1113
|
-
"Waiting for status changing of other output files..."
|
|
1114
|
-
});
|
|
1115
|
-
waitingForOtherFilesWillBeUpdatedCountdown = setTimeout(() => {
|
|
1116
|
-
es_extensions_1.Logger.logInfo({
|
|
1117
|
-
title: "Browser live reloader",
|
|
1118
|
-
description: "Reloading the browser ..."
|
|
1119
|
-
});
|
|
1120
|
-
browser_sync_1.default.reload();
|
|
1121
|
-
}, (0, es_extensions_1.secondsToMilliseconds)(dataHoldingSelfInstance.browserLiveReloadingSettingsRepresentative.
|
|
1122
|
-
waitingDurationForSubsequentFilesWillBeUpdatedBeforeBrowserReloading__seconds));
|
|
1123
|
-
});
|
|
1091
|
+
dataHoldingSelfInstance.initializeBrowsersync();
|
|
1092
|
+
dataHoldingSelfInstance.initializeOutputFilesWatcher();
|
|
1124
1093
|
};
|
|
1125
1094
|
}
|
|
1126
1095
|
constructor(masterConfigRepresentative) {
|
|
@@ -1135,81 +1104,57 @@ class BrowserLiveReloader {
|
|
|
1135
1104
|
this.masterConfigRepresentative = masterConfigRepresentative;
|
|
1136
1105
|
this.browserLiveReloadingSettingsRepresentative = browserLiveReloadingConfigRepresentative;
|
|
1137
1106
|
}
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
/*!****************************************************************************************!*\
|
|
1146
|
-
!*** ./ProjectBuilding/BrowserLiveReloading/BrowserLiveReloadingSettingsNormalizer.ts ***!
|
|
1147
|
-
\****************************************************************************************/
|
|
1148
|
-
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
1152
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
1153
|
-
};
|
|
1154
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1155
|
-
/* --- Business rules ----------------------------------------------------------------------------------------------- */
|
|
1156
|
-
const BrowserLiveReloadingSettings__Default_1 = __importDefault(__webpack_require__(/*! @BrowserLiveReloading/BrowserLiveReloadingSettings__Default */ "./ProjectBuilding/BrowserLiveReloading/BrowserLiveReloadingSettings__Default.ts"));
|
|
1157
|
-
/* --- General utils ------------------------------------------------------------------------------------------------ */
|
|
1158
|
-
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
1159
|
-
const ImprovedPath_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/ImprovedPath/ImprovedPath */ "./UtilsIncubator/ImprovedPath/ImprovedPath.ts"));
|
|
1160
|
-
class BrowserLiveReloadingSettingsNormalizer {
|
|
1161
|
-
static getNormalizedSettings({ browserLiveReloadingSettings__fromFile__rawValid, projectBuilderCommonSettings__normalized, hasSelectiveExecutionBeenDeclared, selectedBrowserLiveReloadingSetupID }) {
|
|
1162
|
-
let targetBrowserLiveReloadingProfile__rawValid;
|
|
1163
|
-
if ((0, es_extensions_1.isNotUndefined)(selectedBrowserLiveReloadingSetupID)) {
|
|
1164
|
-
targetBrowserLiveReloadingProfile__rawValid =
|
|
1165
|
-
browserLiveReloadingSettings__fromFile__rawValid[selectedBrowserLiveReloadingSetupID];
|
|
1166
|
-
if ((0, es_extensions_1.isUndefined)(targetBrowserLiveReloadingProfile__rawValid)) {
|
|
1167
|
-
es_extensions_1.Logger.throwErrorAndLog({
|
|
1168
|
-
errorInstance: new es_extensions_1.InvalidParameterValueError({
|
|
1169
|
-
parameterName: "parametersObject",
|
|
1170
|
-
messageSpecificPart: `プロパティ:'selectedBrowserLiveReloadingSetupID'の値:'${selectedBrowserLiveReloadingSetupID}'に該当する` +
|
|
1171
|
-
"ブラウザ自動リロードの設定は定義されていない。"
|
|
1172
|
-
}),
|
|
1173
|
-
occurrenceLocation: "BrowserLiveReloadingSettingsNormalizer.normalize(namedParameters)",
|
|
1174
|
-
title: es_extensions_1.InvalidParameterValueError.localization.defaultTitle
|
|
1175
|
-
});
|
|
1176
|
-
}
|
|
1177
|
-
}
|
|
1178
|
-
else if (!hasSelectiveExecutionBeenDeclared &&
|
|
1179
|
-
Object.values(browserLiveReloadingSettings__fromFile__rawValid).length === 1) {
|
|
1180
|
-
targetBrowserLiveReloadingProfile__rawValid = Object.values(browserLiveReloadingSettings__fromFile__rawValid)[0];
|
|
1181
|
-
}
|
|
1182
|
-
else {
|
|
1183
|
-
return;
|
|
1184
|
-
}
|
|
1185
|
-
return {
|
|
1186
|
-
targetFilesRootDirectoryAbsolutePath: ImprovedPath_1.default.buildAbsolutePath([
|
|
1187
|
-
projectBuilderCommonSettings__normalized.projectRootDirectoryAbsolutePath,
|
|
1188
|
-
targetBrowserLiveReloadingProfile__rawValid.targetFilesRootDirectoryRelativePath
|
|
1189
|
-
], { forwardSlashOnlySeparators: true }),
|
|
1190
|
-
startingFilenameWithExtension: targetBrowserLiveReloadingProfile__rawValid.customStartingFilenameWithExtension ??
|
|
1191
|
-
BrowserLiveReloadingSettings__Default_1.default.startingFilenameWithExtension,
|
|
1192
|
-
waitingForTheOtherFilesWillUpdateDuration__seconds: targetBrowserLiveReloadingProfile__rawValid.waitingForTheOtherFilesWillUpdateDuration__seconds ??
|
|
1193
|
-
BrowserLiveReloadingSettings__Default_1.default.waitingDurationForSubsequentFilesWillBeUpdatedBeforeBrowserReloading__seconds,
|
|
1194
|
-
...(0, es_extensions_1.isNotUndefined)(targetBrowserLiveReloadingProfile__rawValid.virtualHost) ? {
|
|
1195
|
-
virtualHost: targetBrowserLiveReloadingProfile__rawValid.virtualHost
|
|
1196
|
-
} : {},
|
|
1197
|
-
...(0, es_extensions_1.isNotUndefined)(targetBrowserLiveReloadingProfile__rawValid.ports) ? {
|
|
1198
|
-
ports: {
|
|
1199
|
-
...(0, es_extensions_1.isNumber)(targetBrowserLiveReloadingProfile__rawValid.ports.main) ? {
|
|
1200
|
-
main: targetBrowserLiveReloadingProfile__rawValid.ports.main
|
|
1201
|
-
} : {},
|
|
1202
|
-
...(0, es_extensions_1.isNumber)(targetBrowserLiveReloadingProfile__rawValid.ports.userInterface) ? {
|
|
1203
|
-
userInterface: targetBrowserLiveReloadingProfile__rawValid.ports.userInterface
|
|
1204
|
-
} : {}
|
|
1107
|
+
initializeBrowsersync() {
|
|
1108
|
+
browser_sync_1.default.init({
|
|
1109
|
+
/* [ Browsersync theory ] Either "server" or "proxy" could be specified but not both. */
|
|
1110
|
+
...(0, es_extensions_1.isNull)(this.browserLiveReloadingSettingsRepresentative.proxy) ? {
|
|
1111
|
+
server: {
|
|
1112
|
+
baseDir: this.browserLiveReloadingSettingsRepresentative.targetFilesRootDirectoryAbsolutePath,
|
|
1113
|
+
index: this.browserLiveReloadingSettingsRepresentative.startingFileNameWithExtension
|
|
1205
1114
|
}
|
|
1206
|
-
} : {
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1115
|
+
} : {
|
|
1116
|
+
proxy: this.browserLiveReloadingSettingsRepresentative.proxy
|
|
1117
|
+
},
|
|
1118
|
+
/* [ Browsersync theory ] When port is undefined, it will be assigned automatically. */
|
|
1119
|
+
...(0, es_extensions_1.isNotNull)(this.browserLiveReloadingSettingsRepresentative.localServerCustomPort) ? {
|
|
1120
|
+
port: this.browserLiveReloadingSettingsRepresentative.localServerCustomPort
|
|
1121
|
+
} : null,
|
|
1122
|
+
watch: true,
|
|
1123
|
+
ignore: this.browserLiveReloadingSettingsRepresentative.globSelectorsOfFilesAndDirectoriesWhichWillBeIgnored,
|
|
1124
|
+
/* [ Browsersync theory ] When value is empty array, no browsers will be opened. */
|
|
1125
|
+
...this.browserLiveReloadingSettingsRepresentative.targetBrowsers.length > 0 ? {
|
|
1126
|
+
browser: this.browserLiveReloadingSettingsRepresentative.targetBrowsers
|
|
1127
|
+
} : null,
|
|
1128
|
+
ui: this.browserLiveReloadingSettingsRepresentative.mustEnableBrowsersyncUserInterface ? {
|
|
1129
|
+
/* [ Browsersync theory ] When port is undefined, it will be assigned automatically. */
|
|
1130
|
+
...(0, es_extensions_1.isNotNull)(this.browserLiveReloadingSettingsRepresentative.browsersyncUserInterfaceCustomPort) ? {
|
|
1131
|
+
port: this.browserLiveReloadingSettingsRepresentative.browsersyncUserInterfaceCustomPort
|
|
1132
|
+
} : null
|
|
1133
|
+
} : false
|
|
1134
|
+
});
|
|
1135
|
+
}
|
|
1136
|
+
initializeOutputFilesWatcher() {
|
|
1137
|
+
let waitingForSubsequentFilesWillBeUpdatedCountdown;
|
|
1138
|
+
gulp_1.default.watch(this.masterConfigRepresentative.allOutputFilesGlobSelectors).
|
|
1139
|
+
on("all", (eventName, fileOrDirectoryPath) => {
|
|
1140
|
+
clearTimeout(waitingForSubsequentFilesWillBeUpdatedCountdown);
|
|
1141
|
+
es_extensions_1.Logger.logInfo({
|
|
1142
|
+
title: "Browser live reloader",
|
|
1143
|
+
description: ` Event : ${ChokidarSpecialist_1.default.getEventNameInterpretation(eventName)}` +
|
|
1144
|
+
`\n Path : ${fileOrDirectoryPath}\n` +
|
|
1145
|
+
"Waiting for the changing of the status of other output files before reload the browser..."
|
|
1146
|
+
});
|
|
1147
|
+
waitingForSubsequentFilesWillBeUpdatedCountdown = setTimeout(() => {
|
|
1148
|
+
es_extensions_1.Logger.logInfo({
|
|
1149
|
+
title: "Browser live reloader",
|
|
1150
|
+
description: "Reloading the browser ..."
|
|
1151
|
+
});
|
|
1152
|
+
browser_sync_1.default.reload();
|
|
1153
|
+
}, (0, es_extensions_1.secondsToMilliseconds)(this.browserLiveReloadingSettingsRepresentative.periodBetweenFileUpdatingAndBrowserReloading__seconds));
|
|
1154
|
+
});
|
|
1210
1155
|
}
|
|
1211
1156
|
}
|
|
1212
|
-
exports["default"] =
|
|
1157
|
+
exports["default"] = BrowserLiveReloader;
|
|
1213
1158
|
|
|
1214
1159
|
|
|
1215
1160
|
/***/ }),
|
|
@@ -1218,29 +1163,47 @@ exports["default"] = BrowserLiveReloadingSettingsNormalizer;
|
|
|
1218
1163
|
/*!********************************************************************************************!*\
|
|
1219
1164
|
!*** ./ProjectBuilding/BrowserLiveReloading/BrowserLiveReloadingSettingsRepresentative.ts ***!
|
|
1220
1165
|
\********************************************************************************************/
|
|
1221
|
-
/***/ ((__unused_webpack_module, exports) => {
|
|
1166
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
1222
1167
|
|
|
1223
1168
|
|
|
1224
1169
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1170
|
+
/* --- General utils ------------------------------------------------------------------------------------------------ */
|
|
1171
|
+
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
1225
1172
|
class BrowserLiveReloadingSettingsRepresentative {
|
|
1226
1173
|
browserLiveReloadingSettings;
|
|
1227
1174
|
constructor(browserLiveReloadingSettings) {
|
|
1228
1175
|
this.browserLiveReloadingSettings = browserLiveReloadingSettings;
|
|
1229
1176
|
}
|
|
1230
|
-
get startingFilenameWithExtension() {
|
|
1231
|
-
return this.browserLiveReloadingSettings.startingFilenameWithExtension;
|
|
1232
|
-
}
|
|
1233
1177
|
get targetFilesRootDirectoryAbsolutePath() {
|
|
1234
|
-
return this.browserLiveReloadingSettings.
|
|
1178
|
+
return this.browserLiveReloadingSettings.localServer.rootDirectoryAbsolutePath;
|
|
1179
|
+
}
|
|
1180
|
+
get startingFileNameWithExtension() {
|
|
1181
|
+
return this.browserLiveReloadingSettings.localServer.startingFileNameWithExtension;
|
|
1182
|
+
}
|
|
1183
|
+
get localServerCustomPort() {
|
|
1184
|
+
return this.browserLiveReloadingSettings.localServer.port ?? null;
|
|
1185
|
+
}
|
|
1186
|
+
get globSelectorsOfFilesAndDirectoriesWhichWillBeIgnored() {
|
|
1187
|
+
return [...this.browserLiveReloadingSettings.localServer.ignoredFilesAndDirectoriesRelativePaths];
|
|
1235
1188
|
}
|
|
1236
|
-
get
|
|
1237
|
-
return this.browserLiveReloadingSettings.
|
|
1189
|
+
get mustUseHTTPS() {
|
|
1190
|
+
return this.browserLiveReloadingSettings.localServer.mustUseHTTPS;
|
|
1238
1191
|
}
|
|
1239
|
-
get
|
|
1240
|
-
return this.browserLiveReloadingSettings.
|
|
1192
|
+
get targetBrowsers() {
|
|
1193
|
+
return (0, es_extensions_1.isNotUndefined)(this.browserLiveReloadingSettings.targetBrowsers) ?
|
|
1194
|
+
[...this.browserLiveReloadingSettings.targetBrowsers] : [];
|
|
1241
1195
|
}
|
|
1242
|
-
get
|
|
1243
|
-
return this.browserLiveReloadingSettings.
|
|
1196
|
+
get proxy() {
|
|
1197
|
+
return this.browserLiveReloadingSettings.proxy ?? null;
|
|
1198
|
+
}
|
|
1199
|
+
get periodBetweenFileUpdatingAndBrowserReloading__seconds() {
|
|
1200
|
+
return this.browserLiveReloadingSettings.periodBetweenFileUpdatingAndBrowserReloading__seconds;
|
|
1201
|
+
}
|
|
1202
|
+
get mustEnableBrowsersyncUserInterface() {
|
|
1203
|
+
return this.browserLiveReloadingSettings.browserSyncUserInterface.enabled;
|
|
1204
|
+
}
|
|
1205
|
+
get browsersyncUserInterfaceCustomPort() {
|
|
1206
|
+
return this.browserLiveReloadingSettings.browserSyncUserInterface.customPort ?? null;
|
|
1244
1207
|
}
|
|
1245
1208
|
}
|
|
1246
1209
|
exports["default"] = BrowserLiveReloadingSettingsRepresentative;
|
|
@@ -1256,11 +1219,17 @@ exports["default"] = BrowserLiveReloadingSettingsRepresentative;
|
|
|
1256
1219
|
|
|
1257
1220
|
|
|
1258
1221
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1222
|
+
const BrowserLiveReloadingSettings__Default = {
|
|
1223
|
+
localServer: {
|
|
1224
|
+
startingFileNameWithExtension: "index.html",
|
|
1225
|
+
HTTPS_Usage: false
|
|
1226
|
+
},
|
|
1227
|
+
browserSyncUserInterface: {
|
|
1228
|
+
enabled: true
|
|
1229
|
+
},
|
|
1230
|
+
periodBetweenFileUpdatingAndBrowserReloading__seconds: 0.5
|
|
1263
1231
|
};
|
|
1232
|
+
exports["default"] = BrowserLiveReloadingSettings__Default;
|
|
1264
1233
|
|
|
1265
1234
|
|
|
1266
1235
|
/***/ }),
|
|
@@ -1273,6 +1242,7 @@ exports["default"] = {
|
|
|
1273
1242
|
|
|
1274
1243
|
|
|
1275
1244
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1245
|
+
/* --- General utils ------------------------------------------------------------------------------------------------ */
|
|
1276
1246
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
1277
1247
|
/* eslint-disable-next-line @typescript-eslint/no-redeclare --
|
|
1278
1248
|
* The merging of type/interface and namespace is completely valid TypeScript,
|
|
@@ -1282,64 +1252,97 @@ var BrowserLiveReloadingSettings__FromFile__RawValid;
|
|
|
1282
1252
|
(function (BrowserLiveReloadingSettings__FromFile__RawValid) {
|
|
1283
1253
|
function getLocalizedPropertiesSpecification(browserLiveReloadingSettingsLocalization) {
|
|
1284
1254
|
return {
|
|
1285
|
-
[browserLiveReloadingSettingsLocalization.
|
|
1286
|
-
newName: "
|
|
1287
|
-
type:
|
|
1255
|
+
[browserLiveReloadingSettingsLocalization.localServer.KEY]: {
|
|
1256
|
+
newName: "localServer",
|
|
1257
|
+
type: Object,
|
|
1288
1258
|
required: true,
|
|
1289
|
-
|
|
1259
|
+
properties: {
|
|
1260
|
+
[browserLiveReloadingSettingsLocalization.localServer.rootDirectoryRelativePath.KEY]: {
|
|
1261
|
+
newName: "rootDirectoryRelativePath",
|
|
1262
|
+
type: String,
|
|
1263
|
+
required: true,
|
|
1264
|
+
minimalCharactersCount: 1
|
|
1265
|
+
},
|
|
1266
|
+
[browserLiveReloadingSettingsLocalization.localServer.ignoredFilesAndDirectoriesRelativePaths.KEY]: {
|
|
1267
|
+
newName: "ignoredFilesAndDirectoriesRelativePaths",
|
|
1268
|
+
type: Array,
|
|
1269
|
+
required: false,
|
|
1270
|
+
preValidationModifications: es_extensions_1.nullToUndefined,
|
|
1271
|
+
element: {
|
|
1272
|
+
type: String,
|
|
1273
|
+
minimalCharactersCount: 1
|
|
1274
|
+
}
|
|
1275
|
+
},
|
|
1276
|
+
[browserLiveReloadingSettingsLocalization.localServer.customPort.KEY]: {
|
|
1277
|
+
newName: "customPort",
|
|
1278
|
+
type: Number,
|
|
1279
|
+
numbersSet: es_extensions_1.RawObjectDataProcessor.NumbersSets.nonNegativeInteger,
|
|
1280
|
+
required: false,
|
|
1281
|
+
maximalValue: 65536
|
|
1282
|
+
},
|
|
1283
|
+
[browserLiveReloadingSettingsLocalization.localServer.customStartingFileNameWithExtension.KEY]: {
|
|
1284
|
+
newName: "customStartingFileNameWithExtension",
|
|
1285
|
+
type: String,
|
|
1286
|
+
required: false,
|
|
1287
|
+
minimalCharactersCount: 1
|
|
1288
|
+
},
|
|
1289
|
+
[browserLiveReloadingSettingsLocalization.localServer.useHTTPS.KEY]: {
|
|
1290
|
+
newName: "useHTTPS",
|
|
1291
|
+
type: Boolean,
|
|
1292
|
+
required: false
|
|
1293
|
+
}
|
|
1294
|
+
}
|
|
1290
1295
|
},
|
|
1291
|
-
[browserLiveReloadingSettingsLocalization.
|
|
1292
|
-
newName: "
|
|
1296
|
+
[browserLiveReloadingSettingsLocalization.proxy.KEY]: {
|
|
1297
|
+
newName: "proxy",
|
|
1293
1298
|
type: String,
|
|
1294
1299
|
required: false,
|
|
1295
1300
|
minimalCharactersCount: 1
|
|
1296
1301
|
},
|
|
1297
|
-
[browserLiveReloadingSettingsLocalization.
|
|
1298
|
-
newName: "
|
|
1299
|
-
type:
|
|
1300
|
-
required: false,
|
|
1301
|
-
numbersSet: es_extensions_1.RawObjectDataProcessor.NumbersSets.anyRealNumber
|
|
1302
|
-
},
|
|
1303
|
-
[browserLiveReloadingSettingsLocalization.useHTTPS.KEY]: {
|
|
1304
|
-
newName: "useHTTPS",
|
|
1305
|
-
type: Boolean,
|
|
1306
|
-
required: false
|
|
1307
|
-
},
|
|
1308
|
-
[browserLiveReloadingSettingsLocalization.virtualHost.KEY]: {
|
|
1309
|
-
newName: "virtualHost",
|
|
1310
|
-
type: String,
|
|
1302
|
+
[browserLiveReloadingSettingsLocalization.openInBrowsers.KEY]: {
|
|
1303
|
+
newName: "openInBrowsers",
|
|
1304
|
+
type: es_extensions_1.RawObjectDataProcessor.ValuesTypesIDs.oneOf,
|
|
1311
1305
|
required: false,
|
|
1312
|
-
|
|
1306
|
+
alternatives: [
|
|
1307
|
+
{
|
|
1308
|
+
type: Array,
|
|
1309
|
+
minimalElementsCount: 1,
|
|
1310
|
+
element: {
|
|
1311
|
+
type: String,
|
|
1312
|
+
minimalCharactersCount: 1
|
|
1313
|
+
}
|
|
1314
|
+
},
|
|
1315
|
+
{
|
|
1316
|
+
type: String,
|
|
1317
|
+
minimalCharactersCount: 1
|
|
1318
|
+
}
|
|
1319
|
+
]
|
|
1313
1320
|
},
|
|
1314
|
-
[browserLiveReloadingSettingsLocalization.
|
|
1315
|
-
newName: "
|
|
1321
|
+
[browserLiveReloadingSettingsLocalization.browserSyncUserInterface.KEY]: {
|
|
1322
|
+
newName: "browserSyncUserInterface",
|
|
1316
1323
|
type: Object,
|
|
1317
|
-
preValidationModifications: es_extensions_1.nullToUndefined,
|
|
1318
1324
|
required: false,
|
|
1325
|
+
preValidationModifications: es_extensions_1.nullToUndefined,
|
|
1319
1326
|
properties: {
|
|
1320
|
-
[browserLiveReloadingSettingsLocalization.
|
|
1321
|
-
newName: "
|
|
1327
|
+
[browserLiveReloadingSettingsLocalization.browserSyncUserInterface.customPort.KEY]: {
|
|
1328
|
+
newName: "customPort",
|
|
1322
1329
|
type: Number,
|
|
1330
|
+
numbersSet: es_extensions_1.RawObjectDataProcessor.NumbersSets.nonNegativeInteger,
|
|
1323
1331
|
required: false,
|
|
1324
|
-
|
|
1332
|
+
maximalValue: 65536
|
|
1325
1333
|
},
|
|
1326
|
-
[browserLiveReloadingSettingsLocalization.
|
|
1327
|
-
newName: "
|
|
1328
|
-
type:
|
|
1329
|
-
required: false
|
|
1330
|
-
numbersSet: es_extensions_1.RawObjectDataProcessor.NumbersSets.nonNegativeInteger
|
|
1334
|
+
[browserLiveReloadingSettingsLocalization.browserSyncUserInterface.disable.KEY]: {
|
|
1335
|
+
newName: "disable",
|
|
1336
|
+
type: Boolean,
|
|
1337
|
+
required: false
|
|
1331
1338
|
}
|
|
1332
1339
|
}
|
|
1333
1340
|
},
|
|
1334
|
-
[browserLiveReloadingSettingsLocalization.
|
|
1335
|
-
newName: "
|
|
1336
|
-
type:
|
|
1337
|
-
preValidationModifications: es_extensions_1.nullToUndefined,
|
|
1341
|
+
[browserLiveReloadingSettingsLocalization.periodBetweenFileUpdatingAndBrowserReloading__seconds.KEY]: {
|
|
1342
|
+
newName: "periodBetweenFileUpdatingAndBrowserReloading__seconds",
|
|
1343
|
+
type: Number,
|
|
1338
1344
|
required: false,
|
|
1339
|
-
|
|
1340
|
-
type: String,
|
|
1341
|
-
minimalCharactersCount: 1
|
|
1342
|
-
}
|
|
1345
|
+
numbersSet: es_extensions_1.RawObjectDataProcessor.NumbersSets.anyRealNumber
|
|
1343
1346
|
}
|
|
1344
1347
|
};
|
|
1345
1348
|
}
|
|
@@ -1348,6 +1351,141 @@ var BrowserLiveReloadingSettings__FromFile__RawValid;
|
|
|
1348
1351
|
exports["default"] = BrowserLiveReloadingSettings__FromFile__RawValid;
|
|
1349
1352
|
|
|
1350
1353
|
|
|
1354
|
+
/***/ }),
|
|
1355
|
+
|
|
1356
|
+
/***/ "./ProjectBuilding/BrowserLiveReloading/RawSettingsNormalizer/BrowserLiveReloadingSettingsNormalizer.ts":
|
|
1357
|
+
/*!**************************************************************************************************************!*\
|
|
1358
|
+
!*** ./ProjectBuilding/BrowserLiveReloading/RawSettingsNormalizer/BrowserLiveReloadingSettingsNormalizer.ts ***!
|
|
1359
|
+
\**************************************************************************************************************/
|
|
1360
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
1361
|
+
|
|
1362
|
+
|
|
1363
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
1364
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
1365
|
+
};
|
|
1366
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1367
|
+
/* --- Default configuration ---------------------------------------------------------------------------------------- */
|
|
1368
|
+
const BrowserLiveReloadingSettings__Default_1 = __importDefault(__webpack_require__(/*! @BrowserLiveReloading/BrowserLiveReloadingSettings__Default */ "./ProjectBuilding/BrowserLiveReloading/BrowserLiveReloadingSettings__Default.ts"));
|
|
1369
|
+
/* --- General utils ------------------------------------------------------------------------------------------------ */
|
|
1370
|
+
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
1371
|
+
const ImprovedPath_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/ImprovedPath/ImprovedPath */ "./UtilsIncubator/ImprovedPath/ImprovedPath.ts"));
|
|
1372
|
+
/* --- Localization ------------------------------------------------------------------------------------------------- */
|
|
1373
|
+
const BrowserLiveReloadingSettingsNormalizerLocalization_english_1 = __importDefault(__webpack_require__(/*! @BrowserLiveReloading/RawSettingsNormalizer/BrowserLiveReloadingSettingsNormalizerLocalization.english */ "./ProjectBuilding/BrowserLiveReloading/RawSettingsNormalizer/BrowserLiveReloadingSettingsNormalizerLocalization.english.ts"));
|
|
1374
|
+
class BrowserLiveReloadingSettingsNormalizer {
|
|
1375
|
+
static localization = BrowserLiveReloadingSettingsNormalizerLocalization_english_1.default;
|
|
1376
|
+
static normalize({ browserLiveReloadingSettings__fromFile__rawValid, projectBuilderCommonSettings__normalized, hasSelectiveExecutionBeenDeclared, selectedBrowserLiveReloadingSetupID }) {
|
|
1377
|
+
let actualBrowserLiveReloadingSetup__rawValid;
|
|
1378
|
+
if ((0, es_extensions_1.isNotUndefined)(selectedBrowserLiveReloadingSetupID)) {
|
|
1379
|
+
actualBrowserLiveReloadingSetup__rawValid =
|
|
1380
|
+
browserLiveReloadingSettings__fromFile__rawValid[selectedBrowserLiveReloadingSetupID];
|
|
1381
|
+
if ((0, es_extensions_1.isUndefined)(actualBrowserLiveReloadingSetup__rawValid)) {
|
|
1382
|
+
es_extensions_1.Logger.throwErrorAndLog({
|
|
1383
|
+
errorInstance: new es_extensions_1.InvalidParameterValueError({
|
|
1384
|
+
customMessage: BrowserLiveReloadingSettingsNormalizer.localization.
|
|
1385
|
+
generateUndefinedBrowserLiveReloadingSetupID_Message({
|
|
1386
|
+
selectedBrowserLiveReloadingSetupID,
|
|
1387
|
+
stringifiedAvailableBrowserLiveReloadingSetupsIDs: (0, es_extensions_1.stringifyAndFormatArbitraryValue)(Object.keys(browserLiveReloadingSettings__fromFile__rawValid))
|
|
1388
|
+
})
|
|
1389
|
+
}),
|
|
1390
|
+
occurrenceLocation: "BrowserLiveReloadingSettingsNormalizer.normalize(namedParameters)",
|
|
1391
|
+
title: es_extensions_1.InvalidParameterValueError.localization.defaultTitle
|
|
1392
|
+
});
|
|
1393
|
+
}
|
|
1394
|
+
}
|
|
1395
|
+
else if (!hasSelectiveExecutionBeenDeclared &&
|
|
1396
|
+
Object.values(browserLiveReloadingSettings__fromFile__rawValid).length === 1) {
|
|
1397
|
+
actualBrowserLiveReloadingSetup__rawValid = Object.values(browserLiveReloadingSettings__fromFile__rawValid)[0];
|
|
1398
|
+
}
|
|
1399
|
+
else {
|
|
1400
|
+
return;
|
|
1401
|
+
}
|
|
1402
|
+
return {
|
|
1403
|
+
localServer: {
|
|
1404
|
+
rootDirectoryAbsolutePath: ImprovedPath_1.default.joinPathSegments([
|
|
1405
|
+
projectBuilderCommonSettings__normalized.projectRootDirectoryAbsolutePath,
|
|
1406
|
+
actualBrowserLiveReloadingSetup__rawValid.localServer.rootDirectoryRelativePath
|
|
1407
|
+
], { forwardSlashOnlySeparators: true }),
|
|
1408
|
+
ignoredFilesAndDirectoriesRelativePaths: (() => {
|
|
1409
|
+
const ignoredFilesAndDirectoriesRelativePaths = actualBrowserLiveReloadingSetup__rawValid.localServer.ignoredFilesAndDirectoriesRelativePaths;
|
|
1410
|
+
if (Array.isArray(ignoredFilesAndDirectoriesRelativePaths)) {
|
|
1411
|
+
return ignoredFilesAndDirectoriesRelativePaths;
|
|
1412
|
+
}
|
|
1413
|
+
else if ((0, es_extensions_1.isString)(ignoredFilesAndDirectoriesRelativePaths)) {
|
|
1414
|
+
return [ignoredFilesAndDirectoriesRelativePaths];
|
|
1415
|
+
}
|
|
1416
|
+
return [];
|
|
1417
|
+
})(),
|
|
1418
|
+
...(0, es_extensions_1.isNotUndefined)(actualBrowserLiveReloadingSetup__rawValid.localServer.customPort) ? {
|
|
1419
|
+
port: actualBrowserLiveReloadingSetup__rawValid.localServer.customPort
|
|
1420
|
+
} : null,
|
|
1421
|
+
startingFileNameWithExtension: actualBrowserLiveReloadingSetup__rawValid.localServer.customStartingFileNameWithExtension ??
|
|
1422
|
+
BrowserLiveReloadingSettings__Default_1.default.localServer.startingFileNameWithExtension,
|
|
1423
|
+
mustUseHTTPS: actualBrowserLiveReloadingSetup__rawValid.localServer.useHTTPS === true ?
|
|
1424
|
+
true : BrowserLiveReloadingSettings__Default_1.default.localServer.HTTPS_Usage
|
|
1425
|
+
},
|
|
1426
|
+
...(0, es_extensions_1.isNotUndefined)(actualBrowserLiveReloadingSetup__rawValid.proxy) ? {
|
|
1427
|
+
proxy: actualBrowserLiveReloadingSetup__rawValid.proxy
|
|
1428
|
+
} : {},
|
|
1429
|
+
...(() => {
|
|
1430
|
+
if ((0, es_extensions_1.isUndefined)(actualBrowserLiveReloadingSetup__rawValid.openInBrowsers)) {
|
|
1431
|
+
return {};
|
|
1432
|
+
}
|
|
1433
|
+
return {
|
|
1434
|
+
targetBrowsers: Array.isArray(actualBrowserLiveReloadingSetup__rawValid.openInBrowsers) ?
|
|
1435
|
+
actualBrowserLiveReloadingSetup__rawValid.openInBrowsers :
|
|
1436
|
+
[actualBrowserLiveReloadingSetup__rawValid.openInBrowsers]
|
|
1437
|
+
};
|
|
1438
|
+
})(),
|
|
1439
|
+
browserSyncUserInterface: {
|
|
1440
|
+
enabled: BrowserLiveReloadingSettings__Default_1.default.browserSyncUserInterface.enabled,
|
|
1441
|
+
...(() => {
|
|
1442
|
+
if ((0, es_extensions_1.isUndefined)(actualBrowserLiveReloadingSetup__rawValid.browserSyncUserInterface) ||
|
|
1443
|
+
(0, es_extensions_1.isUndefined)(actualBrowserLiveReloadingSetup__rawValid.browserSyncUserInterface.customPort)) {
|
|
1444
|
+
return {};
|
|
1445
|
+
}
|
|
1446
|
+
return {
|
|
1447
|
+
port: actualBrowserLiveReloadingSetup__rawValid.browserSyncUserInterface.customPort
|
|
1448
|
+
};
|
|
1449
|
+
})()
|
|
1450
|
+
},
|
|
1451
|
+
...(() => {
|
|
1452
|
+
if (!(0, es_extensions_1.isNonEmptyArbitraryObject)(actualBrowserLiveReloadingSetup__rawValid.browserSyncUserInterface)) {
|
|
1453
|
+
return {};
|
|
1454
|
+
}
|
|
1455
|
+
return {
|
|
1456
|
+
browserSyncUserInterface: {
|
|
1457
|
+
...(0, es_extensions_1.isNotUndefined)(actualBrowserLiveReloadingSetup__rawValid.browserSyncUserInterface.customPort) ?
|
|
1458
|
+
{ port: actualBrowserLiveReloadingSetup__rawValid.browserSyncUserInterface.customPort } : null,
|
|
1459
|
+
enabled: BrowserLiveReloadingSettings__Default_1.default.browserSyncUserInterface.enabled
|
|
1460
|
+
}
|
|
1461
|
+
};
|
|
1462
|
+
})(),
|
|
1463
|
+
periodBetweenFileUpdatingAndBrowserReloading__seconds: actualBrowserLiveReloadingSetup__rawValid.periodBetweenFileUpdatingAndBrowserReloading__seconds ??
|
|
1464
|
+
BrowserLiveReloadingSettings__Default_1.default.periodBetweenFileUpdatingAndBrowserReloading__seconds
|
|
1465
|
+
};
|
|
1466
|
+
}
|
|
1467
|
+
}
|
|
1468
|
+
exports["default"] = BrowserLiveReloadingSettingsNormalizer;
|
|
1469
|
+
|
|
1470
|
+
|
|
1471
|
+
/***/ }),
|
|
1472
|
+
|
|
1473
|
+
/***/ "./ProjectBuilding/BrowserLiveReloading/RawSettingsNormalizer/BrowserLiveReloadingSettingsNormalizerLocalization.english.ts":
|
|
1474
|
+
/*!**********************************************************************************************************************************!*\
|
|
1475
|
+
!*** ./ProjectBuilding/BrowserLiveReloading/RawSettingsNormalizer/BrowserLiveReloadingSettingsNormalizerLocalization.english.ts ***!
|
|
1476
|
+
\**********************************************************************************************************************************/
|
|
1477
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
1478
|
+
|
|
1479
|
+
|
|
1480
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1481
|
+
const BrowserLiveReloadingSettingsNormalizerLocalization__English = {
|
|
1482
|
+
generateUndefinedBrowserLiveReloadingSetupID_Message: (namedParameters) => `The specified browser setup ID '${namedParameters.selectedBrowserLiveReloadingSetupID}' is not defined ` +
|
|
1483
|
+
"in configuration file. Below setups IDs has been defined:\n" +
|
|
1484
|
+
`${namedParameters.stringifiedAvailableBrowserLiveReloadingSetupsIDs}`
|
|
1485
|
+
};
|
|
1486
|
+
exports["default"] = BrowserLiveReloadingSettingsNormalizerLocalization__English;
|
|
1487
|
+
|
|
1488
|
+
|
|
1351
1489
|
/***/ }),
|
|
1352
1490
|
|
|
1353
1491
|
/***/ "./ProjectBuilding/Common/Defaults/AssetsProcessingGenericSettings__Default.ts":
|
|
@@ -1410,7 +1548,7 @@ class ProjectBuildingCommonSettingsNormalizer {
|
|
|
1410
1548
|
const actualPublicDirectoryRelativePath = commonSettings__fromFile__rawValid.publicDirectoriesRelativePaths?.[projectBuildingMode];
|
|
1411
1549
|
let actualPublicDirectoryAbsolutePath;
|
|
1412
1550
|
if ((0, es_extensions_1.isNotUndefined)(actualPublicDirectoryRelativePath)) {
|
|
1413
|
-
actualPublicDirectoryAbsolutePath = ImprovedPath_1.default.
|
|
1551
|
+
actualPublicDirectoryAbsolutePath = ImprovedPath_1.default.joinPathSegments([consumingProjectRootDirectoryAbsolutePath__forwardSlashes, actualPublicDirectoryRelativePath], { forwardSlashOnlySeparators: true });
|
|
1414
1552
|
}
|
|
1415
1553
|
return {
|
|
1416
1554
|
projectRootDirectoryAbsolutePath: consumingProjectRootDirectoryAbsolutePath__forwardSlashes,
|
|
@@ -1684,8 +1822,8 @@ var LintingCommonSettings__FromFile__RawValid;
|
|
|
1684
1822
|
required: false,
|
|
1685
1823
|
minimalCharactersCount: 1
|
|
1686
1824
|
},
|
|
1687
|
-
[lintingCommonSettingsLocalization.
|
|
1688
|
-
newName: "
|
|
1825
|
+
[lintingCommonSettingsLocalization.enabled.KEY]: {
|
|
1826
|
+
newName: "enabled",
|
|
1689
1827
|
type: Boolean,
|
|
1690
1828
|
required: false
|
|
1691
1829
|
}
|
|
@@ -1884,12 +2022,12 @@ class AssetsProcessingRawSettingsNormalizer {
|
|
|
1884
2022
|
if ((0, es_extensions_1.isUndefined)(assetsGroupSettings__buildingModeDependent__rawValid)) {
|
|
1885
2023
|
continue;
|
|
1886
2024
|
}
|
|
1887
|
-
const currentAssetsGroupSourceFilesDirectoryAbsolutePath = ImprovedPath_1.default.extractDirectoryFromFilePath(ImprovedPath_1.default.
|
|
2025
|
+
const currentAssetsGroupSourceFilesDirectoryAbsolutePath = ImprovedPath_1.default.extractDirectoryFromFilePath(ImprovedPath_1.default.joinPathSegments([
|
|
1888
2026
|
this.consumingProjectRootDirectoryAbsolutePath,
|
|
1889
2027
|
assetsGroupSettings__rawValid.sourceFilesTopDirectoryRelativePath
|
|
1890
2028
|
], { forwardSlashOnlySeparators: true }));
|
|
1891
2029
|
const aliasForPathsResolution = assetsGroupSettings__rawValid.sourceFilesTopDirectoryPathAliasForReferencingFromHTML ?? `@${groupID}`;
|
|
1892
|
-
const outputFilesBaseDirectoryAbsolutePathActualForCurrentProjectBuildingMode = ImprovedPath_1.default.
|
|
2030
|
+
const outputFilesBaseDirectoryAbsolutePathActualForCurrentProjectBuildingMode = ImprovedPath_1.default.joinPathSegments([
|
|
1893
2031
|
this.consumingProjectRootDirectoryAbsolutePath,
|
|
1894
2032
|
assetsGroupSettings__buildingModeDependent__rawValid.outputTopDirectoryRelativePath
|
|
1895
2033
|
], { forwardSlashOnlySeparators: true });
|
|
@@ -1975,7 +2113,7 @@ class SourceCodeProcessingRawSettingsNormalizer {
|
|
|
1975
2113
|
let isSingeEntryPointGroup;
|
|
1976
2114
|
if ("singleEntryPointRelativePath" in entryPointsGroupSettings__rawValid) {
|
|
1977
2115
|
isSingeEntryPointGroup = true;
|
|
1978
|
-
const absolutePathOfSingleEntryPointOfGroup = ImprovedPath_1.default.
|
|
2116
|
+
const absolutePathOfSingleEntryPointOfGroup = ImprovedPath_1.default.joinPathSegments([
|
|
1979
2117
|
this.consumingProjectRootDirectoryAbsolutePath,
|
|
1980
2118
|
entryPointsGroupSettings__rawValid.singleEntryPointRelativePath
|
|
1981
2119
|
], { forwardSlashOnlySeparators: true });
|
|
@@ -1984,7 +2122,7 @@ class SourceCodeProcessingRawSettingsNormalizer {
|
|
|
1984
2122
|
}
|
|
1985
2123
|
else {
|
|
1986
2124
|
isSingeEntryPointGroup = false;
|
|
1987
|
-
entryPointsGroupSourceFilesTopDirectoryAbsolutePath = ImprovedPath_1.default.extractDirectoryFromFilePath(ImprovedPath_1.default.
|
|
2125
|
+
entryPointsGroupSourceFilesTopDirectoryAbsolutePath = ImprovedPath_1.default.extractDirectoryFromFilePath(ImprovedPath_1.default.joinPathSegments([
|
|
1988
2126
|
this.consumingProjectRootDirectoryAbsolutePath,
|
|
1989
2127
|
entryPointsGroupSettings__rawValid.topDirectoryRelativePath
|
|
1990
2128
|
], { forwardSlashOnlySeparators: true }));
|
|
@@ -1993,7 +2131,7 @@ class SourceCodeProcessingRawSettingsNormalizer {
|
|
|
1993
2131
|
partialsRecognition: entryPointsGroupSettings__rawValid.partialsRecognition
|
|
1994
2132
|
}));
|
|
1995
2133
|
}
|
|
1996
|
-
const entryPointsOutputFilesActualBaseDirectoryAbsolutePath = ImprovedPath_1.default.
|
|
2134
|
+
const entryPointsOutputFilesActualBaseDirectoryAbsolutePath = ImprovedPath_1.default.joinPathSegments([
|
|
1997
2135
|
this.consumingProjectRootDirectoryAbsolutePath,
|
|
1998
2136
|
entryPointsGroupSettings__buildingModeDependent__rawValid.outputTopDirectoryRelativePath
|
|
1999
2137
|
], { forwardSlashOnlySeparators: true });
|
|
@@ -2127,7 +2265,7 @@ class AssetsProcessingSettingsRepresentative {
|
|
|
2127
2265
|
prefixOfAliasOfTopDirectoryOfEntryPointsGroup = "@";
|
|
2128
2266
|
masterConfigRepresentative;
|
|
2129
2267
|
static computeActualOutputDirectoryAbsolutePathForTargetSourceFile({ targetSourceFileAbsolutePath, respectiveAssetsGroupNormalizedSettings }) {
|
|
2130
|
-
let outputDirectoryAbsolutePathForCurrentSourceFile = ImprovedPath_1.default.
|
|
2268
|
+
let outputDirectoryAbsolutePathForCurrentSourceFile = ImprovedPath_1.default.joinPathSegments([
|
|
2131
2269
|
respectiveAssetsGroupNormalizedSettings.outputFilesTopDirectoryAbsolutePath,
|
|
2132
2270
|
ImprovedPath_1.default.computeRelativePath({
|
|
2133
2271
|
basePath: respectiveAssetsGroupNormalizedSettings.sourceFilesTopDirectoryAbsolutePath,
|
|
@@ -2150,7 +2288,7 @@ class AssetsProcessingSettingsRepresentative {
|
|
|
2150
2288
|
mutably: true
|
|
2151
2289
|
});
|
|
2152
2290
|
});
|
|
2153
|
-
outputDirectoryAbsolutePathForCurrentSourceFile = ImprovedPath_1.default.joinPathSegments(
|
|
2291
|
+
outputDirectoryAbsolutePathForCurrentSourceFile = ImprovedPath_1.default.joinPathSegments(outputDirectoryAbsolutePathForCurrentSourceFile__explodedToSegments, { forwardSlashOnlySeparators: true });
|
|
2154
2292
|
}
|
|
2155
2293
|
return outputDirectoryAbsolutePathForCurrentSourceFile;
|
|
2156
2294
|
}
|
|
@@ -2226,7 +2364,7 @@ const SourceCodeProcessingConfigRepresentative_1 = __importDefault(__webpack_req
|
|
|
2226
2364
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
2227
2365
|
const ImprovedPath_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/ImprovedPath/ImprovedPath */ "./UtilsIncubator/ImprovedPath/ImprovedPath.ts"));
|
|
2228
2366
|
const ImprovedGlob_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/ImprovedGlob */ "./UtilsIncubator/ImprovedGlob.ts"));
|
|
2229
|
-
const PartialsFilesMapper_1 = __importDefault(__webpack_require__(/*! @
|
|
2367
|
+
const PartialsFilesMapper_1 = __importDefault(__webpack_require__(/*! @Utils/PartialsFilesMapper */ "./Utils/PartialsFilesMapper.ts"));
|
|
2230
2368
|
class GulpStreamBasedSourceCodeProcessingConfigRepresentative extends SourceCodeProcessingConfigRepresentative_1.default {
|
|
2231
2369
|
static #localization = GulpStreamBasedSourceCodeProcessingConfigRepresentative.getDefaultLocalization();
|
|
2232
2370
|
partialFilesAndEntryPointsRelationsMap = new Map();
|
|
@@ -2236,7 +2374,7 @@ class GulpStreamBasedSourceCodeProcessingConfigRepresentative extends SourceCode
|
|
|
2236
2374
|
if (respectiveEntryPointsGroupSettings.isSingeEntryPointGroup) {
|
|
2237
2375
|
return respectiveEntryPointsGroupSettings.outputFilesTopDirectoryAbsolutePath;
|
|
2238
2376
|
}
|
|
2239
|
-
return ImprovedPath_1.default.
|
|
2377
|
+
return ImprovedPath_1.default.joinPathSegments([
|
|
2240
2378
|
respectiveEntryPointsGroupSettings.outputFilesTopDirectoryAbsolutePath,
|
|
2241
2379
|
ImprovedPath_1.default.computeRelativePath({
|
|
2242
2380
|
basePath: respectiveEntryPointsGroupSettings.sourceFilesTopDirectoryAbsolutePath,
|
|
@@ -2357,7 +2495,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
2357
2495
|
};
|
|
2358
2496
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2359
2497
|
/* --- Task executors ----------------------------------------------------------------------------------------------- */
|
|
2360
|
-
const GulpStreamsBasedTaskExecutor_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding/Common/TasksExecutors/GulpStreamsBasedTaskExecutor */ "./ProjectBuilding/Common/TasksExecutors/GulpStreamsBasedTaskExecutor.ts"));
|
|
2498
|
+
const GulpStreamsBasedTaskExecutor_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding/Common/TasksExecutors/GulpStreamsBased/GulpStreamsBasedTaskExecutor */ "./ProjectBuilding/Common/TasksExecutors/GulpStreamsBased/GulpStreamsBasedTaskExecutor.ts"));
|
|
2361
2499
|
/* --- Applied utils ------------------------------------------------------------------------------------------------ */
|
|
2362
2500
|
const gulp_1 = __importDefault(__webpack_require__(/*! gulp */ "gulp"));
|
|
2363
2501
|
const ChokidarSpecialist_1 = __importDefault(__webpack_require__(/*! @ThirdPartySolutionsSpecialists/ChokidarSpecialist */ "./ThirdPartySolutionsSpecialists/ChokidarSpecialist.ts"));
|
|
@@ -2418,7 +2556,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
2418
2556
|
};
|
|
2419
2557
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2420
2558
|
/* --- Task executors ----------------------------------------------------------------------------------------------- */
|
|
2421
|
-
const GulpStreamsBasedTaskExecutor_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding/Common/TasksExecutors/GulpStreamsBasedTaskExecutor */ "./ProjectBuilding/Common/TasksExecutors/GulpStreamsBasedTaskExecutor.ts"));
|
|
2559
|
+
const GulpStreamsBasedTaskExecutor_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding/Common/TasksExecutors/GulpStreamsBased/GulpStreamsBasedTaskExecutor */ "./ProjectBuilding/Common/TasksExecutors/GulpStreamsBased/GulpStreamsBasedTaskExecutor.ts"));
|
|
2422
2560
|
const ChokidarSpecialist_1 = __importDefault(__webpack_require__(/*! @ThirdPartySolutionsSpecialists/ChokidarSpecialist */ "./ThirdPartySolutionsSpecialists/ChokidarSpecialist.ts"));
|
|
2423
2561
|
const gulp_1 = __importDefault(__webpack_require__(/*! gulp */ "gulp"));
|
|
2424
2562
|
/* --- General utils ------------------------------------------------------------------------------------------------ */
|
|
@@ -2526,10 +2664,10 @@ exports["default"] = GulpStreamsBasedSourceCodeProcessor;
|
|
|
2526
2664
|
|
|
2527
2665
|
/***/ }),
|
|
2528
2666
|
|
|
2529
|
-
/***/ "./ProjectBuilding/Common/TasksExecutors/GulpStreamsBasedTaskExecutor.ts":
|
|
2530
|
-
|
|
2531
|
-
!*** ./ProjectBuilding/Common/TasksExecutors/GulpStreamsBasedTaskExecutor.ts ***!
|
|
2532
|
-
|
|
2667
|
+
/***/ "./ProjectBuilding/Common/TasksExecutors/GulpStreamsBased/GulpStreamsBasedTaskExecutor.ts":
|
|
2668
|
+
/*!************************************************************************************************!*\
|
|
2669
|
+
!*** ./ProjectBuilding/Common/TasksExecutors/GulpStreamsBased/GulpStreamsBasedTaskExecutor.ts ***!
|
|
2670
|
+
\************************************************************************************************/
|
|
2533
2671
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2534
2672
|
|
|
2535
2673
|
|
|
@@ -2537,27 +2675,33 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
2537
2675
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
2538
2676
|
};
|
|
2539
2677
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2540
|
-
/* --- Task executors ----------------------------------------------------------------------------------------------- */
|
|
2541
|
-
const TaskExecutor_1 = __importDefault(__webpack_require__(/*! ./TaskExecutor */ "./ProjectBuilding/Common/TasksExecutors/TaskExecutor.ts"));
|
|
2542
2678
|
const gulp_debug_1 = __importDefault(__webpack_require__(/*! gulp-debug */ "gulp-debug"));
|
|
2543
2679
|
const gulp_plumber_1 = __importDefault(__webpack_require__(/*! gulp-plumber */ "gulp-plumber"));
|
|
2544
2680
|
/* --- General utils ------------------------------------------------------------------------------------------------ */
|
|
2545
2681
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
2546
2682
|
const node_notifier_1 = __importDefault(__webpack_require__(/*! node-notifier */ "node-notifier"));
|
|
2547
|
-
class GulpStreamsBasedTaskExecutor
|
|
2548
|
-
|
|
2549
|
-
|
|
2683
|
+
class GulpStreamsBasedTaskExecutor {
|
|
2684
|
+
masterConfigRepresentative;
|
|
2685
|
+
constructor(masterConfigRepresentative) {
|
|
2686
|
+
this.masterConfigRepresentative = masterConfigRepresentative;
|
|
2550
2687
|
}
|
|
2551
|
-
|
|
2688
|
+
printProcessedFilesPathsAndQuantity(namedParameters = {}) {
|
|
2689
|
+
return (0, gulp_debug_1.default)({
|
|
2690
|
+
title: `Task '${this.TASK_NAME_FOR_LOGGING}` +
|
|
2691
|
+
`${(0, es_extensions_1.insertSubstring)(namedParameters.subtaskName, { modifier: (subtaskName) => ` / ${subtaskName}` })}':`
|
|
2692
|
+
});
|
|
2693
|
+
}
|
|
2694
|
+
handleErrorIfItWillOccur(namedParameters = {}) {
|
|
2552
2695
|
return (0, gulp_plumber_1.default)({
|
|
2553
2696
|
errorHandler: (error) => {
|
|
2554
|
-
const ERROR_MESSAGE_TITLE =
|
|
2697
|
+
const ERROR_MESSAGE_TITLE = `Task '${this.TASK_NAME_FOR_LOGGING}` +
|
|
2698
|
+
`${(0, es_extensions_1.insertSubstring)(namedParameters.subtaskName, { modifier: (subtaskName) => ` / ${subtaskName}` })}', error occurred`;
|
|
2555
2699
|
es_extensions_1.Logger.logErrorLikeMessage({
|
|
2556
2700
|
title: ERROR_MESSAGE_TITLE,
|
|
2557
2701
|
description: error.message
|
|
2558
2702
|
});
|
|
2559
2703
|
node_notifier_1.default.notify({
|
|
2560
|
-
title:
|
|
2704
|
+
title: ERROR_MESSAGE_TITLE,
|
|
2561
2705
|
message: "Please check your terminal for the details."
|
|
2562
2706
|
});
|
|
2563
2707
|
}
|
|
@@ -2569,29 +2713,10 @@ exports["default"] = GulpStreamsBasedTaskExecutor;
|
|
|
2569
2713
|
|
|
2570
2714
|
/***/ }),
|
|
2571
2715
|
|
|
2572
|
-
/***/ "./ProjectBuilding/Common/TasksExecutors/
|
|
2573
|
-
|
|
2574
|
-
!*** ./ProjectBuilding/Common/TasksExecutors/
|
|
2575
|
-
|
|
2576
|
-
/***/ ((__unused_webpack_module, exports) => {
|
|
2577
|
-
|
|
2578
|
-
|
|
2579
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2580
|
-
class TaskExecutor {
|
|
2581
|
-
masterConfigRepresentative;
|
|
2582
|
-
constructor(masterConfigRepresentative) {
|
|
2583
|
-
this.masterConfigRepresentative = masterConfigRepresentative;
|
|
2584
|
-
}
|
|
2585
|
-
}
|
|
2586
|
-
exports["default"] = TaskExecutor;
|
|
2587
|
-
|
|
2588
|
-
|
|
2589
|
-
/***/ }),
|
|
2590
|
-
|
|
2591
|
-
/***/ "./ProjectBuilding/Debugging/ProjectBuildingDebuggingSettingsNormalizer.ts":
|
|
2592
|
-
/*!*********************************************************************************!*\
|
|
2593
|
-
!*** ./ProjectBuilding/Debugging/ProjectBuildingDebuggingSettingsNormalizer.ts ***!
|
|
2594
|
-
\*********************************************************************************/
|
|
2716
|
+
/***/ "./ProjectBuilding/Common/TasksExecutors/GulpStreamsBased/SourceCodeLinter/GulpStreamsBasedSourceCodeLinter.ts":
|
|
2717
|
+
/*!*********************************************************************************************************************!*\
|
|
2718
|
+
!*** ./ProjectBuilding/Common/TasksExecutors/GulpStreamsBased/SourceCodeLinter/GulpStreamsBasedSourceCodeLinter.ts ***!
|
|
2719
|
+
\*********************************************************************************************************************/
|
|
2595
2720
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2596
2721
|
|
|
2597
2722
|
|
|
@@ -2599,30 +2724,107 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
2599
2724
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
2600
2725
|
};
|
|
2601
2726
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2602
|
-
/* ---
|
|
2603
|
-
const
|
|
2604
|
-
|
|
2605
|
-
|
|
2606
|
-
|
|
2607
|
-
|
|
2608
|
-
|
|
2609
|
-
|
|
2610
|
-
|
|
2611
|
-
|
|
2612
|
-
|
|
2613
|
-
|
|
2614
|
-
|
|
2615
|
-
|
|
2616
|
-
|
|
2617
|
-
|
|
2618
|
-
|
|
2619
|
-
|
|
2620
|
-
|
|
2621
|
-
|
|
2622
|
-
|
|
2623
|
-
|
|
2624
|
-
|
|
2625
|
-
|
|
2727
|
+
/* --- Task executors ----------------------------------------------------------------------------------------------- */
|
|
2728
|
+
const GulpStreamsBasedTaskExecutor_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding/Common/TasksExecutors/GulpStreamsBased/GulpStreamsBasedTaskExecutor */ "./ProjectBuilding/Common/TasksExecutors/GulpStreamsBased/GulpStreamsBasedTaskExecutor.ts"));
|
|
2729
|
+
/* --- Applied utils ------------------------------------------------------------------------------------------------ */
|
|
2730
|
+
const gulp_1 = __importDefault(__webpack_require__(/*! gulp */ "gulp"));
|
|
2731
|
+
/* --- Third-party solutions specialises ---------------------------------------------------------------------------- */
|
|
2732
|
+
const ChokidarSpecialist_1 = __importDefault(__webpack_require__(/*! @ThirdPartySolutionsSpecialists/ChokidarSpecialist */ "./ThirdPartySolutionsSpecialists/ChokidarSpecialist.ts"));
|
|
2733
|
+
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
2734
|
+
const ImprovedPath_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/ImprovedPath/ImprovedPath */ "./UtilsIncubator/ImprovedPath/ImprovedPath.ts"));
|
|
2735
|
+
class GulpStreamsBasedSourceCodeLinter extends GulpStreamsBasedTaskExecutor_1.default {
|
|
2736
|
+
sourceFilesActiveWatcher = null;
|
|
2737
|
+
queueToProcessingOfAbsolutePathsOfFilesWhichStatusHasChanged = new Set();
|
|
2738
|
+
initializeOrUpdateSourceFilesWatcher() {
|
|
2739
|
+
// TODO Наверное следует переименовать это переменную, потому что это не Duration
|
|
2740
|
+
let waitingForOtherFilesWillBeSavedDuration;
|
|
2741
|
+
this.sourceFilesActiveWatcher = gulp_1.default.watch(this.targetFilesGlobSelectors).
|
|
2742
|
+
on("all", (eventName, fileOrDirectoryPath) => {
|
|
2743
|
+
es_extensions_1.Logger.logInfo({
|
|
2744
|
+
// TODO Localization + Markupの置き換え Пока что у каждого таски или сабтаска вотчер свой, потому наверно
|
|
2745
|
+
// следует назначить поле "владелец".
|
|
2746
|
+
title: "Markup files watcher",
|
|
2747
|
+
description: ` Event : ${ChokidarSpecialist_1.default.getEventNameInterpretation(eventName)}` +
|
|
2748
|
+
`\n File path : ${fileOrDirectoryPath}`
|
|
2749
|
+
});
|
|
2750
|
+
if (eventName === ChokidarSpecialist_1.default.EventsNames.directoryAdded ||
|
|
2751
|
+
eventName === ChokidarSpecialist_1.default.EventsNames.directoryDeleted) {
|
|
2752
|
+
return;
|
|
2753
|
+
}
|
|
2754
|
+
// TODO Необходимо добавить прослушиватель файлов на удаление и, собственно, убрать данные о нём из кэша.
|
|
2755
|
+
clearTimeout(waitingForOtherFilesWillBeSavedDuration);
|
|
2756
|
+
// TODO Localization + Markupの置き換え Пока что у каждого таски или сабтаска вотчер свой, потому наверно
|
|
2757
|
+
// следует назначить поле "владелец".
|
|
2758
|
+
es_extensions_1.Logger.logInfo({
|
|
2759
|
+
title: "Markup files watcher",
|
|
2760
|
+
description: "Waiting for the saving of same type files..."
|
|
2761
|
+
});
|
|
2762
|
+
/* [ Theory ] Chokidar does not understand the backslashes path separators. */
|
|
2763
|
+
this.queueToProcessingOfAbsolutePathsOfFilesWhichStatusHasChanged.
|
|
2764
|
+
add(ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(fileOrDirectoryPath));
|
|
2765
|
+
waitingForOtherFilesWillBeSavedDuration = setTimeout(this.onFilesSetReadyToLinting.bind(this), (0, es_extensions_1.secondsToMilliseconds)(1000) // TODO 置き開ける
|
|
2766
|
+
);
|
|
2767
|
+
});
|
|
2768
|
+
}
|
|
2769
|
+
onFilesSetReadyToLinting() {
|
|
2770
|
+
if (this.queueToProcessingOfAbsolutePathsOfFilesWhichStatusHasChanged.size > 0) {
|
|
2771
|
+
this.lint(Array.from(this.queueToProcessingOfAbsolutePathsOfFilesWhichStatusHasChanged))();
|
|
2772
|
+
this.queueToProcessingOfAbsolutePathsOfFilesWhichStatusHasChanged.clear();
|
|
2773
|
+
}
|
|
2774
|
+
/* [ Theory ]
|
|
2775
|
+
* Even if to assign
|
|
2776
|
+
* <code> this.sourceFilesActiveWatcher = null </code>
|
|
2777
|
+
* whe watcher is still existing. To utilize it, it's required to close it.
|
|
2778
|
+
* <code> this.sourceFilesActiveWatcher.close() </code>
|
|
2779
|
+
* But if to close it, the Gulp pipeline will stop. To prevent it, before the utilization it's required to reassign
|
|
2780
|
+
* the old watcher.
|
|
2781
|
+
*/
|
|
2782
|
+
let outdatedMarkupFilesWatcher = this.sourceFilesActiveWatcher;
|
|
2783
|
+
this.initializeOrUpdateSourceFilesWatcher();
|
|
2784
|
+
outdatedMarkupFilesWatcher?.close();
|
|
2785
|
+
outdatedMarkupFilesWatcher = null;
|
|
2786
|
+
}
|
|
2787
|
+
}
|
|
2788
|
+
exports["default"] = GulpStreamsBasedSourceCodeLinter;
|
|
2789
|
+
|
|
2790
|
+
|
|
2791
|
+
/***/ }),
|
|
2792
|
+
|
|
2793
|
+
/***/ "./ProjectBuilding/Debugging/ProjectBuildingDebuggingSettingsNormalizer.ts":
|
|
2794
|
+
/*!*********************************************************************************!*\
|
|
2795
|
+
!*** ./ProjectBuilding/Debugging/ProjectBuildingDebuggingSettingsNormalizer.ts ***!
|
|
2796
|
+
\*********************************************************************************/
|
|
2797
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2798
|
+
|
|
2799
|
+
|
|
2800
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
2801
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
2802
|
+
};
|
|
2803
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2804
|
+
/* --- Default settings --------------------------------------------------------------------------------------------- */
|
|
2805
|
+
const ProjectBuildingDebuggingSettings__Default_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding/Debugging/ProjectBuildingDebuggingSettings__Default */ "./ProjectBuilding/Debugging/ProjectBuildingDebuggingSettings__Default.ts"));
|
|
2806
|
+
class ProjectBuildingDebuggingSettingsNormalizer {
|
|
2807
|
+
static normalize(projectBuildingDebuggingSettings__fromFile__rawValid) {
|
|
2808
|
+
return {
|
|
2809
|
+
enabled: projectBuildingDebuggingSettings__fromFile__rawValid?.enabled ??
|
|
2810
|
+
ProjectBuildingDebuggingSettings__Default_1.default.enabled,
|
|
2811
|
+
partials: {
|
|
2812
|
+
partialFilesAndParentEntryPointCorrespondence: projectBuildingDebuggingSettings__fromFile__rawValid?.partials?.partialFilesAndParentEntryPointAccordance ??
|
|
2813
|
+
ProjectBuildingDebuggingSettings__Default_1.default.partials.partialFilesAndParentEntryPointCorrespondence
|
|
2814
|
+
}
|
|
2815
|
+
};
|
|
2816
|
+
}
|
|
2817
|
+
}
|
|
2818
|
+
exports["default"] = ProjectBuildingDebuggingSettingsNormalizer;
|
|
2819
|
+
|
|
2820
|
+
|
|
2821
|
+
/***/ }),
|
|
2822
|
+
|
|
2823
|
+
/***/ "./ProjectBuilding/Debugging/ProjectBuildingDebuggingSettings__Default.ts":
|
|
2824
|
+
/*!********************************************************************************!*\
|
|
2825
|
+
!*** ./ProjectBuilding/Debugging/ProjectBuildingDebuggingSettings__Default.ts ***!
|
|
2826
|
+
\********************************************************************************/
|
|
2827
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
2626
2828
|
|
|
2627
2829
|
|
|
2628
2830
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
@@ -2695,17 +2897,17 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
2695
2897
|
const ProjectBuildingTasksIDsForConfigFile_1 = __webpack_require__(/*! @ProjectBuilding:Common/RawConfig/Enumerations/ProjectBuildingTasksIDsForConfigFile */ "./ProjectBuilding/Common/RawConfig/Enumerations/ProjectBuildingTasksIDsForConfigFile.ts");
|
|
2696
2898
|
const ProjectBuildingCommonSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding:Common/NormalizedConfig/ProjectBuildingCommonSettingsNormalizer */ "./ProjectBuilding/Common/NormalizedConfig/ProjectBuildingCommonSettingsNormalizer.ts"));
|
|
2697
2899
|
const ProjectBuildingDebuggingSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! ./Debugging/ProjectBuildingDebuggingSettingsNormalizer */ "./ProjectBuilding/Debugging/ProjectBuildingDebuggingSettingsNormalizer.ts"));
|
|
2698
|
-
const MarkupProcessingRawSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/MarkupProcessingRawSettingsNormalizer */ "./ProjectBuilding/SourceCodeProcessing/Markup/MarkupProcessingRawSettingsNormalizer.ts"));
|
|
2900
|
+
const MarkupProcessingRawSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/RawSettingsNormalizer/MarkupProcessingRawSettingsNormalizer */ "./ProjectBuilding/SourceCodeProcessing/Markup/RawSettingsNormalizer/MarkupProcessingRawSettingsNormalizer.ts"));
|
|
2699
2901
|
const StylesProcessingRawSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @StylesProcessing/StylesProcessingRawSettingsNormalizer */ "./ProjectBuilding/SourceCodeProcessing/Styles/StylesProcessingRawSettingsNormalizer.ts"));
|
|
2700
2902
|
const ECMA_ScriptLogicProcessingRawSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @ECMA_ScriptProcessing/ECMA_ScriptLogicProcessingRawSettingsNormalizer */ "./ProjectBuilding/SourceCodeProcessing/ECMA_Script/ECMA_ScriptLogicProcessingRawSettingsNormalizer.ts"));
|
|
2701
2903
|
const ImagesProcessingRawSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @ImagesProcessing/ImagesProcessingRawSettingsNormalizer */ "./ProjectBuilding/AssetsProcessing/Images/ImagesProcessingRawSettingsNormalizer.ts"));
|
|
2702
2904
|
const FontsProcessingRawSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @FontsProcessing/FontsProcessingRawSettingsNormalizer */ "./ProjectBuilding/AssetsProcessing/Fonts/FontsProcessingRawSettingsNormalizer.ts"));
|
|
2703
2905
|
const VideosProcessingRawSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @VideosProcessing/VideosProcessingRawSettingsNormalizer */ "./ProjectBuilding/AssetsProcessing/Videos/VideosProcessingRawSettingsNormalizer.ts"));
|
|
2704
2906
|
const AudiosProcessingRawSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @AudiosProcessing/AudiosProcessingRawSettingsNormalizer */ "./ProjectBuilding/AssetsProcessing/Audios/AudiosProcessingRawSettingsNormalizer.ts"));
|
|
2705
|
-
const BrowserLiveReloadingSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @BrowserLiveReloading/BrowserLiveReloadingSettingsNormalizer */ "./ProjectBuilding/BrowserLiveReloading/BrowserLiveReloadingSettingsNormalizer.ts"));
|
|
2907
|
+
const BrowserLiveReloadingSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @BrowserLiveReloading/RawSettingsNormalizer/BrowserLiveReloadingSettingsNormalizer */ "./ProjectBuilding/BrowserLiveReloading/RawSettingsNormalizer/BrowserLiveReloadingSettingsNormalizer.ts"));
|
|
2706
2908
|
/* --- Auxiliaries -------------------------------------------------------------------------------------------------- */
|
|
2707
2909
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
2708
|
-
const
|
|
2910
|
+
const es_extensions_nodejs_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions-nodejs */ "@yamato-daiwa/es-extensions-nodejs");
|
|
2709
2911
|
class ProjectBuilderRawConfigNormalizer {
|
|
2710
2912
|
static localization = ProjectBuilderRawConfigNormalizer.getDefaultLocalization();
|
|
2711
2913
|
static normalize({ consumingProjectRootDirectoryAbsolutePath, projectBuildingConfig__fromFile__rawValid, projectBuildingConfig__fromConsole }) {
|
|
@@ -2860,7 +3062,7 @@ class ProjectBuilderRawConfigNormalizer {
|
|
|
2860
3062
|
}
|
|
2861
3063
|
const selectedBrowserLiveReloadingSetupID = actualSelectiveExecution?.browserLiveReloadingSetupID;
|
|
2862
3064
|
return {
|
|
2863
|
-
browserLiveReloading: BrowserLiveReloadingSettingsNormalizer_1.default.
|
|
3065
|
+
browserLiveReloading: BrowserLiveReloadingSettingsNormalizer_1.default.normalize({
|
|
2864
3066
|
browserLiveReloadingSettings__fromFile__rawValid,
|
|
2865
3067
|
projectBuilderCommonSettings__normalized: commonSettings__normalized,
|
|
2866
3068
|
hasSelectiveExecutionBeenDeclared: (0, es_extensions_1.isNotUndefined)(actualSelectiveExecution),
|
|
@@ -2879,7 +3081,7 @@ class ProjectBuilderRawConfigNormalizer {
|
|
|
2879
3081
|
if ((0, es_extensions_1.isNotUndefined)(projectBuildingConfig__fromConsole.selectiveExecutionID)) {
|
|
2880
3082
|
if ((0, es_extensions_1.isUndefined)(selectiveExecutions)) {
|
|
2881
3083
|
es_extensions_1.Logger.throwErrorAndLog({
|
|
2882
|
-
errorInstance: new
|
|
3084
|
+
errorInstance: new es_extensions_nodejs_1.InvalidConsoleCommandError({
|
|
2883
3085
|
customMessage: ProjectBuilderRawConfigNormalizer.localization.
|
|
2884
3086
|
generateNoSelectiveExecutionsHasBeenDefinedErrorMessage({
|
|
2885
3087
|
specifiedInConsoleCommandSelectiveExecutionID: projectBuildingConfig__fromConsole.selectiveExecutionID
|
|
@@ -2892,7 +3094,7 @@ class ProjectBuilderRawConfigNormalizer {
|
|
|
2892
3094
|
actualSelectiveExecution = selectiveExecutions[projectBuildingConfig__fromConsole.selectiveExecutionID];
|
|
2893
3095
|
if ((0, es_extensions_1.isUndefined)(actualSelectiveExecution)) {
|
|
2894
3096
|
es_extensions_1.Logger.throwErrorAndLog({
|
|
2895
|
-
errorInstance: new
|
|
3097
|
+
errorInstance: new es_extensions_nodejs_1.InvalidConsoleCommandError({
|
|
2896
3098
|
customMessage: ProjectBuilderRawConfigNormalizer.localization.
|
|
2897
3099
|
generateUndefinedSelectiveExecutionID_ErrorMessage({
|
|
2898
3100
|
specifiedInConsoleCommandSelectiveExecutionID: projectBuildingConfig__fromConsole.selectiveExecutionID
|
|
@@ -2969,7 +3171,7 @@ const ProjectBuildingConfigFromFileDefaultLocalization = {
|
|
|
2969
3171
|
},
|
|
2970
3172
|
lintingCommonSettings: {
|
|
2971
3173
|
presetFileRelativePath: { KEY: "presetFileRelativePath" },
|
|
2972
|
-
|
|
3174
|
+
enabled: { KEY: "enabled" }
|
|
2973
3175
|
}
|
|
2974
3176
|
},
|
|
2975
3177
|
commonSettings: {
|
|
@@ -2987,17 +3189,32 @@ const ProjectBuildingConfigFromFileDefaultLocalization = {
|
|
|
2987
3189
|
markupProcessing: {
|
|
2988
3190
|
common: {
|
|
2989
3191
|
KEY: "common",
|
|
2990
|
-
|
|
3192
|
+
periodBetweenFileUpdatingAndRebuildingStarting__seconds: {
|
|
3193
|
+
KEY: "periodBetweenFileUpdatingAndRebuildingStarting__seconds"
|
|
3194
|
+
}
|
|
3195
|
+
},
|
|
3196
|
+
staticPreview: {
|
|
3197
|
+
KEY: "staticPreview",
|
|
3198
|
+
stateDependentPagesVariationsSpecificationFileRelativePath: {
|
|
3199
|
+
KEY: "stateDependentPagesVariationsSpecificationFileRelativePath"
|
|
3200
|
+
},
|
|
3201
|
+
importsFromStaticDataFiles: {
|
|
3202
|
+
KEY: "importsFromStaticDataFiles",
|
|
3203
|
+
importedVariableName: { KEY: "importedVariableName" },
|
|
3204
|
+
fileRelativePath: { KEY: "fileRelativePath" }
|
|
3205
|
+
},
|
|
3206
|
+
importsFromCompiledTypeScript: {
|
|
3207
|
+
KEY: "importsFromCompiledTypeScript",
|
|
3208
|
+
importedNamespace: { KEY: "importedNamespace" },
|
|
3209
|
+
sourceFileRelativePath: { KEY: "sourceFileRelativePath" },
|
|
3210
|
+
outputDirectoryRelativePath: { KEY: "outputDirectoryRelativePath" }
|
|
3211
|
+
}
|
|
2991
3212
|
},
|
|
2992
3213
|
linting: {
|
|
2993
3214
|
KEY: "linting"
|
|
2994
3215
|
},
|
|
2995
3216
|
entryPointsGroups: {
|
|
2996
3217
|
KEY: "entryPointsGroups",
|
|
2997
|
-
linting: {
|
|
2998
|
-
KEY: "linting",
|
|
2999
|
-
disable: { KEY: "disable" }
|
|
3000
|
-
},
|
|
3001
3218
|
HTML_Validation: {
|
|
3002
3219
|
KEY: "HTML_Validation",
|
|
3003
3220
|
disable: { KEY: "disable" }
|
|
@@ -3160,17 +3377,22 @@ const ProjectBuildingConfigFromFileDefaultLocalization = {
|
|
|
3160
3377
|
}
|
|
3161
3378
|
},
|
|
3162
3379
|
browserLiveReloading: {
|
|
3163
|
-
|
|
3164
|
-
|
|
3165
|
-
|
|
3166
|
-
|
|
3167
|
-
|
|
3168
|
-
|
|
3169
|
-
KEY: "
|
|
3170
|
-
main: { KEY: "main" },
|
|
3171
|
-
userInterface: { KEY: "userInterface" }
|
|
3380
|
+
localServer: {
|
|
3381
|
+
KEY: "localServer",
|
|
3382
|
+
rootDirectoryRelativePath: { KEY: "rootDirectoryRelativePath" },
|
|
3383
|
+
ignoredFilesAndDirectoriesRelativePaths: { KEY: "ignoredFilesAndDirectoriesRelativePaths" },
|
|
3384
|
+
customPort: { KEY: "customPort" },
|
|
3385
|
+
customStartingFileNameWithExtension: { KEY: "customStartingFileNameWithExtension" },
|
|
3386
|
+
useHTTPS: { KEY: "useHTTPS" }
|
|
3172
3387
|
},
|
|
3173
|
-
|
|
3388
|
+
proxy: { KEY: "proxy" },
|
|
3389
|
+
openInBrowsers: { KEY: "openInBrowsers" },
|
|
3390
|
+
browserSyncUserInterface: {
|
|
3391
|
+
KEY: "browserSyncUserInterface",
|
|
3392
|
+
customPort: { KEY: "customPort" },
|
|
3393
|
+
disable: { KEY: "disable" }
|
|
3394
|
+
},
|
|
3395
|
+
periodBetweenFileUpdatingAndBrowserReloading__seconds: { KEY: "periodBetweenFileUpdatingAndBrowserReloading__seconds" }
|
|
3174
3396
|
}
|
|
3175
3397
|
},
|
|
3176
3398
|
debugging: {
|
|
@@ -3558,14 +3780,14 @@ class ECMA_ScriptLogicProcessingRawSettingsNormalizer extends SourceCodeProcessi
|
|
|
3558
3780
|
directoriesAliasesAbsolutePaths: (() => {
|
|
3559
3781
|
const directoriesAliasesAbsolutePaths = {};
|
|
3560
3782
|
for (const [directoryAlias, directoryAliasRelativePath] of Object.entries(ECMA_ScriptLogicProcessingSettings__fromFile__rawValid.common?.directoriesRelativePathsAliases ?? {})) {
|
|
3561
|
-
directoriesAliasesAbsolutePaths[directoryAlias] = ImprovedPath_1.default.
|
|
3783
|
+
directoriesAliasesAbsolutePaths[directoryAlias] = ImprovedPath_1.default.joinPathSegments([commonSettings__normalized.projectRootDirectoryAbsolutePath, directoryAliasRelativePath], { forwardSlashOnlySeparators: true });
|
|
3562
3784
|
}
|
|
3563
3785
|
return directoriesAliasesAbsolutePaths;
|
|
3564
3786
|
})()
|
|
3565
3787
|
},
|
|
3566
3788
|
linting: {
|
|
3567
3789
|
...(0, es_extensions_1.isNotUndefined)(lintingSettings__fromFile__rawValid.presetFileRelativePath) ? {
|
|
3568
|
-
presetFileAbsolutePath: ImprovedPath_1.default.
|
|
3790
|
+
presetFileAbsolutePath: ImprovedPath_1.default.joinPathSegments([
|
|
3569
3791
|
dataHoldingSelfInstance.consumingProjectRootDirectoryAbsolutePath,
|
|
3570
3792
|
lintingSettings__fromFile__rawValid.presetFileRelativePath
|
|
3571
3793
|
], { forwardSlashOnlySeparators: true })
|
|
@@ -3624,7 +3846,7 @@ class ECMA_ScriptLogicProcessingRawSettingsNormalizer extends SourceCodeProcessi
|
|
|
3624
3846
|
associatedMarkupEntryPointsGroupID_ForModulesDynamicLoadingWithoutDevelopmentServer
|
|
3625
3847
|
} : null,
|
|
3626
3848
|
...(0, es_extensions_1.isNotUndefined)(entryPointsGroupSettings__rawValid.typeScriptConfigurationFileRelativePath) ? {
|
|
3627
|
-
typeScriptConfigurationFileAbsolutePath: ImprovedPath_1.default.
|
|
3849
|
+
typeScriptConfigurationFileAbsolutePath: ImprovedPath_1.default.joinPathSegments([
|
|
3628
3850
|
this.consumingProjectRootDirectoryAbsolutePath,
|
|
3629
3851
|
entryPointsGroupSettings__rawValid.typeScriptConfigurationFileRelativePath
|
|
3630
3852
|
], { forwardSlashOnlySeparators: true })
|
|
@@ -3673,7 +3895,7 @@ exports["default"] = ECMA_ScriptLogicProcessingRawSettingsNormalizer;
|
|
|
3673
3895
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
3674
3896
|
var ECMA_ScriptLogicProcessingRestrictions;
|
|
3675
3897
|
(function (ECMA_ScriptLogicProcessingRestrictions) {
|
|
3676
|
-
ECMA_ScriptLogicProcessingRestrictions.supportedSourceFileNameExtensionsWithoutLeadingDots = ["mjs", "js", "ts"];
|
|
3898
|
+
ECMA_ScriptLogicProcessingRestrictions.supportedSourceFileNameExtensionsWithoutLeadingDots = ["mjs", "js", "jsx", "ts", "tsx"];
|
|
3677
3899
|
ECMA_ScriptLogicProcessingRestrictions.supportedOutputFileNameExtensionsWithoutLeadingDots = ["js"];
|
|
3678
3900
|
let SupportedECMA_ScriptRuntimesTypes;
|
|
3679
3901
|
(function (SupportedECMA_ScriptRuntimesTypes) {
|
|
@@ -3961,6 +4183,7 @@ var ECMA_ScriptLogicProcessingSettings__FromFile__RawValid;
|
|
|
3961
4183
|
newName: "buildingModeDependent",
|
|
3962
4184
|
type: es_extensions_1.RawObjectDataProcessor.ValuesTypesIDs.associativeArrayOfUniformTypeValues,
|
|
3963
4185
|
required: true,
|
|
4186
|
+
allowedKeys: Object.values(ConsumingProjectPreDefinedBuildingModes_1.default),
|
|
3964
4187
|
minimalEntriesCount: 1,
|
|
3965
4188
|
keysRenamings: {
|
|
3966
4189
|
[consumingProjectLocalizedPreDefinedBuildingModes.staticPreview]: ConsumingProjectPreDefinedBuildingModes_1.default.staticPreview,
|
|
@@ -4025,15 +4248,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4025
4248
|
};
|
|
4026
4249
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
4027
4250
|
/* --- Applied utils ------------------------------------------------------------------------------------------------- */
|
|
4028
|
-
const TaskExecutor_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding/Common/TasksExecutors/TaskExecutor */ "./ProjectBuilding/Common/TasksExecutors/TaskExecutor.ts"));
|
|
4029
4251
|
const WebpackConfigGenerator_1 = __importDefault(__webpack_require__(/*! @ECMA_ScriptProcessing/Utils/WebpackConfigGenerator */ "./ProjectBuilding/SourceCodeProcessing/ECMA_Script/Utils/WebpackConfigGenerator.ts"));
|
|
4030
4252
|
const ECMA_ScriptLogicEntryPointsSourceFilesAbsolutePathsAndOutputFilesActualPathsMapGenerator_1 = __importDefault(__webpack_require__(/*! @ECMA_ScriptProcessing/Utils/ECMA_ScriptLogicEntryPointsSourceFilesAbsolutePathsAndOutputFilesActualPathsMapGenerator */ "./ProjectBuilding/SourceCodeProcessing/ECMA_Script/Utils/ECMA_ScriptLogicEntryPointsSourceFilesAbsolutePathsAndOutputFilesActualPathsMapGenerator.ts"));
|
|
4031
4253
|
const webpack_1 = __importDefault(__webpack_require__(/*! webpack */ "webpack"));
|
|
4032
4254
|
const node_notifier_1 = __importDefault(__webpack_require__(/*! node-notifier */ "node-notifier"));
|
|
4033
4255
|
/* --- General Utils ------------------------------------------------------------------------------------------------ */
|
|
4034
4256
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
4035
|
-
class ECMA_ScriptLogicProcessor
|
|
4257
|
+
class ECMA_ScriptLogicProcessor {
|
|
4036
4258
|
TASK_NAME_FOR_LOGGING = "ECMAScript logic processing";
|
|
4259
|
+
masterConfigRepresentative;
|
|
4037
4260
|
ECMA_ScriptLogicProcessingConfigRepresentative;
|
|
4038
4261
|
static provideLogicProcessingIfMust(masterConfigRepresentative) {
|
|
4039
4262
|
if ((0, es_extensions_1.isUndefined)(masterConfigRepresentative.ECMA_ScriptLogicProcessingSettingsRepresentative)) {
|
|
@@ -4066,7 +4289,7 @@ class ECMA_ScriptLogicProcessor extends TaskExecutor_1.default {
|
|
|
4066
4289
|
occurrenceLocation: "ECMA_ScriptLogicProcessor.provideLogicProcessing(masterConfigRepresentative)"
|
|
4067
4290
|
});
|
|
4068
4291
|
node_notifier_1.default.notify({
|
|
4069
|
-
title:
|
|
4292
|
+
title: "ECMAScript logic processing",
|
|
4070
4293
|
message: "Error has occurred. Please check the console."
|
|
4071
4294
|
});
|
|
4072
4295
|
}
|
|
@@ -4103,7 +4326,7 @@ class ECMA_ScriptLogicProcessor extends TaskExecutor_1.default {
|
|
|
4103
4326
|
};
|
|
4104
4327
|
}
|
|
4105
4328
|
constructor(masterConfigRepresentative, ecmaScriptLogicProcessingConfigRepresentative) {
|
|
4106
|
-
|
|
4329
|
+
this.masterConfigRepresentative = masterConfigRepresentative;
|
|
4107
4330
|
this.ECMA_ScriptLogicProcessingConfigRepresentative = ecmaScriptLogicProcessingConfigRepresentative;
|
|
4108
4331
|
}
|
|
4109
4332
|
}
|
|
@@ -4142,7 +4365,7 @@ class ECMA_ScriptLogicEntryPointsSourceFilesAbsolutePathsAndOutputFilesActualPat
|
|
|
4142
4365
|
static getEntryPointsOutputFileActualAbsolutePath(sourceFileAbsolutePath, entryPointsGroupNormalizedSettings) {
|
|
4143
4366
|
let correspondingOutputFileAbsolutePath;
|
|
4144
4367
|
if (entryPointsGroupNormalizedSettings.revisioning.mustExecute) {
|
|
4145
|
-
const targetOutputFileGlobSelector = ImprovedPath_1.default.
|
|
4368
|
+
const targetOutputFileGlobSelector = ImprovedPath_1.default.joinPathSegments([
|
|
4146
4369
|
entryPointsGroupNormalizedSettings.outputFilesTopDirectoryAbsolutePath,
|
|
4147
4370
|
`${ImprovedPath_1.default.extractFileNameWithoutExtensionFromPath(sourceFileAbsolutePath)}**.js`
|
|
4148
4371
|
], { forwardSlashOnlySeparators: true });
|
|
@@ -4168,7 +4391,7 @@ class ECMA_ScriptLogicEntryPointsSourceFilesAbsolutePathsAndOutputFilesActualPat
|
|
|
4168
4391
|
correspondingOutputFileAbsolutePath = targetOutputFileSearchResults[0];
|
|
4169
4392
|
}
|
|
4170
4393
|
else {
|
|
4171
|
-
correspondingOutputFileAbsolutePath = ImprovedPath_1.default.
|
|
4394
|
+
correspondingOutputFileAbsolutePath = ImprovedPath_1.default.joinPathSegments([
|
|
4172
4395
|
entryPointsGroupNormalizedSettings.outputFilesTopDirectoryAbsolutePath,
|
|
4173
4396
|
ImprovedPath_1.default.computeRelativePath({
|
|
4174
4397
|
comparedPath: ImprovedPath_1.default.extractDirectoryFromFilePath(sourceFileAbsolutePath),
|
|
@@ -4336,7 +4559,7 @@ class WebpackConfigGenerator {
|
|
|
4336
4559
|
rules: [
|
|
4337
4560
|
/* --- Logic ---------------------------------------------------------------------------------------------- */
|
|
4338
4561
|
{
|
|
4339
|
-
test: /\.
|
|
4562
|
+
test: /\.tsx?$/u,
|
|
4340
4563
|
loader: "ts-loader",
|
|
4341
4564
|
options: {
|
|
4342
4565
|
...(0, es_extensions_1.isNotUndefined)(entryPointsGroupSettings.typeScriptConfigurationFileAbsolutePath) ? {
|
|
@@ -4444,9 +4667,9 @@ class WebpackConfigGenerator {
|
|
|
4444
4667
|
resolveLoader: {
|
|
4445
4668
|
modules: [
|
|
4446
4669
|
/* [ Theory ] Actual for normal usage via "npm install" */
|
|
4447
|
-
ImprovedPath_1.default.
|
|
4670
|
+
ImprovedPath_1.default.joinPathSegments([this.masterConfigRepresentative.consumingProjectRootDirectoryAbsolutePath, "node_modules"], { forwardSlashOnlySeparators: true }),
|
|
4448
4671
|
/* [ Theory ] Actual for "npm-link" usage. */
|
|
4449
|
-
ImprovedPath_1.default.
|
|
4672
|
+
ImprovedPath_1.default.joinPathSegments([__dirname, "node_modules"], { forwardSlashOnlySeparators: true })
|
|
4450
4673
|
]
|
|
4451
4674
|
},
|
|
4452
4675
|
...entryPointsGroupSettings.targetRuntime.type === SupportedECMA_ScriptRuntimesTypes.nodeJS ? {
|
|
@@ -4465,7 +4688,7 @@ class WebpackConfigGenerator {
|
|
|
4465
4688
|
if ((0, es_extensions_1.isNotUndefined)(entryPointsGroupSettings.typeScriptConfigurationFileAbsolutePath)) {
|
|
4466
4689
|
return entryPointsGroupSettings.typeScriptConfigurationFileAbsolutePath;
|
|
4467
4690
|
}
|
|
4468
|
-
return ImprovedPath_1.default.
|
|
4691
|
+
return ImprovedPath_1.default.joinPathSegments([
|
|
4469
4692
|
this.masterConfigRepresentative.consumingProjectRootDirectoryAbsolutePath,
|
|
4470
4693
|
"tsconfig.json"
|
|
4471
4694
|
], { forwardSlashOnlySeparators: true });
|
|
@@ -4480,7 +4703,7 @@ class WebpackConfigGenerator {
|
|
|
4480
4703
|
}),
|
|
4481
4704
|
new vue_loader_1.VueLoaderPlugin(),
|
|
4482
4705
|
new eslint_webpack_plugin_1.default({
|
|
4483
|
-
extensions: ["js", "ts", "vue"],
|
|
4706
|
+
extensions: ["js", "ts", "jsx", "tsx", "vue"],
|
|
4484
4707
|
failOnError: this.masterConfigRepresentative.isStagingBuildingMode ||
|
|
4485
4708
|
this.masterConfigRepresentative.isProductionBuildingMode,
|
|
4486
4709
|
failOnWarning: this.masterConfigRepresentative.isStagingBuildingMode ||
|
|
@@ -4577,105 +4800,6 @@ class WebpackConfigGenerator {
|
|
|
4577
4800
|
exports["default"] = WebpackConfigGenerator;
|
|
4578
4801
|
|
|
4579
4802
|
|
|
4580
|
-
/***/ }),
|
|
4581
|
-
|
|
4582
|
-
/***/ "./ProjectBuilding/SourceCodeProcessing/Markup/MarkupProcessingRawSettingsNormalizer.ts":
|
|
4583
|
-
/*!**********************************************************************************************!*\
|
|
4584
|
-
!*** ./ProjectBuilding/SourceCodeProcessing/Markup/MarkupProcessingRawSettingsNormalizer.ts ***!
|
|
4585
|
-
\**********************************************************************************************/
|
|
4586
|
-
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
4587
|
-
|
|
4588
|
-
|
|
4589
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4590
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4591
|
-
};
|
|
4592
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
4593
|
-
/* --- Restrictions ------------------------------------------------------------------------------------------------- */
|
|
4594
|
-
const MarkupProcessingRestrictions_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/MarkupProcessingRestrictions */ "./ProjectBuilding/SourceCodeProcessing/Markup/MarkupProcessingRestrictions.ts"));
|
|
4595
|
-
/* --- Default settings --------------------------------------------------------------------------------------------- */
|
|
4596
|
-
const MarkupProcessingSettings__Default_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/MarkupProcessingSettings__Default */ "./ProjectBuilding/SourceCodeProcessing/Markup/MarkupProcessingSettings__Default.ts"));
|
|
4597
|
-
const SourceCodeProcessingRawSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding:Common/RawSettingsNormalizers/SourceCodeProcessingRawSettingsNormalizer */ "./ProjectBuilding/Common/RawSettingsNormalizers/SourceCodeProcessingRawSettingsNormalizer.ts"));
|
|
4598
|
-
/* --- Utils -------------------------------------------------------------------------------------------------------- */
|
|
4599
|
-
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
4600
|
-
const ImprovedPath_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/ImprovedPath/ImprovedPath */ "./UtilsIncubator/ImprovedPath/ImprovedPath.ts"));
|
|
4601
|
-
class MarkupProcessingRawSettingsNormalizer extends SourceCodeProcessingRawSettingsNormalizer_1.default {
|
|
4602
|
-
supportedEntryPointsSourceFileNameExtensionsWithoutLeadingDots = MarkupProcessingRestrictions_1.default.
|
|
4603
|
-
supportedSourceFileNameExtensionsWithoutDots;
|
|
4604
|
-
lintingCommonSettings;
|
|
4605
|
-
static normalize({ markupProcessingSettings__fromFile__rawValid, commonSettings__normalized }) {
|
|
4606
|
-
const lintingCommonSettings = (0, es_extensions_1.isUndefined)(markupProcessingSettings__fromFile__rawValid.linting) ?
|
|
4607
|
-
{ isCompletelyDisabled: !MarkupProcessingSettings__Default_1.default.linting.mustExecute } :
|
|
4608
|
-
{
|
|
4609
|
-
isCompletelyDisabled: markupProcessingSettings__fromFile__rawValid.linting.disableCompletely === true ?
|
|
4610
|
-
true : !MarkupProcessingSettings__Default_1.default.linting.mustExecute,
|
|
4611
|
-
...(0, es_extensions_1.isNotUndefined)(markupProcessingSettings__fromFile__rawValid.linting.presetFileRelativePath) ? {
|
|
4612
|
-
presetFileAbsolutePath: ImprovedPath_1.default.buildAbsolutePath([
|
|
4613
|
-
commonSettings__normalized.projectRootDirectoryAbsolutePath,
|
|
4614
|
-
markupProcessingSettings__fromFile__rawValid.linting.presetFileRelativePath
|
|
4615
|
-
], { forwardSlashOnlySeparators: true })
|
|
4616
|
-
} : null
|
|
4617
|
-
};
|
|
4618
|
-
const dataHoldingSelfInstance = new MarkupProcessingRawSettingsNormalizer({
|
|
4619
|
-
consumingProjectBuildingMode: commonSettings__normalized.projectBuildingMode,
|
|
4620
|
-
consumingProjectRootDirectoryAbsolutePath: commonSettings__normalized.projectRootDirectoryAbsolutePath,
|
|
4621
|
-
...(0, es_extensions_1.isNotUndefined)(commonSettings__normalized.tasksAndSourceFilesSelection) ? {
|
|
4622
|
-
entryPointsGroupsIDsSelection: commonSettings__normalized.tasksAndSourceFilesSelection.markupProcessing
|
|
4623
|
-
} : {},
|
|
4624
|
-
markupProcessingSettings__fromFile__rawValid,
|
|
4625
|
-
lintingCommonSettings
|
|
4626
|
-
});
|
|
4627
|
-
return {
|
|
4628
|
-
common: {
|
|
4629
|
-
supportedSourceFileNameExtensionsWithoutLeadingDots: MarkupProcessingRestrictions_1.default.supportedSourceFileNameExtensionsWithoutDots,
|
|
4630
|
-
supportedOutputFileNameExtensionsWithoutLeadingDots: MarkupProcessingRestrictions_1.default.supportedOutputFileNameExtensionsWithoutDots,
|
|
4631
|
-
waitingForSubsequentFilesWillBeSavedPeriod__seconds: markupProcessingSettings__fromFile__rawValid.common?.waitingForSubsequentFilesWillBeSavedPeriod__seconds ??
|
|
4632
|
-
MarkupProcessingSettings__Default_1.default.waitingForOtherFilesWillBeSavedPeriod__seconds
|
|
4633
|
-
},
|
|
4634
|
-
linting: lintingCommonSettings,
|
|
4635
|
-
relevantEntryPointsGroups: dataHoldingSelfInstance.createNormalizedEntryPointsGroupsSettings(markupProcessingSettings__fromFile__rawValid.entryPointsGroups, dataHoldingSelfInstance.
|
|
4636
|
-
completeEntryPointsGroupNormalizedSettingsCommonPropertiesUntilMarkupEntryPointsGroupNormalizedSettings.
|
|
4637
|
-
bind(dataHoldingSelfInstance))
|
|
4638
|
-
};
|
|
4639
|
-
}
|
|
4640
|
-
constructor(namedParameters) {
|
|
4641
|
-
super(namedParameters);
|
|
4642
|
-
this.lintingCommonSettings = namedParameters.lintingCommonSettings;
|
|
4643
|
-
}
|
|
4644
|
-
completeEntryPointsGroupNormalizedSettingsCommonPropertiesUntilMarkupEntryPointsGroupNormalizedSettings(entryPointsGroupGenericSettings__normalized, entryPointsGroupSettings__rawValid) {
|
|
4645
|
-
return {
|
|
4646
|
-
...entryPointsGroupGenericSettings__normalized,
|
|
4647
|
-
HTML_Validation: {
|
|
4648
|
-
mustExecute: entryPointsGroupSettings__rawValid.HTML_Validation?.disable === true ? false :
|
|
4649
|
-
MarkupProcessingSettings__Default_1.default.HTML_Validation.mustExecute
|
|
4650
|
-
},
|
|
4651
|
-
linting: {
|
|
4652
|
-
mustExecute: (() => {
|
|
4653
|
-
if (this.lintingCommonSettings.isCompletelyDisabled) {
|
|
4654
|
-
return false;
|
|
4655
|
-
}
|
|
4656
|
-
if ((0, es_extensions_1.isUndefined)(entryPointsGroupSettings__rawValid.linting)) {
|
|
4657
|
-
return MarkupProcessingSettings__Default_1.default.linting.mustExecute;
|
|
4658
|
-
}
|
|
4659
|
-
if ((0, es_extensions_1.isBoolean)(entryPointsGroupSettings__rawValid.linting.disable)) {
|
|
4660
|
-
return !entryPointsGroupSettings__rawValid.linting.disable;
|
|
4661
|
-
}
|
|
4662
|
-
return MarkupProcessingSettings__Default_1.default.linting.mustExecute;
|
|
4663
|
-
})()
|
|
4664
|
-
},
|
|
4665
|
-
accessibilityInspection: {
|
|
4666
|
-
mustExecute: entryPointsGroupSettings__rawValid.accessibilityInspection?.disable === true ? false :
|
|
4667
|
-
MarkupProcessingSettings__Default_1.default.accessibilityInspection.mustExecute,
|
|
4668
|
-
standard: entryPointsGroupSettings__rawValid.accessibilityInspection?.standard ??
|
|
4669
|
-
MarkupProcessingSettings__Default_1.default.accessibilityInspection.standard
|
|
4670
|
-
},
|
|
4671
|
-
mustConvertToHandlebarsOnNonStaticPreviewModes: entryPointsGroupSettings__rawValid.
|
|
4672
|
-
convertToHandlebarsOnNonStaticPreviewModes ?? false
|
|
4673
|
-
};
|
|
4674
|
-
}
|
|
4675
|
-
}
|
|
4676
|
-
exports["default"] = MarkupProcessingRawSettingsNormalizer;
|
|
4677
|
-
|
|
4678
|
-
|
|
4679
4803
|
/***/ }),
|
|
4680
4804
|
|
|
4681
4805
|
/***/ "./ProjectBuilding/SourceCodeProcessing/Markup/MarkupProcessingRestrictions.ts":
|
|
@@ -4718,10 +4842,12 @@ class MarkupProcessingSettingsRepresentative extends GulpStreamBasedSourceCodePr
|
|
|
4718
4842
|
supportedEntryPointsSourceFileNameExtensionsWithoutLeadingDots;
|
|
4719
4843
|
TARGET_FILES_KIND_FOR_LOGGING__PLURAL_FORM = "Markup";
|
|
4720
4844
|
TARGET_FILES_KIND_FOR_LOGGING__SINGULAR_FORM = "Markup";
|
|
4845
|
+
TASK_NAME_FOR_LOGGING = "Markup processing";
|
|
4721
4846
|
prefixOfEntryPointsGroupReference = "@";
|
|
4722
4847
|
waitingForTheOtherFilesWillBeSavedPeriod__seconds;
|
|
4723
4848
|
entryPointsGroupsNormalizedSettingsMappedByReferences;
|
|
4724
4849
|
sourceCodeLintingCommonSettings;
|
|
4850
|
+
staticPreviewSettings;
|
|
4725
4851
|
sourceAndOutputFilesAbsolutePathsCorrespondenceMap = new Map();
|
|
4726
4852
|
relevantEntryPointsGroupsSettings;
|
|
4727
4853
|
sourceCodeProcessingCommonSettings;
|
|
@@ -4729,17 +4855,27 @@ class MarkupProcessingSettingsRepresentative extends GulpStreamBasedSourceCodePr
|
|
|
4729
4855
|
super(projectBuildingMasterConfigRepresentative);
|
|
4730
4856
|
this.sourceCodeProcessingCommonSettings = normalizedMarkupProcessingSettings.common;
|
|
4731
4857
|
this.sourceCodeLintingCommonSettings = normalizedMarkupProcessingSettings.linting;
|
|
4858
|
+
this.staticPreviewSettings = normalizedMarkupProcessingSettings.staticPreview;
|
|
4732
4859
|
this.relevantEntryPointsGroupsSettings = normalizedMarkupProcessingSettings.relevantEntryPointsGroups;
|
|
4733
4860
|
this.supportedEntryPointsSourceFileNameExtensionsWithoutLeadingDots = normalizedMarkupProcessingSettings.common.
|
|
4734
4861
|
supportedSourceFileNameExtensionsWithoutLeadingDots;
|
|
4735
4862
|
this.waitingForTheOtherFilesWillBeSavedPeriod__seconds = normalizedMarkupProcessingSettings.common.
|
|
4736
|
-
|
|
4863
|
+
periodBetweenFileUpdatingAndRebuildingStarting__seconds;
|
|
4737
4864
|
this.entryPointsGroupsNormalizedSettingsMappedByReferences = new Map(Array.from(this.relevantEntryPointsGroupsSettings.values()).map((entryPointsGroupSettings) => [
|
|
4738
4865
|
`${this.prefixOfEntryPointsGroupReference}${entryPointsGroupSettings.ID}`,
|
|
4739
4866
|
entryPointsGroupSettings
|
|
4740
4867
|
]));
|
|
4741
4868
|
super.initializeOrUpdatePartialFilesAndEntryPointsRelationsMap();
|
|
4742
4869
|
}
|
|
4870
|
+
/* === Static preview ============================================================================================= */
|
|
4871
|
+
/* --- State dependent variations --------------------------------------------------------------------------------- */
|
|
4872
|
+
getEntryPointStateDependentVariations(targetFileAbsolutePath) {
|
|
4873
|
+
return this.staticPreviewSettings.stateDependentPagesVariationsSpecification[targetFileAbsolutePath] ?? null;
|
|
4874
|
+
}
|
|
4875
|
+
/* --- Imports from TypeScript ------------------------------------------------------------------------------------ */
|
|
4876
|
+
get importedTypeScriptSourceFilesAbsolutePaths() {
|
|
4877
|
+
return this.staticPreviewSettings.compiledTypeScriptImporting.map((importFromCompiledTypeScript) => importFromCompiledTypeScript.sourceFileAbsolutePath);
|
|
4878
|
+
}
|
|
4743
4879
|
}
|
|
4744
4880
|
exports["default"] = MarkupProcessingSettingsRepresentative;
|
|
4745
4881
|
|
|
@@ -4759,10 +4895,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4759
4895
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
4760
4896
|
const MarkupProcessingRestrictions_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/MarkupProcessingRestrictions */ "./ProjectBuilding/SourceCodeProcessing/Markup/MarkupProcessingRestrictions.ts"));
|
|
4761
4897
|
const MarkupProcessingSettings__Default = {
|
|
4762
|
-
|
|
4898
|
+
periodBetweenFileUpdatingAndRebuildingStarting__seconds: 1,
|
|
4763
4899
|
linting: {
|
|
4764
|
-
mustExecute: true
|
|
4765
|
-
isDisabledForEntryPointGroups: false
|
|
4900
|
+
mustExecute: true
|
|
4766
4901
|
},
|
|
4767
4902
|
HTML_Validation: {
|
|
4768
4903
|
mustExecute: true
|
|
@@ -4791,7 +4926,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
4791
4926
|
/* --- Restrictions ------------------------------------------------------------------------------------------------- */
|
|
4792
4927
|
const MarkupProcessingRestrictions_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/MarkupProcessingRestrictions */ "./ProjectBuilding/SourceCodeProcessing/Markup/MarkupProcessingRestrictions.ts"));
|
|
4793
4928
|
const ConsumingProjectPreDefinedBuildingModes_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding/Common/Restrictions/ConsumingProjectPreDefinedBuildingModes */ "./ProjectBuilding/Common/Restrictions/ConsumingProjectPreDefinedBuildingModes.ts"));
|
|
4794
|
-
/* --- General
|
|
4929
|
+
/* --- General utils ------------------------------------------------------------------------------------------------ */
|
|
4795
4930
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
4796
4931
|
/* eslint-disable-next-line @typescript-eslint/no-redeclare --
|
|
4797
4932
|
* The merging of type/interface and namespace is completely valid TypeScript,
|
|
@@ -4807,14 +4942,80 @@ var MarkupProcessingSettings__FromFile__RawValid;
|
|
|
4807
4942
|
type: Object,
|
|
4808
4943
|
required: false,
|
|
4809
4944
|
properties: {
|
|
4810
|
-
[markupProcessingLocalization.common.
|
|
4811
|
-
newName: "
|
|
4945
|
+
[markupProcessingLocalization.common.periodBetweenFileUpdatingAndRebuildingStarting__seconds.KEY]: {
|
|
4946
|
+
newName: "periodBetweenFileUpdatingAndRebuildingStarting__seconds",
|
|
4812
4947
|
type: Number,
|
|
4813
4948
|
required: false,
|
|
4814
4949
|
numbersSet: es_extensions_1.RawObjectDataProcessor.NumbersSets.naturalNumber
|
|
4815
4950
|
}
|
|
4816
4951
|
}
|
|
4817
4952
|
},
|
|
4953
|
+
[markupProcessingLocalization.staticPreview.KEY]: {
|
|
4954
|
+
newName: "staticPreview",
|
|
4955
|
+
preValidationModifications: es_extensions_1.nullToUndefined,
|
|
4956
|
+
type: Object,
|
|
4957
|
+
required: false,
|
|
4958
|
+
properties: {
|
|
4959
|
+
[markupProcessingLocalization.staticPreview.stateDependentPagesVariationsSpecificationFileRelativePath.KEY]: {
|
|
4960
|
+
newName: "stateDependentPagesVariationsSpecificationFileRelativePath",
|
|
4961
|
+
type: String,
|
|
4962
|
+
required: false,
|
|
4963
|
+
minimalCharactersCount: 1
|
|
4964
|
+
},
|
|
4965
|
+
[markupProcessingLocalization.staticPreview.importsFromStaticDataFiles.KEY]: {
|
|
4966
|
+
newName: "importsFromStaticDataFiles",
|
|
4967
|
+
type: Array,
|
|
4968
|
+
required: false,
|
|
4969
|
+
minimalElementsCount: 1,
|
|
4970
|
+
element: {
|
|
4971
|
+
type: Object,
|
|
4972
|
+
properties: {
|
|
4973
|
+
importedVariableName: {
|
|
4974
|
+
newName: "importedVariableName",
|
|
4975
|
+
type: String,
|
|
4976
|
+
required: true,
|
|
4977
|
+
minimalCharactersCount: 1
|
|
4978
|
+
},
|
|
4979
|
+
fileRelativePath: {
|
|
4980
|
+
newName: "fileRelativePath",
|
|
4981
|
+
type: String,
|
|
4982
|
+
required: true,
|
|
4983
|
+
minimalCharactersCount: 1
|
|
4984
|
+
}
|
|
4985
|
+
}
|
|
4986
|
+
}
|
|
4987
|
+
},
|
|
4988
|
+
[markupProcessingLocalization.staticPreview.importsFromCompiledTypeScript.KEY]: {
|
|
4989
|
+
newName: "importsFromCompiledTypeScript",
|
|
4990
|
+
type: Array,
|
|
4991
|
+
required: false,
|
|
4992
|
+
minimalElementsCount: 1,
|
|
4993
|
+
element: {
|
|
4994
|
+
type: Object,
|
|
4995
|
+
properties: {
|
|
4996
|
+
importedNamespace: {
|
|
4997
|
+
newName: "importedNamespace",
|
|
4998
|
+
type: String,
|
|
4999
|
+
required: true,
|
|
5000
|
+
minimalCharactersCount: 1
|
|
5001
|
+
},
|
|
5002
|
+
sourceFileRelativePath: {
|
|
5003
|
+
newName: "sourceFileRelativePath",
|
|
5004
|
+
type: String,
|
|
5005
|
+
required: true,
|
|
5006
|
+
minimalCharactersCount: 1
|
|
5007
|
+
},
|
|
5008
|
+
outputDirectoryRelativePath: {
|
|
5009
|
+
newName: "outputDirectoryRelativePath",
|
|
5010
|
+
type: String,
|
|
5011
|
+
required: true,
|
|
5012
|
+
minimalCharactersCount: 1
|
|
5013
|
+
}
|
|
5014
|
+
}
|
|
5015
|
+
}
|
|
5016
|
+
}
|
|
5017
|
+
}
|
|
5018
|
+
},
|
|
4818
5019
|
[markupProcessingLocalization.linting.KEY]: {
|
|
4819
5020
|
newName: "linting",
|
|
4820
5021
|
preValidationModifications: es_extensions_1.nullToUndefined,
|
|
@@ -4831,19 +5032,6 @@ var MarkupProcessingSettings__FromFile__RawValid;
|
|
|
4831
5032
|
type: Object,
|
|
4832
5033
|
properties: {
|
|
4833
5034
|
...sourceCodeProcessingSettingsGenericPropertiesLocalizedSpecification,
|
|
4834
|
-
[markupProcessingLocalization.entryPointsGroups.linting.KEY]: {
|
|
4835
|
-
newName: "linting",
|
|
4836
|
-
preValidationModifications: es_extensions_1.nullToUndefined,
|
|
4837
|
-
type: Object,
|
|
4838
|
-
required: false,
|
|
4839
|
-
properties: {
|
|
4840
|
-
[markupProcessingLocalization.entryPointsGroups.linting.disable.KEY]: {
|
|
4841
|
-
newName: "disable",
|
|
4842
|
-
type: Boolean,
|
|
4843
|
-
required: false
|
|
4844
|
-
}
|
|
4845
|
-
}
|
|
4846
|
-
},
|
|
4847
5035
|
[markupProcessingLocalization.entryPointsGroups.HTML_Validation.KEY]: {
|
|
4848
5036
|
newName: "HTML_Validation",
|
|
4849
5037
|
preValidationModifications: es_extensions_1.nullToUndefined,
|
|
@@ -4885,6 +5073,7 @@ var MarkupProcessingSettings__FromFile__RawValid;
|
|
|
4885
5073
|
newName: "buildingModeDependent",
|
|
4886
5074
|
type: es_extensions_1.RawObjectDataProcessor.ValuesTypesIDs.associativeArrayOfUniformTypeValues,
|
|
4887
5075
|
required: true,
|
|
5076
|
+
allowedKeys: Object.values(ConsumingProjectPreDefinedBuildingModes_1.default),
|
|
4888
5077
|
minimalEntriesCount: 1,
|
|
4889
5078
|
keysRenamings: {
|
|
4890
5079
|
[consumingProjectLocalizedPreDefinedBuildingModes.staticPreview]: ConsumingProjectPreDefinedBuildingModes_1.default.staticPreview,
|
|
@@ -4933,6 +5122,7 @@ const MarkupProcessingSettingsRepresentative_1 = __importDefault(__webpack_requi
|
|
|
4933
5122
|
const GulpStreamsBasedSourceCodeProcessor_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding/Common/TasksExecutors/GulpStreamsBasedSourceCodeProcessor */ "./ProjectBuilding/Common/TasksExecutors/GulpStreamsBasedSourceCodeProcessor.ts"));
|
|
4934
5123
|
/* --- Gulp plugins ------------------------------------------------------------------------------------------------- */
|
|
4935
5124
|
const gulp_1 = __importDefault(__webpack_require__(/*! gulp */ "gulp"));
|
|
5125
|
+
const gulp_data_1 = __importDefault(__webpack_require__(/*! gulp-data */ "gulp-data"));
|
|
4936
5126
|
const gulp_pug_1 = __importDefault(__webpack_require__(/*! gulp-pug */ "gulp-pug"));
|
|
4937
5127
|
const gulp_intercept_1 = __importDefault(__webpack_require__(/*! gulp-intercept */ "gulp-intercept"));
|
|
4938
5128
|
const gulp_html_prettify_1 = __importDefault(__webpack_require__(/*! gulp-html-prettify */ "gulp-html-prettify"));
|
|
@@ -4940,10 +5130,12 @@ const gulp_html_prettify_1 = __importDefault(__webpack_require__(/*! gulp-html-p
|
|
|
4940
5130
|
const ResourcesReferencesResolverForHTML_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/Plugins/ResourcesReferencesResolverForHTML/ResourcesReferencesResolverForHTML */ "./ProjectBuilding/SourceCodeProcessing/Markup/Plugins/ResourcesReferencesResolverForHTML/ResourcesReferencesResolverForHTML.ts"));
|
|
4941
5131
|
const HTML_Validator_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/Plugins/HTML_Validator/HTML_Validator */ "./ProjectBuilding/SourceCodeProcessing/Markup/Plugins/HTML_Validator/HTML_Validator.ts"));
|
|
4942
5132
|
const AccessibilityInspector_1 = __importDefault(__webpack_require__(/*! ./Plugins/AccessibilityInspector/AccessibilityInspector */ "./ProjectBuilding/SourceCodeProcessing/Markup/Plugins/AccessibilityInspector/AccessibilityInspector.ts"));
|
|
4943
|
-
|
|
5133
|
+
// import removeExtraSpacesFromJapaneseText from "@MarkupProcessing/Plugins/removeExtraSpacesFromJapaneseText";
|
|
4944
5134
|
const stream_1 = __webpack_require__(/*! stream */ "stream");
|
|
5135
|
+
const GulpStreamModifier_1 = __importDefault(__webpack_require__(/*! @Utils/GulpStreamModifier */ "./Utils/GulpStreamModifier.ts"));
|
|
4945
5136
|
/* --- General auxiliaries ------------------------------------------------------------------------------------------ */
|
|
4946
5137
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
5138
|
+
const path_1 = __importDefault(__webpack_require__(/*! path */ "path"));
|
|
4947
5139
|
const ImprovedPath_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/ImprovedPath/ImprovedPath */ "./UtilsIncubator/ImprovedPath/ImprovedPath.ts"));
|
|
4948
5140
|
class MarkupProcessor extends GulpStreamsBasedSourceCodeProcessor_1.default {
|
|
4949
5141
|
TASK_NAME_FOR_LOGGING = "Markup processing";
|
|
@@ -4977,6 +5169,28 @@ class MarkupProcessor extends GulpStreamsBasedSourceCodeProcessor_1.default {
|
|
|
4977
5169
|
pipe(super.printProcessedFilesPathsAndQuantity()).
|
|
4978
5170
|
pipe(super.handleErrorIfItWillOccur()).
|
|
4979
5171
|
pipe((0, gulp_intercept_1.default)(this.addActualSourceCodeProcessingSettingsToVinylFile.bind(this))).
|
|
5172
|
+
pipe(GulpStreamModifier_1.default.modify({
|
|
5173
|
+
onStreamStartedEventCommonHandler: async (vinylFile, addNewFileToStream) => {
|
|
5174
|
+
const entryPointStateDependentVariations = this.markupProcessingConfigRepresentative.
|
|
5175
|
+
getEntryPointStateDependentVariations(String(vinylFile.sourceAbsolutePath));
|
|
5176
|
+
if ((0, es_extensions_1.isNull)(entryPointStateDependentVariations)) {
|
|
5177
|
+
return Promise.resolve(GulpStreamModifier_1.default.CompletionSignals.PASSING_ON);
|
|
5178
|
+
}
|
|
5179
|
+
/* [ Approach ] This empty object delivers the user from checking for non-null of state variable. */
|
|
5180
|
+
vinylFile.pugData = { [entryPointStateDependentVariations.stateVariableName]: {} };
|
|
5181
|
+
for (const [derivedFileAbsolutePath, stateDependentData] of Object.entries(entryPointStateDependentVariations.derivedPagesAndStatesMap)) {
|
|
5182
|
+
const stateDependentMarkupVinylFileVariation = vinylFile.clone();
|
|
5183
|
+
stateDependentMarkupVinylFileVariation.path = path_1.default.normalize(derivedFileAbsolutePath);
|
|
5184
|
+
stateDependentMarkupVinylFileVariation.sourceAbsolutePath = derivedFileAbsolutePath;
|
|
5185
|
+
stateDependentMarkupVinylFileVariation.pugData = {
|
|
5186
|
+
[entryPointStateDependentVariations.stateVariableName]: stateDependentData
|
|
5187
|
+
};
|
|
5188
|
+
addNewFileToStream(stateDependentMarkupVinylFileVariation);
|
|
5189
|
+
}
|
|
5190
|
+
return Promise.resolve(GulpStreamModifier_1.default.CompletionSignals.PASSING_ON);
|
|
5191
|
+
}
|
|
5192
|
+
})).
|
|
5193
|
+
pipe((0, gulp_data_1.default)((vinylFile) => vinylFile.pugData)).
|
|
4980
5194
|
pipe((0, gulp_pug_1.default)({
|
|
4981
5195
|
locals: {
|
|
4982
5196
|
__IS_STATIC_PREVIEW_BUILDING_MODE__: this.masterConfigRepresentative.isStaticPreviewBuildingMode,
|
|
@@ -4988,7 +5202,7 @@ class MarkupProcessor extends GulpStreamsBasedSourceCodeProcessor_1.default {
|
|
|
4988
5202
|
})).
|
|
4989
5203
|
pipe((0, gulp_intercept_1.default)(this.onRawOutputCode.bind(this))).
|
|
4990
5204
|
pipe((0, gulp_html_prettify_1.default)({ indent_char: " ", indent_size: 2 })).
|
|
4991
|
-
pipe((
|
|
5205
|
+
// pipe(gulpIntercept(removeExtraSpacesFromJapaneseText)).
|
|
4992
5206
|
pipe((0, gulp_intercept_1.default)(this.onPostProcessedCode.bind(this))).
|
|
4993
5207
|
pipe(gulp_1.default.dest((targetFileInFinalState) => targetFileInFinalState.outputDirectoryAbsolutePath));
|
|
4994
5208
|
}
|
|
@@ -5011,7 +5225,7 @@ class MarkupProcessor extends GulpStreamsBasedSourceCodeProcessor_1.default {
|
|
|
5011
5225
|
const compiledHTML_File = _compiledHTML_File;
|
|
5012
5226
|
this.markupProcessingConfigRepresentative.
|
|
5013
5227
|
sourceAndOutputFilesAbsolutePathsCorrespondenceMap.
|
|
5014
|
-
set(ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(compiledHTML_File.sourceAbsolutePath), ImprovedPath_1.default.joinPathSegments(compiledHTML_File.outputDirectoryAbsolutePath, compiledHTML_File.basename));
|
|
5228
|
+
set(ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(compiledHTML_File.sourceAbsolutePath), ImprovedPath_1.default.joinPathSegments([compiledHTML_File.outputDirectoryAbsolutePath, compiledHTML_File.basename], { forwardSlashOnlySeparators: true }));
|
|
5015
5229
|
if (compiledHTML_File.processingSettings.mustConvertToHandlebarsOnNonStaticPreviewModes &&
|
|
5016
5230
|
!this.masterConfigRepresentative.isStaticPreviewBuildingMode) {
|
|
5017
5231
|
compiledHTML_File.extname = ".hbs";
|
|
@@ -5663,7 +5877,7 @@ class ResourcesReferencesResolverForHTML {
|
|
|
5663
5877
|
}));
|
|
5664
5878
|
return null;
|
|
5665
5879
|
}
|
|
5666
|
-
const sourceFileComputedAbsolutePathPossiblyWithoutFileNameExtension = ImprovedPath_1.default.joinPathSegments(sourceFilesTopDirectoryAbsolutePathOfCurrentAlias, ...segmentsOfPickedPath.slice(1));
|
|
5880
|
+
const sourceFileComputedAbsolutePathPossiblyWithoutFileNameExtension = ImprovedPath_1.default.joinPathSegments([sourceFilesTopDirectoryAbsolutePathOfCurrentAlias, ...segmentsOfPickedPath.slice(1)], { forwardSlashOnlySeparators: true });
|
|
5667
5881
|
const explicitlySpecifiedSourceFilenameExtension = ImprovedPath_1.default.
|
|
5668
5882
|
extractLastFilenameExtensionWithoutFirstDot(sourceFileComputedAbsolutePathPossiblyWithoutFileNameExtension);
|
|
5669
5883
|
if ((0, es_extensions_1.isNull)(explicitlySpecifiedSourceFilenameExtension)) {
|
|
@@ -5719,10 +5933,10 @@ exports["default"] = ResourcesReferencesResolverForHTML;
|
|
|
5719
5933
|
|
|
5720
5934
|
/***/ }),
|
|
5721
5935
|
|
|
5722
|
-
/***/ "./ProjectBuilding/SourceCodeProcessing/Markup/
|
|
5723
|
-
|
|
5724
|
-
!*** ./ProjectBuilding/SourceCodeProcessing/Markup/
|
|
5725
|
-
|
|
5936
|
+
/***/ "./ProjectBuilding/SourceCodeProcessing/Markup/RawSettingsNormalizer/MarkupProcessingRawSettingsNormalizer.ts":
|
|
5937
|
+
/*!********************************************************************************************************************!*\
|
|
5938
|
+
!*** ./ProjectBuilding/SourceCodeProcessing/Markup/RawSettingsNormalizer/MarkupProcessingRawSettingsNormalizer.ts ***!
|
|
5939
|
+
\********************************************************************************************************************/
|
|
5726
5940
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
5727
5941
|
|
|
5728
5942
|
|
|
@@ -5730,26 +5944,594 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5730
5944
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5731
5945
|
};
|
|
5732
5946
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
5733
|
-
|
|
5734
|
-
const
|
|
5735
|
-
const
|
|
5736
|
-
|
|
5737
|
-
|
|
5738
|
-
|
|
5739
|
-
|
|
5740
|
-
|
|
5741
|
-
|
|
5742
|
-
|
|
5743
|
-
|
|
5744
|
-
|
|
5745
|
-
|
|
5746
|
-
|
|
5747
|
-
|
|
5748
|
-
|
|
5749
|
-
|
|
5750
|
-
|
|
5751
|
-
|
|
5752
|
-
|
|
5947
|
+
/* --- Restrictions ------------------------------------------------------------------------------------------------- */
|
|
5948
|
+
const MarkupProcessingRestrictions_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/MarkupProcessingRestrictions */ "./ProjectBuilding/SourceCodeProcessing/Markup/MarkupProcessingRestrictions.ts"));
|
|
5949
|
+
const ConsumingProjectPreDefinedBuildingModes_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding/Common/Restrictions/ConsumingProjectPreDefinedBuildingModes */ "./ProjectBuilding/Common/Restrictions/ConsumingProjectPreDefinedBuildingModes.ts"));
|
|
5950
|
+
/* --- Default settings --------------------------------------------------------------------------------------------- */
|
|
5951
|
+
const MarkupProcessingSettings__Default_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/MarkupProcessingSettings__Default */ "./ProjectBuilding/SourceCodeProcessing/Markup/MarkupProcessingSettings__Default.ts"));
|
|
5952
|
+
/* --- Settings normalizers ----------------------------------------------------------------------------------------- */
|
|
5953
|
+
const SourceCodeProcessingRawSettingsNormalizer_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding/Common/RawSettingsNormalizers/SourceCodeProcessingRawSettingsNormalizer */ "./ProjectBuilding/Common/RawSettingsNormalizers/SourceCodeProcessingRawSettingsNormalizer.ts"));
|
|
5954
|
+
/* --- Utils -------------------------------------------------------------------------------------------------------- */
|
|
5955
|
+
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
5956
|
+
const ImprovedPath_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/ImprovedPath/ImprovedPath */ "./UtilsIncubator/ImprovedPath/ImprovedPath.ts"));
|
|
5957
|
+
const yamljs_1 = __importDefault(__webpack_require__(/*! yamljs */ "yamljs"));
|
|
5958
|
+
/* --- Localization ------------------------------------------------------------------------------------------------- */
|
|
5959
|
+
const MarkupProcessingRawSettingsNormalizerLocalization_english_1 = __importDefault(__webpack_require__(/*! ./MarkupProcessingRawSettingsNormalizerLocalization.english */ "./ProjectBuilding/SourceCodeProcessing/Markup/RawSettingsNormalizer/MarkupProcessingRawSettingsNormalizerLocalization.english.ts"));
|
|
5960
|
+
class MarkupProcessingRawSettingsNormalizer extends SourceCodeProcessingRawSettingsNormalizer_1.default {
|
|
5961
|
+
static localization = MarkupProcessingRawSettingsNormalizerLocalization_english_1.default;
|
|
5962
|
+
supportedEntryPointsSourceFileNameExtensionsWithoutLeadingDots = MarkupProcessingRestrictions_1.default.
|
|
5963
|
+
supportedSourceFileNameExtensionsWithoutDots;
|
|
5964
|
+
markupProcessingSettings__fromFile__rawValid;
|
|
5965
|
+
static normalize({ markupProcessingSettings__fromFile__rawValid, commonSettings__normalized }) {
|
|
5966
|
+
const dataHoldingSelfInstance = new MarkupProcessingRawSettingsNormalizer({
|
|
5967
|
+
consumingProjectBuildingMode: commonSettings__normalized.projectBuildingMode,
|
|
5968
|
+
consumingProjectRootDirectoryAbsolutePath: commonSettings__normalized.projectRootDirectoryAbsolutePath,
|
|
5969
|
+
...(0, es_extensions_1.isNotUndefined)(commonSettings__normalized.tasksAndSourceFilesSelection) ? {
|
|
5970
|
+
entryPointsGroupsIDsSelection: commonSettings__normalized.tasksAndSourceFilesSelection.markupProcessing
|
|
5971
|
+
} : null,
|
|
5972
|
+
markupProcessingSettings__fromFile__rawValid
|
|
5973
|
+
});
|
|
5974
|
+
return {
|
|
5975
|
+
common: {
|
|
5976
|
+
supportedSourceFileNameExtensionsWithoutLeadingDots: MarkupProcessingRestrictions_1.default.supportedSourceFileNameExtensionsWithoutDots,
|
|
5977
|
+
supportedOutputFileNameExtensionsWithoutLeadingDots: MarkupProcessingRestrictions_1.default.supportedOutputFileNameExtensionsWithoutDots,
|
|
5978
|
+
periodBetweenFileUpdatingAndRebuildingStarting__seconds: markupProcessingSettings__fromFile__rawValid.common?.periodBetweenFileUpdatingAndRebuildingStarting__seconds ??
|
|
5979
|
+
MarkupProcessingSettings__Default_1.default.periodBetweenFileUpdatingAndRebuildingStarting__seconds
|
|
5980
|
+
},
|
|
5981
|
+
linting: dataHoldingSelfInstance.normalizeLintingSettings(),
|
|
5982
|
+
staticPreview: {
|
|
5983
|
+
stateDependentPagesVariationsSpecification: dataHoldingSelfInstance.
|
|
5984
|
+
prepareStaticPreviewStateDependentPageVariationsData(),
|
|
5985
|
+
importsFromStaticDataFiles: dataHoldingSelfInstance.prepareImportsFromStaticDataFile(),
|
|
5986
|
+
compiledTypeScriptImporting: (() => (markupProcessingSettings__fromFile__rawValid.staticPreview?.importsFromCompiledTypeScript ?? []).map((importFromCompiledTypescript) => ({
|
|
5987
|
+
sourceFileAbsolutePath: ImprovedPath_1.default.joinPathSegments([
|
|
5988
|
+
commonSettings__normalized.projectRootDirectoryAbsolutePath,
|
|
5989
|
+
importFromCompiledTypescript.sourceFileRelativePath
|
|
5990
|
+
], { forwardSlashOnlySeparators: true }),
|
|
5991
|
+
exportedNamespace: importFromCompiledTypescript.importedNamespace,
|
|
5992
|
+
outputDirectoryAbsolutePath: ImprovedPath_1.default.joinPathSegments([
|
|
5993
|
+
commonSettings__normalized.projectRootDirectoryAbsolutePath,
|
|
5994
|
+
importFromCompiledTypescript.outputDirectoryRelativePath
|
|
5995
|
+
], { forwardSlashOnlySeparators: true })
|
|
5996
|
+
})))()
|
|
5997
|
+
},
|
|
5998
|
+
relevantEntryPointsGroups: dataHoldingSelfInstance.createNormalizedEntryPointsGroupsSettings(markupProcessingSettings__fromFile__rawValid.entryPointsGroups, MarkupProcessingRawSettingsNormalizer.
|
|
5999
|
+
completeEntryPointsGroupNormalizedSettingsCommonPropertiesUntilMarkupEntryPointsGroupNormalizedSettings)
|
|
6000
|
+
};
|
|
6001
|
+
}
|
|
6002
|
+
constructor(namedParameters) {
|
|
6003
|
+
super(namedParameters);
|
|
6004
|
+
this.markupProcessingSettings__fromFile__rawValid = namedParameters.markupProcessingSettings__fromFile__rawValid;
|
|
6005
|
+
}
|
|
6006
|
+
normalizeLintingSettings() {
|
|
6007
|
+
return (0, es_extensions_1.isNotUndefined)(this.markupProcessingSettings__fromFile__rawValid.linting) ?
|
|
6008
|
+
{
|
|
6009
|
+
mustExecute: this.markupProcessingSettings__fromFile__rawValid.linting.enable === true ?
|
|
6010
|
+
true : MarkupProcessingSettings__Default_1.default.linting.mustExecute,
|
|
6011
|
+
...(0, es_extensions_1.isNotUndefined)(this.markupProcessingSettings__fromFile__rawValid.linting.presetFileRelativePath) ? {
|
|
6012
|
+
presetFileAbsolutePath: ImprovedPath_1.default.joinPathSegments([
|
|
6013
|
+
this.consumingProjectRootDirectoryAbsolutePath,
|
|
6014
|
+
this.markupProcessingSettings__fromFile__rawValid.linting.presetFileRelativePath
|
|
6015
|
+
], { forwardSlashOnlySeparators: true })
|
|
6016
|
+
} : null
|
|
6017
|
+
} :
|
|
6018
|
+
{ mustExecute: MarkupProcessingSettings__Default_1.default.linting.mustExecute };
|
|
6019
|
+
}
|
|
6020
|
+
prepareStaticPreviewStateDependentPageVariationsData() {
|
|
6021
|
+
const staticPreviewStateDependentPagesVariationsSpecificationFileRelativePath = this.markupProcessingSettings__fromFile__rawValid.staticPreview?.
|
|
6022
|
+
stateDependentPagesVariationsSpecificationFileRelativePath;
|
|
6023
|
+
if ((0, es_extensions_1.isUndefined)(staticPreviewStateDependentPagesVariationsSpecificationFileRelativePath) ||
|
|
6024
|
+
this.consumingProjectBuildingMode !== ConsumingProjectPreDefinedBuildingModes_1.default.staticPreview) {
|
|
6025
|
+
return {};
|
|
6026
|
+
}
|
|
6027
|
+
const staticPreviewStateDependentPagesVariationsSpecificationFileAbsolutePath = ImprovedPath_1.default.joinPathSegments([this.consumingProjectRootDirectoryAbsolutePath, staticPreviewStateDependentPagesVariationsSpecificationFileRelativePath], { forwardSlashOnlySeparators: true });
|
|
6028
|
+
/* [ Approach ] Currently, the `RawObjectDataProcessor` thus `ObjectDataFilesProcessor` are ignoring and not keep the
|
|
6029
|
+
* data which validation rules has not been specified. In this case, the state variable is such data. */
|
|
6030
|
+
let rawData;
|
|
6031
|
+
try {
|
|
6032
|
+
rawData = yamljs_1.default.load(staticPreviewStateDependentPagesVariationsSpecificationFileAbsolutePath);
|
|
6033
|
+
}
|
|
6034
|
+
catch (error) {
|
|
6035
|
+
es_extensions_1.Logger.throwErrorAndLog({
|
|
6036
|
+
errorInstance: new es_extensions_1.FileReadingFailedError({
|
|
6037
|
+
customMessage: MarkupProcessingRawSettingsNormalizer.localization.
|
|
6038
|
+
generateStaticPreviewStateDependentPagesVariationsSpecificationFileReadingFailedMessage({
|
|
6039
|
+
staticPreviewStateDependentPagesVariationsSpecificationFileAbsolutePath
|
|
6040
|
+
})
|
|
6041
|
+
}),
|
|
6042
|
+
title: es_extensions_1.FileReadingFailedError.localization.defaultTitle,
|
|
6043
|
+
occurrenceLocation: "MarkupProcessingRawSettingsNormalizer." +
|
|
6044
|
+
"prepareStaticPreviewStateDependentPageVariationsData(namedParameters)",
|
|
6045
|
+
wrappableError: error
|
|
6046
|
+
});
|
|
6047
|
+
}
|
|
6048
|
+
if (!(0, es_extensions_1.isArbitraryObject)(rawData)) {
|
|
6049
|
+
es_extensions_1.Logger.logError({
|
|
6050
|
+
errorType: es_extensions_1.InvalidExternalDataError.NAME,
|
|
6051
|
+
title: es_extensions_1.InvalidExternalDataError.localization.defaultTitle,
|
|
6052
|
+
description: es_extensions_1.PoliteErrorsMessagesBuilder.buildMessage(MarkupProcessingRawSettingsNormalizer.localization.
|
|
6053
|
+
generateStaticPreviewStateDependentPagesVariationsSpecificationIsNotTheObjectErrorLog({
|
|
6054
|
+
staticPreviewStateDependentPagesVariationsSpecificationFileRelativePath,
|
|
6055
|
+
stringifiedRawData: (0, es_extensions_1.stringifyAndFormatArbitraryValue)(rawData),
|
|
6056
|
+
rawDataActualType: typeof rawData
|
|
6057
|
+
})),
|
|
6058
|
+
occurrenceLocation: "MarkupProcessingRawSettingsNormalizer." +
|
|
6059
|
+
"prepareStaticPreviewStateDependentPageVariationsData(namedParameters)"
|
|
6060
|
+
});
|
|
6061
|
+
return {};
|
|
6062
|
+
}
|
|
6063
|
+
const staticPreviewStateDependentPageVariationsData = {};
|
|
6064
|
+
for (const [markupSourceFileRelativePath__possiblyWithoutExtension, stateDependentPageVariationsData] of Object.entries(rawData)) {
|
|
6065
|
+
const markupSourceFileRelativePath = ImprovedPath_1.default.addFileNameExtensionIfNotPresent({
|
|
6066
|
+
targetFilePath: markupSourceFileRelativePath__possiblyWithoutExtension, fileNameExtension: "pug"
|
|
6067
|
+
});
|
|
6068
|
+
if (!(0, es_extensions_1.isArbitraryObject)(stateDependentPageVariationsData)) {
|
|
6069
|
+
es_extensions_1.Logger.throwErrorAndLog({
|
|
6070
|
+
errorInstance: new es_extensions_1.InvalidExternalDataError({
|
|
6071
|
+
customMessage: MarkupProcessingRawSettingsNormalizer.localization.
|
|
6072
|
+
generateInvalidValueOfStaticPreviewStateDependentPagesVariationsSpecificationAssociativeArrayMessage({
|
|
6073
|
+
staticPreviewStateDependentPagesVariationsSpecificationFileRelativePath,
|
|
6074
|
+
invalidEntryKey: markupSourceFileRelativePath,
|
|
6075
|
+
invalidEntryValueType: typeof stateDependentPageVariationsData,
|
|
6076
|
+
invalidEntryStringifiedValue: (0, es_extensions_1.stringifyAndFormatArbitraryValue)(stateDependentPageVariationsData)
|
|
6077
|
+
})
|
|
6078
|
+
}),
|
|
6079
|
+
title: es_extensions_1.InvalidExternalDataError.localization.defaultTitle,
|
|
6080
|
+
occurrenceLocation: "MarkupProcessingRawSettingsNormalizer." +
|
|
6081
|
+
"prepareStaticPreviewStateDependentPageVariationsData(namedParameters)"
|
|
6082
|
+
});
|
|
6083
|
+
}
|
|
6084
|
+
if (!(0, es_extensions_1.isNonEmptyString)(stateDependentPageVariationsData.stateObjectTypeVariableName)) {
|
|
6085
|
+
es_extensions_1.Logger.throwErrorAndLog({
|
|
6086
|
+
errorInstance: new es_extensions_1.InvalidExternalDataError({
|
|
6087
|
+
customMessage: MarkupProcessingRawSettingsNormalizer.localization.generateInvalidPageStateVariableNameMessage({
|
|
6088
|
+
targetMarkupFileRelativePath: markupSourceFileRelativePath,
|
|
6089
|
+
stringifiedValueOfSpecifiedVariableNameProperty: (0, es_extensions_1.stringifyAndFormatArbitraryValue)(stateDependentPageVariationsData.stateObjectTypeVariableName),
|
|
6090
|
+
specifiedTypeOfVariableNameProperty: typeof stateDependentPageVariationsData.stateObjectTypeVariableName
|
|
6091
|
+
})
|
|
6092
|
+
}),
|
|
6093
|
+
title: es_extensions_1.InvalidExternalDataError.localization.defaultTitle,
|
|
6094
|
+
occurrenceLocation: "MarkupProcessingRawSettingsNormalizer." +
|
|
6095
|
+
"prepareStaticPreviewStateDependentPageVariationsData(namedParameters)"
|
|
6096
|
+
});
|
|
6097
|
+
}
|
|
6098
|
+
if (!(0, es_extensions_1.isArbitraryObject)(stateDependentPageVariationsData.variations)) {
|
|
6099
|
+
es_extensions_1.Logger.throwErrorAndLog({
|
|
6100
|
+
errorInstance: new es_extensions_1.InvalidExternalDataError({
|
|
6101
|
+
customMessage: MarkupProcessingRawSettingsNormalizer.localization.
|
|
6102
|
+
generateInvalidPageStateDependentVariationsSpecificationMessage({
|
|
6103
|
+
targetMarkupFileRelativePath: markupSourceFileRelativePath,
|
|
6104
|
+
actualType: typeof stateDependentPageVariationsData.variations,
|
|
6105
|
+
actualStringifiedValue: (0, es_extensions_1.stringifyAndFormatArbitraryValue)(stateDependentPageVariationsData.variations)
|
|
6106
|
+
})
|
|
6107
|
+
}),
|
|
6108
|
+
title: es_extensions_1.InvalidExternalDataError.localization.defaultTitle,
|
|
6109
|
+
occurrenceLocation: "MarkupProcessingRawSettingsNormalizer." +
|
|
6110
|
+
"prepareStaticPreviewStateDependentPageVariationsData(namedParameters)"
|
|
6111
|
+
});
|
|
6112
|
+
}
|
|
6113
|
+
const markupSourceFileFileAbsolutePath = ImprovedPath_1.default.joinPathSegments([this.consumingProjectRootDirectoryAbsolutePath, markupSourceFileRelativePath], { forwardSlashOnlySeparators: true });
|
|
6114
|
+
const derivedPagesAndStatesMap = {};
|
|
6115
|
+
for (const [postfix, state] of Object.entries(stateDependentPageVariationsData.variations)) {
|
|
6116
|
+
const derivedFileAbsolutePath = `${ImprovedPath_1.default.removeFilenameExtensionFromPath(markupSourceFileFileAbsolutePath)}${postfix}.pug`;
|
|
6117
|
+
if (!(0, es_extensions_1.isArbitraryObject)(state)) {
|
|
6118
|
+
es_extensions_1.Logger.throwErrorAndLog({
|
|
6119
|
+
errorInstance: new es_extensions_1.InvalidExternalDataError({
|
|
6120
|
+
customMessage: MarkupProcessingRawSettingsNormalizer.localization.generateInvalidPageStateVariableMessage({
|
|
6121
|
+
targetMarkupFileRelativePath: markupSourceFileRelativePath,
|
|
6122
|
+
actualStringifiedValue: (0, es_extensions_1.stringifyAndFormatArbitraryValue)(state),
|
|
6123
|
+
actualType: typeof state
|
|
6124
|
+
})
|
|
6125
|
+
}),
|
|
6126
|
+
title: es_extensions_1.InvalidExternalDataError.localization.defaultTitle,
|
|
6127
|
+
occurrenceLocation: "MarkupProcessingRawSettingsNormalizer." +
|
|
6128
|
+
"prepareStaticPreviewStateDependentPageVariationsData(namedParameters)"
|
|
6129
|
+
});
|
|
6130
|
+
}
|
|
6131
|
+
derivedPagesAndStatesMap[derivedFileAbsolutePath] = state;
|
|
6132
|
+
}
|
|
6133
|
+
staticPreviewStateDependentPageVariationsData[markupSourceFileFileAbsolutePath] = {
|
|
6134
|
+
stateVariableName: stateDependentPageVariationsData.stateObjectTypeVariableName,
|
|
6135
|
+
derivedPagesAndStatesMap
|
|
6136
|
+
};
|
|
6137
|
+
}
|
|
6138
|
+
return staticPreviewStateDependentPageVariationsData;
|
|
6139
|
+
}
|
|
6140
|
+
prepareImportsFromStaticDataFile() {
|
|
6141
|
+
const importsFromStaticDataFiles = {};
|
|
6142
|
+
// for (
|
|
6143
|
+
// const importFromStaticDataFile of
|
|
6144
|
+
// this.markupProcessingSettings__fromFile__rawValid.staticPreview?.importsFromStaticDataFiles ?? []
|
|
6145
|
+
// ) {
|
|
6146
|
+
//
|
|
6147
|
+
// }
|
|
6148
|
+
return importsFromStaticDataFiles;
|
|
6149
|
+
}
|
|
6150
|
+
static completeEntryPointsGroupNormalizedSettingsCommonPropertiesUntilMarkupEntryPointsGroupNormalizedSettings(entryPointsGroupGenericSettings__normalized, entryPointsGroupSettings__rawValid) {
|
|
6151
|
+
return {
|
|
6152
|
+
...entryPointsGroupGenericSettings__normalized,
|
|
6153
|
+
HTML_Validation: {
|
|
6154
|
+
mustExecute: entryPointsGroupSettings__rawValid.HTML_Validation?.disable === true ? false :
|
|
6155
|
+
MarkupProcessingSettings__Default_1.default.HTML_Validation.mustExecute
|
|
6156
|
+
},
|
|
6157
|
+
accessibilityInspection: {
|
|
6158
|
+
mustExecute: entryPointsGroupSettings__rawValid.accessibilityInspection?.disable === true ? false :
|
|
6159
|
+
MarkupProcessingSettings__Default_1.default.accessibilityInspection.mustExecute,
|
|
6160
|
+
standard: entryPointsGroupSettings__rawValid.accessibilityInspection?.standard ??
|
|
6161
|
+
MarkupProcessingSettings__Default_1.default.accessibilityInspection.standard
|
|
6162
|
+
},
|
|
6163
|
+
mustConvertToHandlebarsOnNonStaticPreviewModes: entryPointsGroupSettings__rawValid.
|
|
6164
|
+
convertToHandlebarsOnNonStaticPreviewModes ?? false
|
|
6165
|
+
};
|
|
6166
|
+
}
|
|
6167
|
+
}
|
|
6168
|
+
exports["default"] = MarkupProcessingRawSettingsNormalizer;
|
|
6169
|
+
|
|
6170
|
+
|
|
6171
|
+
/***/ }),
|
|
6172
|
+
|
|
6173
|
+
/***/ "./ProjectBuilding/SourceCodeProcessing/Markup/RawSettingsNormalizer/MarkupProcessingRawSettingsNormalizerLocalization.english.ts":
|
|
6174
|
+
/*!****************************************************************************************************************************************!*\
|
|
6175
|
+
!*** ./ProjectBuilding/SourceCodeProcessing/Markup/RawSettingsNormalizer/MarkupProcessingRawSettingsNormalizerLocalization.english.ts ***!
|
|
6176
|
+
\****************************************************************************************************************************************/
|
|
6177
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
6178
|
+
|
|
6179
|
+
|
|
6180
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
6181
|
+
const MarkupProcessingRawSettingsNormalizerLocalization__English = {
|
|
6182
|
+
generateStaticPreviewStateDependentPagesVariationsSpecificationFileReadingFailedMessage: (namedParameters) => "Failed to read the static preview state dependent pages variations specification file at " +
|
|
6183
|
+
`'${namedParameters.staticPreviewStateDependentPagesVariationsSpecificationFileAbsolutePath}'.`,
|
|
6184
|
+
generateStaticPreviewStateDependentPagesVariationsSpecificationIsNotTheObjectErrorLog: (namedParameters) => ({
|
|
6185
|
+
technicalDetails: "The parsed YAML from static preview state dependent pages variations specification file " +
|
|
6186
|
+
"'[ ProjectDirectory ]" +
|
|
6187
|
+
`${namedParameters.staticPreviewStateDependentPagesVariationsSpecificationFileRelativePath}'` +
|
|
6188
|
+
`is not an ECMAScript 'object' and actually has type '${namedParameters.rawDataActualType}' and value:` +
|
|
6189
|
+
`${namedParameters.stringifiedRawData}\n This data will be ignored.`,
|
|
6190
|
+
politeExplanation: "Reading and parsing of static preview state dependent pages variations specification file, " +
|
|
6191
|
+
"we are expected it will has the object type as parsed YAML, the superset of JSON. Contrary to expectations, " +
|
|
6192
|
+
`it has the '${namedParameters.stringifiedRawData}' type. We need to investigate it. ` +
|
|
6193
|
+
"We will keep the YDA running however we are sorry, but currently we are unable to inject above data " +
|
|
6194
|
+
"to Pug files."
|
|
6195
|
+
}),
|
|
6196
|
+
generateInvalidValueOfStaticPreviewStateDependentPagesVariationsSpecificationAssociativeArrayMessage: (namedParameters) => "The static preview state dependent pages variations specification file " +
|
|
6197
|
+
`${namedParameters.staticPreviewStateDependentPagesVariationsSpecificationFileRelativePath}` +
|
|
6198
|
+
"is including the associative array with invalid value. The value respective to key " +
|
|
6199
|
+
`'${namedParameters.invalidEntryKey}' must be the object with 'stateObjectTypeVariableName' and 'variations' ` +
|
|
6200
|
+
`properties while actually has type ${namedParameters.invalidEntryValueType} ` +
|
|
6201
|
+
`and value ${namedParameters.invalidEntryStringifiedValue}`,
|
|
6202
|
+
generateInvalidPageStateVariableNameMessage: (namedParameters) => "Invalid page state variable name ('stateObjectTypeVariableName') has been specified for the markup file " +
|
|
6203
|
+
`'${namedParameters.targetMarkupFileRelativePath}' in static preview state dependent pages variations ` +
|
|
6204
|
+
"specification file. This variable name must the non-empty string while actually has type " +
|
|
6205
|
+
`'${namedParameters.specifiedTypeOfVariableNameProperty}' and value:\n ` +
|
|
6206
|
+
`${namedParameters.stringifiedValueOfSpecifiedVariableNameProperty}`,
|
|
6207
|
+
generateInvalidPageStateDependentVariationsSpecificationMessage: (namedParameters) => "Invalid state dependent page variations has been specified for the markup file " +
|
|
6208
|
+
`'${namedParameters.targetMarkupFileRelativePath}'. It must be the associative array like object while ` +
|
|
6209
|
+
`actually has type '${namedParameters.actualType}' and value: ${namedParameters.actualStringifiedValue}`,
|
|
6210
|
+
generateInvalidPageStateVariableMessage: (namedParameters) => "Invalid page state variable has been specified for the markup file " +
|
|
6211
|
+
`'${namedParameters.targetMarkupFileRelativePath}'. It must be the object while actually has type ` +
|
|
6212
|
+
`'${namedParameters.actualType}' and value: ${namedParameters.actualStringifiedValue}`
|
|
6213
|
+
};
|
|
6214
|
+
exports["default"] = MarkupProcessingRawSettingsNormalizerLocalization__English;
|
|
6215
|
+
|
|
6216
|
+
|
|
6217
|
+
/***/ }),
|
|
6218
|
+
|
|
6219
|
+
/***/ "./ProjectBuilding/SourceCodeProcessing/Markup/Subtasks/MarkupSourceCodeLinter/MarkupSourceCodeLinter.ts":
|
|
6220
|
+
/*!***************************************************************************************************************!*\
|
|
6221
|
+
!*** ./ProjectBuilding/SourceCodeProcessing/Markup/Subtasks/MarkupSourceCodeLinter/MarkupSourceCodeLinter.ts ***!
|
|
6222
|
+
\***************************************************************************************************************/
|
|
6223
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
6224
|
+
|
|
6225
|
+
|
|
6226
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6227
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
6228
|
+
};
|
|
6229
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
6230
|
+
/* --- Abstractions ------------------------------------------------------------------------------------------------- */
|
|
6231
|
+
const GulpStreamsBasedSourceCodeLinter_1 = __importDefault(__webpack_require__(/*! @ProjectBuilding/Common/TasksExecutors/GulpStreamsBased/SourceCodeLinter/GulpStreamsBasedSourceCodeLinter */ "./ProjectBuilding/Common/TasksExecutors/GulpStreamsBased/SourceCodeLinter/GulpStreamsBasedSourceCodeLinter.ts"));
|
|
6232
|
+
/* --- Applied utils ------------------------------------------------------------------------------------------------ */
|
|
6233
|
+
const gulp_1 = __importDefault(__webpack_require__(/*! gulp */ "gulp"));
|
|
6234
|
+
const pug_lint_1 = __importDefault(__webpack_require__(/*! pug-lint */ "pug-lint"));
|
|
6235
|
+
const config_file_1 = __importDefault(__webpack_require__(/*! pug-lint/lib/config-file */ "pug-lint/lib/config-file"));
|
|
6236
|
+
const gulp_if_1 = __importDefault(__webpack_require__(/*! gulp-if */ "gulp-if"));
|
|
6237
|
+
const GulpStreamModifier_1 = __importDefault(__webpack_require__(/*! @Utils/GulpStreamModifier */ "./Utils/GulpStreamModifier.ts"));
|
|
6238
|
+
const createImmediatelyEndingEmptyStream_1 = __importDefault(__webpack_require__(/*! @Utils/createImmediatelyEndingEmptyStream */ "./Utils/createImmediatelyEndingEmptyStream.ts"));
|
|
6239
|
+
const stream_combiner2_1 = __webpack_require__(/*! stream-combiner2 */ "stream-combiner2");
|
|
6240
|
+
const DotYDA_DirectoryManager_1 = __importDefault(__webpack_require__(/*! @Utils/DotYDA_DirectoryManager */ "./Utils/DotYDA_DirectoryManager.ts"));
|
|
6241
|
+
/* --- General utils ------------------------------------------------------------------------------------------------ */
|
|
6242
|
+
const fs_1 = __importDefault(__webpack_require__(/*! fs */ "fs"));
|
|
6243
|
+
const ImprovedPath_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/ImprovedPath/ImprovedPath */ "./UtilsIncubator/ImprovedPath/ImprovedPath.ts"));
|
|
6244
|
+
const ImprovedGlob_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/ImprovedGlob */ "./UtilsIncubator/ImprovedGlob.ts"));
|
|
6245
|
+
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
6246
|
+
const es_extensions_nodejs_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions-nodejs */ "@yamato-daiwa/es-extensions-nodejs");
|
|
6247
|
+
const extractSubstring_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/extractSubstring */ "./UtilsIncubator/extractSubstring.ts"));
|
|
6248
|
+
/* --- Localization ------------------------------------------------------------------------------------------------- */
|
|
6249
|
+
const MarkupSourceCodeLinterLocalization_english_1 = __importDefault(__webpack_require__(/*! @MarkupProcessing/Subtasks/MarkupSourceCodeLinter/MarkupSourceCodeLinterLocalization.english */ "./ProjectBuilding/SourceCodeProcessing/Markup/Subtasks/MarkupSourceCodeLinter/MarkupSourceCodeLinterLocalization.english.ts"));
|
|
6250
|
+
class MarkupSourceCodeLinter extends GulpStreamsBasedSourceCodeLinter_1.default {
|
|
6251
|
+
static localization = MarkupSourceCodeLinterLocalization_english_1.default;
|
|
6252
|
+
static LINTING_OPTIMIZATIONS_FILE_NAME_WITH_EXTENSION = "MarkupLintingCache.json";
|
|
6253
|
+
static cachedLintingResultsFileContentSpecification = {
|
|
6254
|
+
subtype: es_extensions_1.RawObjectDataProcessor.ObjectSubtypes.associativeArray,
|
|
6255
|
+
nameForLogging: "CachedLintingResultsFileContent",
|
|
6256
|
+
value: {
|
|
6257
|
+
type: Object,
|
|
6258
|
+
properties: {
|
|
6259
|
+
issues: {
|
|
6260
|
+
type: Array,
|
|
6261
|
+
required: true,
|
|
6262
|
+
element: {
|
|
6263
|
+
type: Object,
|
|
6264
|
+
properties: {
|
|
6265
|
+
code: {
|
|
6266
|
+
type: String,
|
|
6267
|
+
required: true,
|
|
6268
|
+
minimalCharactersCount: 1
|
|
6269
|
+
},
|
|
6270
|
+
message: {
|
|
6271
|
+
type: String,
|
|
6272
|
+
required: true,
|
|
6273
|
+
minimalCharactersCount: 1
|
|
6274
|
+
},
|
|
6275
|
+
sourceListing: {
|
|
6276
|
+
type: String,
|
|
6277
|
+
required: true
|
|
6278
|
+
},
|
|
6279
|
+
lineNumber: {
|
|
6280
|
+
type: Number,
|
|
6281
|
+
required: true,
|
|
6282
|
+
numbersSet: es_extensions_1.RawObjectDataProcessor.NumbersSets.nonNegativeInteger
|
|
6283
|
+
},
|
|
6284
|
+
columnNumber: {
|
|
6285
|
+
type: Number,
|
|
6286
|
+
required: false,
|
|
6287
|
+
numbersSet: es_extensions_1.RawObjectDataProcessor.NumbersSets.nonNegativeInteger
|
|
6288
|
+
}
|
|
6289
|
+
}
|
|
6290
|
+
}
|
|
6291
|
+
},
|
|
6292
|
+
modificationDatetime__ISO_8601: {
|
|
6293
|
+
type: String,
|
|
6294
|
+
required: true,
|
|
6295
|
+
minimalCharactersCount: 1
|
|
6296
|
+
}
|
|
6297
|
+
}
|
|
6298
|
+
}
|
|
6299
|
+
};
|
|
6300
|
+
static DISPLAYING_LINES_COUNT_BEFORE_ISSUE_IN_CODE_LISTING = 2;
|
|
6301
|
+
static DISPLAYING_LINES_COUNT_AFTER_ISSUE_IN_CODE_LISTING = 1;
|
|
6302
|
+
targetFilesGlobSelectors;
|
|
6303
|
+
TASK_NAME_FOR_LOGGING;
|
|
6304
|
+
SUBTASK_NAME_FOR_LOGGING = "Markup linting";
|
|
6305
|
+
pugLintInstance = new pug_lint_1.default();
|
|
6306
|
+
pugLintConfig;
|
|
6307
|
+
CACHED_LINTING_RESULTS_FILE_ABSOLUTE_PATH;
|
|
6308
|
+
cachedLintingResults;
|
|
6309
|
+
static provideMarkupLintingIfMust(masterConfigRepresentative) {
|
|
6310
|
+
const markupProcessingSettingsRepresentative = masterConfigRepresentative.markupProcessingSettingsRepresentative;
|
|
6311
|
+
if ((0, es_extensions_1.isUndefined)(markupProcessingSettingsRepresentative)) {
|
|
6312
|
+
return (0, createImmediatelyEndingEmptyStream_1.default)();
|
|
6313
|
+
}
|
|
6314
|
+
const pugLintConfig = config_file_1.default.load();
|
|
6315
|
+
if ((0, es_extensions_1.isUndefined)(pugLintConfig)) {
|
|
6316
|
+
es_extensions_1.Logger.logError({
|
|
6317
|
+
errorType: es_extensions_1.ConfigFileNotFoundError.NAME,
|
|
6318
|
+
title: MarkupSourceCodeLinter.localization.pugLintFileNotFoundErrorLog.title,
|
|
6319
|
+
description: es_extensions_1.ConfigFileNotFoundError.localization.generateDescription({
|
|
6320
|
+
targetTechnologyName: "pug-lint",
|
|
6321
|
+
configFilePathOrMultipleOfThem: [".pug-lintrc", ".pug-lintrc.js", ".pug-lintrc.json", "package.json[pugLintConfig]"],
|
|
6322
|
+
messageSpecificPart: MarkupSourceCodeLinter.localization.pugLintFileNotFoundErrorLog.
|
|
6323
|
+
pugLintConfigurationFileRequirementExplanation
|
|
6324
|
+
}),
|
|
6325
|
+
occurrenceLocation: "MarkupSourceCodeLinter.provideMarkupLintingIfMust(masterConfigRepresentative)"
|
|
6326
|
+
});
|
|
6327
|
+
return (0, createImmediatelyEndingEmptyStream_1.default)();
|
|
6328
|
+
}
|
|
6329
|
+
const dataHoldingSelfInstance = new MarkupSourceCodeLinter({
|
|
6330
|
+
masterConfigRepresentative,
|
|
6331
|
+
markupProcessingSettingsRepresentative,
|
|
6332
|
+
pugLintConfig
|
|
6333
|
+
});
|
|
6334
|
+
return dataHoldingSelfInstance.lint(dataHoldingSelfInstance.targetFilesGlobSelectors);
|
|
6335
|
+
}
|
|
6336
|
+
constructor({ masterConfigRepresentative, markupProcessingSettingsRepresentative, pugLintConfig }) {
|
|
6337
|
+
super(masterConfigRepresentative);
|
|
6338
|
+
this.CACHED_LINTING_RESULTS_FILE_ABSOLUTE_PATH = ImprovedPath_1.default.joinPathSegments([
|
|
6339
|
+
DotYDA_DirectoryManager_1.default.OPTIMIZATION_FILES_DIRECTORY_ABSOLUTE_PATH,
|
|
6340
|
+
MarkupSourceCodeLinter.LINTING_OPTIMIZATIONS_FILE_NAME_WITH_EXTENSION
|
|
6341
|
+
], { forwardSlashOnlySeparators: true });
|
|
6342
|
+
if (fs_1.default.existsSync(this.CACHED_LINTING_RESULTS_FILE_ABSOLUTE_PATH)) {
|
|
6343
|
+
try {
|
|
6344
|
+
this.cachedLintingResults = es_extensions_nodejs_1.ObjectDataFilesProcessor.processFile({
|
|
6345
|
+
filePath: this.CACHED_LINTING_RESULTS_FILE_ABSOLUTE_PATH,
|
|
6346
|
+
validDataSpecification: MarkupSourceCodeLinter.cachedLintingResultsFileContentSpecification
|
|
6347
|
+
});
|
|
6348
|
+
}
|
|
6349
|
+
catch (error) {
|
|
6350
|
+
es_extensions_1.Logger.logError({
|
|
6351
|
+
errorType: es_extensions_1.InvalidExternalDataError.NAME,
|
|
6352
|
+
title: es_extensions_1.InvalidExternalDataError.localization.defaultTitle,
|
|
6353
|
+
description: es_extensions_1.PoliteErrorsMessagesBuilder.buildMessage({
|
|
6354
|
+
technicalDetails: es_extensions_1.InvalidExternalDataError.localization.generateDescription({
|
|
6355
|
+
mentionToExpectedData: MarkupSourceCodeLinter.cachedLintingResultsFileContentSpecification.nameForLogging
|
|
6356
|
+
}),
|
|
6357
|
+
politeExplanation: MarkupSourceCodeLinter.localization.invalidCachedLintingResultsDataErrorLog.politeExplanation
|
|
6358
|
+
}),
|
|
6359
|
+
occurrenceLocation: "MarkupSourceCodeLinter.provideMarkupProcessingIfMust(masterConfigRepresentative)",
|
|
6360
|
+
caughtError: error
|
|
6361
|
+
});
|
|
6362
|
+
this.cachedLintingResults = {};
|
|
6363
|
+
}
|
|
6364
|
+
}
|
|
6365
|
+
else {
|
|
6366
|
+
this.cachedLintingResults = {};
|
|
6367
|
+
}
|
|
6368
|
+
this.targetFilesGlobSelectors = [
|
|
6369
|
+
ImprovedGlob_1.default.buildAllFilesInCurrentDirectoryAndBelowGlobSelector({
|
|
6370
|
+
basicDirectoryPath: masterConfigRepresentative.consumingProjectRootDirectoryAbsolutePath,
|
|
6371
|
+
fileNamesExtensions: ["pug"]
|
|
6372
|
+
}),
|
|
6373
|
+
...(0, es_extensions_1.isNonEmptyArray)(pugLintConfig.excludeFiles) ? pugLintConfig.excludeFiles.map((globSelector) => ImprovedGlob_1.default.buildAbsolutePathBasedGlob({
|
|
6374
|
+
isExclusive: true,
|
|
6375
|
+
basicDirectoryPath: masterConfigRepresentative.consumingProjectRootDirectoryAbsolutePath,
|
|
6376
|
+
relativePathBasedGlob: globSelector
|
|
6377
|
+
})) : []
|
|
6378
|
+
];
|
|
6379
|
+
this.pugLintConfig = pugLintConfig;
|
|
6380
|
+
this.pugLintInstance.configure(this.pugLintConfig);
|
|
6381
|
+
this.TASK_NAME_FOR_LOGGING = markupProcessingSettingsRepresentative.TASK_NAME_FOR_LOGGING;
|
|
6382
|
+
}
|
|
6383
|
+
lint(globSelectorOrAbsolutePathsOfTargetFiles) {
|
|
6384
|
+
if (globSelectorOrAbsolutePathsOfTargetFiles.length === 0) {
|
|
6385
|
+
return (0, createImmediatelyEndingEmptyStream_1.default)();
|
|
6386
|
+
}
|
|
6387
|
+
return () => gulp_1.default.
|
|
6388
|
+
/* [ Theory ] No need to read the file immediately - maybe it has not changed since last modification thus linting
|
|
6389
|
+
results could be cached. */
|
|
6390
|
+
src(globSelectorOrAbsolutePathsOfTargetFiles, { read: false }).
|
|
6391
|
+
pipe(super.printProcessedFilesPathsAndQuantity({ subtaskName: this.SUBTASK_NAME_FOR_LOGGING })).
|
|
6392
|
+
pipe(super.handleErrorIfItWillOccur()).
|
|
6393
|
+
pipe((0, gulp_if_1.default)((markupSourceFile) => this.hasLintingResultsBeenCachedForSpecificMarkupSourceFile(markupSourceFile), GulpStreamModifier_1.default.modify({
|
|
6394
|
+
onStreamStartedEventCommonHandler: async (markupSourceFile) => {
|
|
6395
|
+
markupSourceFile.lintingResults = this.cachedLintingResults[markupSourceFile.path]?.issues;
|
|
6396
|
+
return Promise.resolve(GulpStreamModifier_1.default.CompletionSignals.PASSING_ON);
|
|
6397
|
+
}
|
|
6398
|
+
}), (0, stream_combiner2_1.obj)(GulpStreamModifier_1.default.modify({
|
|
6399
|
+
async onStreamStartedEventCommonHandler(file) {
|
|
6400
|
+
file.contents = fs_1.default.readFileSync(file.path);
|
|
6401
|
+
return Promise.resolve(GulpStreamModifier_1.default.CompletionSignals.PASSING_ON);
|
|
6402
|
+
}
|
|
6403
|
+
}), GulpStreamModifier_1.default.modify({
|
|
6404
|
+
onStreamStartedEventCommonHandler: async (file) => {
|
|
6405
|
+
let lintingIssues;
|
|
6406
|
+
try {
|
|
6407
|
+
lintingIssues = this.pugLintInstance.checkFile(file.path).
|
|
6408
|
+
map((error) => ({
|
|
6409
|
+
code: error.code,
|
|
6410
|
+
message: error.msg,
|
|
6411
|
+
sourceListing: error.src,
|
|
6412
|
+
lineNumber: error.line,
|
|
6413
|
+
columnNumber: error.column
|
|
6414
|
+
}));
|
|
6415
|
+
}
|
|
6416
|
+
catch (error) {
|
|
6417
|
+
es_extensions_1.Logger.throwErrorAndLog({
|
|
6418
|
+
errorType: "MarkupLintingError",
|
|
6419
|
+
title: MarkupSourceCodeLinter.localization.pugLintingFailedErrorLog.title,
|
|
6420
|
+
description: es_extensions_1.PoliteErrorsMessagesBuilder.buildMessage({
|
|
6421
|
+
technicalDetails: MarkupSourceCodeLinter.localization.pugLintingFailedErrorLog.technicalDetails,
|
|
6422
|
+
politeExplanation: MarkupSourceCodeLinter.localization.pugLintingFailedErrorLog.politeExplanation
|
|
6423
|
+
}),
|
|
6424
|
+
occurrenceLocation: "markupSourceCodeLinter.lint()",
|
|
6425
|
+
wrappableError: error
|
|
6426
|
+
});
|
|
6427
|
+
}
|
|
6428
|
+
file.lintingIssues = lintingIssues;
|
|
6429
|
+
return Promise.resolve(GulpStreamModifier_1.default.CompletionSignals.PASSING_ON);
|
|
6430
|
+
}
|
|
6431
|
+
}), GulpStreamModifier_1.default.modify({
|
|
6432
|
+
onStreamStartedEventCommonHandler: async (file) => {
|
|
6433
|
+
this.cachedLintingResults[ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(file.relative)] = {
|
|
6434
|
+
issues: file.lintingIssues,
|
|
6435
|
+
modificationDatetime__ISO_8601: file.stat?.mtime.toJSON() ?? new Date().toISOString()
|
|
6436
|
+
};
|
|
6437
|
+
return Promise.resolve(GulpStreamModifier_1.default.CompletionSignals.PASSING_ON);
|
|
6438
|
+
}
|
|
6439
|
+
})))).
|
|
6440
|
+
on("end", () => {
|
|
6441
|
+
const atLeastOneLintingIssueFound = Object.values(this.cachedLintingResults).some((lintingResult) => (0, es_extensions_1.isNotUndefined)(lintingResult) && lintingResult.issues.length > 0);
|
|
6442
|
+
if (atLeastOneLintingIssueFound) {
|
|
6443
|
+
const issuesFormattedLogs = [];
|
|
6444
|
+
for (const [fileRelativePath, lintingResult] of Object.entries(this.cachedLintingResults)) {
|
|
6445
|
+
if ((0, es_extensions_1.isUndefined)(lintingResult) || lintingResult.issues.length === 0) {
|
|
6446
|
+
continue;
|
|
6447
|
+
}
|
|
6448
|
+
issuesFormattedLogs.push(`■ ${fileRelativePath}: ${lintingResult.issues.length} issue(s)` +
|
|
6449
|
+
`\n${MarkupSourceCodeLinter.formatIssuesOfSingleFile(lintingResult)}`);
|
|
6450
|
+
}
|
|
6451
|
+
es_extensions_1.Logger.logErrorLikeMessage({
|
|
6452
|
+
title: "Markup linting, issue(s) found",
|
|
6453
|
+
description: `\n${issuesFormattedLogs.join("\n\n")}`
|
|
6454
|
+
});
|
|
6455
|
+
}
|
|
6456
|
+
fs_1.default.writeFileSync(this.CACHED_LINTING_RESULTS_FILE_ABSOLUTE_PATH, (0, es_extensions_1.stringifyAndFormatArbitraryValue)(this.cachedLintingResults));
|
|
6457
|
+
});
|
|
6458
|
+
}
|
|
6459
|
+
hasLintingResultsBeenCachedForSpecificMarkupSourceFile(targetMarkupSourceFile) {
|
|
6460
|
+
return this.cachedLintingResults[ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(targetMarkupSourceFile.relative)]?.
|
|
6461
|
+
modificationDatetime__ISO_8601 === targetMarkupSourceFile.stat?.mtime.toJSON();
|
|
6462
|
+
}
|
|
6463
|
+
static formatIssuesOfSingleFile(lintingResult) {
|
|
6464
|
+
return lintingResult.issues.map((issue) => "------------------------------------------------------------------------------------------------------\n" +
|
|
6465
|
+
`${MarkupSourceCodeLinter.createExtractionFromCodeListingWithHighlightedIssueLine(issue)}\n` +
|
|
6466
|
+
"------------------------------------------------------------------------------------------------------\n" +
|
|
6467
|
+
`${issue.message}\n` +
|
|
6468
|
+
`at line ${issue.lineNumber}` +
|
|
6469
|
+
`${(0, es_extensions_1.insertSubstring)(issue.columnNumber, {
|
|
6470
|
+
modifier: (stringifiedColumnNumber) => `, column ${stringifiedColumnNumber}`
|
|
6471
|
+
})}`).join("\n\n");
|
|
6472
|
+
}
|
|
6473
|
+
static createExtractionFromCodeListingWithHighlightedIssueLine(issue) {
|
|
6474
|
+
const sourceCodeListingExplodedToLines = issue.sourceListing.split("\n");
|
|
6475
|
+
if ((0, es_extensions_1.isUndefined)(issue.columnNumber)) {
|
|
6476
|
+
sourceCodeListingExplodedToLines[issue.lineNumber - 1] =
|
|
6477
|
+
es_extensions_1.Logger.highlightText(sourceCodeListingExplodedToLines[issue.lineNumber - 1]);
|
|
6478
|
+
}
|
|
6479
|
+
else {
|
|
6480
|
+
const targetCodeLine = sourceCodeListingExplodedToLines[issue.lineNumber - 1];
|
|
6481
|
+
const codeFragmentPartWhichMustBeHighlighted = (0, extractSubstring_1.default)(targetCodeLine, {
|
|
6482
|
+
startingSymbolNumber__numerationFrom1: issue.columnNumber,
|
|
6483
|
+
lastSymbolNumber__numerationFrom0: targetCodeLine.length - 1
|
|
6484
|
+
});
|
|
6485
|
+
sourceCodeListingExplodedToLines[issue.lineNumber - 1] = targetCodeLine.replace(codeFragmentPartWhichMustBeHighlighted, es_extensions_1.Logger.highlightText(codeFragmentPartWhichMustBeHighlighted));
|
|
6486
|
+
}
|
|
6487
|
+
let firstLineWhichBeExtractedFromCodeListingForLogging = issue.lineNumber - 1 -
|
|
6488
|
+
MarkupSourceCodeLinter.DISPLAYING_LINES_COUNT_BEFORE_ISSUE_IN_CODE_LISTING;
|
|
6489
|
+
if (firstLineWhichBeExtractedFromCodeListingForLogging < 0) {
|
|
6490
|
+
firstLineWhichBeExtractedFromCodeListingForLogging = 0;
|
|
6491
|
+
}
|
|
6492
|
+
let lastLineWhichBeExtractedFromCodeListingForLogging = issue.lineNumber +
|
|
6493
|
+
MarkupSourceCodeLinter.DISPLAYING_LINES_COUNT_AFTER_ISSUE_IN_CODE_LISTING;
|
|
6494
|
+
if (lastLineWhichBeExtractedFromCodeListingForLogging > sourceCodeListingExplodedToLines.length) {
|
|
6495
|
+
lastLineWhichBeExtractedFromCodeListingForLogging = sourceCodeListingExplodedToLines.length;
|
|
6496
|
+
}
|
|
6497
|
+
const partialListing = sourceCodeListingExplodedToLines.slice(firstLineWhichBeExtractedFromCodeListingForLogging, lastLineWhichBeExtractedFromCodeListingForLogging);
|
|
6498
|
+
return partialListing.join("\n");
|
|
6499
|
+
}
|
|
6500
|
+
}
|
|
6501
|
+
exports["default"] = MarkupSourceCodeLinter;
|
|
6502
|
+
|
|
6503
|
+
|
|
6504
|
+
/***/ }),
|
|
6505
|
+
|
|
6506
|
+
/***/ "./ProjectBuilding/SourceCodeProcessing/Markup/Subtasks/MarkupSourceCodeLinter/MarkupSourceCodeLinterLocalization.english.ts":
|
|
6507
|
+
/*!***********************************************************************************************************************************!*\
|
|
6508
|
+
!*** ./ProjectBuilding/SourceCodeProcessing/Markup/Subtasks/MarkupSourceCodeLinter/MarkupSourceCodeLinterLocalization.english.ts ***!
|
|
6509
|
+
\***********************************************************************************************************************************/
|
|
6510
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
6511
|
+
|
|
6512
|
+
|
|
6513
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
6514
|
+
const markupSourceCodeLinterLocalization__english = {
|
|
6515
|
+
pugLintFileNotFoundErrorLog: {
|
|
6516
|
+
title: "'pug-lint' configuration file not found",
|
|
6517
|
+
pugLintConfigurationFileRequirementExplanation: "Intended to be used for high quality web/native development, " +
|
|
6518
|
+
"the markup source code linting is enabled by default. If you can not use it for some reason, disable it."
|
|
6519
|
+
},
|
|
6520
|
+
invalidCachedLintingResultsDataErrorLog: {
|
|
6521
|
+
politeExplanation: "The error occurred during the parsing of the file with previous (cached) markup linting results. " +
|
|
6522
|
+
"Of course the YDA developers has took care about written data matching with expected scheme, however this bug " +
|
|
6523
|
+
"occurrence means that some combination of conditions was not taken into account."
|
|
6524
|
+
},
|
|
6525
|
+
pugLintingFailedErrorLog: {
|
|
6526
|
+
title: "Markup linting error",
|
|
6527
|
+
technicalDetails: "The error occurred during execution of 'pugLintInstance.checkFile(filePath)'",
|
|
6528
|
+
politeExplanation: "The Pug linter has thrown the error under unknown for YDA developers combination " +
|
|
6529
|
+
" of conditions."
|
|
6530
|
+
}
|
|
6531
|
+
};
|
|
6532
|
+
exports["default"] = markupSourceCodeLinterLocalization__english;
|
|
6533
|
+
|
|
6534
|
+
|
|
5753
6535
|
/***/ }),
|
|
5754
6536
|
|
|
5755
6537
|
/***/ "./ProjectBuilding/SourceCodeProcessing/Styles/StylesProcessingRawSettingsNormalizer.ts":
|
|
@@ -5787,7 +6569,7 @@ class StylesProcessingRawSettingsNormalizer extends SourceCodeProcessingRawSetti
|
|
|
5787
6569
|
isCompletelyDisabled: stylesProcessingSettings__fromFile__rawValid.linting.disableCompletely === true ?
|
|
5788
6570
|
true : !StylesProcessingSettings__Default_1.default.linting.mustExecute,
|
|
5789
6571
|
...(0, es_extensions_1.isNotUndefined)(stylesProcessingSettings__fromFile__rawValid.linting.presetFileRelativePath) ? {
|
|
5790
|
-
presetFileAbsolutePath: ImprovedPath_1.default.
|
|
6572
|
+
presetFileAbsolutePath: ImprovedPath_1.default.joinPathSegments([
|
|
5791
6573
|
commonSettings__normalized.projectRootDirectoryAbsolutePath,
|
|
5792
6574
|
StlintLinterSpecialist_1.default.DEFAULT_CONFIG_FILE_NAME_WITH_EXTENSION
|
|
5793
6575
|
], { forwardSlashOnlySeparators: true })
|
|
@@ -5888,7 +6670,6 @@ const StylusPreProcessorSpecialist_1 = __importDefault(__webpack_require__(/*! @
|
|
|
5888
6670
|
/* --- Auxiliaries -------------------------------------------------------------------------------------------------- */
|
|
5889
6671
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
5890
6672
|
const ImprovedPath_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/ImprovedPath/ImprovedPath */ "./UtilsIncubator/ImprovedPath/ImprovedPath.ts"));
|
|
5891
|
-
const PoliteErrorsMessagesBuilder_1 = __importDefault(__webpack_require__(/*! @Utils/PoliteErrorsMessagesBuilder */ "./Utils/PoliteErrorsMessagesBuilder.ts"));
|
|
5892
6673
|
class StylesProcessingSettingsRepresentative extends GulpStreamBasedSourceCodeProcessingConfigRepresentative_1.default {
|
|
5893
6674
|
static #localization = {
|
|
5894
6675
|
targetFilesType: {
|
|
@@ -5936,7 +6717,7 @@ class StylesProcessingSettingsRepresentative extends GulpStreamBasedSourceCodePr
|
|
|
5936
6717
|
extractLastFilenameExtensionWithoutFirstDot(targetFilePath);
|
|
5937
6718
|
if ((0, es_extensions_1.isNull)(filenameExtensionOfTargetFile)) {
|
|
5938
6719
|
es_extensions_1.Logger.throwErrorAndLog({
|
|
5939
|
-
errorInstance: new es_extensions_1.UnexpectedEventError(
|
|
6720
|
+
errorInstance: new es_extensions_1.UnexpectedEventError(es_extensions_1.PoliteErrorsMessagesBuilder.buildMessage({
|
|
5940
6721
|
technicalDetails: StylesProcessingSettingsRepresentative.#localization.errorsMessagesData.
|
|
5941
6722
|
unableToDecideMustFileBePrecessedByStylusPreProcessorBecauseFileNameExtensionIsMissing.
|
|
5942
6723
|
generateTechnicalDetails({ filePath: targetFilePath }),
|
|
@@ -6087,6 +6868,7 @@ var StylesProcessingSettings__FromFile__RawValid;
|
|
|
6087
6868
|
preValidationModifications: es_extensions_1.nullToUndefined,
|
|
6088
6869
|
type: es_extensions_1.RawObjectDataProcessor.ValuesTypesIDs.associativeArrayOfUniformTypeValues,
|
|
6089
6870
|
required: true,
|
|
6871
|
+
allowedKeys: Object.values(ConsumingProjectPreDefinedBuildingModes_1.default),
|
|
6090
6872
|
minimalEntriesCount: 1,
|
|
6091
6873
|
keysRenamings: {
|
|
6092
6874
|
[consumingProjectLocalizedPreDefinedBuildingModes.localDevelopment]: ConsumingProjectPreDefinedBuildingModes_1.default.staticPreview,
|
|
@@ -6188,7 +6970,7 @@ class StylesProcessor extends GulpStreamsBasedSourceCodeProcessor_1.default {
|
|
|
6188
6970
|
pipe((0, gulp_if_1.default)(this.masterConfigRepresentative.isStaticPreviewBuildingMode ||
|
|
6189
6971
|
this.masterConfigRepresentative.isLocalDevelopmentBuildingMode, gulp_sourcemaps_1.default.init())).
|
|
6190
6972
|
pipe((0, gulp_if_1.default)((file) => file.mustBeProcessedByStylus, (0, gulp_stylus_1.default)({
|
|
6191
|
-
/* [ Theory ] Allows to "@include XXX.css" which is critical for third-party libraries usage. */
|
|
6973
|
+
/* [ Theory ] Allows to "@include XXX.css" which is critical for third-party libraries' usage. */
|
|
6192
6974
|
"include css": true
|
|
6193
6975
|
}))).
|
|
6194
6976
|
pipe((0, gulp_postcss_1.default)(() => ({
|
|
@@ -6233,7 +7015,7 @@ class StylesProcessor extends GulpStreamsBasedSourceCodeProcessor_1.default {
|
|
|
6233
7015
|
}
|
|
6234
7016
|
this.stylesProcessingConfigRepresentative.
|
|
6235
7017
|
sourceAndOutputFilesAbsolutePathsCorrespondenceMap.
|
|
6236
|
-
set(ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(compiledStylesheet.sourceAbsolutePath), ImprovedPath_1.default.joinPathSegments(compiledStylesheet.outputDirectoryAbsolutePath, compiledStylesheet.basename));
|
|
7018
|
+
set(ImprovedPath_1.default.replacePathSeparatorsToForwardSlashes(compiledStylesheet.sourceAbsolutePath), ImprovedPath_1.default.joinPathSegments([compiledStylesheet.outputDirectoryAbsolutePath, compiledStylesheet.basename], { forwardSlashOnlySeparators: true }));
|
|
6237
7019
|
return compiledStylesheet;
|
|
6238
7020
|
}
|
|
6239
7021
|
}
|
|
@@ -6265,11 +7047,11 @@ var ChokidarSpecialist;
|
|
|
6265
7047
|
})(EventsNames = ChokidarSpecialist.EventsNames || (ChokidarSpecialist.EventsNames = {}));
|
|
6266
7048
|
function getEventNameInterpretation(eventName) {
|
|
6267
7049
|
switch (eventName) {
|
|
6268
|
-
case EventsNames.fileAdded: return "File added";
|
|
6269
|
-
case EventsNames.fileChanged: return "File changed";
|
|
6270
|
-
case EventsNames.fileDeleted: return "File deleted";
|
|
6271
|
-
case EventsNames.directoryAdded: return "Directory added";
|
|
6272
|
-
case EventsNames.directoryDeleted: return "Directory deleted";
|
|
7050
|
+
case EventsNames.fileAdded: return "File has been added";
|
|
7051
|
+
case EventsNames.fileChanged: return "File has changed";
|
|
7052
|
+
case EventsNames.fileDeleted: return "File has been deleted";
|
|
7053
|
+
case EventsNames.directoryAdded: return "Directory has been added";
|
|
7054
|
+
case EventsNames.directoryDeleted: return "Directory has been deleted";
|
|
6273
7055
|
case EventsNames.errorOccurred: return "Error occurred";
|
|
6274
7056
|
case EventsNames.initialScanComplete: return "Initial scan complete";
|
|
6275
7057
|
default: return eventName;
|
|
@@ -6416,6 +7198,7 @@ class ImprovedGlob {
|
|
|
6416
7198
|
es_extensions_1.Logger.throwErrorAndLog({
|
|
6417
7199
|
errorInstance: new es_extensions_1.InvalidParameterValueError({
|
|
6418
7200
|
parameterName: "parametersObject.filesNamesPrefixes",
|
|
7201
|
+
parameterNumber: 1,
|
|
6419
7202
|
messageSpecificPart: "If must be define at leas element of 'filesNamesPrefixes'."
|
|
6420
7203
|
}),
|
|
6421
7204
|
title: es_extensions_1.InvalidParameterValueError.localization.defaultTitle,
|
|
@@ -6426,6 +7209,7 @@ class ImprovedGlob {
|
|
|
6426
7209
|
es_extensions_1.Logger.throwErrorAndLog({
|
|
6427
7210
|
errorInstance: new es_extensions_1.InvalidParameterValueError({
|
|
6428
7211
|
parameterName: "parametersObject.filesNamesExtensions",
|
|
7212
|
+
parameterNumber: 1,
|
|
6429
7213
|
messageSpecificPart: "If must be define at leas element of 'filesNamesExtensions'."
|
|
6430
7214
|
}),
|
|
6431
7215
|
title: es_extensions_1.InvalidParameterValueError.localization.defaultTitle,
|
|
@@ -6443,6 +7227,7 @@ class ImprovedGlob {
|
|
|
6443
7227
|
es_extensions_1.Logger.throwErrorAndLog({
|
|
6444
7228
|
errorInstance: new es_extensions_1.InvalidParameterValueError({
|
|
6445
7229
|
parameterName: "parametersObject.subdirectoriesPrefixes",
|
|
7230
|
+
parameterNumber: 1,
|
|
6446
7231
|
messageSpecificPart: "If must be define at leas element of 'subdirectoriesPrefixes'."
|
|
6447
7232
|
}),
|
|
6448
7233
|
title: es_extensions_1.InvalidParameterValueError.localization.defaultTitle,
|
|
@@ -6462,6 +7247,7 @@ class ImprovedGlob {
|
|
|
6462
7247
|
es_extensions_1.Logger.throwErrorAndLog({
|
|
6463
7248
|
errorInstance: new es_extensions_1.InvalidParameterValueError({
|
|
6464
7249
|
parameterName: "parametersObject.subdirectoriesNames",
|
|
7250
|
+
parameterNumber: 1,
|
|
6465
7251
|
messageSpecificPart: "If must be define at leas element of 'subdirectoriesNames'."
|
|
6466
7252
|
}),
|
|
6467
7253
|
title: es_extensions_1.InvalidParameterValueError.localization.defaultTitle,
|
|
@@ -6481,6 +7267,12 @@ class ImprovedGlob {
|
|
|
6481
7267
|
static createMultipleFilenameExtensionsGlobPostfix(fileNamesExtensions) {
|
|
6482
7268
|
return `.@(${fileNamesExtensions.join("|").replace(/\./gu, "")})`;
|
|
6483
7269
|
}
|
|
7270
|
+
static buildAbsolutePathBasedGlob(namedParameters) {
|
|
7271
|
+
// TODO Parameters validation
|
|
7272
|
+
return `${(0, es_extensions_1.insertSubstringIf)("!", namedParameters.isExclusive === true)}` +
|
|
7273
|
+
`${(0, removeSlashes_1.default)(namedParameters.basicDirectoryPath, { leading: false, trailing: true })}/` +
|
|
7274
|
+
`${(0, removeSlashes_1.default)(namedParameters.relativePathBasedGlob, { leading: true, trailing: true })}`;
|
|
7275
|
+
}
|
|
6484
7276
|
static isExcludingGlobSelector(globSelector) {
|
|
6485
7277
|
if (globSelector.length === 0) {
|
|
6486
7278
|
return false;
|
|
@@ -6507,11 +7299,6 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
6507
7299
|
const path_1 = __importDefault(__webpack_require__(/*! path */ "path"));
|
|
6508
7300
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
6509
7301
|
class ImprovedPath {
|
|
6510
|
-
static buildAbsolutePath(pathSegments, options) {
|
|
6511
|
-
return options?.forwardSlashOnlySeparators === true ?
|
|
6512
|
-
(0, es_extensions_1.replaceDoubleBackslashesWithForwardSlashes)(path_1.default.resolve(...pathSegments)) :
|
|
6513
|
-
path_1.default.resolve(...pathSegments);
|
|
6514
|
-
}
|
|
6515
7302
|
static parsePath(targetPath, options) {
|
|
6516
7303
|
const parsedPath = path_1.default.parse(targetPath);
|
|
6517
7304
|
const root = options?.forwardSlashOnlySeparators === true ?
|
|
@@ -6640,8 +7427,10 @@ class ImprovedPath {
|
|
|
6640
7427
|
static computeRelativePath(parametersObject) {
|
|
6641
7428
|
return (0, es_extensions_1.replaceDoubleBackslashesWithForwardSlashes)(path_1.default.relative(parametersObject.basePath, parametersObject.comparedPath));
|
|
6642
7429
|
}
|
|
6643
|
-
static joinPathSegments(
|
|
6644
|
-
return
|
|
7430
|
+
static joinPathSegments(pathSegments, options) {
|
|
7431
|
+
return options?.forwardSlashOnlySeparators === true ?
|
|
7432
|
+
(0, es_extensions_1.replaceDoubleBackslashesWithForwardSlashes)(path_1.default.join(...pathSegments)) :
|
|
7433
|
+
path_1.default.join(...pathSegments);
|
|
6645
7434
|
}
|
|
6646
7435
|
static splitPathToSegments(targetPath) {
|
|
6647
7436
|
return path_1.default.normalize(targetPath).split(path_1.default.sep);
|
|
@@ -6687,7 +7476,7 @@ class ImprovedPath {
|
|
|
6687
7476
|
predicate: (pathSegment) => targetPathSegments.includes(pathSegment),
|
|
6688
7477
|
mutably: true
|
|
6689
7478
|
});
|
|
6690
|
-
return ImprovedPath.joinPathSegments(
|
|
7479
|
+
return ImprovedPath.joinPathSegments(targetPath__splitToSegments, { forwardSlashOnlySeparators: true });
|
|
6691
7480
|
}
|
|
6692
7481
|
static isFilenameExtensionIs(targetFilePath, _filenameExtensions) {
|
|
6693
7482
|
let filenameExtensions;
|
|
@@ -6712,74 +7501,398 @@ class ImprovedPath {
|
|
|
6712
7501
|
static getCurrentWorkDirectory() {
|
|
6713
7502
|
return (0, es_extensions_1.replaceDoubleBackslashesWithForwardSlashes)(process.cwd());
|
|
6714
7503
|
}
|
|
6715
|
-
}
|
|
6716
|
-
|
|
6717
|
-
|
|
6718
|
-
|
|
6719
|
-
|
|
6720
|
-
|
|
6721
|
-
|
|
6722
|
-
|
|
6723
|
-
!*** ./UtilsIncubator/Logging/Errors/InvalidConsoleCommandError.ts ***!
|
|
6724
|
-
\*********************************************************************/
|
|
6725
|
-
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
6726
|
-
|
|
6727
|
-
|
|
6728
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6729
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
6730
|
-
};
|
|
6731
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
6732
|
-
const InvalidConsoleCommandErrorLocalization__English_1 = __importDefault(__webpack_require__(/*! ./InvalidConsoleCommandErrorLocalization__English */ "./UtilsIncubator/Logging/Errors/InvalidConsoleCommandErrorLocalization__English.ts"));
|
|
6733
|
-
class InvalidConsoleCommandError extends Error {
|
|
6734
|
-
static NAME = "InvalidConsoleCommandError";
|
|
6735
|
-
static get DEFAULT_TITLE() {
|
|
6736
|
-
return InvalidConsoleCommandError.localization.defaultTitle;
|
|
6737
|
-
}
|
|
6738
|
-
static localization = InvalidConsoleCommandErrorLocalization__English_1.default;
|
|
6739
|
-
constructor(namedParameters) {
|
|
6740
|
-
super();
|
|
6741
|
-
this.name = InvalidConsoleCommandError.NAME;
|
|
6742
|
-
if ("customMessage" in namedParameters) {
|
|
6743
|
-
this.message = namedParameters.customMessage;
|
|
6744
|
-
}
|
|
6745
|
-
else {
|
|
6746
|
-
this.message = InvalidConsoleCommandError.localization.generateDescription(namedParameters);
|
|
6747
|
-
}
|
|
7504
|
+
static addFileNameExtensionIfNotPresent({ targetFilePath, fileNameExtension }) {
|
|
7505
|
+
return ImprovedPath.hasFilenameExtension(targetFilePath) ?
|
|
7506
|
+
targetFilePath :
|
|
7507
|
+
`${targetFilePath}.${(0, es_extensions_1.removeSpecificCharacterFromCertainPosition)({
|
|
7508
|
+
targetString: fileNameExtension,
|
|
7509
|
+
fromFirstPosition: true,
|
|
7510
|
+
targetCharacter: "."
|
|
7511
|
+
})}`;
|
|
6748
7512
|
}
|
|
6749
7513
|
}
|
|
6750
|
-
exports["default"] =
|
|
7514
|
+
exports["default"] = ImprovedPath;
|
|
6751
7515
|
|
|
6752
7516
|
|
|
6753
7517
|
/***/ }),
|
|
6754
7518
|
|
|
6755
|
-
/***/ "./UtilsIncubator/
|
|
6756
|
-
|
|
6757
|
-
!*** ./UtilsIncubator/
|
|
6758
|
-
|
|
7519
|
+
/***/ "./UtilsIncubator/Stopwatch.ts":
|
|
7520
|
+
/*!*************************************!*\
|
|
7521
|
+
!*** ./UtilsIncubator/Stopwatch.ts ***!
|
|
7522
|
+
\*************************************/
|
|
6759
7523
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
6760
7524
|
|
|
6761
7525
|
|
|
6762
7526
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
6763
7527
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
6764
|
-
|
|
6765
|
-
|
|
6766
|
-
|
|
6767
|
-
|
|
6768
|
-
|
|
6769
|
-
|
|
6770
|
-
}
|
|
6771
|
-
|
|
6772
|
-
|
|
6773
|
-
|
|
6774
|
-
|
|
6775
|
-
|
|
6776
|
-
|
|
6777
|
-
|
|
6778
|
-
|
|
6779
|
-
|
|
6780
|
-
|
|
6781
|
-
|
|
6782
|
-
|
|
7528
|
+
class Stopwatch {
|
|
7529
|
+
activationUnixTimestamp__milliseconds = 0;
|
|
7530
|
+
deactivationUnixTimestamp__milliseconds = 0;
|
|
7531
|
+
startOrRestart() {
|
|
7532
|
+
if (this.activationUnixTimestamp__milliseconds === 0) {
|
|
7533
|
+
this.activationUnixTimestamp__milliseconds = Date.now();
|
|
7534
|
+
}
|
|
7535
|
+
return this;
|
|
7536
|
+
}
|
|
7537
|
+
stop() {
|
|
7538
|
+
this.deactivationUnixTimestamp__milliseconds = Date.now();
|
|
7539
|
+
const amountOfTimeElapsesBetweenActivationAndDeactivation__milliseconds = this.deactivationUnixTimestamp__milliseconds - this.activationUnixTimestamp__milliseconds;
|
|
7540
|
+
return {
|
|
7541
|
+
seconds: (0, es_extensions_1.millisecondsToSeconds)(amountOfTimeElapsesBetweenActivationAndDeactivation__milliseconds),
|
|
7542
|
+
milliseconds: amountOfTimeElapsesBetweenActivationAndDeactivation__milliseconds
|
|
7543
|
+
};
|
|
7544
|
+
}
|
|
7545
|
+
reset() {
|
|
7546
|
+
this.activationUnixTimestamp__milliseconds = 0;
|
|
7547
|
+
this.deactivationUnixTimestamp__milliseconds = 0;
|
|
7548
|
+
}
|
|
7549
|
+
}
|
|
7550
|
+
exports["default"] = Stopwatch;
|
|
7551
|
+
|
|
7552
|
+
|
|
7553
|
+
/***/ }),
|
|
7554
|
+
|
|
7555
|
+
/***/ "./UtilsIncubator/extractSubstring.ts":
|
|
7556
|
+
/*!********************************************!*\
|
|
7557
|
+
!*** ./UtilsIncubator/extractSubstring.ts ***!
|
|
7558
|
+
\********************************************/
|
|
7559
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
7560
|
+
|
|
7561
|
+
|
|
7562
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
7563
|
+
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
7564
|
+
function extractSubstring(targetString, options) {
|
|
7565
|
+
let startingSymbolNumber__numerationFrom0;
|
|
7566
|
+
if ("startingSymbolNumber__numerationFrom0" in options) {
|
|
7567
|
+
if (options.fromEnd === true) {
|
|
7568
|
+
if (!Number.isInteger(options.startingSymbolNumber__numerationFrom0)) {
|
|
7569
|
+
es_extensions_1.Logger.throwErrorAndLog({
|
|
7570
|
+
errorInstance: new es_extensions_1.InvalidParameterValueError({
|
|
7571
|
+
customMessage: "'options.startingSymbolNumber__numerationFrom0'は整数であるべきが、実際の値は" +
|
|
7572
|
+
`${options.startingSymbolNumber__numerationFrom0}と成っている。`
|
|
7573
|
+
}),
|
|
7574
|
+
occurrenceLocation: "extractSubstring(targetString, options)",
|
|
7575
|
+
title: es_extensions_1.InvalidParameterValueError.localization.defaultTitle
|
|
7576
|
+
});
|
|
7577
|
+
}
|
|
7578
|
+
// TODO (1) должно быть целым числом (проверено), большим -1 и не больше чем length-1
|
|
7579
|
+
startingSymbolNumber__numerationFrom0 = targetString.length - options.startingSymbolNumber__numerationFrom0;
|
|
7580
|
+
}
|
|
7581
|
+
else {
|
|
7582
|
+
// TODO (1)
|
|
7583
|
+
startingSymbolNumber__numerationFrom0 = options.startingSymbolNumber__numerationFrom0;
|
|
7584
|
+
}
|
|
7585
|
+
}
|
|
7586
|
+
else if (options.fromEnd === true) {
|
|
7587
|
+
// TODO (2) должно быть целым числом больше 0 и не больше чем length
|
|
7588
|
+
startingSymbolNumber__numerationFrom0 = targetString.length - options.startingSymbolNumber__numerationFrom1 - 1;
|
|
7589
|
+
}
|
|
7590
|
+
else {
|
|
7591
|
+
// TODO (2)
|
|
7592
|
+
startingSymbolNumber__numerationFrom0 = options.startingSymbolNumber__numerationFrom1 - 1;
|
|
7593
|
+
}
|
|
7594
|
+
let lastSymbolNumber__numerationFrom1;
|
|
7595
|
+
if ("lastSymbolNumber__numerationFrom1" in options) {
|
|
7596
|
+
if (options.fromEnd === true) {
|
|
7597
|
+
// TODO (3) должно быть целым числом, большим -1 и не больше чем length-1, при этом бОльшим
|
|
7598
|
+
// startingSymbolNumber__numerationFrom0 хотя бы на 1, причем когда больше на 1 подстрока будет пустой
|
|
7599
|
+
lastSymbolNumber__numerationFrom1 = targetString.length - options.lastSymbolNumber__numerationFrom1;
|
|
7600
|
+
}
|
|
7601
|
+
else {
|
|
7602
|
+
// TODO (3)
|
|
7603
|
+
lastSymbolNumber__numerationFrom1 = options.lastSymbolNumber__numerationFrom1;
|
|
7604
|
+
}
|
|
7605
|
+
}
|
|
7606
|
+
else if ("lastSymbolNumber__numerationFrom0" in options) {
|
|
7607
|
+
if (options.fromEnd === true) {
|
|
7608
|
+
// TODO (4) должно быть целым числом, большим -1 и не больше чем length-1, при этом бОльшим либо равным
|
|
7609
|
+
// startingSymbolNumber__numerationFrom0, причем когда они равны подстрока будет пустой
|
|
7610
|
+
lastSymbolNumber__numerationFrom1 = targetString.length - options.lastSymbolNumber__numerationFrom0 - 1;
|
|
7611
|
+
}
|
|
7612
|
+
else {
|
|
7613
|
+
// TODO (4)
|
|
7614
|
+
lastSymbolNumber__numerationFrom1 = options.lastSymbolNumber__numerationFrom0 + 1;
|
|
7615
|
+
}
|
|
7616
|
+
}
|
|
7617
|
+
else if (options.fromEnd === true) {
|
|
7618
|
+
lastSymbolNumber__numerationFrom1 = startingSymbolNumber__numerationFrom0 - options.substringLength;
|
|
7619
|
+
}
|
|
7620
|
+
else {
|
|
7621
|
+
lastSymbolNumber__numerationFrom1 = startingSymbolNumber__numerationFrom0 + options.substringLength;
|
|
7622
|
+
}
|
|
7623
|
+
return Array.from(targetString).
|
|
7624
|
+
slice(startingSymbolNumber__numerationFrom0, lastSymbolNumber__numerationFrom1).
|
|
7625
|
+
join("");
|
|
7626
|
+
}
|
|
7627
|
+
exports["default"] = extractSubstring;
|
|
7628
|
+
|
|
7629
|
+
|
|
7630
|
+
/***/ }),
|
|
7631
|
+
|
|
7632
|
+
/***/ "./UtilsIncubator/removeSlashes.ts":
|
|
7633
|
+
/*!*****************************************!*\
|
|
7634
|
+
!*** ./UtilsIncubator/removeSlashes.ts ***!
|
|
7635
|
+
\*****************************************/
|
|
7636
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
7637
|
+
|
|
7638
|
+
|
|
7639
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
7640
|
+
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
7641
|
+
function removeSlashes(targetString, options) {
|
|
7642
|
+
let transformingWorkpiece = targetString;
|
|
7643
|
+
if (options.leading && transformingWorkpiece.startsWith("/")) {
|
|
7644
|
+
transformingWorkpiece = (0, es_extensions_1.removeNthCharacter)(transformingWorkpiece, {
|
|
7645
|
+
targetCharacterNumber: 0,
|
|
7646
|
+
numerationFrom: 0
|
|
7647
|
+
});
|
|
7648
|
+
}
|
|
7649
|
+
if (options.trailing && transformingWorkpiece.endsWith("/")) {
|
|
7650
|
+
transformingWorkpiece = (0, es_extensions_1.removeSpecificCharacterFromCertainPosition)({
|
|
7651
|
+
targetString: transformingWorkpiece,
|
|
7652
|
+
targetCharacter: "/",
|
|
7653
|
+
fromLastPosition: true
|
|
7654
|
+
});
|
|
7655
|
+
}
|
|
7656
|
+
return transformingWorkpiece;
|
|
7657
|
+
}
|
|
7658
|
+
exports["default"] = removeSlashes;
|
|
7659
|
+
|
|
7660
|
+
|
|
7661
|
+
/***/ }),
|
|
7662
|
+
|
|
7663
|
+
/***/ "./Utils/DotYDA_DirectoryManager.ts":
|
|
7664
|
+
/*!******************************************!*\
|
|
7665
|
+
!*** ./Utils/DotYDA_DirectoryManager.ts ***!
|
|
7666
|
+
\******************************************/
|
|
7667
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
7668
|
+
|
|
7669
|
+
|
|
7670
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7671
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7672
|
+
};
|
|
7673
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
7674
|
+
const ImprovedPath_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/ImprovedPath/ImprovedPath */ "./UtilsIncubator/ImprovedPath/ImprovedPath.ts"));
|
|
7675
|
+
const fs_1 = __importDefault(__webpack_require__(/*! fs */ "fs"));
|
|
7676
|
+
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
7677
|
+
class DotYDA_DirectoryManager {
|
|
7678
|
+
static DOT_YDA_DIRECTORY_NAME = ".yda";
|
|
7679
|
+
static TEMPORARY_FILES_SUBDIRECTORY_NAME = "Temporary";
|
|
7680
|
+
static OPTIMIZATION_FILES_SUBDIRECTORY_NAME = "Optimizations";
|
|
7681
|
+
static GIT_IGNORE_FILE_NAME = ".gitignore";
|
|
7682
|
+
static selfSoleInstance = null;
|
|
7683
|
+
#DOT_YDA_DIRECTORY_ABSOLUTE_PATH;
|
|
7684
|
+
#TEMPORARY_FILES_DIRECTORY_ABSOLUTE_PATH;
|
|
7685
|
+
#OPTIMIZATION_FILES_DIRECTORY_ABSOLUTE_PATH;
|
|
7686
|
+
#GIT_IGNORE_FILE_ABSOLUTE_PATH;
|
|
7687
|
+
CONSUMING_PROJECT_ROOT_DIRECTORY_ABSOLUTE_PATH;
|
|
7688
|
+
static unrollDotYDA_Directory(consumingProjectRootDirectoryAbsolutePath) {
|
|
7689
|
+
if ((0, es_extensions_1.isNotNull)(DotYDA_DirectoryManager.selfSoleInstance)) {
|
|
7690
|
+
es_extensions_1.Logger.throwErrorAndLog({
|
|
7691
|
+
errorInstance: new es_extensions_1.ClassRedundantSubsequentInitializationError({ className: "DotYDA_DirectoryManager" }),
|
|
7692
|
+
title: es_extensions_1.ClassRedundantSubsequentInitializationError.localization.defaultTitle,
|
|
7693
|
+
occurrenceLocation: "DotYDA_DirectoryManager.unrollDotYDA_Directory(consumingProjectRootDirectoryAbsolutePath)"
|
|
7694
|
+
});
|
|
7695
|
+
}
|
|
7696
|
+
const selfSoleInstance = new DotYDA_DirectoryManager(consumingProjectRootDirectoryAbsolutePath);
|
|
7697
|
+
if (!fs_1.default.existsSync(selfSoleInstance.#DOT_YDA_DIRECTORY_ABSOLUTE_PATH)) {
|
|
7698
|
+
fs_1.default.mkdirSync(selfSoleInstance.#DOT_YDA_DIRECTORY_ABSOLUTE_PATH);
|
|
7699
|
+
}
|
|
7700
|
+
if (!fs_1.default.existsSync(selfSoleInstance.#TEMPORARY_FILES_DIRECTORY_ABSOLUTE_PATH)) {
|
|
7701
|
+
fs_1.default.mkdirSync(selfSoleInstance.#TEMPORARY_FILES_DIRECTORY_ABSOLUTE_PATH);
|
|
7702
|
+
}
|
|
7703
|
+
if (!fs_1.default.existsSync(selfSoleInstance.#OPTIMIZATION_FILES_DIRECTORY_ABSOLUTE_PATH)) {
|
|
7704
|
+
fs_1.default.mkdirSync(selfSoleInstance.#OPTIMIZATION_FILES_DIRECTORY_ABSOLUTE_PATH);
|
|
7705
|
+
}
|
|
7706
|
+
if (!fs_1.default.existsSync(selfSoleInstance.#GIT_IGNORE_FILE_ABSOLUTE_PATH)) {
|
|
7707
|
+
fs_1.default.writeFileSync(selfSoleInstance.#GIT_IGNORE_FILE_ABSOLUTE_PATH, `/${DotYDA_DirectoryManager.TEMPORARY_FILES_SUBDIRECTORY_NAME}/`);
|
|
7708
|
+
}
|
|
7709
|
+
DotYDA_DirectoryManager.selfSoleInstance = selfSoleInstance;
|
|
7710
|
+
}
|
|
7711
|
+
constructor(consumingProjectRootDirectoryAbsolutePath) {
|
|
7712
|
+
this.CONSUMING_PROJECT_ROOT_DIRECTORY_ABSOLUTE_PATH = consumingProjectRootDirectoryAbsolutePath;
|
|
7713
|
+
this.#DOT_YDA_DIRECTORY_ABSOLUTE_PATH = ImprovedPath_1.default.joinPathSegments([this.CONSUMING_PROJECT_ROOT_DIRECTORY_ABSOLUTE_PATH, DotYDA_DirectoryManager.DOT_YDA_DIRECTORY_NAME], { forwardSlashOnlySeparators: true });
|
|
7714
|
+
this.#TEMPORARY_FILES_DIRECTORY_ABSOLUTE_PATH = ImprovedPath_1.default.joinPathSegments([this.#DOT_YDA_DIRECTORY_ABSOLUTE_PATH, DotYDA_DirectoryManager.TEMPORARY_FILES_SUBDIRECTORY_NAME], { forwardSlashOnlySeparators: true });
|
|
7715
|
+
this.#OPTIMIZATION_FILES_DIRECTORY_ABSOLUTE_PATH = ImprovedPath_1.default.joinPathSegments([this.#DOT_YDA_DIRECTORY_ABSOLUTE_PATH, DotYDA_DirectoryManager.OPTIMIZATION_FILES_SUBDIRECTORY_NAME], { forwardSlashOnlySeparators: true });
|
|
7716
|
+
this.#GIT_IGNORE_FILE_ABSOLUTE_PATH = ImprovedPath_1.default.joinPathSegments([this.#DOT_YDA_DIRECTORY_ABSOLUTE_PATH, DotYDA_DirectoryManager.GIT_IGNORE_FILE_NAME], { forwardSlashOnlySeparators: true });
|
|
7717
|
+
}
|
|
7718
|
+
static get DOT_YDA_DIRECTORY_ABSOLUTE_PATH() {
|
|
7719
|
+
return DotYDA_DirectoryManager.getExpectedToBeInitializedSelfSoleInstance().#DOT_YDA_DIRECTORY_ABSOLUTE_PATH;
|
|
7720
|
+
}
|
|
7721
|
+
static get TEMPORARY_FILES_DIRECTORY_ABSOLUTE_PATH() {
|
|
7722
|
+
return DotYDA_DirectoryManager.getExpectedToBeInitializedSelfSoleInstance().#TEMPORARY_FILES_DIRECTORY_ABSOLUTE_PATH;
|
|
7723
|
+
}
|
|
7724
|
+
static get OPTIMIZATION_FILES_DIRECTORY_ABSOLUTE_PATH() {
|
|
7725
|
+
return DotYDA_DirectoryManager.getExpectedToBeInitializedSelfSoleInstance().#OPTIMIZATION_FILES_DIRECTORY_ABSOLUTE_PATH;
|
|
7726
|
+
}
|
|
7727
|
+
static getExpectedToBeInitializedSelfSoleInstance() {
|
|
7728
|
+
if ((0, es_extensions_1.isNull)(DotYDA_DirectoryManager.selfSoleInstance)) {
|
|
7729
|
+
es_extensions_1.Logger.throwErrorAndLog({
|
|
7730
|
+
errorInstance: new es_extensions_1.ClassRequiredInitializationHasNotBeenExecutedError({
|
|
7731
|
+
className: "DotYDA_DirectoryManager", initializingMethodName: "unrollDotYDA_Directory"
|
|
7732
|
+
}),
|
|
7733
|
+
title: es_extensions_1.ClassRequiredInitializationHasNotBeenExecutedError.localization.defaultTitle,
|
|
7734
|
+
occurrenceLocation: "DotYDA_DirectoryManager.getExpectedToBeInitializedSelfSoleInstance()"
|
|
7735
|
+
});
|
|
7736
|
+
}
|
|
7737
|
+
return DotYDA_DirectoryManager.selfSoleInstance;
|
|
7738
|
+
}
|
|
7739
|
+
}
|
|
7740
|
+
exports["default"] = DotYDA_DirectoryManager;
|
|
7741
|
+
|
|
7742
|
+
|
|
7743
|
+
/***/ }),
|
|
7744
|
+
|
|
7745
|
+
/***/ "./Utils/FileNameRevisionPostfixer.ts":
|
|
7746
|
+
/*!********************************************!*\
|
|
7747
|
+
!*** ./Utils/FileNameRevisionPostfixer.ts ***!
|
|
7748
|
+
\********************************************/
|
|
7749
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
7750
|
+
|
|
7751
|
+
|
|
7752
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7753
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7754
|
+
};
|
|
7755
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
7756
|
+
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
7757
|
+
const rev_hash_1 = __importDefault(__webpack_require__(/*! rev-hash */ "../node_modules/rev-hash/index.js"));
|
|
7758
|
+
class FileNameRevisionPostfixer {
|
|
7759
|
+
static appendPostfixIfPossible(targetFile, options) {
|
|
7760
|
+
if ((0, es_extensions_1.isNull)(targetFile.contents)) {
|
|
7761
|
+
es_extensions_1.Logger.logWarning({
|
|
7762
|
+
title: "Unable to add revision hash",
|
|
7763
|
+
description: `The 'content' property of Target Vinyl file '${targetFile.path}' is null.`
|
|
7764
|
+
});
|
|
7765
|
+
return;
|
|
7766
|
+
}
|
|
7767
|
+
if (!(targetFile.contents instanceof Buffer)) {
|
|
7768
|
+
es_extensions_1.Logger.throwErrorAndLog({
|
|
7769
|
+
errorInstance: new es_extensions_1.UnexpectedEventError(`The 'contents' property of target Vynil file '${targetFile.path}' is not an instance of 'Buffer'.` +
|
|
7770
|
+
"Because usually it is the instance of Buffer, explorations are required."),
|
|
7771
|
+
title: es_extensions_1.UnexpectedEventError.localization.defaultTitle,
|
|
7772
|
+
occurrenceLocation: "FileNameRevisionPostfixer.appendPostfixIfPossible(targetFile, options)",
|
|
7773
|
+
additionalData: targetFile
|
|
7774
|
+
});
|
|
7775
|
+
}
|
|
7776
|
+
targetFile.stem = `${targetFile.stem}${options.contentHashPostfixSeparator}` +
|
|
7777
|
+
`${(0, rev_hash_1.default)(targetFile.contents)}`;
|
|
7778
|
+
}
|
|
7779
|
+
}
|
|
7780
|
+
exports["default"] = FileNameRevisionPostfixer;
|
|
7781
|
+
|
|
7782
|
+
|
|
7783
|
+
/***/ }),
|
|
7784
|
+
|
|
7785
|
+
/***/ "./Utils/GulpStreamModifier.ts":
|
|
7786
|
+
/*!*************************************!*\
|
|
7787
|
+
!*** ./Utils/GulpStreamModifier.ts ***!
|
|
7788
|
+
\*************************************/
|
|
7789
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
7790
|
+
|
|
7791
|
+
|
|
7792
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7793
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7794
|
+
};
|
|
7795
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
7796
|
+
const stream_1 = __importDefault(__webpack_require__(/*! stream */ "stream"));
|
|
7797
|
+
const vinyl_1 = __importDefault(__webpack_require__(/*! vinyl */ "vinyl"));
|
|
7798
|
+
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
7799
|
+
class GulpStreamModifier {
|
|
7800
|
+
static modify(namedParameters) {
|
|
7801
|
+
return new stream_1.default.Transform({
|
|
7802
|
+
objectMode: true,
|
|
7803
|
+
/* eslint-disable-next-line max-params -- The limitation of "Stream" native library */
|
|
7804
|
+
transform(chunk, _encoding, callback) {
|
|
7805
|
+
if (!vinyl_1.default.isVinyl(chunk)) {
|
|
7806
|
+
es_extensions_1.Logger.throwErrorAndLog({
|
|
7807
|
+
errorInstance: new es_extensions_1.UnexpectedEventError("Target chunk is not the instance of Vinyl file. Investigations required."),
|
|
7808
|
+
title: es_extensions_1.UnexpectedEventError.localization.defaultTitle,
|
|
7809
|
+
occurrenceLocation: "GulpStreamModifier.modify(namedParameters)"
|
|
7810
|
+
});
|
|
7811
|
+
}
|
|
7812
|
+
const addNewFilesToStream = (newFiles) => {
|
|
7813
|
+
for (const newFile of Array.isArray(newFiles) ? newFiles : [newFiles]) {
|
|
7814
|
+
this.push(newFile);
|
|
7815
|
+
}
|
|
7816
|
+
};
|
|
7817
|
+
const targetFile = chunk;
|
|
7818
|
+
let hasSpecificHandlerForCurrentVinylFileInheritor = false;
|
|
7819
|
+
for (const [ClassExtendedFromVinylFile, handler] of namedParameters.onStreamStartedEventHandlersForSpecificFileTypes ?? new Map()) {
|
|
7820
|
+
if (namedParameters instanceof ClassExtendedFromVinylFile) {
|
|
7821
|
+
hasSpecificHandlerForCurrentVinylFileInheritor = true;
|
|
7822
|
+
handler(targetFile, addNewFilesToStream).
|
|
7823
|
+
then((completionSignal) => {
|
|
7824
|
+
switch (completionSignal) {
|
|
7825
|
+
case GulpStreamModifier.CompletionSignals.PASSING_ON: {
|
|
7826
|
+
callback(null, targetFile);
|
|
7827
|
+
break;
|
|
7828
|
+
}
|
|
7829
|
+
case GulpStreamModifier.CompletionSignals.REMOVING_FILE_FROM_STREAM: {
|
|
7830
|
+
callback();
|
|
7831
|
+
break;
|
|
7832
|
+
}
|
|
7833
|
+
}
|
|
7834
|
+
}).
|
|
7835
|
+
catch((error) => { callback(error); });
|
|
7836
|
+
}
|
|
7837
|
+
}
|
|
7838
|
+
if (!hasSpecificHandlerForCurrentVinylFileInheritor) {
|
|
7839
|
+
if ((0, es_extensions_1.isUndefined)(namedParameters.onStreamStartedEventCommonHandler)) {
|
|
7840
|
+
callback(null, targetFile);
|
|
7841
|
+
return;
|
|
7842
|
+
}
|
|
7843
|
+
namedParameters.onStreamStartedEventCommonHandler(targetFile, addNewFilesToStream).
|
|
7844
|
+
then((completionSignal) => {
|
|
7845
|
+
switch (completionSignal) {
|
|
7846
|
+
case GulpStreamModifier.CompletionSignals.PASSING_ON: {
|
|
7847
|
+
callback(null, targetFile);
|
|
7848
|
+
break;
|
|
7849
|
+
}
|
|
7850
|
+
case GulpStreamModifier.CompletionSignals.REMOVING_FILE_FROM_STREAM: {
|
|
7851
|
+
callback();
|
|
7852
|
+
break;
|
|
7853
|
+
}
|
|
7854
|
+
}
|
|
7855
|
+
}).
|
|
7856
|
+
catch((error) => { callback(error); });
|
|
7857
|
+
}
|
|
7858
|
+
},
|
|
7859
|
+
flush(callback) {
|
|
7860
|
+
if ((0, es_extensions_1.isUndefined)(namedParameters.onStreamEndedEventHandler)) {
|
|
7861
|
+
callback();
|
|
7862
|
+
return;
|
|
7863
|
+
}
|
|
7864
|
+
const addNewFilesToStream = (newFiles) => {
|
|
7865
|
+
for (const newFile of Array.isArray(newFiles) ? newFiles : [newFiles]) {
|
|
7866
|
+
this.push(newFile);
|
|
7867
|
+
}
|
|
7868
|
+
};
|
|
7869
|
+
namedParameters.
|
|
7870
|
+
onStreamEndedEventHandler(addNewFilesToStream).
|
|
7871
|
+
then(() => { callback(); }).
|
|
7872
|
+
catch((error) => { callback(error); });
|
|
7873
|
+
}
|
|
7874
|
+
});
|
|
7875
|
+
}
|
|
7876
|
+
}
|
|
7877
|
+
(function (GulpStreamModifier) {
|
|
7878
|
+
let CompletionSignals;
|
|
7879
|
+
(function (CompletionSignals) {
|
|
7880
|
+
CompletionSignals["PASSING_ON"] = "PASSING_ON";
|
|
7881
|
+
CompletionSignals["REMOVING_FILE_FROM_STREAM"] = "REMOVING_FILE_FROM_STREAM";
|
|
7882
|
+
})(CompletionSignals = GulpStreamModifier.CompletionSignals || (GulpStreamModifier.CompletionSignals = {}));
|
|
7883
|
+
})(GulpStreamModifier || (GulpStreamModifier = {}));
|
|
7884
|
+
exports["default"] = GulpStreamModifier;
|
|
7885
|
+
|
|
7886
|
+
|
|
7887
|
+
/***/ }),
|
|
7888
|
+
|
|
7889
|
+
/***/ "./Utils/PartialsFilesMapper.ts":
|
|
7890
|
+
/*!**************************************!*\
|
|
7891
|
+
!*** ./Utils/PartialsFilesMapper.ts ***!
|
|
7892
|
+
\**************************************/
|
|
7893
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
7894
|
+
|
|
7895
|
+
|
|
6783
7896
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6784
7897
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
6785
7898
|
};
|
|
@@ -6789,7 +7902,7 @@ const PugPreProcessorSpecialist_1 = __importDefault(__webpack_require__(/*! @Thi
|
|
|
6789
7902
|
const StylusPreProcessorSpecialist_1 = __importDefault(__webpack_require__(/*! @ThirdPartySolutionsSpecialists/StylusPreProcessorSpecialist */ "./ThirdPartySolutionsSpecialists/StylusPreProcessorSpecialist.ts"));
|
|
6790
7903
|
/* --- General utils ---------------------------------------------------------------------------------------------- */
|
|
6791
7904
|
const fs_1 = __importDefault(__webpack_require__(/*! fs */ "fs"));
|
|
6792
|
-
const ImprovedPath_1 = __importDefault(__webpack_require__(/*!
|
|
7905
|
+
const ImprovedPath_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/ImprovedPath/ImprovedPath */ "./UtilsIncubator/ImprovedPath/ImprovedPath.ts"));
|
|
6793
7906
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
6794
7907
|
const es_extensions_nodejs_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions-nodejs */ "@yamato-daiwa/es-extensions-nodejs");
|
|
6795
7908
|
const Stopwatch_1 = __importDefault(__webpack_require__(/*! @UtilsIncubator/Stopwatch */ "./UtilsIncubator/Stopwatch.ts"));
|
|
@@ -6931,13 +8044,13 @@ class PartialsFilesMapper {
|
|
|
6931
8044
|
const possibleAbsolutePathsOfTargetPartialFile = [];
|
|
6932
8045
|
const filenameExtensionOfTargetPartialFile__notNullIfExplicitlySpecified = ImprovedPath_1.default.extractLastFilenameExtensionWithoutFirstDot(targetPartialFilePathRelativeToParentFileDirectory);
|
|
6933
8046
|
if ((0, es_extensions_1.isNull)(filenameExtensionOfTargetPartialFile__notNullIfExplicitlySpecified)) {
|
|
6934
|
-
possibleAbsolutePathsOfTargetPartialFile.push(...implicitFilenameExtensionsOfPartialsForCurrentFileType.map((partialFileImplicitFilenameExtension) => ImprovedPath_1.default.
|
|
8047
|
+
possibleAbsolutePathsOfTargetPartialFile.push(...implicitFilenameExtensionsOfPartialsForCurrentFileType.map((partialFileImplicitFilenameExtension) => ImprovedPath_1.default.joinPathSegments([
|
|
6935
8048
|
directoryAbsolutePathOfParentOfTargetPartialFile,
|
|
6936
8049
|
`${targetPartialFilePathRelativeToParentFileDirectory}.${partialFileImplicitFilenameExtension}`
|
|
6937
8050
|
], { forwardSlashOnlySeparators: true })));
|
|
6938
8051
|
}
|
|
6939
8052
|
else {
|
|
6940
|
-
possibleAbsolutePathsOfTargetPartialFile.push(ImprovedPath_1.default.
|
|
8053
|
+
possibleAbsolutePathsOfTargetPartialFile.push(ImprovedPath_1.default.joinPathSegments([directoryAbsolutePathOfParentOfTargetPartialFile, targetPartialFilePathRelativeToParentFileDirectory], { forwardSlashOnlySeparators: true }));
|
|
6941
8054
|
}
|
|
6942
8055
|
for (const possibleAbsolutePathOfTargetPartialFile of possibleAbsolutePathsOfTargetPartialFile) {
|
|
6943
8056
|
if (fs_1.default.existsSync(possibleAbsolutePathOfTargetPartialFile)) {
|
|
@@ -6990,170 +8103,19 @@ exports["default"] = PartialsFilesMapper;
|
|
|
6990
8103
|
|
|
6991
8104
|
/***/ }),
|
|
6992
8105
|
|
|
6993
|
-
/***/ "./
|
|
6994
|
-
|
|
6995
|
-
!*** ./
|
|
6996
|
-
|
|
8106
|
+
/***/ "./Utils/createImmediatelyEndingEmptyStream.ts":
|
|
8107
|
+
/*!*****************************************************!*\
|
|
8108
|
+
!*** ./Utils/createImmediatelyEndingEmptyStream.ts ***!
|
|
8109
|
+
\*****************************************************/
|
|
6997
8110
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
6998
8111
|
|
|
6999
8112
|
|
|
7000
8113
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
7001
|
-
const
|
|
7002
|
-
|
|
7003
|
-
|
|
7004
|
-
deactivationUnixTimestamp__milliseconds = 0;
|
|
7005
|
-
startOrRestart() {
|
|
7006
|
-
if (this.activationUnixTimestamp__milliseconds === 0) {
|
|
7007
|
-
this.activationUnixTimestamp__milliseconds = Date.now();
|
|
7008
|
-
}
|
|
7009
|
-
return this;
|
|
7010
|
-
}
|
|
7011
|
-
stop() {
|
|
7012
|
-
this.deactivationUnixTimestamp__milliseconds = Date.now();
|
|
7013
|
-
const amountOfTimeElapsesBetweenActivationAndDeactivation__milliseconds = this.deactivationUnixTimestamp__milliseconds - this.activationUnixTimestamp__milliseconds;
|
|
7014
|
-
return {
|
|
7015
|
-
seconds: (0, es_extensions_1.millisecondsToSeconds)(amountOfTimeElapsesBetweenActivationAndDeactivation__milliseconds),
|
|
7016
|
-
milliseconds: amountOfTimeElapsesBetweenActivationAndDeactivation__milliseconds
|
|
7017
|
-
};
|
|
7018
|
-
}
|
|
7019
|
-
reset() {
|
|
7020
|
-
this.activationUnixTimestamp__milliseconds = 0;
|
|
7021
|
-
this.deactivationUnixTimestamp__milliseconds = 0;
|
|
7022
|
-
}
|
|
7023
|
-
}
|
|
7024
|
-
exports["default"] = Stopwatch;
|
|
7025
|
-
|
|
7026
|
-
|
|
7027
|
-
/***/ }),
|
|
7028
|
-
|
|
7029
|
-
/***/ "./UtilsIncubator/removeSlashes.ts":
|
|
7030
|
-
/*!*****************************************!*\
|
|
7031
|
-
!*** ./UtilsIncubator/removeSlashes.ts ***!
|
|
7032
|
-
\*****************************************/
|
|
7033
|
-
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
7034
|
-
|
|
7035
|
-
|
|
7036
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7037
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7038
|
-
};
|
|
7039
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
7040
|
-
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
7041
|
-
const removeSpecificCharacterInLastPosition_1 = __importDefault(__webpack_require__(/*! ./removeSpecificCharacterInLastPosition */ "./UtilsIncubator/removeSpecificCharacterInLastPosition.ts"));
|
|
7042
|
-
function removeSlashes(targetString, options) {
|
|
7043
|
-
let transformingWorkpiece = targetString;
|
|
7044
|
-
if (options.leading && transformingWorkpiece.startsWith("/")) {
|
|
7045
|
-
transformingWorkpiece = (0, es_extensions_1.removeNthCharacter)(transformingWorkpiece, {
|
|
7046
|
-
targetCharacterNumber: 0,
|
|
7047
|
-
numerationFrom: 0
|
|
7048
|
-
});
|
|
7049
|
-
}
|
|
7050
|
-
if (options.trailing && transformingWorkpiece.endsWith("/")) {
|
|
7051
|
-
transformingWorkpiece = (0, removeSpecificCharacterInLastPosition_1.default)(transformingWorkpiece, "/");
|
|
7052
|
-
}
|
|
7053
|
-
return transformingWorkpiece;
|
|
7054
|
-
}
|
|
7055
|
-
exports["default"] = removeSlashes;
|
|
7056
|
-
|
|
7057
|
-
|
|
7058
|
-
/***/ }),
|
|
7059
|
-
|
|
7060
|
-
/***/ "./UtilsIncubator/removeSpecificCharacterInLastPosition.ts":
|
|
7061
|
-
/*!*****************************************************************!*\
|
|
7062
|
-
!*** ./UtilsIncubator/removeSpecificCharacterInLastPosition.ts ***!
|
|
7063
|
-
\*****************************************************************/
|
|
7064
|
-
/***/ ((__unused_webpack_module, exports) => {
|
|
7065
|
-
|
|
7066
|
-
|
|
7067
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
7068
|
-
function removeSpecificCharacterInLastPosition(targetString, targetCharacter) {
|
|
7069
|
-
return targetString.endsWith(targetCharacter) ? targetString.slice(0, -1) : targetString;
|
|
7070
|
-
}
|
|
7071
|
-
exports["default"] = removeSpecificCharacterInLastPosition;
|
|
7072
|
-
|
|
7073
|
-
|
|
7074
|
-
/***/ }),
|
|
7075
|
-
|
|
7076
|
-
/***/ "./Utils/FileNameRevisionPostfixer.ts":
|
|
7077
|
-
/*!********************************************!*\
|
|
7078
|
-
!*** ./Utils/FileNameRevisionPostfixer.ts ***!
|
|
7079
|
-
\********************************************/
|
|
7080
|
-
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
7081
|
-
|
|
7082
|
-
|
|
7083
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7084
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7085
|
-
};
|
|
7086
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
7087
|
-
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
7088
|
-
const rev_hash_1 = __importDefault(__webpack_require__(/*! rev-hash */ "../node_modules/rev-hash/index.js"));
|
|
7089
|
-
class FileNameRevisionPostfixer {
|
|
7090
|
-
static appendPostfixIfPossible(targetFile, options) {
|
|
7091
|
-
if ((0, es_extensions_1.isNull)(targetFile.contents)) {
|
|
7092
|
-
es_extensions_1.Logger.logWarning({
|
|
7093
|
-
title: "Unable to add revision hash",
|
|
7094
|
-
description: `The 'content' property of Target Vinyl file '${targetFile.path}' is null.`
|
|
7095
|
-
});
|
|
7096
|
-
return;
|
|
7097
|
-
}
|
|
7098
|
-
if (!(targetFile.contents instanceof Buffer)) {
|
|
7099
|
-
es_extensions_1.Logger.throwErrorAndLog({
|
|
7100
|
-
errorInstance: new es_extensions_1.UnexpectedEventError(`The 'contents' property of target Vynil file '${targetFile.path}' is not an instance of 'Buffer'.` +
|
|
7101
|
-
"Because usually it is the instance of Buffer, explorations are required."),
|
|
7102
|
-
title: es_extensions_1.UnexpectedEventError.localization.defaultTitle,
|
|
7103
|
-
occurrenceLocation: "FileNameRevisionPostfixer.appendPostfixIfPossible(targetFile, options)",
|
|
7104
|
-
additionalData: targetFile
|
|
7105
|
-
});
|
|
7106
|
-
}
|
|
7107
|
-
targetFile.stem = `${targetFile.stem}${options.contentHashPostfixSeparator}` +
|
|
7108
|
-
`${(0, rev_hash_1.default)(targetFile.contents)}`;
|
|
7109
|
-
}
|
|
7110
|
-
}
|
|
7111
|
-
exports["default"] = FileNameRevisionPostfixer;
|
|
7112
|
-
|
|
7113
|
-
|
|
7114
|
-
/***/ }),
|
|
7115
|
-
|
|
7116
|
-
/***/ "./Utils/PoliteErrorsMessagesBuilder.ts":
|
|
7117
|
-
/*!**********************************************!*\
|
|
7118
|
-
!*** ./Utils/PoliteErrorsMessagesBuilder.ts ***!
|
|
7119
|
-
\**********************************************/
|
|
7120
|
-
/***/ ((__unused_webpack_module, exports) => {
|
|
7121
|
-
|
|
7122
|
-
|
|
7123
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
7124
|
-
class PoliteErrorsMessagesBuilder {
|
|
7125
|
-
static isTechnicalsDetailOnlyMode = false;
|
|
7126
|
-
static localization = PoliteErrorsMessagesBuilder.getDefaultLocalization();
|
|
7127
|
-
static buildMessage(parametersObject) {
|
|
7128
|
-
return PoliteErrorsMessagesBuilder.localization.buildMessage({
|
|
7129
|
-
...parametersObject,
|
|
7130
|
-
isTechnicalDetailOnlyMode: PoliteErrorsMessagesBuilder.isTechnicalsDetailOnlyMode
|
|
7131
|
-
});
|
|
7132
|
-
}
|
|
7133
|
-
static setLocalization(newLocalization) {
|
|
7134
|
-
this.localization = newLocalization;
|
|
7135
|
-
}
|
|
7136
|
-
static setTechnicalDetailsOnlyMode() {
|
|
7137
|
-
PoliteErrorsMessagesBuilder.isTechnicalsDetailOnlyMode = true;
|
|
7138
|
-
}
|
|
7139
|
-
static getDefaultLocalization() {
|
|
7140
|
-
return {
|
|
7141
|
-
buildMessage({ technicalDetails, politeExplanation, isTechnicalDetailOnlyMode }) {
|
|
7142
|
-
if (isTechnicalDetailOnlyMode) {
|
|
7143
|
-
return technicalDetails;
|
|
7144
|
-
}
|
|
7145
|
-
return "We are sorry, but it is a bug. We apologize for any inconvenience. 🙇♂️\n" +
|
|
7146
|
-
"Please consider the opening issue on official GitHub repository: " +
|
|
7147
|
-
"https://github.com/TokugawaTakeshi/Yamato-Daiwa-Automation \n" +
|
|
7148
|
-
"--- What happened? -----------------------------------------------------------------------------------\n" +
|
|
7149
|
-
`${politeExplanation}` +
|
|
7150
|
-
"--- Technical information --------------------------------------------------------------------------- \n" +
|
|
7151
|
-
`${technicalDetails}`;
|
|
7152
|
-
}
|
|
7153
|
-
};
|
|
7154
|
-
}
|
|
8114
|
+
const stream_1 = __webpack_require__(/*! stream */ "stream");
|
|
8115
|
+
function createImmediatelyEndingEmptyStream() {
|
|
8116
|
+
return () => new stream_1.PassThrough().end();
|
|
7155
8117
|
}
|
|
7156
|
-
exports["default"] =
|
|
8118
|
+
exports["default"] = createImmediatelyEndingEmptyStream;
|
|
7157
8119
|
|
|
7158
8120
|
|
|
7159
8121
|
/***/ }),
|
|
@@ -7167,6 +8129,7 @@ exports["default"] = PoliteErrorsMessagesBuilder;
|
|
|
7167
8129
|
|
|
7168
8130
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
7169
8131
|
const es_extensions_1 = __webpack_require__(/*! @yamato-daiwa/es-extensions */ "@yamato-daiwa/es-extensions");
|
|
8132
|
+
// TODO 今の内に修正
|
|
7170
8133
|
function getExpectedToBeNonNullStringifiedContentOfVinylFile(targetFile) {
|
|
7171
8134
|
if (targetFile.contents === null) {
|
|
7172
8135
|
es_extensions_1.Logger.throwErrorAndLog({
|
|
@@ -7334,6 +8297,16 @@ module.exports = require("gulp");
|
|
|
7334
8297
|
|
|
7335
8298
|
/***/ }),
|
|
7336
8299
|
|
|
8300
|
+
/***/ "gulp-data":
|
|
8301
|
+
/*!****************************!*\
|
|
8302
|
+
!*** external "gulp-data" ***!
|
|
8303
|
+
\****************************/
|
|
8304
|
+
/***/ ((module) => {
|
|
8305
|
+
|
|
8306
|
+
module.exports = require("gulp-data");
|
|
8307
|
+
|
|
8308
|
+
/***/ }),
|
|
8309
|
+
|
|
7337
8310
|
/***/ "gulp-debug":
|
|
7338
8311
|
/*!*****************************!*\
|
|
7339
8312
|
!*** external "gulp-debug" ***!
|
|
@@ -7474,6 +8447,46 @@ module.exports = require("node-notifier");
|
|
|
7474
8447
|
|
|
7475
8448
|
/***/ }),
|
|
7476
8449
|
|
|
8450
|
+
/***/ "pug-lint":
|
|
8451
|
+
/*!***************************!*\
|
|
8452
|
+
!*** external "pug-lint" ***!
|
|
8453
|
+
\***************************/
|
|
8454
|
+
/***/ ((module) => {
|
|
8455
|
+
|
|
8456
|
+
module.exports = require("pug-lint");
|
|
8457
|
+
|
|
8458
|
+
/***/ }),
|
|
8459
|
+
|
|
8460
|
+
/***/ "pug-lint/lib/config-file":
|
|
8461
|
+
/*!*******************************************!*\
|
|
8462
|
+
!*** external "pug-lint/lib/config-file" ***!
|
|
8463
|
+
\*******************************************/
|
|
8464
|
+
/***/ ((module) => {
|
|
8465
|
+
|
|
8466
|
+
module.exports = require("pug-lint/lib/config-file");
|
|
8467
|
+
|
|
8468
|
+
/***/ }),
|
|
8469
|
+
|
|
8470
|
+
/***/ "stream-combiner2":
|
|
8471
|
+
/*!***********************************!*\
|
|
8472
|
+
!*** external "stream-combiner2" ***!
|
|
8473
|
+
\***********************************/
|
|
8474
|
+
/***/ ((module) => {
|
|
8475
|
+
|
|
8476
|
+
module.exports = require("stream-combiner2");
|
|
8477
|
+
|
|
8478
|
+
/***/ }),
|
|
8479
|
+
|
|
8480
|
+
/***/ "vinyl":
|
|
8481
|
+
/*!************************!*\
|
|
8482
|
+
!*** external "vinyl" ***!
|
|
8483
|
+
\************************/
|
|
8484
|
+
/***/ ((module) => {
|
|
8485
|
+
|
|
8486
|
+
module.exports = require("vinyl");
|
|
8487
|
+
|
|
8488
|
+
/***/ }),
|
|
8489
|
+
|
|
7477
8490
|
/***/ "vue-loader":
|
|
7478
8491
|
/*!*****************************!*\
|
|
7479
8492
|
!*** external "vue-loader" ***!
|