@gridsuite/commons-ui 0.208.0 → 0.209.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 (31) hide show
  1. package/dist/components/index.js +12 -2
  2. package/dist/components/inputs/reactHookForm/booleans/RadioInput.js +1 -1
  3. package/dist/components/network-modification-table/renderers/name-cell.d.ts +2 -1
  4. package/dist/components/network-modification-table/renderers/name-cell.js +136 -19
  5. package/dist/components/network-modifications/battery/creation/BatteryCreationForm.d.ts +4 -0
  6. package/dist/components/network-modifications/battery/creation/BatteryCreationForm.js +105 -0
  7. package/dist/components/network-modifications/battery/creation/batteryCreation.types.d.ts +26 -0
  8. package/dist/components/network-modifications/battery/creation/batteryCreation.types.js +1 -0
  9. package/dist/components/network-modifications/battery/creation/batteryCreation.utils.d.ts +79 -0
  10. package/dist/components/network-modifications/battery/creation/batteryCreation.utils.js +145 -0
  11. package/dist/components/network-modifications/battery/creation/index.d.ts +9 -0
  12. package/dist/components/network-modifications/battery/creation/index.js +9 -0
  13. package/dist/components/network-modifications/battery/index.d.ts +7 -0
  14. package/dist/components/network-modifications/battery/index.js +9 -0
  15. package/dist/components/network-modifications/common/index.js +5 -2
  16. package/dist/components/network-modifications/common/reactiveLimits/index.js +5 -2
  17. package/dist/components/network-modifications/common/reactiveLimits/reactiveCapabilityCurve/index.js +2 -1
  18. package/dist/components/network-modifications/common/reactiveLimits/reactiveCapabilityCurve/reactiveCapability.utils.d.ts +10 -1
  19. package/dist/components/network-modifications/common/reactiveLimits/reactiveCapabilityCurve/reactiveCapability.utils.js +26 -24
  20. package/dist/components/network-modifications/common/reactiveLimits/reactiveLimits.type.d.ts +3 -3
  21. package/dist/components/network-modifications/common/reactiveLimits/reactiveLimits.utils.d.ts +33 -0
  22. package/dist/components/network-modifications/common/reactiveLimits/reactiveLimits.utils.js +68 -34
  23. package/dist/components/network-modifications/index.d.ts +1 -0
  24. package/dist/components/network-modifications/index.js +12 -2
  25. package/dist/index.js +12 -2
  26. package/dist/translations/en/networkModificationsEn.d.ts +10 -0
  27. package/dist/translations/en/networkModificationsEn.js +10 -0
  28. package/dist/translations/fr/networkModificationsFr.d.ts +10 -0
  29. package/dist/translations/fr/networkModificationsFr.js +10 -0
  30. package/dist/utils/types/network-modification-metadata.d.ts +1 -0
  31. package/package.json +1 -1
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Copyright (c) 2026, RTE (http://www.rte-france.com)
3
+ * This Source Code Form is subject to the terms of the Mozilla Public
4
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
5
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
+ */
7
+ export * from './creation';
@@ -0,0 +1,9 @@
1
+ import { batteryCreationDtoToForm, batteryCreationEmptyFormData, batteryCreationFormSchema, batteryCreationFormToDto } from "./creation/batteryCreation.utils.js";
2
+ import { BatteryCreationForm } from "./creation/BatteryCreationForm.js";
3
+ export {
4
+ BatteryCreationForm,
5
+ batteryCreationDtoToForm,
6
+ batteryCreationEmptyFormData,
7
+ batteryCreationFormSchema,
8
+ batteryCreationFormToDto
9
+ };
@@ -18,10 +18,10 @@ import { getActivePowerControlEmptyFormData, getActivePowerControlSchema } from
18
18
  import { ActivePowerControlForm } from "./activePowerControl/ActivePowerControlForm.js";
19
19
  import { getShortCircuitEmptyFormData, getShortCircuitFormData, getShortCircuitFormSchema } from "./shortCircuit/shortCircuitForm.utils.js";
20
20
  import { ShortCircuitForm } from "./shortCircuit/ShortCircuitForm.js";
21
- import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getRowEmptyFormData, setCurrentReactiveCapabilityCurveTable, setSelectedReactiveLimits, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./reactiveLimits/reactiveCapabilityCurve/reactiveCapability.utils.js";
21
+ import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getReactiveCapabilityCurveValidationSchemaArray, getRowEmptyFormData, setCurrentReactiveCapabilityCurveTable, setSelectedReactiveLimits, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./reactiveLimits/reactiveCapabilityCurve/reactiveCapability.utils.js";
22
22
  import { ReactiveCapabilityCurveRowForm } from "./reactiveLimits/reactiveCapabilityCurve/ReactiveCapabilityCurveRowForm.js";
23
23
  import { ReactiveCapabilityCurveTableForm } from "./reactiveLimits/reactiveCapabilityCurve/ReactiveCapabilityCurveTableForm.js";
24
- import { REACTIVE_LIMIT_TYPES, getReactiveLimitsEmptyFormData, getReactiveLimitsFormData, getReactiveLimitsSchema, getReactiveLimitsValidationSchema } from "./reactiveLimits/reactiveLimits.utils.js";
24
+ import { REACTIVE_LIMIT_TYPES, getReactiveLimitsEmptyFormData, getReactiveLimitsEmptyFormDataProps, getReactiveLimitsFormData, getReactiveLimitsFormDataProps, getReactiveLimitsSchema, getReactiveLimitsValidationSchema } from "./reactiveLimits/reactiveLimits.utils.js";
25
25
  import { ReactiveLimitsForm } from "./reactiveLimits/ReactiveLimitsForm.js";
26
26
  export {
27
27
  ActivePowerControlForm,
@@ -88,8 +88,11 @@ export {
88
88
  getPropertiesFromModification,
89
89
  getPropertyValue,
90
90
  getReactiveCapabilityCurveValidationSchema,
91
+ getReactiveCapabilityCurveValidationSchemaArray,
91
92
  getReactiveLimitsEmptyFormData,
93
+ getReactiveLimitsEmptyFormDataProps,
92
94
  getReactiveLimitsFormData,
95
+ getReactiveLimitsFormDataProps,
93
96
  getReactiveLimitsSchema,
94
97
  getReactiveLimitsValidationSchema,
95
98
  getReactivePowerSetPointSchema,
@@ -1,7 +1,7 @@
1
- import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getRowEmptyFormData, setCurrentReactiveCapabilityCurveTable, setSelectedReactiveLimits, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./reactiveCapabilityCurve/reactiveCapability.utils.js";
1
+ import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getReactiveCapabilityCurveValidationSchemaArray, getRowEmptyFormData, setCurrentReactiveCapabilityCurveTable, setSelectedReactiveLimits, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./reactiveCapabilityCurve/reactiveCapability.utils.js";
2
2
  import { ReactiveCapabilityCurveRowForm } from "./reactiveCapabilityCurve/ReactiveCapabilityCurveRowForm.js";
3
3
  import { ReactiveCapabilityCurveTableForm } from "./reactiveCapabilityCurve/ReactiveCapabilityCurveTableForm.js";
4
- import { REACTIVE_LIMIT_TYPES, getReactiveLimitsEmptyFormData, getReactiveLimitsFormData, getReactiveLimitsSchema, getReactiveLimitsValidationSchema } from "./reactiveLimits.utils.js";
4
+ import { REACTIVE_LIMIT_TYPES, getReactiveLimitsEmptyFormData, getReactiveLimitsEmptyFormDataProps, getReactiveLimitsFormData, getReactiveLimitsFormDataProps, getReactiveLimitsSchema, getReactiveLimitsValidationSchema } from "./reactiveLimits.utils.js";
5
5
  import { ReactiveLimitsForm } from "./ReactiveLimitsForm.js";
6
6
  export {
7
7
  INSERT,
@@ -11,8 +11,11 @@ export {
11
11
  ReactiveCapabilityCurveTableForm,
12
12
  ReactiveLimitsForm,
13
13
  getReactiveCapabilityCurveValidationSchema,
14
+ getReactiveCapabilityCurveValidationSchemaArray,
14
15
  getReactiveLimitsEmptyFormData,
16
+ getReactiveLimitsEmptyFormDataProps,
15
17
  getReactiveLimitsFormData,
18
+ getReactiveLimitsFormDataProps,
16
19
  getReactiveLimitsSchema,
17
20
  getReactiveLimitsValidationSchema,
18
21
  getRowEmptyFormData,
@@ -1,4 +1,4 @@
1
- import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getRowEmptyFormData, setCurrentReactiveCapabilityCurveTable, setSelectedReactiveLimits, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./reactiveCapability.utils.js";
1
+ import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getReactiveCapabilityCurveValidationSchemaArray, getRowEmptyFormData, setCurrentReactiveCapabilityCurveTable, setSelectedReactiveLimits, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./reactiveCapability.utils.js";
2
2
  import { ReactiveCapabilityCurveRowForm } from "./ReactiveCapabilityCurveRowForm.js";
3
3
  import { ReactiveCapabilityCurveTableForm } from "./ReactiveCapabilityCurveTableForm.js";
4
4
  export {
@@ -7,6 +7,7 @@ export {
7
7
  ReactiveCapabilityCurveRowForm,
8
8
  ReactiveCapabilityCurveTableForm,
9
9
  getReactiveCapabilityCurveValidationSchema,
10
+ getReactiveCapabilityCurveValidationSchemaArray,
10
11
  getRowEmptyFormData,
11
12
  setCurrentReactiveCapabilityCurveTable,
12
13
  setSelectedReactiveLimits,
@@ -11,8 +11,17 @@ export declare const getRowEmptyFormData: () => {
11
11
  maxQ: null;
12
12
  minQ: null;
13
13
  };
14
+ export declare const getReactiveCapabilityCurveValidationSchemaArray: (positiveAndNegativePExist?: boolean) => import('yup').ArraySchema<{
15
+ minQ: number | null;
16
+ maxQ: number | null;
17
+ p: number | null;
18
+ }[] | null | undefined, import('yup').AnyObject, "", "">;
14
19
  export declare const getReactiveCapabilityCurveValidationSchema: (id?: FieldConstants, positiveAndNegativePExist?: boolean) => {
15
- [x: string]: import('yup').ArraySchema<any[] | null | undefined, import('yup').AnyObject, undefined, "">;
20
+ [x: string]: import('yup').ArraySchema<{
21
+ minQ: number | null;
22
+ maxQ: number | null;
23
+ p: number | null;
24
+ }[] | null | undefined, import('yup').AnyObject, "", "">;
16
25
  };
17
26
  export declare function setSelectedReactiveLimits(id: string, minMaxReactiveLimits: number, setValue: UseFormSetValue<FieldValues>): void;
18
27
  export declare function setCurrentReactiveCapabilityCurveTable(previousReactiveCapabilityCurveTable: ReactiveCapabilityCurve, fieldKey: string, setValue: UseFormSetValue<FieldValues>): void;
@@ -67,33 +67,34 @@ function ifOneFieldThenAllFields(values, context) {
67
67
  });
68
68
  return errors.length === 0 ? true : new ValidationError(errors);
69
69
  }
70
- const getReactiveCapabilityCurveValidationSchema = (id = FieldConstants.REACTIVE_CAPABILITY_CURVE_TABLE, positiveAndNegativePExist = false) => ({
71
- [id]: array().nullable().when([FieldConstants.REACTIVE_CAPABILITY_CURVE_CHOICE], {
72
- is: "CURVE",
73
- then: (schema) => {
74
- let resultSchema = schema.of(getCreationRowSchema());
75
- if (positiveAndNegativePExist) {
76
- resultSchema = resultSchema.test(
77
- "checkATLeastThereIsOneNegativeP",
78
- "ReactiveCapabilityCurveCreationErrorMissingNegativeP",
79
- hasAtLeastOneNegativeP
80
- ).test(
81
- "checkATLeastThereIsOnePositiveP",
82
- "ReactiveCapabilityCurveCreationErrorMissingPositiveP",
83
- hasAtLeastOnePositiveP
84
- );
85
- }
86
- return resultSchema.min(2, "ReactiveCapabilityCurveCreationErrorMissingPoints").test("ifOneFieldThenAllFields", "", ifOneFieldThenAllFields).test(
87
- "checkAllValuesAreUnique",
88
- "ReactiveCapabilityCurveCreationErrorPInvalid",
89
- checkAllPValuesAreUnique
70
+ const getReactiveCapabilityCurveValidationSchemaArray = (positiveAndNegativePExist = false) => array().of(getCreationRowSchema()).nullable().when([FieldConstants.REACTIVE_CAPABILITY_CURVE_CHOICE], {
71
+ is: "CURVE",
72
+ then: (schema) => {
73
+ let resultSchema = schema;
74
+ if (positiveAndNegativePExist) {
75
+ resultSchema = resultSchema.test(
76
+ "checkATLeastThereIsOneNegativeP",
77
+ "ReactiveCapabilityCurveCreationErrorMissingNegativeP",
78
+ hasAtLeastOneNegativeP
90
79
  ).test(
91
- "checkAllValuesBetweenMinMax",
92
- "ReactiveCapabilityCurveCreationErrorPOutOfRange",
93
- checkAllPValuesBetweenMinMax
80
+ "checkATLeastThereIsOnePositiveP",
81
+ "ReactiveCapabilityCurveCreationErrorMissingPositiveP",
82
+ hasAtLeastOnePositiveP
94
83
  );
95
84
  }
96
- })
85
+ return resultSchema.min(2, "ReactiveCapabilityCurveCreationErrorMissingPoints").test("ifOneFieldThenAllFields", "", ifOneFieldThenAllFields).test(
86
+ "checkAllValuesAreUnique",
87
+ "ReactiveCapabilityCurveCreationErrorPInvalid",
88
+ checkAllPValuesAreUnique
89
+ ).test(
90
+ "checkAllValuesBetweenMinMax",
91
+ "ReactiveCapabilityCurveCreationErrorPOutOfRange",
92
+ checkAllPValuesBetweenMinMax
93
+ );
94
+ }
95
+ });
96
+ const getReactiveCapabilityCurveValidationSchema = (id = FieldConstants.REACTIVE_CAPABILITY_CURVE_TABLE, positiveAndNegativePExist = false) => ({
97
+ [id]: getReactiveCapabilityCurveValidationSchemaArray(positiveAndNegativePExist)
97
98
  });
98
99
  function setSelectedReactiveLimits(id, minMaxReactiveLimits, setValue) {
99
100
  setValue(id, minMaxReactiveLimits ? "MINMAX" : "CURVE");
@@ -144,6 +145,7 @@ export {
144
145
  INSERT,
145
146
  REMOVE,
146
147
  getReactiveCapabilityCurveValidationSchema,
148
+ getReactiveCapabilityCurveValidationSchemaArray,
147
149
  getRowEmptyFormData,
148
150
  setCurrentReactiveCapabilityCurveTable,
149
151
  setSelectedReactiveLimits,
@@ -5,9 +5,9 @@
5
5
  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
6
  */
7
7
  export interface ReactiveCapabilityCurvePoints {
8
- p?: number | null;
9
- maxQ?: number | null;
10
- minQ?: number | null;
8
+ p: number | null;
9
+ maxQ: number | null;
10
+ minQ: number | null;
11
11
  }
12
12
  export interface MinMaxReactiveLimitsFormInfos {
13
13
  minQ?: number | null;
@@ -7,6 +7,17 @@ export declare const REACTIVE_LIMIT_TYPES: readonly [{
7
7
  readonly id: "CURVE";
8
8
  readonly label: "ReactiveLimitsKindCurve";
9
9
  }];
10
+ export declare const getReactiveLimitsFormDataProps: ({ reactiveCapabilityCurveChoice, minimumReactivePower, maximumReactivePower, reactiveCapabilityCurvePoints, }: {
11
+ reactiveCapabilityCurveChoice: string;
12
+ minimumReactivePower?: number | null;
13
+ maximumReactivePower?: number | null;
14
+ reactiveCapabilityCurvePoints?: ReactiveCapabilityCurvePoints[] | null;
15
+ }) => {
16
+ reactiveCapabilityCurveChoice: string;
17
+ minimumReactivePower: number | null;
18
+ maximumReactivePower: number | null;
19
+ reactiveCapabilityCurveTable: ReactiveCapabilityCurvePoints[];
20
+ };
10
21
  export declare const getReactiveLimitsFormData: ({ id, reactiveCapabilityCurveChoice, minimumReactivePower, maximumReactivePower, reactiveCapabilityCurvePoints, }: {
11
22
  id?: string;
12
23
  reactiveCapabilityCurveChoice: string;
@@ -21,6 +32,16 @@ export declare const getReactiveLimitsFormData: ({ id, reactiveCapabilityCurveCh
21
32
  reactiveCapabilityCurveTable: ReactiveCapabilityCurvePoints[];
22
33
  };
23
34
  };
35
+ export declare const getReactiveLimitsEmptyFormDataProps: () => {
36
+ reactiveCapabilityCurveChoice: string;
37
+ minimumReactivePower: null;
38
+ maximumReactivePower: null;
39
+ reactiveCapabilityCurveTable: {
40
+ p: null;
41
+ maxQ: null;
42
+ minQ: null;
43
+ }[];
44
+ };
24
45
  export declare const getReactiveLimitsEmptyFormData: (id?: FieldConstants) => {
25
46
  [x: string]: {
26
47
  reactiveCapabilityCurveChoice: string;
@@ -37,19 +58,31 @@ export declare const getReactiveLimitsValidationSchema: (isEquipmentModification
37
58
  reactiveCapabilityCurveChoice: string;
38
59
  minimumReactivePower: number | null | undefined;
39
60
  maximumReactivePower: number | null | undefined;
61
+ reactiveCapabilityCurveTable: {
62
+ minQ: number | null;
63
+ maxQ: number | null;
64
+ p: number | null;
65
+ }[] | null | undefined;
40
66
  }, import('yup').AnyObject, {
41
67
  reactiveCapabilityCurveChoice: undefined;
42
68
  minimumReactivePower: undefined;
43
69
  maximumReactivePower: undefined;
70
+ reactiveCapabilityCurveTable: "";
44
71
  }, "">;
45
72
  export declare const getReactiveLimitsSchema: (isEquipmentModification?: boolean, positiveAndNegativePExist?: boolean, id?: FieldConstants) => {
46
73
  [x: string]: import('yup').ObjectSchema<{
47
74
  reactiveCapabilityCurveChoice: string;
48
75
  minimumReactivePower: number | null | undefined;
49
76
  maximumReactivePower: number | null | undefined;
77
+ reactiveCapabilityCurveTable: {
78
+ minQ: number | null;
79
+ maxQ: number | null;
80
+ p: number | null;
81
+ }[] | null | undefined;
50
82
  }, import('yup').AnyObject, {
51
83
  reactiveCapabilityCurveChoice: undefined;
52
84
  minimumReactivePower: undefined;
53
85
  maximumReactivePower: undefined;
86
+ reactiveCapabilityCurveTable: "";
54
87
  }, "">;
55
88
  };
@@ -1,5 +1,5 @@
1
1
  import { object, number, string } from "yup";
2
- import { getRowEmptyFormData, getReactiveCapabilityCurveValidationSchema } from "./reactiveCapabilityCurve/reactiveCapability.utils.js";
2
+ import { getRowEmptyFormData, getReactiveCapabilityCurveValidationSchemaArray } from "./reactiveCapabilityCurve/reactiveCapability.utils.js";
3
3
  import { FieldConstants } from "../../../../utils/constants/fieldConstants.js";
4
4
  import { YUP_REQUIRED } from "../../../../utils/constants/translationKeys.js";
5
5
  import "../../../../utils/conversionUtils.js";
@@ -11,6 +11,20 @@ const REACTIVE_LIMIT_TYPES = [
11
11
  { id: "MINMAX", label: "ReactiveLimitsKindMinMax" },
12
12
  { id: "CURVE", label: "ReactiveLimitsKindCurve" }
13
13
  ];
14
+ const getReactiveLimitsFormDataProps = ({
15
+ reactiveCapabilityCurveChoice,
16
+ minimumReactivePower,
17
+ maximumReactivePower,
18
+ reactiveCapabilityCurvePoints
19
+ }) => ({
20
+ [FieldConstants.REACTIVE_CAPABILITY_CURVE_CHOICE]: reactiveCapabilityCurveChoice,
21
+ [FieldConstants.MINIMUM_REACTIVE_POWER]: minimumReactivePower ?? null,
22
+ [FieldConstants.MAXIMUM_REACTIVE_POWER]: maximumReactivePower ?? null,
23
+ [FieldConstants.REACTIVE_CAPABILITY_CURVE_TABLE]: reactiveCapabilityCurvePoints ?? [
24
+ getRowEmptyFormData(),
25
+ getRowEmptyFormData()
26
+ ]
27
+ });
14
28
  const getReactiveLimitsFormData = ({
15
29
  id = FieldConstants.REACTIVE_LIMITS,
16
30
  reactiveCapabilityCurveChoice,
@@ -18,49 +32,69 @@ const getReactiveLimitsFormData = ({
18
32
  maximumReactivePower,
19
33
  reactiveCapabilityCurvePoints
20
34
  }) => ({
21
- [id]: {
22
- [FieldConstants.REACTIVE_CAPABILITY_CURVE_CHOICE]: reactiveCapabilityCurveChoice,
23
- [FieldConstants.MINIMUM_REACTIVE_POWER]: minimumReactivePower ?? null,
24
- [FieldConstants.MAXIMUM_REACTIVE_POWER]: maximumReactivePower ?? null,
25
- [FieldConstants.REACTIVE_CAPABILITY_CURVE_TABLE]: reactiveCapabilityCurvePoints ?? [
26
- getRowEmptyFormData(),
27
- getRowEmptyFormData()
28
- ]
29
- }
35
+ [id]: getReactiveLimitsFormDataProps({
36
+ reactiveCapabilityCurveChoice,
37
+ minimumReactivePower,
38
+ maximumReactivePower,
39
+ reactiveCapabilityCurvePoints
40
+ })
41
+ });
42
+ const getReactiveLimitsEmptyFormDataProps = () => ({
43
+ [FieldConstants.REACTIVE_CAPABILITY_CURVE_CHOICE]: "MINMAX",
44
+ [FieldConstants.MINIMUM_REACTIVE_POWER]: null,
45
+ [FieldConstants.MAXIMUM_REACTIVE_POWER]: null,
46
+ [FieldConstants.REACTIVE_CAPABILITY_CURVE_TABLE]: [getRowEmptyFormData(), getRowEmptyFormData()]
30
47
  });
31
48
  const getReactiveLimitsEmptyFormData = (id = FieldConstants.REACTIVE_LIMITS) => ({
32
- [id]: {
33
- [FieldConstants.REACTIVE_CAPABILITY_CURVE_CHOICE]: "MINMAX",
34
- [FieldConstants.MINIMUM_REACTIVE_POWER]: null,
35
- [FieldConstants.MAXIMUM_REACTIVE_POWER]: null,
36
- [FieldConstants.REACTIVE_CAPABILITY_CURVE_TABLE]: [getRowEmptyFormData(), getRowEmptyFormData()]
37
- }
49
+ [id]: getReactiveLimitsEmptyFormDataProps()
50
+ });
51
+ const getReactiveLimitsValidationSchema = (isEquipmentModification = false, positiveAndNegativePExist = false) => object().shape({
52
+ [FieldConstants.REACTIVE_CAPABILITY_CURVE_CHOICE]: string().nullable().required(YUP_REQUIRED),
53
+ [FieldConstants.MINIMUM_REACTIVE_POWER]: number().nullable().test(
54
+ "min-reactive-power-required",
55
+ "MinReactivePowerRequired",
56
+ function validateMinReactivePowerRequired(value) {
57
+ const { reactiveCapabilityCurveChoice, maximumReactivePower } = this.parent;
58
+ if (reactiveCapabilityCurveChoice === "MINMAX" && !isEquipmentModification && maximumReactivePower != null && value == null) {
59
+ return false;
60
+ }
61
+ return true;
62
+ }
63
+ ).test("min-less-than-max", "ReactiveLimitsMinMaxInvalid", function checkMinLessThanMax(value) {
64
+ const { reactiveCapabilityCurveChoice, maximumReactivePower } = this.parent;
65
+ if (reactiveCapabilityCurveChoice === "MINMAX" && value != null && maximumReactivePower != null) {
66
+ return value <= maximumReactivePower;
67
+ }
68
+ return true;
69
+ }),
70
+ [FieldConstants.MAXIMUM_REACTIVE_POWER]: number().nullable().test(
71
+ "max-reactive-power-required",
72
+ "MaxReactivePowerRequired",
73
+ function validateMaxReactivePowerRequired(value) {
74
+ const { reactiveCapabilityCurveChoice, minimumReactivePower } = this.parent;
75
+ if (reactiveCapabilityCurveChoice === "MINMAX" && !isEquipmentModification && minimumReactivePower != null && value == null) {
76
+ return false;
77
+ }
78
+ return true;
79
+ }
80
+ ).test("max-greater-than-min", "ReactiveLimitsMinMaxInvalid", function checkMaxGreaterThanMin(value) {
81
+ const { reactiveCapabilityCurveChoice, minimumReactivePower } = this.parent;
82
+ if (reactiveCapabilityCurveChoice === "MINMAX" && value != null && minimumReactivePower != null) {
83
+ return value >= minimumReactivePower;
84
+ }
85
+ return true;
86
+ }),
87
+ [FieldConstants.REACTIVE_CAPABILITY_CURVE_TABLE]: getReactiveCapabilityCurveValidationSchemaArray(positiveAndNegativePExist)
38
88
  });
39
- const getReactiveLimitsValidationSchema = (isEquipmentModification = false, positiveAndNegativePExist = false) => object().shape(
40
- {
41
- [FieldConstants.REACTIVE_CAPABILITY_CURVE_CHOICE]: string().nullable().required(YUP_REQUIRED),
42
- [FieldConstants.MINIMUM_REACTIVE_POWER]: number().nullable().when([FieldConstants.MAXIMUM_REACTIVE_POWER], {
43
- is: (maximumReactivePower) => !isEquipmentModification && maximumReactivePower != null,
44
- then: (schema) => schema.required(YUP_REQUIRED)
45
- }),
46
- [FieldConstants.MAXIMUM_REACTIVE_POWER]: number().nullable().when([FieldConstants.MINIMUM_REACTIVE_POWER], {
47
- is: (minimumReactivePower) => !isEquipmentModification && minimumReactivePower != null,
48
- then: (schema) => schema.required(YUP_REQUIRED)
49
- }),
50
- ...getReactiveCapabilityCurveValidationSchema(
51
- FieldConstants.REACTIVE_CAPABILITY_CURVE_TABLE,
52
- positiveAndNegativePExist
53
- )
54
- },
55
- [FieldConstants.MAXIMUM_REACTIVE_POWER, FieldConstants.MINIMUM_REACTIVE_POWER]
56
- );
57
89
  const getReactiveLimitsSchema = (isEquipmentModification = false, positiveAndNegativePExist = false, id = FieldConstants.REACTIVE_LIMITS) => ({
58
90
  [id]: getReactiveLimitsValidationSchema(isEquipmentModification, positiveAndNegativePExist)
59
91
  });
60
92
  export {
61
93
  REACTIVE_LIMIT_TYPES,
62
94
  getReactiveLimitsEmptyFormData,
95
+ getReactiveLimitsEmptyFormDataProps,
63
96
  getReactiveLimitsFormData,
97
+ getReactiveLimitsFormDataProps,
64
98
  getReactiveLimitsSchema,
65
99
  getReactiveLimitsValidationSchema
66
100
  };
@@ -12,3 +12,4 @@ export * from './voltageLevel';
12
12
  export * from './load';
13
13
  export * from './by-filter';
14
14
  export * from './generator';
15
+ export * from './battery';
@@ -18,10 +18,10 @@ import { getActivePowerControlEmptyFormData, getActivePowerControlSchema } from
18
18
  import { ActivePowerControlForm } from "./common/activePowerControl/ActivePowerControlForm.js";
19
19
  import { getShortCircuitEmptyFormData, getShortCircuitFormData, getShortCircuitFormSchema } from "./common/shortCircuit/shortCircuitForm.utils.js";
20
20
  import { ShortCircuitForm } from "./common/shortCircuit/ShortCircuitForm.js";
21
- import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getRowEmptyFormData, setCurrentReactiveCapabilityCurveTable, setSelectedReactiveLimits, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./common/reactiveLimits/reactiveCapabilityCurve/reactiveCapability.utils.js";
21
+ import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getReactiveCapabilityCurveValidationSchemaArray, getRowEmptyFormData, setCurrentReactiveCapabilityCurveTable, setSelectedReactiveLimits, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./common/reactiveLimits/reactiveCapabilityCurve/reactiveCapability.utils.js";
22
22
  import { ReactiveCapabilityCurveRowForm } from "./common/reactiveLimits/reactiveCapabilityCurve/ReactiveCapabilityCurveRowForm.js";
23
23
  import { ReactiveCapabilityCurveTableForm } from "./common/reactiveLimits/reactiveCapabilityCurve/ReactiveCapabilityCurveTableForm.js";
24
- import { REACTIVE_LIMIT_TYPES, getReactiveLimitsEmptyFormData, getReactiveLimitsFormData, getReactiveLimitsSchema, getReactiveLimitsValidationSchema } from "./common/reactiveLimits/reactiveLimits.utils.js";
24
+ import { REACTIVE_LIMIT_TYPES, getReactiveLimitsEmptyFormData, getReactiveLimitsEmptyFormDataProps, getReactiveLimitsFormData, getReactiveLimitsFormDataProps, getReactiveLimitsSchema, getReactiveLimitsValidationSchema } from "./common/reactiveLimits/reactiveLimits.utils.js";
25
25
  import { ReactiveLimitsForm } from "./common/reactiveLimits/ReactiveLimitsForm.js";
26
26
  import { getHvdcLccDeletionSchema } from "./equipmentDeletion/hvdcLccDeletion/hvdcLccDeletion.utils.js";
27
27
  import { ShuntCompensatorSelectionForm } from "./equipmentDeletion/hvdcLccDeletion/ShuntCompensatorSelectionForm.js";
@@ -88,9 +88,12 @@ import { EQUIPMENT_TYPE_ORDER, byFilterDeletionDtoToForm, byFilterDeletionFormSc
88
88
  import { ModificationByAssignmentForm } from "./by-filter/assignment/modification-by-assignment-form.js";
89
89
  import { emptyModificationByAssignmentFormData, modificationByAssignmentDtoToForm, modificationByAssignmentFormSchema, modificationByAssignmentFormToDto } from "./by-filter/assignment/modificationByAssignment.utils.js";
90
90
  import { DataType } from "./by-filter/assignment/assignment/assignment.type.js";
91
+ import { batteryCreationDtoToForm, batteryCreationEmptyFormData, batteryCreationFormSchema, batteryCreationFormToDto } from "./battery/creation/batteryCreation.utils.js";
92
+ import { BatteryCreationForm } from "./battery/creation/BatteryCreationForm.js";
91
93
  export {
92
94
  ActivePowerControlForm,
93
95
  DataType as AssignmentDataType,
96
+ BatteryCreationForm,
94
97
  BranchActiveReactivePowerMeasurementsForm,
95
98
  BranchConnectivityForm,
96
99
  ByFilterDeletionForm,
@@ -126,6 +129,10 @@ export {
126
129
  VoltageLevelConnectivityForm,
127
130
  VoltageLevelCreationForm,
128
131
  VoltageLevelModificationForm,
132
+ batteryCreationDtoToForm,
133
+ batteryCreationEmptyFormData,
134
+ batteryCreationFormSchema,
135
+ batteryCreationFormToDto,
129
136
  buildNewBusbarSections,
130
137
  byFilterDeletionDtoToForm,
131
138
  byFilterDeletionFormSchema,
@@ -186,8 +193,11 @@ export {
186
193
  getPropertiesFromModification,
187
194
  getPropertyValue,
188
195
  getReactiveCapabilityCurveValidationSchema,
196
+ getReactiveCapabilityCurveValidationSchemaArray,
189
197
  getReactiveLimitsEmptyFormData,
198
+ getReactiveLimitsEmptyFormDataProps,
190
199
  getReactiveLimitsFormData,
200
+ getReactiveLimitsFormDataProps,
191
201
  getReactiveLimitsSchema,
192
202
  getReactiveLimitsValidationSchema,
193
203
  getReactivePowerSetPointSchema,
package/dist/index.js CHANGED
@@ -216,10 +216,10 @@ import { getActivePowerControlEmptyFormData, getActivePowerControlSchema } from
216
216
  import { ActivePowerControlForm } from "./components/network-modifications/common/activePowerControl/ActivePowerControlForm.js";
217
217
  import { getShortCircuitEmptyFormData, getShortCircuitFormData, getShortCircuitFormSchema } from "./components/network-modifications/common/shortCircuit/shortCircuitForm.utils.js";
218
218
  import { ShortCircuitForm } from "./components/network-modifications/common/shortCircuit/ShortCircuitForm.js";
219
- import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getRowEmptyFormData, setCurrentReactiveCapabilityCurveTable, setSelectedReactiveLimits, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./components/network-modifications/common/reactiveLimits/reactiveCapabilityCurve/reactiveCapability.utils.js";
219
+ import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getReactiveCapabilityCurveValidationSchemaArray, getRowEmptyFormData, setCurrentReactiveCapabilityCurveTable, setSelectedReactiveLimits, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./components/network-modifications/common/reactiveLimits/reactiveCapabilityCurve/reactiveCapability.utils.js";
220
220
  import { ReactiveCapabilityCurveRowForm } from "./components/network-modifications/common/reactiveLimits/reactiveCapabilityCurve/ReactiveCapabilityCurveRowForm.js";
221
221
  import { ReactiveCapabilityCurveTableForm } from "./components/network-modifications/common/reactiveLimits/reactiveCapabilityCurve/ReactiveCapabilityCurveTableForm.js";
222
- import { REACTIVE_LIMIT_TYPES, getReactiveLimitsEmptyFormData, getReactiveLimitsFormData, getReactiveLimitsSchema, getReactiveLimitsValidationSchema } from "./components/network-modifications/common/reactiveLimits/reactiveLimits.utils.js";
222
+ import { REACTIVE_LIMIT_TYPES, getReactiveLimitsEmptyFormData, getReactiveLimitsEmptyFormDataProps, getReactiveLimitsFormData, getReactiveLimitsFormDataProps, getReactiveLimitsSchema, getReactiveLimitsValidationSchema } from "./components/network-modifications/common/reactiveLimits/reactiveLimits.utils.js";
223
223
  import { ReactiveLimitsForm } from "./components/network-modifications/common/reactiveLimits/ReactiveLimitsForm.js";
224
224
  import { getHvdcLccDeletionSchema } from "./components/network-modifications/equipmentDeletion/hvdcLccDeletion/hvdcLccDeletion.utils.js";
225
225
  import { ShuntCompensatorSelectionForm } from "./components/network-modifications/equipmentDeletion/hvdcLccDeletion/ShuntCompensatorSelectionForm.js";
@@ -310,6 +310,8 @@ import { EQUIPMENT_TYPE_ORDER, byFilterDeletionDtoToForm, byFilterDeletionFormSc
310
310
  import { ModificationByAssignmentForm } from "./components/network-modifications/by-filter/assignment/modification-by-assignment-form.js";
311
311
  import { emptyModificationByAssignmentFormData, modificationByAssignmentDtoToForm, modificationByAssignmentFormSchema, modificationByAssignmentFormToDto } from "./components/network-modifications/by-filter/assignment/modificationByAssignment.utils.js";
312
312
  import { DataType as DataType2 } from "./components/network-modifications/by-filter/assignment/assignment/assignment.type.js";
313
+ import { batteryCreationDtoToForm, batteryCreationEmptyFormData, batteryCreationFormSchema, batteryCreationFormToDto } from "./components/network-modifications/battery/creation/batteryCreation.utils.js";
314
+ import { BatteryCreationForm } from "./components/network-modifications/battery/creation/BatteryCreationForm.js";
313
315
  import { BuildStatusChip } from "./components/node/build-status-chip.js";
314
316
  import { BuildStatus } from "./components/node/constant.js";
315
317
  import { COLUMNS_WITHOUT_BORDER, DEPTH_CELL_WIDTH, DROP_FORBIDDEN_INDICATOR_BOTTOM, DROP_FORBIDDEN_INDICATOR_TOP, DROP_INDICATOR_BOTTOM, DROP_INDICATOR_TOP, MODIFICATION_ROW_HEIGHT, createCellBorderColor, createCellContentWrapperSx, createCellStyle, createEditDescriptionStyle, createHeaderCellStyle, createModificationNameCellStyle, createNameCellLabelBoxSx, createNameCellRootStyle, createRootNetworkChipCellSx, createRowSx, networkModificationTableStyles } from "./components/network-modification-table/network-modification-table-styles.js";
@@ -430,6 +432,7 @@ export {
430
432
  BASE_EQUIPMENTS,
431
433
  BASE_MODIFICATION_TABLE_COLUMNS,
432
434
  Battery,
435
+ BatteryCreationForm,
433
436
  BooleanCellRenderer,
434
437
  BooleanInput,
435
438
  BooleanNullableCellRenderer,
@@ -927,6 +930,10 @@ export {
927
930
  backendFetchFile,
928
931
  backendFetchJson,
929
932
  backendFetchText,
933
+ batteryCreationDtoToForm,
934
+ batteryCreationEmptyFormData,
935
+ batteryCreationFormSchema,
936
+ batteryCreationFormToDto,
930
937
  buildNewBusbarSections,
931
938
  businessErrorsEn,
932
939
  businessErrorsFr,
@@ -1128,8 +1135,11 @@ export {
1128
1135
  getPropertyValue,
1129
1136
  getRangeInputSchema,
1130
1137
  getReactiveCapabilityCurveValidationSchema,
1138
+ getReactiveCapabilityCurveValidationSchemaArray,
1131
1139
  getReactiveLimitsEmptyFormData,
1140
+ getReactiveLimitsEmptyFormDataProps,
1132
1141
  getReactiveLimitsFormData,
1142
+ getReactiveLimitsFormDataProps,
1133
1143
  getReactiveLimitsSchema,
1134
1144
  getReactiveLimitsValidationSchema,
1135
1145
  getReactivePowerSetPointSchema,
@@ -194,6 +194,11 @@ export declare const networkModificationsEn: {
194
194
  addNewAssignment: string;
195
195
  changeTypeConfirmation: string;
196
196
  Or: string;
197
+ CreateBattery: string;
198
+ BatteryCreationError: string;
199
+ Connectivity: string;
200
+ ActiveLimits: string;
201
+ ReactiveLimits: string;
197
202
  NormalizedPercentage: string;
198
203
  On: string;
199
204
  Off: string;
@@ -205,12 +210,17 @@ export declare const networkModificationsEn: {
205
210
  ReactiveLimitsKindCurve: string;
206
211
  MinimumReactivePower: string;
207
212
  MaximumReactivePower: string;
213
+ ActiveLimitsMinMaxInvalid: string;
214
+ ReactiveLimitsMinMaxInvalid: string;
215
+ MinReactivePowerRequired: string;
216
+ MaxReactivePowerRequired: string;
208
217
  ReactiveCapabilityCurveCreationErrorMissingPoints: string;
209
218
  ReactiveCapabilityCurveCreationErrorPInvalid: string;
210
219
  ReactiveCapabilityCurveCreationErrorPOutOfRange: string;
211
220
  ReactiveCapabilityCurveCreationErrorQminPQmaxPIncoherence: string;
212
221
  ReactiveCapabilityCurveCreationErrorMissingNegativeP: string;
213
222
  ReactiveCapabilityCurveCreationErrorMissingPositiveP: string;
223
+ ActivePowerMustBeZeroOrBetweenMinAndMaxActivePower: string;
214
224
  P: string;
215
225
  QminP: string;
216
226
  QmaxP: string;
@@ -200,6 +200,11 @@ const networkModificationsEn = {
200
200
  addNewAssignment: "Modify another field",
201
201
  changeTypeConfirmation: "The type will be changed. All fields values will be erased.",
202
202
  Or: "or",
203
+ CreateBattery: "Create battery",
204
+ BatteryCreationError: "Error while creating battery",
205
+ Connectivity: "Connectivity",
206
+ ActiveLimits: "Active limits",
207
+ ReactiveLimits: "Reactive limits",
203
208
  NormalizedPercentage: "This percentage must be between 0 and 100",
204
209
  On: "On",
205
210
  Off: "Off",
@@ -211,12 +216,17 @@ const networkModificationsEn = {
211
216
  ReactiveLimitsKindCurve: "By diagram",
212
217
  MinimumReactivePower: "Minimum reactive power",
213
218
  MaximumReactivePower: "Maximum reactive power",
219
+ ActiveLimitsMinMaxInvalid: "Maximum active power must be greater than minimum active power",
220
+ ReactiveLimitsMinMaxInvalid: "Maximum reactive power must be greater than minimum reactive power",
221
+ MinReactivePowerRequired: "Minimum reactive power is required if maximum is defined",
222
+ MaxReactivePowerRequired: "Maximum reactive power is required if minimum is defined",
214
223
  ReactiveCapabilityCurveCreationErrorMissingPoints: "The table of reactive capability curve must have at least four points.",
215
224
  ReactiveCapabilityCurveCreationErrorPInvalid: "Each active power value must be a valid unique number.",
216
225
  ReactiveCapabilityCurveCreationErrorPOutOfRange: "Each active power value must be within the min P and max P values.",
217
226
  ReactiveCapabilityCurveCreationErrorQminPQmaxPIncoherence: "Each minimum reactive power value must be less than or equal to the corresponding maximum reactive power value.",
218
227
  ReactiveCapabilityCurveCreationErrorMissingNegativeP: "The reactive capability curve table must have at least one row with negative active power",
219
228
  ReactiveCapabilityCurveCreationErrorMissingPositiveP: "The reactive capability curve table must have at least one row with positive active power",
229
+ ActivePowerMustBeZeroOrBetweenMinAndMaxActivePower: "Active power value must be equal to 0 or between minimum and maximum active power values",
220
230
  P: "P{labelSuffix}",
221
231
  QminP: "QminP{labelSuffix}",
222
232
  QmaxP: "QmaxP{labelSuffix}",
@@ -194,6 +194,11 @@ export declare const networkModificationsFr: {
194
194
  addNewAssignment: string;
195
195
  changeTypeConfirmation: string;
196
196
  Or: string;
197
+ CreateBattery: string;
198
+ BatteryCreationError: string;
199
+ Connectivity: string;
200
+ ActiveLimits: string;
201
+ ReactiveLimits: string;
197
202
  NormalizedPercentage: string;
198
203
  On: string;
199
204
  Off: string;
@@ -205,12 +210,17 @@ export declare const networkModificationsFr: {
205
210
  ReactiveLimitsKindCurve: string;
206
211
  MinimumReactivePower: string;
207
212
  MaximumReactivePower: string;
213
+ ActiveLimitsMinMaxInvalid: string;
214
+ ReactiveLimitsMinMaxInvalid: string;
215
+ MinReactivePowerRequired: string;
216
+ MaxReactivePowerRequired: string;
208
217
  ReactiveCapabilityCurveCreationErrorMissingPoints: string;
209
218
  ReactiveCapabilityCurveCreationErrorPInvalid: string;
210
219
  ReactiveCapabilityCurveCreationErrorPOutOfRange: string;
211
220
  ReactiveCapabilityCurveCreationErrorQminPQmaxPIncoherence: string;
212
221
  ReactiveCapabilityCurveCreationErrorMissingNegativeP: string;
213
222
  ReactiveCapabilityCurveCreationErrorMissingPositiveP: string;
223
+ ActivePowerMustBeZeroOrBetweenMinAndMaxActivePower: string;
214
224
  P: string;
215
225
  QminP: string;
216
226
  QmaxP: string;
@@ -200,6 +200,11 @@ const networkModificationsFr = {
200
200
  addNewAssignment: "Modifier un autre champ",
201
201
  changeTypeConfirmation: "Le type va être modifié. Toutes les valeurs des champs seront effacées.",
202
202
  Or: "ou",
203
+ CreateBattery: "Créer une batterie",
204
+ BatteryCreationError: "Erreur lors de la création d'une batterie",
205
+ Connectivity: "Connectivité",
206
+ ActiveLimits: "Limites en actif",
207
+ ReactiveLimits: "Limites en réactif",
203
208
  NormalizedPercentage: "Ce pourcentage doit être compris entre 0 et 100",
204
209
  On: "Activé",
205
210
  Off: "Désactivé",
@@ -211,12 +216,17 @@ const networkModificationsFr = {
211
216
  ReactiveLimitsKindCurve: "Par diagramme",
212
217
  MinimumReactivePower: "Puissance réactive minimale",
213
218
  MaximumReactivePower: "Puissance réactive maximale",
219
+ ActiveLimitsMinMaxInvalid: "La puissance active maximale doit être supérieure à la puissance active minimale",
220
+ ReactiveLimitsMinMaxInvalid: "La puissance réactive maximale doit être supérieure à la puissance réactive minimale",
221
+ MinReactivePowerRequired: "La puissance réactive minimale est requise si la maximale est définie",
222
+ MaxReactivePowerRequired: "La puissance réactive maximale est requise si la minimale est définie",
214
223
  ReactiveCapabilityCurveCreationErrorMissingPoints: "Le tableau des limites de réactifs par diagramme doit comporter au moins quatre points.",
215
224
  ReactiveCapabilityCurveCreationErrorPInvalid: "Chaque valeur de puissance active doit être un nombre unique et valide.",
216
225
  ReactiveCapabilityCurveCreationErrorPOutOfRange: "Chaque valeur de puissance active doit être comprise entre les valeurs P min et P max.",
217
226
  ReactiveCapabilityCurveCreationErrorQminPQmaxPIncoherence: "Chaque valeur de puissance réactive minimale doit être inférieure ou égale à la puissance réactive maximale correspondante.",
218
227
  ReactiveCapabilityCurveCreationErrorMissingNegativeP: "Le tableau des limites de réactifs par diagramme doit comporter au moins une ligne avec une puissance active négative",
219
228
  ReactiveCapabilityCurveCreationErrorMissingPositiveP: "Le tableau des limites de réactifs par diagramme doit comporter au moins une ligne avec une puissance active positive",
229
+ ActivePowerMustBeZeroOrBetweenMinAndMaxActivePower: "La valeur de la puissance active doit être égale à 0 ou comprise entre la valeur de la puissance active min et la valeur de la puissance active max",
220
230
  P: "P{labelSuffix}",
221
231
  QminP: "QminP{labelSuffix}",
222
232
  QmaxP: "QmaxP{labelSuffix}",
@@ -13,4 +13,5 @@ export interface NetworkModificationMetadata {
13
13
  export interface ComposedModificationMetadata extends NetworkModificationMetadata {
14
14
  subModifications: ComposedModificationMetadata[];
15
15
  maxDepth?: number;
16
+ name?: string;
16
17
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gridsuite/commons-ui",
3
- "version": "0.208.0",
3
+ "version": "0.209.0",
4
4
  "description": "common react components for gridsuite applications",
5
5
  "author": "gridsuite team",
6
6
  "homepage": "https://github.com/gridsuite",