@gridsuite/commons-ui 0.145.0 → 0.147.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/dist/components/checkBoxList/CheckBoxListItem.js +1 -1
  2. package/dist/components/checkBoxList/CheckBoxListItemContent.js +1 -1
  3. package/dist/components/checkBoxList/DraggableCheckBoxListItem.js +1 -1
  4. package/dist/components/checkBoxList/DraggableCheckBoxListItemContent.js +1 -1
  5. package/dist/components/csvDownloader/csv-export.type.d.ts +2 -2
  6. package/dist/components/csvDownloader/use-csv-export.js +1 -1
  7. package/dist/components/customAGGrid/cell-renderers.js +1 -1
  8. package/dist/components/customAGGrid/separatorCellRenderer.js +1 -1
  9. package/dist/components/dialogs/customMuiDialog/CustomMuiDialog.d.ts +2 -1
  10. package/dist/components/dialogs/customMuiDialog/CustomMuiDialog.js +2 -0
  11. package/dist/components/dialogs/elementSaveDialog/ElementSaveDialog.js +1 -1
  12. package/dist/components/directoryItemSelector/utils.js +2 -2
  13. package/dist/components/dnd-table/dnd-table-add-rows-dialog.js +1 -1
  14. package/dist/components/filter/FilterCreationDialog.d.ts +2 -1
  15. package/dist/components/filter/FilterCreationDialog.js +4 -2
  16. package/dist/components/filter/FilterForm.d.ts +2 -3
  17. package/dist/components/filter/FilterForm.js +3 -3
  18. package/dist/components/filter/HeaderFilterForm.js +1 -1
  19. package/dist/components/filter/expert/ExpertFilterEditionDialog.d.ts +1 -1
  20. package/dist/components/filter/expert/ExpertFilterEditionDialog.js +4 -2
  21. package/dist/components/filter/expert/ExpertFilterForm.d.ts +5 -1
  22. package/dist/components/filter/expert/ExpertFilterForm.js +18 -3
  23. package/dist/components/filter/expert/expertFilterConstants.js +1 -1
  24. package/dist/components/filter/explicitNaming/ExplicitNamingFilterEditionDialog.d.ts +1 -1
  25. package/dist/components/filter/explicitNaming/ExplicitNamingFilterEditionDialog.js +4 -9
  26. package/dist/components/filter/explicitNaming/ExplicitNamingFilterForm.d.ts +2 -3
  27. package/dist/components/filter/explicitNaming/ExplicitNamingFilterForm.js +20 -4
  28. package/dist/components/filter/filter.type.d.ts +1 -0
  29. package/dist/components/filter/utils/filterFormUtils.js +1 -1
  30. package/dist/components/icons/EditNoteIcon.d.ts +12 -0
  31. package/dist/components/icons/EditNoteIcon.js +18 -0
  32. package/dist/components/icons/index.d.ts +1 -0
  33. package/dist/components/icons/index.js +2 -0
  34. package/dist/components/index.js +3 -2
  35. package/dist/components/inputs/reactHookForm/DirectoryItemsInput.js +2 -2
  36. package/dist/components/inputs/reactHookForm/OverflowableChipWithHelperText.js +1 -1
  37. package/dist/components/inputs/reactHookForm/agGridTable/CustomAgGridTable.js +1 -1
  38. package/dist/components/inputs/reactHookForm/agGridTable/csvUploader/CsvUploader.js +1 -1
  39. package/dist/components/inputs/reactHookForm/chip-items-input.js +1 -1
  40. package/dist/components/inputs/reactHookForm/provider/CustomFormProvider.d.ts +1 -0
  41. package/dist/components/inputs/reactHookForm/provider/CustomFormProvider.js +21 -4
  42. package/dist/components/inputs/reactQueryBuilder/CountryValueEditor.js +1 -1
  43. package/dist/components/inputs/reactQueryBuilder/ElementValueEditor.js +1 -1
  44. package/dist/components/inputs/reactQueryBuilder/OperatorSelector.js +1 -1
  45. package/dist/components/overflowableText/OverflowableText.js +1 -1
  46. package/dist/components/parameters/common/ProviderParam.js +1 -1
  47. package/dist/components/parameters/common/limitreductions/limit-reduction-table-cell.js +1 -1
  48. package/dist/components/parameters/common/limitreductions/limit-reductions-table-form.js +1 -1
  49. package/dist/components/parameters/common/name-element-editor/name-element-editor-form.js +1 -1
  50. package/dist/components/parameters/common/name-element-editor/name-element-editor-utils.js +1 -1
  51. package/dist/components/parameters/common/parameters-creation-dialog.js +1 -1
  52. package/dist/components/parameters/common/parameters-edition-dialog-props.d.ts +1 -1
  53. package/dist/components/parameters/common/utils.js +2 -2
  54. package/dist/components/parameters/common/voltage-level-table/custom-voltage-level-table-cell.js +1 -1
  55. package/dist/components/parameters/common/widget/parameter-float.js +1 -1
  56. package/dist/components/parameters/common/widget/parameter-line-directory-items-input.js +1 -1
  57. package/dist/components/parameters/common/widget/parameter-line-slider.js +1 -1
  58. package/dist/components/parameters/index.js +1 -2
  59. package/dist/components/parameters/loadflow/load-flow-general-parameters.js +1 -1
  60. package/dist/components/parameters/loadflow/load-flow-parameter-field.js +1 -1
  61. package/dist/components/parameters/loadflow/load-flow-parameters-content.js +1 -1
  62. package/dist/components/parameters/loadflow/load-flow-parameters-dialog.d.ts +1 -1
  63. package/dist/components/parameters/loadflow/load-flow-parameters-dialog.js +3 -3
  64. package/dist/components/parameters/loadflow/load-flow-parameters-form.js +1 -1
  65. package/dist/components/parameters/loadflow/load-flow-parameters-header.js +1 -1
  66. package/dist/components/parameters/loadflow/load-flow-parameters-inline.d.ts +2 -2
  67. package/dist/components/parameters/loadflow/load-flow-parameters-inline.js +3 -3
  68. package/dist/components/parameters/loadflow/load-flow-parameters-utils.js +1 -1
  69. package/dist/components/parameters/loadflow/use-load-flow-parameters-form.d.ts +1 -1
  70. package/dist/components/parameters/loadflow/use-load-flow-parameters-form.js +4 -4
  71. package/dist/components/parameters/network-visualizations/constants.d.ts +0 -4
  72. package/dist/components/parameters/network-visualizations/constants.js +1 -20
  73. package/dist/components/parameters/network-visualizations/index.js +1 -2
  74. package/dist/components/parameters/network-visualizations/map-parameters.js +22 -5
  75. package/dist/components/parameters/network-visualizations/network-area-diagram-parameters.js +1 -1
  76. package/dist/components/parameters/network-visualizations/network-visualizations-form.js +1 -1
  77. package/dist/components/parameters/network-visualizations/network-visualizations-parameters-inline.js +1 -1
  78. package/dist/components/parameters/network-visualizations/single-line-diagram-parameters.js +1 -1
  79. package/dist/components/parameters/pcc-min/pcc-min-form-utils.js +1 -1
  80. package/dist/components/parameters/pcc-min/pcc-min-parameters-form.js +1 -1
  81. package/dist/components/parameters/pcc-min/pcc-min-parameters-inline.js +1 -1
  82. package/dist/components/parameters/pcc-min/use-pcc-min-parameters-form.js +1 -1
  83. package/dist/components/parameters/security-analysis/security-analysis-parameters-dialog.d.ts +1 -1
  84. package/dist/components/parameters/security-analysis/security-analysis-parameters-dialog.js +4 -4
  85. package/dist/components/parameters/security-analysis/security-analysis-parameters-form.d.ts +2 -2
  86. package/dist/components/parameters/security-analysis/security-analysis-parameters-form.js +3 -3
  87. package/dist/components/parameters/security-analysis/security-analysis-parameters-inline.d.ts +2 -2
  88. package/dist/components/parameters/security-analysis/security-analysis-parameters-inline.js +2 -2
  89. package/dist/components/parameters/security-analysis/security-analysis-parameters-selector.d.ts +2 -2
  90. package/dist/components/parameters/security-analysis/security-analysis-parameters-selector.js +4 -4
  91. package/dist/components/parameters/sensi/columns-definitions.js +2 -2
  92. package/dist/components/parameters/sensi/sensitivity-Flow-parameters.js +1 -1
  93. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-dialog.d.ts +1 -1
  94. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-dialog.js +4 -4
  95. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-form.d.ts +2 -2
  96. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-form.js +3 -3
  97. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-inline.d.ts +2 -2
  98. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-inline.js +2 -2
  99. package/dist/components/parameters/sensi/sensitivity-parameters-selector.d.ts +2 -2
  100. package/dist/components/parameters/sensi/sensitivity-parameters-selector.js +5 -5
  101. package/dist/components/parameters/sensi/table-cell.js +1 -1
  102. package/dist/components/parameters/sensi/use-sensitivity-analysis-parameters.js +1 -1
  103. package/dist/components/parameters/sensi/utils.js +2 -2
  104. package/dist/components/parameters/short-circuit/short-circuit-fields.d.ts +2 -2
  105. package/dist/components/parameters/short-circuit/short-circuit-fields.js +21 -11
  106. package/dist/components/parameters/short-circuit/short-circuit-parameters-dialog.d.ts +2 -2
  107. package/dist/components/parameters/short-circuit/short-circuit-parameters-dialog.js +2 -2
  108. package/dist/components/parameters/short-circuit/short-circuit-parameters-form.d.ts +2 -2
  109. package/dist/components/parameters/short-circuit/short-circuit-parameters-form.js +3 -3
  110. package/dist/components/parameters/short-circuit/short-circuit-parameters-inline.d.ts +2 -2
  111. package/dist/components/parameters/short-circuit/short-circuit-parameters-inline.js +3 -3
  112. package/dist/components/parameters/short-circuit/short-circuit-parameters-utils.js +1 -1
  113. package/dist/components/parameters/voltage-init/equipment-selection-parameters.js +1 -1
  114. package/dist/components/parameters/voltage-init/general-parameters.js +1 -1
  115. package/dist/components/parameters/voltage-init/voltage-init-form-utils.js +1 -1
  116. package/dist/components/parameters/voltage-init/voltage-init-parameters-form.js +1 -1
  117. package/dist/components/parameters/voltage-init/voltage-init-parameters-inline.js +1 -1
  118. package/dist/hooks/use-unique-name-validation.js +1 -1
  119. package/dist/hooks/useConfidentialityWarning.js +1 -1
  120. package/dist/hooks/useModificationLabelComputer.d.ts +1 -0
  121. package/dist/hooks/useModificationLabelComputer.js +4 -1
  122. package/dist/index.js +5 -2
  123. package/dist/services/config.js +1 -1
  124. package/dist/services/utils.d.ts +1 -1
  125. package/dist/services/utils.js +21 -10
  126. package/dist/translations/en/errorsEn.d.ts +1 -0
  127. package/dist/translations/en/errorsEn.js +2 -1
  128. package/dist/translations/fr/errorsFr.d.ts +1 -0
  129. package/dist/translations/fr/errorsFr.js +2 -1
  130. package/dist/utils/constants/configConstants.d.ts +1 -1
  131. package/dist/utils/constants/configConstants.js +1 -1
  132. package/dist/utils/error.js +23 -7
  133. package/dist/utils/index.js +2 -0
  134. package/dist/utils/types/CustomError.d.ts +2 -2
  135. package/dist/utils/types/ProblemDetailError.d.ts +7 -0
  136. package/dist/utils/types/ProblemDetailError.js +12 -0
  137. package/dist/utils/types/index.d.ts +1 -0
  138. package/dist/utils/types/index.js +2 -0
  139. package/dist/utils/types/metadata.d.ts +5 -1
  140. package/package.json +1 -1
