import { fileURLToPath } from 'node:url'
import chalk from 'chalk'
-import merge from 'just-merge'
+import { mergeDeepRight } from 'rambda'
import {
buildPerformanceUriFilePath,
import { hasOwnProp, isCFEnvironment, once } from './Utils.js'
import {
ApplicationProtocol,
+ ApplicationProtocolVersion,
type ConfigurationData,
ConfigurationSection,
FileType,
public static getSupervisionUrls (): string | string[] | undefined {
if (
- Configuration.getConfigurationData()?.['supervisionURLs' as keyof ConfigurationData] !==
- undefined
+ Configuration.getConfigurationData()?.['supervisionURLs' as keyof ConfigurationData] != null
) {
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
Configuration.getConfigurationData()!.supervisionUrls = Configuration.getConfigurationData()![
let uiServerConfiguration: UIServerConfiguration = {
enabled: false,
type: ApplicationProtocol.WS,
+ version: ApplicationProtocolVersion.VERSION_11,
options: {
host: Constants.DEFAULT_UI_SERVER_HOST,
port: Constants.DEFAULT_UI_SERVER_PORT
}
}
if (hasOwnProp(Configuration.getConfigurationData(), ConfigurationSection.uiServer)) {
- uiServerConfiguration = merge<UIServerConfiguration>(
+ uiServerConfiguration = mergeDeepRight(
uiServerConfiguration,
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
Configuration.getConfigurationData()!.uiServer!
undefined,
"Use 'stationTemplateUrls' instead"
)
- Configuration.getConfigurationData()?.['stationTemplateURLs' as keyof ConfigurationData] !==
- undefined &&
+ Configuration.getConfigurationData()?.['stationTemplateURLs' as keyof ConfigurationData] !=
+ null &&
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
(Configuration.getConfigurationData()!.stationTemplateUrls =
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
Configuration.getConfigurationData()?.stationTemplateUrls.forEach(
(stationTemplateUrl: StationTemplateUrl) => {
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
- if (stationTemplateUrl['numberOfStation' as keyof StationTemplateUrl] !== undefined) {
+ if (stationTemplateUrl['numberOfStation' as keyof StationTemplateUrl] != null) {
console.error(
`${chalk.green(logPrefix())} ${chalk.red(
`Deprecated configuration key 'numberOfStation' usage for template file '${stationTemplateUrl.file}' in 'stationTemplateUrls'. Use 'numberOfStations' instead`
): void {
if (
sectionName != null &&
- Configuration.getConfigurationData()?.[sectionName as keyof ConfigurationData] !==
- undefined &&
+ Configuration.getConfigurationData()?.[sectionName as keyof ConfigurationData] != null &&
(
Configuration.getConfigurationData()?.[sectionName as keyof ConfigurationData] as Record<
string,
unknown
>
- )[key] !== undefined
+ )[key] != null
) {
console.error(
`${chalk.green(logPrefix())} ${chalk.red(
}`
)}`
)
- } else if (
- Configuration.getConfigurationData()?.[key as keyof ConfigurationData] !== undefined
- ) {
+ } else if (Configuration.getConfigurationData()?.[key as keyof ConfigurationData] != null) {
console.error(
`${chalk.green(logPrefix())} ${chalk.red(
`Deprecated configuration key '${key}' usage${
)
delete Configuration.configurationData
Configuration.configurationSectionCache.clear()
- if (Configuration.configurationChangeCallback !== undefined) {
+ if (Configuration.configurationChangeCallback != null) {
Configuration.configurationChangeCallback()
.catch(error => {
throw typeof error === 'string' ? new Error(error) : error