@@ -2,11 +2,11 @@ import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { useState, useCallback, useEffect } from "react";
3
3
  import { Box, Grid } from "@mui/material";
4
4
  import { useIntl, FormattedMessage } from "react-intl";
5
- import "../../../utils/types/equipmentType.js";
6
5
  import "../../../utils/conversionUtils.js";
7
6
  import { snackWithFallback } from "../../../utils/error.js";
8
7
  import "@mui/icons-material";
9
8
  import { ElementType } from "../../../utils/types/elementType.js";
9
+ import "../../../utils/types/equipmentType.js";
10
10
  import "../../../utils/yupConfig.js";
11
11
  import { fetchShortCircuitParameters } from "../../../services/short-circuit-analysis.js";
12
12
  import "localized-countries";
@@ -41,7 +41,7 @@ function ShortCircuitParametersInLine({
41
41
  studyUuid,
42
42
  setHaveDirtyFields,
43
43
  parametersBackend,
44
- enableDeveloperMode
44
+ isDeveloperMode
45
45
  }) {
46
46
  const shortCircuitMethods = useShortCircuitParametersForm({
47
47
  parametersBackend,
@@ -79,7 +79,7 @@ function ShortCircuitParametersInLine({
79
79
  ShortCircuitParametersForm,
80
80
  {
81
81
  shortCircuitMethods,
82
- enableDeveloperMode,
82
+ isDeveloperMode,
83
83
  renderActions: () => {
84
84
  return /* @__PURE__ */ jsxs(Box, { children: [
85
85
  /* @__PURE__ */ jsxs(Grid, { container: true, item: true, children: [
@@ -5,8 +5,8 @@ import "react/jsx-runtime";
5
5
  import "@mui/material";
6
6
  import "react-intl";
7
7
  import "react";
8
- import "../../../utils/types/equipmentType.js";
9
8
  import "../../../utils/conversionUtils.js";
9
+ import "../../../utils/types/equipmentType.js";
10
10
  import "@mui/icons-material";
11
11
  import "localized-countries";
12
12
  import "localized-countries/data/fr";
@@ -3,9 +3,9 @@ import { Grid, Alert } from "@mui/material";
3
3
  import { FormattedMessage } from "react-intl";
4
4
  import "../../overflowableText/OverflowableText.js";
5
5
  import "../../../utils/conversionUtils.js";
6
- import "@mui/icons-material";
7
6
  import { ElementType } from "../../../utils/types/elementType.js";
8
7
  import { EquipmentType } from "../../../utils/types/equipmentType.js";
8
+ import "@mui/icons-material";
9
9
  import "../../../utils/yupConfig.js";
10
10
  import "react";
11
11
  import "react-hook-form";
@@ -7,8 +7,8 @@ import { GENERAL, GENERAL_APPLY_MODIFICATIONS, UPDATE_BUS_VOLTAGE, REACTIVE_SLAC
7
7
  import { ReactivePowerAdornment } from "../common/constant.js";
8
8
  import { LineSeparator } from "../common/line-separator.js";
9
9
  import { parametersStyles } from "../parameters-style.js";
10
- import "../../../utils/types/equipmentType.js";
11
10
  import "../../../utils/conversionUtils.js";
11
+ import "../../../utils/types/equipmentType.js";
12
12
  import "@mui/icons-material";
13
13
  import "../../../utils/yupConfig.js";
14
14
  import "localized-countries";
@@ -6,8 +6,8 @@ import "@mui/material";
6
6
  import "../../overflowableText/OverflowableText.js";
7
7
  import { FILTER_NAME, FILTER_ID, ID, FILTERS } from "../../../utils/constants/filterConstant.js";
8
8
  import "../../../utils/conversionUtils.js";
9
- import "@mui/icons-material";
10
9
  import "../../../utils/types/equipmentType.js";
10
+ import "@mui/icons-material";
11
11
  import "../../../utils/yupConfig.js";
12
12
  import "react";
13
13
  import "react-hook-form";
@@ -4,8 +4,8 @@ import { FormattedMessage } from "react-intl";
4
4
  import { getTabIndicatorStyle, getTabStyle } from "../parameters-style.js";
5
5
  import "../../overflowableText/OverflowableText.js";
6
6
  import "../../../utils/conversionUtils.js";
7
- import "@mui/icons-material";
8
7
  import "../../../utils/types/equipmentType.js";
8
+ import "@mui/icons-material";
9
9
  import "../../../utils/yupConfig.js";
10
10
  import "react";
11
11
  import "react-hook-form";
@@ -2,11 +2,11 @@ import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { useState, useCallback, useEffect } from "react";
3
3
  import { Box, Grid } from "@mui/material";
4
4
  import { useIntl, FormattedMessage } from "react-intl";
5
- import "../../../utils/types/equipmentType.js";
6
5
  import "../../../utils/conversionUtils.js";
7
6
  import { snackWithFallback } from "../../../utils/error.js";
8
7
  import "@mui/icons-material";
9
8
  import { ElementType } from "../../../utils/types/elementType.js";
9
+ import "../../../utils/types/equipmentType.js";
10
10
  import "../../../utils/yupConfig.js";
11
11
  import { updateVoltageInitParameters } from "../../../services/study.js";
12
12
  import { getVoltageInitParameters } from "../../../services/voltage-init.js";
@@ -2,9 +2,9 @@ import { useCallback, useEffect } from "react";
2
2
  import { useFormContext, useController } from "react-hook-form";
3
3
  import { FieldConstants } from "../utils/constants/fieldConstants.js";
4
4
  import "../utils/conversionUtils.js";
5
+ import "../utils/types/equipmentType.js";
5
6
  import "react/jsx-runtime";
6
7
  import "@mui/icons-material";
7
- import "../utils/types/equipmentType.js";
8
8
  import "../utils/yupConfig.js";
9
9
  import { useDebounce } from "./useDebounce.js";
10
10
  import { elementAlreadyExists } from "../services/directory.js";
@@ -1,9 +1,9 @@
1
1
  import { useState, useEffect } from "react";
2
2
  import { fetchEnv } from "../services/appsMetadata.js";
3
3
  import "../utils/conversionUtils.js";
4
+ import "../utils/types/equipmentType.js";
4
5
  import "react/jsx-runtime";
5
6
  import "@mui/icons-material";
6
- import "../utils/types/equipmentType.js";
7
7
  import "../utils/yupConfig.js";
8
8
  const useConfidentialityWarning = () => {
9
9
  const [confidentialityWarningKey, setConfidentialityWarningKey] = useState();
@@ -5,6 +5,7 @@ export interface NetworkModificationMetadata {
5
5
  date: Date;
6
6
  stashed: boolean;
7
7
  activated: boolean;
8
+ description: string;
8
9
  messageType: string;
9
10
  messageValues: string;
10
11
  }
@@ -1,8 +1,11 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { useIntl } from "react-intl";
3
3
  import { useCallback } from "react";
4
- import { MODIFICATION_TYPES } from "../utils/types/modificationType.js";
4
+ import "../utils/conversionUtils.js";
5
5
  import { EquipmentType } from "../utils/types/equipmentType.js";
6
+ import { MODIFICATION_TYPES } from "../utils/types/modificationType.js";
7
+ import "@mui/icons-material";
8
+ import "../utils/yupConfig.js";
6
9
  const getOperatingStatusModificationValues = (modification, formatBold) => {
7
10
  return {
8
11
  action: modification.action,
package/dist/index.js CHANGED
@@ -133,6 +133,7 @@ import { LeftPanelCloseIcon } from "./components/icons/LeftPanelCloseIcon.js";
133
133
  import { DeviceHubIcon } from "./components/icons/DeviceHubIcon.js";
134
134
  import { TuneIcon } from "./components/icons/TuneIcon.js";
135
135
  import { PhotoLibraryIcon } from "./components/icons/PhotoLibraryIcon.js";
136
+ import { EditNoteIcon } from "./components/icons/EditNoteIcon.js";
136
137
  import { ComputingType, formatComputingTypeLabel, isValidComputingType } from "./components/parameters/common/computing-type.js";
137
138
  import { COMMON_PARAMETERS, PARAM_SA_FLOW_PROPORTIONAL_THRESHOLD, PARAM_SA_HIGH_VOLTAGE_ABSOLUTE_THRESHOLD, PARAM_SA_HIGH_VOLTAGE_PROPORTIONAL_THRESHOLD, PARAM_SA_LOW_VOLTAGE_ABSOLUTE_THRESHOLD, PARAM_SA_LOW_VOLTAGE_PROPORTIONAL_THRESHOLD, PARAM_SA_PROVIDER, PROVIDER, ReactivePowerAdornment, SPECIFIC_PARAMETERS, VERSION_PARAMETER, VOLTAGE_LEVEL, VoltageAdornment } from "./components/parameters/common/constant.js";
138
139
  import { LineSeparator } from "./components/parameters/common/line-separator.js";
@@ -152,7 +153,7 @@ import { toFormValueSaParameters, toFormValuesLimitReductions } from "./componen
152
153
  import { LimitReductionsTableForm } from "./components/parameters/common/limitreductions/limit-reductions-table-form.js";
153
154
  import { LimitReductionTableRow } from "./components/parameters/common/limitreductions/limit-reduction-table-row.js";
154
155
  import { LimitReductionTableCell } from "./components/parameters/common/limitreductions/limit-reduction-table-cell.js";
155
- import { CENTER_LABEL, COMPONENT_LIBRARY, DIAGONAL_LABEL, INTL_LINE_FLOW_MODE_OPTIONS, INTL_MAP_BASE_MAP_OPTIONS, INTL_SUBSTATION_LAYOUT_OPTIONS, LINE_FLOW_MODE, LineFlowMode, MAP_BASE_MAP, MAP_MANUAL_REFRESH, NAD_POSITIONS_GENERATION_MODE, NAD_POSITIONS_GENERATION_MODE_LABEL, NetworkVisualizationTabValues, PARAM_CENTER_LABEL, PARAM_COMPONENT_LIBRARY, PARAM_DIAGONAL_LABEL, PARAM_LINE_FLOW_MODE, PARAM_LINE_FULL_PATH, PARAM_LINE_PARALLEL_PATH, PARAM_MAP_BASEMAP, PARAM_MAP_MANUAL_REFRESH, PARAM_NAD_POSITIONS_GENERATION_MODE, PARAM_SUBSTATION_LAYOUT, SUBSTATION_LAYOUT } from "./components/parameters/network-visualizations/constants.js";
156
+ import { CENTER_LABEL, COMPONENT_LIBRARY, DIAGONAL_LABEL, INTL_LINE_FLOW_MODE_OPTIONS, INTL_SUBSTATION_LAYOUT_OPTIONS, LINE_FLOW_MODE, LineFlowMode, MAP_BASE_MAP, MAP_MANUAL_REFRESH, NAD_POSITIONS_GENERATION_MODE, NAD_POSITIONS_GENERATION_MODE_LABEL, NetworkVisualizationTabValues, PARAM_CENTER_LABEL, PARAM_COMPONENT_LIBRARY, PARAM_DIAGONAL_LABEL, PARAM_LINE_FLOW_MODE, PARAM_LINE_FULL_PATH, PARAM_LINE_PARALLEL_PATH, PARAM_MAP_BASEMAP, PARAM_MAP_MANUAL_REFRESH, PARAM_NAD_POSITIONS_GENERATION_MODE, PARAM_SUBSTATION_LAYOUT, SUBSTATION_LAYOUT } from "./components/parameters/network-visualizations/constants.js";
156
157
  import { MAP_BASEMAP_CARTO, MAP_BASEMAP_CARTO_NOLABEL, MAP_BASEMAP_ETALAB, MAP_BASEMAP_MAPBOX, NadPositionsGenerationMode, SubstationLayout } from "./components/parameters/network-visualizations/network-visualizations.types.js";
157
158
  import { NetworkVisualizationParametersInline } from "./components/parameters/network-visualizations/network-visualizations-parameters-inline.js";
158
159
  import { NetworkVisualizationsParametersEditionDialog } from "./components/parameters/network-visualizations/network-visualizations-parameters-dialog.js";
@@ -223,6 +224,7 @@ import { copyToClipboard } from "./utils/navigator-clipboard.js";
223
224
  import { NotificationsUrlKeys, PREFIX_CONFIG_NOTIFICATION_WS, PREFIX_DIRECTORY_NOTIFICATION_WS, PREFIX_STUDY_NOTIFICATION_WS } from "./utils/constants/notificationsProvider.js";
224
225
  import { DARK_THEME, LIGHT_THEME, makeComposeClasses, mergeSx, toNestedGlobalSelectors } from "./utils/styles.js";
225
226
  import { CustomError, formatMessageValues } from "./utils/types/CustomError.js";
227
+ import { ProblemDetailError } from "./utils/types/ProblemDetailError.js";
226
228
  import { NetworkTimeoutError } from "./utils/types/NetworkTimeoutError.js";
227
229
  import { ElementType } from "./utils/types/elementType.js";
228
230
  import { ALL_EQUIPMENTS, BASE_EQUIPMENTS, EquipmentType, ExtendedEquipmentType, HvdcType, OperatingStatus, SEARCH_EQUIPMENTS, TYPE_TAG_MAX_SIZE, VL_TAG_MAX_SIZE, equipmentStyles, getEquipmentsInfosForSearchBar } from "./utils/types/equipmentType.js";
@@ -396,6 +398,7 @@ export {
396
398
  EXPERT_FILTER_EQUIPMENTS,
397
399
  EXPERT_FILTER_FIELDS,
398
400
  EXPERT_FILTER_QUERY,
401
+ EditNoteIcon,
399
402
  ElementSaveDialog,
400
403
  ElementSearchDialog,
401
404
  ElementSearchInput,
@@ -448,7 +451,6 @@ export {
448
451
  INJECTIONS_EQUIPMENT_TYPES,
449
452
  INJECTION_DISTRIBUTION_TYPES,
450
453
  INTL_LINE_FLOW_MODE_OPTIONS,
451
- INTL_MAP_BASE_MAP_OPTIONS,
452
454
  INTL_SUBSTATION_LAYOUT_OPTIONS,
453
455
  IST_FORM,
454
456
  InitialVoltage,
@@ -576,6 +578,7 @@ export {
576
578
  PhotoLibraryIcon,
577
579
  PopupConfirmationDialog,
578
580
  PredefinedParameters,
581
+ ProblemDetailError,
579
582
  PropertyValueEditor,
580
583
  ProviderParam,
581
584
  RATIO_REGULATION_MODE_OPTIONS,
@@ -1,9 +1,9 @@
1
1
  import { backendFetch, backendFetchJson } from "./utils.js";
2
2
  import { COMMON_APP_NAME, COMMON_CONFIG_PARAMS_NAMES } from "../utils/constants/configConstants.js";
3
3
  import "../utils/conversionUtils.js";
4
+ import "../utils/types/equipmentType.js";
4
5
  import "react/jsx-runtime";
5
6
  import "@mui/icons-material";
6
- import "../utils/types/equipmentType.js";
7
7
  import "../utils/yupConfig.js";
8
8
  const PREFIX_CONFIG_QUERIES = `${"api/gateway"}/config`;
9
9
  function getAppName(appName, name) {
@@ -4,7 +4,7 @@ type FetchInitWithTimeout = RequestInit & {
4
4
  /** If provided and no signal is set, use this as the timeout override (ms). */
5
5
  timeoutMs?: number;
6
6
  };
7
- export declare const convertToCustomError: (response: string) => CustomError;
7
+ export declare const convertToCustomError: (textError: string) => CustomError;
8
8
  export declare const backendFetch: (url: string, init?: FetchInitWithTimeout, token?: string) => Promise<Response>;
9
9
  export declare const backendFetchJson: (url: string, init?: FetchInitWithTimeout, token?: string) => Promise<any>;
10
10
  export declare function backendFetchText(url: string, init?: FetchInitWithTimeout, token?: string): Promise<string>;
@@ -1,6 +1,7 @@
1
1
  import { getUserToken } from "../redux/commonStore.js";
2
- import { CustomError } from "../utils/types/CustomError.js";
2
+ import { ProblemDetailError } from "../utils/types/ProblemDetailError.js";
3
3
  import { NetworkTimeoutError } from "../utils/types/NetworkTimeoutError.js";
4
+ import { CustomError } from "../utils/types/CustomError.js";
4
5
  const DEFAULT_TIMEOUT_MS = 5e4;
5
6
  const parseError = (text) => {
6
7
  try {
@@ -27,20 +28,30 @@ const prepareRequest = (init, token) => {
27
28
  initWithSignal.headers.append("Authorization", `Bearer ${tokenCopy}`);
28
29
  return initWithSignal;
29
30
  };
30
- const convertToCustomError = (response) => {
31
- const errorJson = parseError(response);
32
- if (errorJson?.businessErrorCode) {
33
- return new CustomError(
34
- `Server error: ${errorJson.detail}`,
31
+ const convertToCustomError = (textError) => {
32
+ const errorJson = parseError(textError);
33
+ if (errorJson?.server && errorJson?.timestamp && errorJson?.traceId && errorJson?.detail) {
34
+ let date = /* @__PURE__ */ new Date();
35
+ try {
36
+ date = new Date(errorJson.timestamp);
37
+ } catch {
38
+ }
39
+ return new ProblemDetailError(
40
+ errorJson.detail,
41
+ errorJson.server,
42
+ date,
43
+ errorJson.traceId,
35
44
  errorJson.status,
36
45
  errorJson.businessErrorCode,
37
46
  errorJson.businessErrorValues
38
47
  );
39
48
  }
40
- if (errorJson?.detail) {
41
- return new CustomError(`Server error: ${errorJson.detail}`, errorJson.status);
42
- }
43
- return new CustomError(errorJson);
49
+ return new CustomError(
50
+ errorJson.detail,
51
+ errorJson.status,
52
+ errorJson.businessErrorCode,
53
+ errorJson.businessErrorValues
54
+ );
44
55
  };
45
56
  const handleError = (response) => {
46
57
  return response.text().then((text) => {
@@ -6,4 +6,5 @@
6
6
  */
7
7
  export declare const errorsEn: {
8
8
  'errors.network.timeout': string;
9
+ 'errors.technicalError': string;
9
10
  };
@@ -1,5 +1,6 @@
1
1
  const errorsEn = {
2
- "errors.network.timeout": "The request timed out. Please try again."
2
+ "errors.network.timeout": "The request timed out. Please try again.",
3
+ "errors.technicalError": "Server error: {message}\n (server: {serverName}, timestamp: {timestamp}, trace ID: {traceId})"
3
4
  };
4
5
  export {
5
6
  errorsEn
@@ -6,4 +6,5 @@
6
6
  */
7
7
  export declare const errorsFr: {
8
8
  'errors.network.timeout': string;
9
+ 'errors.technicalError': string;
9
10
  };
@@ -1,5 +1,6 @@
1
1
  const errorsFr = {
2
- "errors.network.timeout": "La requête a expiré. Veuillez réessayer."
2
+ "errors.network.timeout": "La requête a expiré. Veuillez réessayer.",
3
+ "errors.technicalError": "Erreur serveur: {message}\n (serveur: {serverName}, horodatage: {timestamp}, trace ID: {traceId})"
3
4
  };
4
5
  export {
5
6
  errorsFr
@@ -1,6 +1,6 @@
1
1
  export declare const PARAM_THEME = "theme";
2
2
  export declare const PARAM_LANGUAGE = "language";
3
- export declare const PARAM_DEVELOPER_MODE = "enableDeveloperMode";
3
+ export declare const PARAM_DEVELOPER_MODE = "isDeveloperMode";
4
4
  export declare const LAST_SELECTED_DIRECTORY = "lastSelectedDirectory";
5
5
  export declare const COMMON_CONFIG_PARAMS_NAMES: Set<string>;
6
6
  export declare const COMMON_APP_NAME = "common";
@@ -1,6 +1,6 @@
1
1
  const PARAM_THEME = "theme";
2
2
  const PARAM_LANGUAGE = "language";
3
- const PARAM_DEVELOPER_MODE = "enableDeveloperMode";
3
+ const PARAM_DEVELOPER_MODE = "isDeveloperMode";
4
4
  const LAST_SELECTED_DIRECTORY = "lastSelectedDirectory";
5
5
  const COMMON_CONFIG_PARAMS_NAMES = /* @__PURE__ */ new Set([
6
6
  PARAM_THEME,
@@ -1,5 +1,7 @@
1
- import { CustomError, formatMessageValues } from "./types/CustomError.js";
1
+ import { ProblemDetailError } from "./types/ProblemDetailError.js";
2
2
  import { NetworkTimeoutError } from "./types/NetworkTimeoutError.js";
3
+ import { formatMessageValues } from "./types/CustomError.js";
4
+ import "./types/equipmentType.js";
3
5
  function catchErrorHandler(error, callback) {
4
6
  if (error instanceof Object && "message" in error && typeof error.message === "string") {
5
7
  callback(error.message);
@@ -15,12 +17,26 @@ function snackWithFallback(snackError, error, headerInputs) {
15
17
  });
16
18
  return;
17
19
  }
18
- if (error instanceof CustomError && error.businessErrorCode) {
19
- snackError({
20
- messageId: error.businessErrorCode,
21
- messageValues: error.businessErrorValues ? formatMessageValues(error.businessErrorValues) : void 0,
22
- ...headerInputs
23
- });
20
+ if (error instanceof ProblemDetailError) {
21
+ if (error.businessErrorCode) {
22
+ snackError({
23
+ messageId: error.businessErrorCode,
24
+ messageValues: error.businessErrorValues ? formatMessageValues(error.businessErrorValues) : void 0,
25
+ ...headerInputs
26
+ });
27
+ } else {
28
+ snackError({
29
+ messageId: "errors.technicalError",
30
+ messageValues: {
31
+ message: error.message,
32
+ serverName: error.serverName,
33
+ timestamp: error.timestamp.toLocaleString(),
34
+ // It would require refactoring to adapt with GS language so we keep it like that for now
35
+ traceId: error.traceId
36
+ },
37
+ ...headerInputs
38
+ });
39
+ }
24
40
  } else {
25
41
  catchErrorHandler(error, (message) => {
26
42
  snackError({
@@ -15,6 +15,7 @@ import { copyToClipboard } from "./navigator-clipboard.js";
15
15
  import { NotificationsUrlKeys, PREFIX_CONFIG_NOTIFICATION_WS, PREFIX_DIRECTORY_NOTIFICATION_WS, PREFIX_STUDY_NOTIFICATION_WS } from "./constants/notificationsProvider.js";
16
16
  import { DARK_THEME, LIGHT_THEME, makeComposeClasses, mergeSx, toNestedGlobalSelectors } from "./styles.js";
17
17
  import { CustomError, formatMessageValues } from "./types/CustomError.js";
18
+ import { ProblemDetailError } from "./types/ProblemDetailError.js";
18
19
  import { NetworkTimeoutError } from "./types/NetworkTimeoutError.js";
19
20
  import { ElementType } from "./types/elementType.js";
20
21
  import { ALL_EQUIPMENTS, BASE_EQUIPMENTS, EquipmentType, ExtendedEquipmentType, HvdcType, OperatingStatus, SEARCH_EQUIPMENTS, TYPE_TAG_MAX_SIZE, VL_TAG_MAX_SIZE, equipmentStyles, getEquipmentsInfosForSearchBar } from "./types/equipmentType.js";
@@ -88,6 +89,7 @@ export {
88
89
  PREFIX_DIRECTORY_NOTIFICATION_WS,
89
90
  PREFIX_STUDY_NOTIFICATION_WS,
90
91
  ParameterType,
92
+ ProblemDetailError,
91
93
  SEARCH_EQUIPMENTS,
92
94
  SIEMENS,
93
95
  SVC,
@@ -5,9 +5,9 @@
5
5
  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
6
  */
7
7
  export declare class CustomError extends Error {
8
- status?: number;
8
+ status: number;
9
9
  businessErrorCode?: string;
10
10
  businessErrorValues?: Record<string, unknown>;
11
- constructor(message: string, status?: number, businessErrorCode?: string, businessErrorValues?: Record<string, unknown>);
11
+ constructor(message: string, status: number, businessErrorCode?: string, businessErrorValues?: Record<string, unknown>);
12
12
  }
13
13
  export declare function formatMessageValues(properties: Record<string, unknown>): Record<string, string>;
@@ -0,0 +1,7 @@
1
+ import { CustomError } from './CustomError';
2
+ export declare class ProblemDetailError extends CustomError {
3
+ serverName: string;
4
+ timestamp: Date;
5
+ traceId: string;
6
+ constructor(message: string, serverName: string, timestamp: Date, traceId: string, status: number, businessErrorCode?: string, businessErrorValues?: Record<string, unknown>);
7
+ }
@@ -0,0 +1,12 @@
1
+ import { CustomError } from "./CustomError.js";
2
+ class ProblemDetailError extends CustomError {
3
+ constructor(message, serverName, timestamp, traceId, status, businessErrorCode, businessErrorValues) {
4
+ super(message, status, businessErrorCode, businessErrorValues);
5
+ this.serverName = serverName;
6
+ this.timestamp = timestamp;
7
+ this.traceId = traceId;
8
+ }
9
+ }
10
+ export {
11
+ ProblemDetailError
12
+ };
@@ -5,6 +5,7 @@
5
5
  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
6
  */
7
7
  export * from './CustomError';
8
+ export * from './ProblemDetailError';
8
9
  export * from './NetworkTimeoutError';
9
10
  export * from './elementType';
10
11
  export * from './equipmentType';
@@ -1,4 +1,5 @@
1
1
  import { CustomError, formatMessageValues } from "./CustomError.js";
2
+ import { ProblemDetailError } from "./ProblemDetailError.js";
2
3
  import { NetworkTimeoutError } from "./NetworkTimeoutError.js";
3
4
  import { ElementType } from "./elementType.js";
4
5
  import { ALL_EQUIPMENTS, BASE_EQUIPMENTS, EquipmentType, ExtendedEquipmentType, HvdcType, OperatingStatus, SEARCH_EQUIPMENTS, TYPE_TAG_MAX_SIZE, VL_TAG_MAX_SIZE, equipmentStyles, getEquipmentsInfosForSearchBar } from "./equipmentType.js";
@@ -34,6 +35,7 @@ export {
34
35
  NetworkTimeoutError,
35
36
  OperatingStatus,
36
37
  ParameterType,
38
+ ProblemDetailError,
37
39
  SEARCH_EQUIPMENTS,
38
40
  SVC,
39
41
  SensitivityType,
@@ -17,11 +17,15 @@ export type StudyMetadata = Metadata & {
17
17
  [networkElementType: string]: PredefinedProperties;
18
18
  };
19
19
  defaultParametersValues?: {
20
- enableDeveloperMode?: boolean;
20
+ isDeveloperMode?: boolean;
21
21
  };
22
22
  defaultCountry?: string;
23
23
  favoriteCountries?: string[];
24
24
  substationPropertiesGlobalFilters?: Map<string, string[]>;
25
+ baseMapOptions?: {
26
+ id: string;
27
+ label: string;
28
+ }[];
25
29
  };
26
30
  type ThemeColors = Record<string, string>;
27
31
  type SldAndNadColors = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gridsuite/commons-ui",
3
- "version": "0.145.0",
3
+ "version": "0.147.0",
4
4
  "description": "common react components for gridsuite applications",
5
5
  "author": "gridsuite team",
6
6
  "homepage": "https://github.com/gridsuite",